(57)【特許請求の範囲】
【請求項１】
画像を圧縮するためにコンピュータを、
圧縮しようとする画像データを入力して前記画像データを複数のブロックに分割する分割手段、
前記分割手段により分割された画像データを前記ブロック毎に周波数データに変換する変換手段、
周波数成分に対する圧縮パラメータが各々異なる１つの文字領域用圧縮テーブル及び前記文字領域用圧縮テーブルよりも低圧縮率の量子化テーブルである複数の画像領域用圧縮テーブルを予め記録しておく第１記録手段、
前記ブロック毎に前記周波数データに基づいて文字領域か画像領域かを判断し、文字領域と判断した場合は前記文字領域用圧縮テーブルを選択し、画像領域と判断した場合は前回用いた画像領域用圧縮テーブルを基準として、
前記ブロックの属する画像の位置が画像周辺部でないという第１の条件、前記分割手段から前記変換手段に送られたブロック単位の画像データの累積数を前記分割手段での分割ブロック数で除算して得られる処理ブロック比率と、目標圧縮データ量とを乗算した値が累積圧縮データ量より大きいという第２の条件、及び前記周波数データに高周波成分が少ないという第３の条件をすべて満たす場合、圧縮率を低く変化させることを決定し、
前記第１の条件、前記第２の条件、及び前記第３の条件の一つでも満たさず、且つ、前記処理ブロック比率と、前記目標圧縮データ量とを乗算した値が前記累積圧縮データ量より小さいという第４の条件及び前記ブロックの属する画像の位置が画像中央部でないという第５の条件をすべて満たす場合、圧縮率を高く変化させることを決定し、
前記第１の条件、前記第２の条件、及び前記第３の条件の一つでも満たさず、且つ、前記第４の条件及び前記第５の条件の一つでも満たさない場合、圧縮率を変化させないことを決定し、
その決定に従って今回用いる画像領域用圧縮テーブルを前記複数の画像領域用圧縮テーブルの中から選択する選択手段、
前記選択手段によって選択された圧縮テーブルを用いて前記ブロック毎に前記周波数データを圧縮して圧縮データを生成する圧縮手段、
前記圧縮データを累積して記録する第２記録手段、
及び前記第２記録手段に累積して記録された前記圧縮データの量である前記累積圧縮データ量を計測する計測手段
として機能させるための画像圧縮プログラム。
【請求項２】
請求項１に記載の画像圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項３】
圧縮しようとする画像データを入力して前記画像データを複数のブロックに分割する分割手段と、
前記分割手段により分割された画像データを前記ブロック毎に周波数データに変換する変換手段と、
周波数成分に対する圧縮パラメータが各々異なる１つの文字領域用圧縮テーブル及び前記文字領域用圧縮テーブルよりも低圧縮率の量子化テーブルである複数の画像領域用圧縮テーブルを予め記録しておく第１記録手段と、
前記ブロック毎に前記周波数データに基づいて文字領域か画像領域かを判断し、文字領域と判断した場合は前記文字領域用圧縮テーブルを選択し、画像領域と判断した場合は前回用いた画像領域用圧縮テーブルを基準として、
前記ブロックの属する画像の位置が画像周辺部でないという第１の条件、前記分割手段から前記変換手段に送られたブロック単位の画像データの累積数を前記分割手段での分割ブロック数で除算して得られる処理ブロック比率と、目標圧縮データ量とを乗算した値が累積圧縮データ量より大きいという第２の条件、及び前記周波数データに高周波成分が少ないという第３の条件をすべて満たす場合、圧縮率を低く変化させることを決定し、
前記第１の条件、前記第２の条件、及び前記第３の条件の一つでも満たさず、且つ、前記処理ブロック比率と、前記目標圧縮データ量とを乗算した値が前記累積圧縮データ量より小さいという第４の条件及び前記ブロックの属する画像の位置が画像中央部でないという第５の条件をすべて満たす場合、圧縮率を高く変化させることを決定し、
前記第１の条件、前記第２の条件、及び前記第３の条件の一つでも満たさず、且つ、前記第４の条件及び前記第５の条件の一つでも満たさない場合、圧縮率を変化させないことを決定し、
その決定に従って今回用いる画像領域用圧縮テーブルを前記複数の画像領域用圧縮テーブルの中から選択する選択手段と、
前記選択手段によって選択された圧縮テーブルを用いて前記ブロック毎に前記周波数データを圧縮して圧縮データを生成する圧縮手段と、
前記圧縮データを累積して記録する第２記録手段と、
前記第２記録手段に累積して記録された前記圧縮データの量である前記累積圧縮データ量を計測する計測手段と
を備える画像圧縮装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像データを符号化して圧縮するためのシステムに関するものである。
【０００２】
【従来の技術】
画像情報は文字情報に比べると比較にならないほど大量のデータを持つ。従って画像情報を伝送したり、記録媒体に記録する場合は画像を符号化して圧縮し、できるだけ容量を少なくすることが一般に行われている。
【０００３】
静止画の画像圧縮方法としてはＪＰＥＧ（Joint Photograph Experts Group）方式が規格化されている。ＪＰＥＧ方式では、画像全般に対応するように基本仕様として、８画素×８ラインの小エリアに対して離散コサイン変換（ＤＣＴ；Discrete Cosine Transform）・量子化・ハフマン符号化を順に施すことにより画像圧縮を行う。
【０００４】
圧縮率と圧縮による画質の劣化は、量子化を施す際に用いる量子化テーブルの値に大きく依存する。一般的に量子化テーブルの値として、大きな数を与えると圧縮率は高くなるが伸長画像の画質劣化が多くなり、小さな数を与えると圧縮率は低くなるが伸長画像の画質劣化が少なくなる。
【０００５】
ＪＰＥＧ方式では、画像データを８画素×８ラインの小エリア単位で読み込むが、全ての小エリアに対して量子化テーブル及びハフマン符号化を施す際に用いるハフマンテーブルは固定されている。このため、原画像データに周波数成分の低い画像領域と周波数成分の高い文字領域とが混在している場合には伸長画像が必ずしも良好な画像とはならないといった問題があった。
【０００６】
また、量子化テーブルにおいて高周波成分ほど量子化テーブルの値を大きくしているので、原画像データの性質によって圧縮率が大きく異なる。すなわち、大部分の領域が低周波成分である原画像データでは圧縮率が低くなり、大部分の領域が高周波成分である原画像データでは圧縮率が高くなる。したがって、圧縮率を一定にするためには、量子化テーブルの値を変更させながら、目標の圧縮率になるまで圧縮を繰り返す必要があった。しかしながら、圧縮処理を複数回行うと圧縮時間が長くなってしまうという問題があった。
【０００７】
上記２つの問題の解決を試みた従来技術として、例えば特開平８−２０４９７０号公報に開示されている画像圧縮装置が挙げられる。この画像圧縮装置では、原画像データを複数の同じ大きさのブロックに分割し、個々のブロックでの圧縮データ量と、目標にする圧縮データ量との比較結果から次のブロックを圧縮処理する際に使用する量子化テーブルを決定する。すなわちＮ＋１番目のブロックを圧縮処理する際に使用する量子化テーブルが、一つ前のＮ番目のブロックでの圧縮率を基準にして決定されている。これは、隣り合ったブロック間では一般的に画像の性質が似ていることを利用した処理である。このような処理によって、１回で目標の圧縮率に到達でき、かつ伸張画像の画質劣化が少ない画像圧縮を実現しようとしている。
【０００８】
【発明が解決しようとする課題】
しかしながら、特開平８−２０４９７０号公報に開示されている画像圧縮装置では、Ｎ番目のブロックが高周波成分の多いブロックであり、Ｎ＋１番目のブロックが高周波成分の少ないブロックである場合、Ｎ＋１番目のブロックが高周波成分の少ないブロックであるにもかかわらず、その圧縮処理において高圧縮率の量子化テーブルが選択されてしまう。このため、Ｎ＋１番目のブロックの伸長画像の画質劣化が多くなってしまうという問題があった。このような状況は画像に文字が重ねられている場合に起こり得る状況である。
【０００９】
また、一般的な画像では中央部に注目すべき箇所がある場合が多いが、特開平８−２０４９７０号公報に開示されている画像圧縮装置では隣り合ったブロック間の相関関係で量子化テーブルを選択するため、例えば画像の周辺部で圧縮率が低く、中央部で圧縮率が高くなるという一般的な画像の特徴に反した圧縮が行われる可能性があった。
【００１０】
本発明は、上記の問題点に鑑み、１回の圧縮で目標の圧縮率に到達でき、かつ伸長画像の画質劣化が少ない画像圧縮装置を提供することを目的とする。
【００１１】
【課題を解決するための手段】
上記目的を達成するために、本発明に係る画像圧縮プログラムにおいては、画像を圧縮するためにコンピュータを、圧縮しようとする画像データを入力して前記画像データを複数のブロックに分割する分割手段、前記分割手段により分割された画像データを前記ブロック毎に周波数データに変換する変換手段、周波数成分に対する圧縮パラメータが各々異なる１つの文字領域用圧縮テーブル及び前記文字領域用圧縮テーブルよりも低圧縮率の量子化テーブルである複数の画像領域用圧縮テーブルを予め記録しておく第１記録手段、前記ブロック毎に前記周波数データに基づいて文字領域か画像領域かを判断し、文字領域と判断した場合は前記文字領域用圧縮テーブルを選択し、画像領域と判断した場合は前回用いた画像領域用圧縮テーブルを基準として、前記ブロックの属する画像の位置が画像周辺部でないという第１の条件、前記分割手段から前記変換手段に送られたブロック単位の画像データの累積数を前記分割手段での分割ブロック数で除算して得られる処理ブロック比率と、目標圧縮データ量とを乗算した値が累積圧縮データ量より大きいという第２の条件、及び前記周波数データに高周波成分が少ないという第３の条件をすべて満たす場合、圧縮率を低く変化させることを決定し、前記第１の条件、前記第２の条件、及び前記第３の条件の一つでも満たさず、且つ、前記処理ブロック比率と、前記目標圧縮データ量とを乗算した値が前記累積圧縮データ量より小さいという第４の条件及び前記ブロックの属する画像の位置が画像中央部でないという第５の条件をすべて満たす場合、圧縮率を高く変化させることを決定し、前記第１の条件、前記第２の条件、及び前記第３の条件の一つでも満たさず、且つ、前記第４の条件及び前記第５の条件の一つでも満たさない場合、圧縮率を変化させないことを決定し、その決定に従って今回用いる画像領域用圧縮テーブルを前記複数の画像領域用圧縮テーブルの中から選択する選択手段、前記選択手段によって選択された圧縮テーブルを用いて前記ブロック毎に前記周波数データを圧縮して圧縮データを生成する圧縮手段、前記圧縮データを累積して記録する第２記録手段、及び前記第２記録手段に累積して記録された前記圧縮データの量である前記累積圧縮データ量を計測する計測手段として機能させるようにする。
【００１３】
上記目的を達成するために、本発明に係るコンピュータ読み取り可能な記録媒体においては、上述した画像圧縮プログラムを記録するようにする。
【００１４】
上記目的を達成するために、本発明に係る画像圧縮装置においては、圧縮しようとする画像データを入力して前記画像データを複数のブロックに分割する分割手段と、前記分割手段により分割された画像データを前記ブロック毎に周波数データに変換する変換手段と、周波数成分に対する圧縮パラメータが各々異なる１つの文字領域用圧縮テーブル及び前記文字領域用圧縮テーブルよりも低圧縮率の量子化テーブルである複数の画像領域用圧縮テーブルを予め記録しておく第１記録手段と、前記ブロック毎に前記周波数データに基づいて文字領域か画像領域かを判断し、文字領域と判断した場合は前記文字領域用圧縮テーブルを選択し、画像領域と判断した場合は前回用いた画像領域用圧縮テーブルを基準として、前記ブロックの属する画像の位置が画像周辺部でないという第１の条件、前記分割手段から前記変換手段に送られたブロック単位の画像データの累積数を前記分割手段での分割ブロック数で除算して得られる処理ブロック比率と、目標圧縮データ量とを乗算した値が累積圧縮データ量より大きいという第２の条件、及び前記周波数データに高周波成分が少ないという第３の条件をすべて満たす場合、圧縮率を低く変化させることを決定し、前記第１の条件、前記第２の条件、及び前記第３の条件の一つでも満たさず、且つ、前記処理ブロック比率と、前記目標圧縮データ量とを乗算した値が前記累積圧縮データ量より小さいという第４の条件及び前記ブロックの属する画像の位置が画像中央部でないという第５の条件をすべて満たす場合、圧縮率を高く変化させることを決定し、前記第１の条件、前記第２の条件、及び前記第３の条件の一つでも満たさず、且つ、前記第４の条件及び前記第５の条件の一つでも満たさない場合、圧縮率を変化させないことを決定し、その決定に従って今回用いる画像領域用圧縮テーブルを前記複数の画像領域用圧縮テーブルの中から選択する選択手段と、前記選択手段によって選択された圧縮テーブルを用いて前記ブロック毎に前記周波数データを圧縮して圧縮データを生成する圧縮手段と、前記圧縮データを累積して記録する第２記録手段と、前記第２記録手段に累積して記録された前記圧縮データの量である前記累積圧縮データ量を計測する計測手段とを備える構成とする。
【００１６】
【発明の実施の形態】
本発明の一実施形態について図面を参照して説明する。図１は本発明に係る画像圧縮装置の一実施形態を示すブロック図である。図１の画像圧縮装置は、ブロック分割部１と、ＤＣＴ演算部２と、処理ブロック比率計算部３と、圧縮率変化データ保存メモリ４と、目標圧縮データ量保存メモリ５と、データ圧縮部６と、情報保存メモリ７と、圧縮データ量計測部８とを備えている。そして、データ圧縮部６は、量子化部９と、領域判定部１０と、量子化テーブル選択部１１と、量子化テーブル保存メモリ１２と、ハフマン符号化部１３と、圧縮データ出力部１４とを備えている。
【００１７】
以下、図１の画像圧縮装置の動作について説明する。ブロック分割部１は原画像のデータＤを入力し、該原画像のデータＤを同一の大きさの複数のブロックに分割する。本実施形態においては、図２に示すように１２×８の９６ブロックに分割するものとする。ブロック分割部１は、ブロック単位の画像データを連続して連なったブロックの順で所定のタイミング毎にＤＣＴ演算部２に送出する。また、ブロック分割部１は、ブロック単位の画像データをＤＣＴ演算部２に送出する毎に、処理ブロック比率計算部３にカウント信号を送出し、圧縮率変化データ保存メモリ４に圧縮処理を行うブロックの位置情報を送出する。
【００１８】
ＤＣＴ演算部２は、入力したブロック単位の画像データに対するＤＣＴ演算を行い、ブロック単位の画像データを周波数成分のデータに変換する。
【００１９】
処理ブロック比率計算部３は入力したカウント信号を計数し、処理ブロック数すなわちブロック分割部１からＤＣＴ演算部２に送られたブロック単位の画像データの累積数を計数し、その値を予め記録してある全分割ブロック数（＝９６）で除算することのよって処理ブロック比率ｒを算出する。
【００２０】
圧縮率変化データ保存メモリ４は、圧縮処理を行うブロックの位置情報を入力する毎に、予め記録している圧縮率変化データテーブルを参照して、圧縮率変化データを更新する。圧縮率変化データ保存メモリ４が予め記録している圧縮率変化データテーブルは、画像中央部のブロック位置Ｂ１（図２参照）に対しては圧縮率変化データＣ１を、画像周辺部のブロック位置Ｂ３（図２参照）に対しては圧縮率変化データＣ３を、画像中央部と画像周辺部以外のブロック位置Ｂ２（図２参照）に対しては圧縮率変化データＣ２を割り当てている。なお、圧縮率変化データＣ１は圧縮率を下げる要素であり、圧縮率変化データＣ２は圧縮率を下げるまたは上げる要素であり、圧縮率変化データＣ３は圧縮率を上げる要素である。
【００２１】
目標圧縮データ量保存メモリ５は圧縮後の目標データ量である目標圧縮データ量Ｄｔ（例えばバイト単位）を予め記録している。
【００２２】
データ圧縮部６は、ＤＣＴ演算部２から送出される周波数成分のデータと、処理ブロック比率計算部３から送出される処理ブロック比率ｒと、圧縮率変化データ保存メモリ４から送出される圧縮率変化データと、目標圧縮データ量保存メモリ５から送出される目標圧縮データ量Ｄｔと、後述する圧縮データ量計測部８から送出されるデータ量Ｄｃとに応じて量子化テーブルを選択し、その選択した量子化テーブルを用いてＤＣＴ演算部２から送出される周波数成分のデータを圧縮処理し、その圧縮処理によって得られた圧縮データと選択した量子化テーブルの情報を情報保存メモリ７に送出する。
【００２３】
情報保存メモリ７は、データ圧縮部６から送出される圧縮データと量子化テーブルの情報を保存する。圧縮データ量計測部８は情報保存メモリ７に保存されている圧縮データの累積データ量Ｄｃ（例えばバイト単位）を計測し、その計測結果をデータ圧縮部６に送出する。
【００２４】
続いてデータ圧縮部６の動作について説明する。量子化部９及び領域判定部１０が、ＤＣＴ演算部２から送出される周波数成分のデータを入力する。量子化部９は入力した周波数成分のデータを、後述する量子化テーブル選択部１１により選択された量子化テーブルを用いて量子化する。また、領域判定部１０は、入力した周波数成分のデータからその周波数成分のデータの属するブロックが文字領域であるか、または高周波成分が少ないブロックであるか、または高周波成分が多いブロックであるかの判定を行う。
【００２５】
量子化テーブル選択部１１は、領域判定部１０から出力される判定結果と、処理ブロック比率計算部３から出力される処理ブロック比率ｒと、圧縮率変化データ保存メモリ４から出力される圧縮率変化データと、目標圧縮データ量保存メモリ５から出力される目標圧縮データＤｔと、圧縮データ量計測部８から出力される圧縮データ量Ｄｃとに応じて、処理するブロックの量子化に用いる量子化テーブルを後述の量子化テーブル保存メモリ１２から選択する。
【００２６】
量子化テーブル選択部１１は、処理するブロックが文字領域であるならば（条件I）、文字領域用の量子化テーブルを選択する。前記条件Iが成立しない場合、量子化テーブル選択部１１は、下記条件▲１▼〜▲３▼がすべて成立すれば（条件II）、デフォルト量子化テーブルを低圧縮率の量子化テーブルに変更して、該低圧縮率の量子化テーブルを選択する。なお、デフォルト量子化テーブルの初期値については参照する情報がないため、量子化テーブル保存メモリ１２が備える画像領域用量子化テーブルの内中間の圧縮率の量子化テーブルをデフォルト量子化テーブルの初期値としている。
▲１▼高周波成分が少ない領域
▲２▼Ｄｔ×ｒ＞Ｄｃ
▲３▼圧縮率変化データがＣ１又はＣ２
【００２７】
前記条件I、IIがいずれも成立しない場合、量子化テーブル選択部１１は、下記条件▲４▼〜▲５▼がすべて成立すれば（条件III）、デフォルト量子化テーブルを高圧縮率の量子化テーブルに変更して、該高圧縮率の量子化テーブルを選択する。
▲４▼Ｄｔ×ｒ＜Ｄｃ
▲５▼圧縮率変化データがＣ２又はＣ３
【００２８】
前記条件I、II、IIIがいずれも成立しない場合、量子化テーブル選択部１１は、デフォルト量子化テーブルを選択する。
【００２９】
量子化テーブル保存メモリ１２はｎ個の量子化テーブルＱ（１）〜Ｑ（ｎ）を予め記録している。Ｑ（１）〜Ｑ（ｎ−１）は各々高周波成分の量子化係数の異なる量子化テーブルであり、Ｑ（１）からＱ（ｎ−１）に近づくにつれ高周波成分の量子化係数の値が大きくなる。Ｑ（ｎ）は文字領域用の量子化テーブルであり、低周波成分の量子化係数と高周波成分の量子化係数にほとんど差がないものを用いる。
【００３０】
このように、文字領域と画像領域とで量子化テーブルを区別することで、画質領域のブロックでは１つ前に処理したブロックが文字領域の場合でも圧縮率が大きくなり過ぎるおそれがない。また、文字領域のブロックでは１つ前に処理したブロックの種類にかかわらず圧縮率を大きくすることができ、その分画像領域の圧縮率を小さくすることができる。これにより、画像に文字が重ねられている原画像を圧縮する場合でも伸長画像の画質劣化が少ない画像圧縮装置を実現することができる。
【００３１】
ハフマン符号化部１３は量子化部９の出力に基づいて、処理するブロックを順次ジグザグスキャンしてハフマン符号化（可変長符号化）を行い符号化データを生成し、その符号化データを圧縮データ出力部１４に出力する。
【００３２】
圧縮データ出力部１４は、ハフマン符号化部１３から送出される符号化データと量子化テーブル選択部１１から送出される選択された量子化テーブルの情報を入力し、その符号化データ及び選択された量子化テーブルの情報を情報保存メモリ７に送出する。
【００３３】
したがって、図１の画像処理装置において実行される画像圧縮処理のフローは図３に示すフローチャートのようになる。以下、図３を参照して画像圧縮処理のフローについて説明する。
【００３４】
図１の画像処理装置において実行される画像圧縮処理においてデフォルトとして使用される量子化テーブルの番号をｍとする（１≦ｍ≦ｎ−１）。デフォルト量子化テーブルの初期値については参照する情報がないため、量子化テーブル選択部１１は中間の圧縮率の量子化テーブルを選択することにする。すなわち、デフォルト量子化テーブルの初期値はｎが偶数の場合は、ｍ＝ｎ／２とし、ｎが奇数の場合はｍ＝（ｎ−１）／２とする（ステップＳ１０）。
【００３５】
次にブロック分割部１が原画像データＤを分割する（ステップＳ２０）。分割された１ブロックの画像データがＤＣＴ演算部２によって周波数成分のデータに変換される（ステップＳ３０）。そして、ＤＣＴ演算で得られた周波数成分のデータが領域判定部１０によって領域判定される（ステップＳ４０）。
【００３６】
領域判定部１０での領域判定の結果、処理するブロックが文字領域であれば（ステップＳ５０のＹｅｓ）、量子化テーブル選択部１１は処理するブロックで使用する量子化テーブルとして量子化テーブル保存メモリ１２に保存されている文字領域用量子化テーブルＱ（ｎ）を選択したのち（ステップＳ６０）、ステップＳ１２０に移行する。
【００３７】
領域判定部１０での領域判定の結果、処理するブロックが文字領域でなければ（ステップＳ５０のＮｏ）、量子化テーブル選択部１１は下記条件▲１▼〜▲３▼をすべて満たすかを判定する（ステップＳ７０）。
▲１▼高周波成分が少ない領域
▲２▼Ｄｔ×ｒ＞Ｄｃ
▲３▼圧縮率変化データがＣ１又はＣ２
【００３８】
上記条件▲１▼〜▲３▼をすべて満たせば（ステップＳ７０のＹｅｓ）、ステップＳ８０の処理を実行したのち、ステップＳ１２０に移行する。ステップＳ８０では、図４に示すステップＳ２１０〜Ｓ２６０の処理を実行する。まず、圧縮率変化データがＣ２であるかを判定する（ステップＳ２１０）。圧縮率変化データがＣ２であれば（ステップＳ２１０のＹｅｓ）、デフォルト量子化テーブルの番号ｍがｍ−１≧０であるかを判定する（ステップＳ２２０）。ｍ−１≧０であれば（ステップＳ２２０のＹｅｓ）、ｍ−１を新たなｍとして圧縮率を１段階下げる方向にデフォルト量子化テーブルを変更したのち（ステップＳ２４０）、ステップＳ２６０に移行する。ｍ−１＜０であれば（ステップＳ２２０のＮｏ）、ステップＳ２６０に移行する。一方、圧縮率変化データがＣ１であれば（ステップＳ２１０のＮｏ）、デフォルト量子化テーブルの番号ｍがｍ−２≧０であるかを判定する（ステップＳ２３０）。ｍ−２≧０であれば（ステップＳ２３０のＹｅｓ）、ｍ−２を新たなｍとして圧縮率を２段階下げる方向にデフォルト量子化テーブルを変更したのち（ステップＳ２５０）、ステップＳ２６０に移行する。ｍ−２＜０であれば（ステップＳ２３０のＮｏ）、ステップＳ２６０に移行する。ステップＳ２６０では、使用する量子化テーブルとしてデフォルト量子化テーブルＱ（ｍ）を選択して、低圧縮率の量子化テーブルを選択するフローを終了する。
【００３９】
一方、上記条件▲１▼〜▲３▼を一つでも満たさなければ（ステップＳ７０のＮｏ）、量子化テーブル選択部１１は、下記条件▲４▼〜▲５▼を満たすかを判定する（ステップＳ９０）。
▲４▼Ｄｔ×ｒ＜Ｄｃ
▲５▼圧縮率変化データがＣ２又はＣ３
【００４０】
上記条件▲４▼〜▲５▼をすべて満たせば（ステップＳ９０のＹｅｓ）、ステップＳ１００の処理を実行したのち、ステップＳ１２０に移行する。ステップＳ１００では、図５に示すステップＳ３１０〜Ｓ３６０の処理を実行する。まず、圧縮率変化データがＣ２であるかを判定する（ステップＳ３１０）。圧縮率変化データがＣ２であれば（ステップＳ３１０のＹｅｓ）、デフォルト量子化テーブルの番号ｍがｍ＋１＜ｎであるかを判定する（ステップＳ３２０）。ｍ＋１＜ｎであれば（ステップＳ３２０のＹｅｓ）、ｍ＋１を新たなｍとして圧縮率を１段階上げる方向にデフォルト量子化テーブルを変更したのち（ステップＳ３４０）、ステップＳ３６０に移行する。ｍ＋１≧ｎであれば（ステップＳ３２０のＮｏ）、ステップＳ３６０に移行する。一方、圧縮率変化データがＣ３であれば（ステップＳ３１０のＮｏ）、デフォルト量子化テーブルの番号ｍがｍ＋２＜ｎであるかを判定する（ステップＳ３３０）。ｍ＋２＜ｎであれば（ステップＳ３３０のＹｅｓ）、ｍ＋２を新たなｍとして圧縮率を２段階上げる方向にデフォルト量子化テーブルを変更したのち（ステップＳ３５０）、ステップＳ３６０に移行する。ｍ＋２≧ｎであれば（ステップＳ３３０のＮｏ）、ステップＳ３６０に移行する。ステップＳ３６０では、使用する量子化テーブルとしてデフォルト量子化テーブルＱ（ｍ）を選択して、高圧縮率の量子化テーブルを選択するフローを終了する。
【００４１】
一方、上記条件▲４▼〜▲５▼を一つでも満たさなければ（ステップＳ９０のＮｏ）、量子化テーブル選択部１１は、処理するブロックで使用する量子化テーブルとして前回の画像領域を処理するときに用いたデフォルト量子化テーブルを選択したのち（ステップＳ１１０）、ステップＳ１２０に移行する。
【００４２】
ステップＳ１２０では、量子化部９が、量子化テーブル選択部１１によって選択された量子化テーブルを用いて周波数成分のデータを量子化して量子化データを生成し、ハフマン符号化部１３が前記量子化データに対して符号化を行い符号化データを生成する。そして、圧縮データ出力部１４が前記符号化データと量子化テーブル選択部１１によって選択された量子化テーブル情報を情報保存メモリ７に出力し、そのデータを情報保存メモリ７が記録する（ステップＳ１３０）。次に処理ブロック比率計算部３の出力に基づいてデータ圧縮部６が全ブロックの処理を終了したか否かを判定し（ステップＳ１４０）、終了していない場合はステップＳ３０に戻り次のブロックの圧縮処理を繰り返す。
【００４３】
なお、本実施形態においては各ブロックについての圧縮率変化データを３種類としたが、本発明はこれに限定されることはない。圧縮率変化データの種類を増やすことによってより細かな制御を行うことができる。また、処理ブロック比率計算部３を設けず、目標圧縮データ保存メモリ５が、処理ブロック数に応じた目標圧縮データを予め記録しており、ブロック分割部１からカウント信号を受け取り処理ブロック数を算出し、処理ブロック数に応じた目標圧縮データを量子化テーブル選択部１１に送出するようにしてもよい。この場合、量子化テーブル選択部１１は、累積データ量Ｄｃと処理ブロック数に応じた目標圧縮データとを直接比較する。
【００４４】
上述した画像圧縮装置は、ＩＣパッケージに納めることができる。また、入力装置と中央処理装置とメモリとを備えた汎用コンピュータが、ネットワーク又はＣＤ−ＲＯＭ等の記録媒体から画像圧縮プログラムを入力装置を介してメモリにダウンロードするようにしてもよい。なお、上記画像圧縮プログラムは、中央処理装置をブロック分割部１、ＤＣＴ演算部２、処理ブロック比率計算部３、量子化部９、ハフマン符号化部１３、圧縮データ出力部１４、及び圧縮データ量計測部８として機能させ、メモリを圧縮率変化データ保存メモリ４、目標圧縮データ量保存メモリ５、情報保存メモリ７、及び量子化テーブル保存メモリ１２として機能させ、汎用コンピュータに図３〜図５の処理を実行させるものである。これにより、汎用コンピュータが図１の画像圧縮装置と同様の動作を行うことが可能になる。
【００４５】
【発明の効果】
本発明によると、選択手段が、累積圧縮データ量に応じて圧縮テーブルを選択するので、１回の圧縮で目標の圧縮率に到達することができる。また、選択手段が、周波数データに応じて圧縮テーブルを選択するので、高周波成分の少ない領域の圧縮率を小さくすることができ、高周波成分の少ない領域における伸長画像の画質劣化を抑えることができる。また、選択手段が前記ブロックの属する画像の位置に応じて圧縮テーブルを選択するので、特に指定領域内（例えば画像中央部）の画質劣化を抑えることが可能になる。これにより、１回の圧縮で目標の圧縮率に到達でき、かつ伸長画像の画質劣化が少ない画像圧縮装置を実現することができる。
【００４６】
また、本発明によると、第１記録手段に１つの文字領域用圧縮テーブル及び複数の画像領域用圧縮テーブルが予め記録されており、選択手段が、ブロック毎に周波数データに基づいて文字領域か画像領域かを判断し、文字領域と判断した場合は文字領域用圧縮テーブルを選択するので、画質領域のブロックを圧縮処理するする場合１つ前に圧縮処理したブロックが文字領域の場合でも圧縮率が大きくなり過ぎるおそれがない。また、文字領域のブロックを圧縮処理する場合１つ前に圧縮処理したブロックの種類にかかわらず圧縮率を大きくすることができ、その分画像領域の圧縮率を小さくすることができる。これにより、画像に文字が重ねられている原画像を圧縮する場合でも伸長画像の画質劣化が少ない画像圧縮装置を実現することができる。
【図面の簡単な説明】
【図１】      本発明に係る一実施形態の画像圧縮装置の構成を示すブロック図である。
【図２】      ブロック分割した原画像を示す図である。
【図３】      図１の画像圧縮装置の処理フローを示すフローチャート図である。
【図４】      図３のフローチャート図におけるステップＳ８０の処理を示すフローチャート図である。
【図５】      図３のフローチャート図におけるステップＳ１００の処理を示すフローチャート図である。
【符号の説明】
１    ブロック分割部
２    ＤＣＴ演算部
３    処理ブロック比率計算部
４    圧縮率変化データ保存メモリ
５    目標圧縮データ量保存メモリ
６    データ圧縮部
７    情報保存メモリ
８    圧縮データ量計測部
９    量子化部
１０    領域判定部
１１    量子化テーブル選択部
１２    量子化テーブル保存メモリ
１３    ハフマン符号化部
１４    圧縮データ出力部
【図１】
0004049583.tif 000002
【図２】
0004049583.tif 000003
【図３】
0004049583.tif 000004
【図４】
0004049583.tif 000005
【図５】
0004049583.tif 000006