(57)【要約】【課題】  重要な量子化係数を切り捨てることなく、情報伝送量を削減することができる画像圧縮装置を得ることを目的とする。【解決手段】  量子化部３から出力された各画素の量子化係数に応じて係数閾値βを設定する閾値設定部４を設け、係数遅延部５から出力された各画素の量子化係数と閾値設定部４により設定された係数閾値βを比較し、その係数閾値βより小さい量子化係数を零値に変更する。これにより、重要な量子化係数の切り捨てを防止して、画質の劣化を招くことなく、情報伝送量を削減することができる。【選択図】        図１
2005236561.tif 000002
【特許請求の範囲】
【請求項１】
複数の画素からなる画像信号又は予測誤差信号をブロック化し、各ブロックの画像信号又は予測誤差信号を出力するブロック化手段と、上記ブロック化手段から出力された各ブロックの画像信号又は予測誤差信号を直交変換し、各画素の直交変換係数を出力する直交変換手段と、上記直交変換手段から出力された直交変換係数を量子化し、各画素の量子化係数を出力する量子化手段と、上記量子化手段から出力された各画素の量子化係数のうち、零値ではない量子化係数の平均値を算出したのち、零値ではない量子化係数と当該平均値の差分絶対値和を算出し、その差分絶対値和に応じて係数閾値を設定する閾値設定手段と、上記量子化手段から出力された各画素の量子化係数と上記閾値設定手段により設定された係数閾値を比較し、その係数閾値より小さい量子化係数を零値に変更する係数変更手段と、上記係数変更手段から出力された量子化係数を可変長符号化する符号化手段とを備えた画像圧縮装置。
【請求項２】
閾値設定手段は、差分絶対値和が大きいほど、係数閾値を小さい値に設定することを特徴とする請求項１記載の画像圧縮装置。
【請求項３】
複数の画素からなる画像信号又は予測誤差信号をブロック化し、各ブロックの画像信号又は予測誤差信号を出力するブロック化手段と、上記ブロック化手段から出力された各ブロックの画像信号又は予測誤差信号を直交変換し、各画素の直交変換係数を出力する直交変換手段と、上記直交変換手段から出力された直交変換係数を量子化し、各画素の量子化係数を出力する量子化手段と、上記量子化手段から出力された各画素の量子化係数のうち、零値ではない量子化係数の平均値を算出したのち、零値ではない量子化係数と当該平均値の差分絶対値和を算出し、その差分絶対値和に応じて係数閾値とゼロラン閾値を設定する閾値設定手段と、上記量子化手段から零値である量子化係数が、上記閾値設定手段により設定されたゼロラン閾値を上回る個数連続して出力されている状況下で、上記量子化手段から零値ではない量子化係数が出力された場合、その量子化係数が上記閾値設定手段により設定された係数閾値より小さければ、その量子化係数を零値に変更する係数変更手段と、上記係数変更手段から出力された量子化係数を可変長符号化する符号化手段とを備えた画像圧縮装置。
【請求項４】
閾値設定手段は、差分絶対値和が大きいほど、係数閾値とゼロラン閾値を小さい値に設定することを特徴とする請求項２記載の画像圧縮装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、複数の画素からなる画像信号を圧縮して、情報伝送量を削減する画像圧縮装置に関するものである。
【背景技術】
【０００２】
従来の画像圧縮装置は、入力画像の画像信号を圧縮して情報伝送量を削減するため、以下に示すような処理を実施する。
まず、画像圧縮装置は、入力画像の画像信号を離散コサイン変換して、その変換係数を量子化する。
そして、入力画像の低周波領域から高周波領域に向かって順番に、その画像信号の量子化係数が零値であるか、非零値であるかを調査する。
画像圧縮装置は、零値である量子化係数がｎ個以上連続している箇所を検出すると、それ以降の量子化係数をすべて零値に変更することにより、量子化係数中のゼロランを長くして、情報伝送量を削減する（例えば、特許文献１参照）。
【０００３】
【特許文献１】特開平４−１９６６９５号公報（第２頁から第３頁、第１図）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来の画像圧縮装置は以上のように構成されているので、零値である量子化係数がｎ個以上連続している箇所が存在すれば、それ以降の量子化係数をすべて零値に変更して情報伝送量を削減することができる。しかし、零値である量子化係数が連続している個数のみを基準にしているため、例えば、中周波数領域から高周波数領域にかけて重要な量子化係数が存在していても、零値である量子化係数がｎ個以上連続している箇所が低周波数領域に存在していれば、重要な量子化係数が切り捨てられて、画像の劣化を招くことがある課題があった。
【０００５】
この発明は上記のような課題を解決するためになされたもので、重要な量子化係数を切り捨てることなく、情報伝送量を削減することができる画像圧縮装置を得ることを目的とする。
【課題を解決するための手段】
【０００６】
この発明に係る画像圧縮装置は、量子化手段から出力された各画素の量子化係数のうち、零値ではない量子化係数の平均値を算出したのち、零値ではない量子化係数と当該平均値の差分絶対値和を算出し、その差分絶対値和に応じて係数閾値を設定する閾値設定手段を設け、その量子化手段から出力された各画素の量子化係数と閾値設定手段により設定された係数閾値を比較し、その係数閾値より小さい量子化係数を零値に変更するようにしたものである。
【発明の効果】
【０００７】
この発明によれば、量子化手段から出力された各画素の量子化係数のうち、零値ではない量子化係数の平均値を算出したのち、零値ではない量子化係数と当該平均値の差分絶対値和を算出し、その差分絶対値和に応じて係数閾値を設定する閾値設定手段を設け、その量子化手段から出力された各画素の量子化係数と閾値設定手段により設定された係数閾値を比較し、その係数閾値より小さい量子化係数を零値に変更するように構成したので、重要な量子化係数を切り捨てることなく、情報伝送量を削減することができる効果がある。
【発明を実施するための最良の形態】
【０００８】
実施の形態１．
図１はこの発明の実施の形態１による画像圧縮装置を示す構成図であり、図において、ブロック化部１は複数の画素からなる画像信号（あるいは、予測誤差信号）をブロック化し、各ブロックの画像信号を直交変換部２に出力する。なお、ブロック化部１はブロック化手段を構成している。
直交変換部２はブロック化部１から出力された各ブロックの画像信号を直交変換し、各画素の直交変換係数を量子化部３に出力する。なお、直交変換部２は直交変換手段を構成している。
【０００９】
量子化部３は直交変換部２から出力された直交変換係数を量子化し、各画素の量子化係数を閾値設定部４及び係数遅延部５に出力する。なお、量子化部３は量子化手段を構成している。
閾値設定部４は量子化部３から出力された各画素の量子化係数に応じて係数閾値βを設定する。なお、閾値設定部４は閾値設定手段を構成している。
【００１０】
係数遅延部５は閾値設定部４が係数閾値βの設定に要する時間だけ、量子化部３から出力された各画素の量子化係数を保持し、遅延後の量子化係数を係数切り捨て処理部６に出力する。
係数切り捨て処理部６は係数遅延部５から出力された各画素の量子化係数と閾値設定部４により設定された係数閾値βを比較し、その係数閾値βより小さい量子化係数を零値に変更する切り捨て処理を実施する。なお、係数遅延部５及び係数切り捨て処理部６から係数変更手段が構成されている。
可変長符号化部７は係数切り捨て処理部６から零値ではない量子化係数を受けると、その量子化係数を可変長符号化し、その符号化データを伝送する。なお、可変長符号化部７は符号化手段を構成している。
【００１１】
閾値設定部４のスキャン部１１は量子化部３から出力された各画素の量子化係数を所定の順序でスキャンし、そのスキャンした量子化係数を非ゼロ係数検出部１２に順次出力する。非ゼロ係数検出部１２はスキャン部１１から出力された量子化係数が零値であるか否かを判定し、零値でなければ、その量子化係数を平均値算出部１３及び係数遅延部１４に出力する。
【００１２】
閾値設定部４の平均値算出部１３は非ゼロ係数検出部１２から出力された零値ではない量子化係数の平均値を算出する。係数遅延部１４は平均値算出部１３が零値ではない量子化係数の平均値の算出に要する時間だけ、非ゼロ係数検出部１２から出力された零値ではない量子化係数を保持し、遅延後の量子化係数を分散算出部１５に出力する。
閾値設定部４の分散算出部１５は係数遅延部１４から出力された遅延後の量子化係数と平均値算出部１３により算出された平均値の差分絶対値和を算出し、その差分絶対値和に応じて係数閾値βを設定する。
図５はこの発明の実施の形態１による画像圧縮装置における係数切り捨て処理部６の処理内容を示すフローチャートである。
【００１３】
次に動作について説明する。
まず、ブロック化部１は、複数の画素からなる画像信号（あるいは、予測誤差信号）を入力すると、その画像信号を複数のブロック毎に分割し、各ブロックの画像信号を直交変換部２に出力する。なお、各ブロックのサイズは、特に限定するものではないが、この実施の形態１では、説明の便宜上、８×８のサイズに分割する。
【００１４】
直交変換部２は、ブロック化部１から各ブロックの画像信号を受けると、その画像信号を例えば離散コサイン変換などの直交変換を実施することにより、その画像信号を空間周波数領域に変換し、各画素の直交変換係数を量子化部３に出力する。
量子化部３は、直交変換部２から直交変換係数を受けると、その直交変換係数を量子化し、各画素の量子化係数を閾値設定部４及び係数遅延部５に出力する。
【００１５】
閾値設定部４は、量子化部３から各画素の量子化係数を受けると、各画素の量子化係数に応じて係数閾値βを設定する。
具体的には、以下のようにして、係数閾値βを設定する。
閾値設定部４のスキャン部１１は、量子化部３から出力された各画素の量子化係数を受けると、所定の順序で量子化係数をスキャンし、そのスキャンした量子化係数を非ゼロ係数検出部１２に順次出力する。
【００１６】
ここで、図２はスキャン部１１がジグザグスキャン方式で量子化係数をスキャンする場合のスキャン順序を示しており、図中の数字がスキャン順序を示している。
また、図３はスキャン部１１がオルタネートスキャン方式で量子化係数をスキャンする場合のスキャン順序を示しており、図中の数字がスキャン順序を示している。
【００１７】
閾値設定部４の非ゼロ係数検出部１２は、スキャン部１１から量子化係数を受ける毎に、その量子化係数が零値であるか否かを判定する。
そして、その量子化係数が零値でなければ、その量子化係数を平均値算出部１３及び係数遅延部１４に出力する。
【００１８】
閾値設定部４の平均値算出部１３は、非ゼロ係数検出部１２から出力された零値ではない量子化係数の平均値を算出する。
ここで、図４はサイズが８×８のブロックの周波数成分を示しており、Ｃ（ｎ）が量子化部３から出力される量子化係数である。特に、Ｃ（１）はＤＣ成分の量子化係数であり、Ｃ（２）〜Ｃ（６４）はＡＣ成分の量子化係数である。
この例では、平均値算出部１３は、零値ではないＡＣ成分の量子化係数Ｃ（２）〜Ｃ（６４）の平均値を算出する。
【００１９】
閾値設定部４の係数遅延部１４は、平均値算出部１３が零値ではない量子化係数の平均値の算出に要する時間だけ、非ゼロ係数検出部１２から出力された零値ではない量子化係数を保持し、遅延後の量子化係数を分散算出部１５に出力する。
閾値設定部４の分散算出部１５は、係数遅延部１４から遅延後の量子化係数を受ける毎に、遅延後の量子化係数と平均値算出部１３により算出された平均値の差分を求める。
そして、分散算出部１５は、各差分値の絶対値和を算出し、その差分絶対値和に応じて係数閾値βを設定する。即ち、分散算出部１５は、差分絶対値和が大きいほど、係数閾値βを小さい値に設定する。
【００２０】
例えば、その差分絶対値和が所定値Ａより大きい場合、図６に示すように、小さい値の量子化係数が多く存在するので、小さい値の量子化係数のみを切り捨てるため、係数閾値βを小さい値に設定する。例えば、係数閾値βを“３”に設定する。
一方、その差分絶対値和が所定値Ａより小さい場合、図７に示すように、小さい値の量子化係数は少なく、同じような値の量子化係数が多く存在するので、係数閾値βを大きい値に設定する。例えば、係数閾値βを“５”に設定する。
ただし、図６及び図７において、黒丸は量子化係数が零値であることを表しており、数字は量子化係数の値を表している。
【００２１】
係数遅延部５は、閾値設定部４が係数閾値βの設定に要する時間だけ、量子化部３から出力された各画素の量子化係数を保持し、遅延後の量子化係数を係数切り捨て処理部６に順次出力する。
係数切り捨て処理部６は、係数遅延部５から出力された各画素の量子化係数を受ける毎に、その量子化係数と閾値設定部４により設定された係数閾値βを比較し、その係数閾値βより小さい量子化係数を零値に変更する切り捨て処理を実施する。
具体的には、以下に示すような切り捨て処理を実施する。
【００２２】
まず、係数切り捨て処理部６は、係数遅延部５から量子化係数Ｃ（ｎ）を入力する（ステップＳＴ１）。ただし、ここではｎ＝１である。
係数切り捨て処理部６は、その量子化係数Ｃ（ｎ）と係数閾値βを比較し（ステップＳＴ２）、その量子化係数Ｃ（ｎ）が係数閾値βより小さければ、その量子化係数Ｃ（ｎ）を符号化データに含めないようにするため、その量子化係数Ｃ（ｎ）を零値に変更する切り捨て処理を実施する（ステップＳＴ３）。
【００２３】
次に、係数切り捨て処理部６は、ブロック内の全画素について処理を終了したか否かを判定する。即ち、ｎ＝６４であるか否かを判定し（ステップＳＴ４）、ｎ＜６４であれば、ｎの値を“１”だけインクリメントして、ステップＳＴ１の処理に移行する。
一方、ｎ＝６４であれば、当ブロックの切り捨て処理を完了する。
【００２４】
なお、量子化部３から出力された各画素の量子化係数が図６に示す通りであり、係数閾値βが“３”に設定された場合、５６番目、５９番目、６０番目、６３番目の量子化係数を零値に変更して切り捨てることができる。
また、量子化部３から出力された各画素の量子化係数が図７に示す通りであり、係数閾値βが“５”に設定された場合、５２番目、５３番目、５７番目、５９番目、６３番目の量子化係数を零値に変更して切り捨てることができる。
【００２５】
可変長符号化部７は、上記のようにして、係数切り捨て処理部６が切り捨て処理を実施し、係数切り捨て処理部６から零値ではない量子化係数を受けると、その量子化係数を可変長符号化し、その符号化データを伝送する。
【００２６】
以上で明らかなように、この実施の形態１によれば、量子化部３から出力された各画素の量子化係数に応じて係数閾値βを設定する閾値設定部４を設け、係数遅延部５から出力された各画素の量子化係数と閾値設定部４により設定された係数閾値βを比較し、その係数閾値βより小さい量子化係数を零値に変更するように構成したので、重要な量子化係数の切り捨てを防止して、画質の劣化を招くことなく、情報伝送量を削減することができる効果を奏する。
【００２７】
また、この実施の形態１によれば、量子化部３から出力された各画素の量子化係数のうち、零値ではない量子化係数の平均値を算出したのち、零値ではない量子化係数と当該平均値の差分絶対値和を算出し、その差分絶対値和に応じて係数閾値βを設定するように構成したので、画質に影響が少ない量子化係数のみを切り捨てることを可能にする係数閾値βを設定することができる効果を奏する。
即ち、閾値設定部４が、差分絶対値和が大きいほど、係数閾値βを小さい値に設定するので、小さい値の量子化係数が多く存在しているような場合には、小さい値の量子化係数のみを切り捨てることができる効果を奏する。
【００２８】
この実施の形態１によれば、複数の画素からなる画像信号又は予測誤差信号をブロック化し、各ブロックの画像信号又は予測誤差信号を直交変換部２に出力するブロック化部１を設けるように構成したので、ブロック毎に異なる特徴を有する画像が入力されても（一般的には同一ピクチャの画像は同一の特徴を有するが、同一ピクチャの画像であっても、ブロック毎に異なる特徴を有することがある）、画質に影響が少ない量子化係数のみを切り捨てることができる効果を奏する。
【００２９】
さらに、この実施の形態１によれば、係数切り捨て処理部６から零値ではない量子化係数を受けると、その量子化係数を可変長符号化する可変長符号化部７を設けるように構成したので、符号化データの伝送量を削減することができる効果を奏する。
【００３０】
実施の形態２．
図８はこの発明の実施の形態２による画像圧縮装置を示す構成図であり、図において、図１と同一符号は同一または相当部分を示すので説明を省略する。
閾値設定部８は量子化部３から出力された各画素の量子化係数に応じてゼロラン閾値αと係数閾値βを設定する。なお、閾値設定部８は閾値設定手段を構成している。
閾値設定部８の非ゼロ係数検出部１６はスキャン部１１から出力された量子化係数が零値であるか否かを判定し、零値でなければ、その量子化係数を平均値算出部１３及び係数遅延部１４に出力するとともに、零値である量子化係数の連続数を示すカウントＣｔをゼロリセットし、その量子化係数が零値であれば、そのカウントＣｔを１だけインクリメントする。
閾値設定部８の分散算出部１７は係数遅延部１４から出力された遅延後の量子化係数と平均値算出部１３により算出された平均値の差分絶対値和を算出し、その差分絶対値和に応じてゼロラン閾値αと係数閾値βを設定する。
【００３１】
係数切り捨て処理部９は係数遅延部５から零値である量子化係数が、閾値設定部８により設定されたゼロラン閾値αを上回る個数連続して出力されている状況下で、係数遅延部５から零値ではない量子化係数が出力された場合、その量子化係数が閾値設定部８により設定された係数閾値βより小さければ、その量子化係数を零値に変更する切り捨て処理を実施する。なお、係数遅延部５及び係数切り捨て処理部９から係数変更手段が構成されている。
図９はこの発明の実施の形態２による画像圧縮装置における係数切り捨て処理部９の処理内容を示すフローチャートである。
【００３２】
次に動作について説明する。
まず、ブロック化部１は、複数の画素からなる画像信号（あるいは、予測誤差信号）を入力すると、上記実施の形態１と同様に、その画像信号を複数のブロック毎に分割し、各ブロックの画像信号を直交変換部２に出力する。
【００３３】
直交変換部２は、ブロック化部１から各ブロックの画像信号を受けると、上記実施の形態１と同様に、その画像信号を例えば離散コサイン変換などの直交変換を実施することにより、その画像信号を空間周波数領域に変換し、各画素の直交変換係数を量子化部３に出力する。
量子化部３は、直交変換部２から直交変換係数を受けると、上記実施の形態１と同様に、その直交変換係数を量子化し、各画素の量子化係数を閾値設定部８及び係数遅延部５に出力する。
【００３４】
閾値設定部８は、量子化部３から各画素の量子化係数を受けると、各画素の量子化係数に応じてゼロラン閾値αと係数閾値βを設定する。
具体的には、以下のようにして、ゼロラン閾値αと係数閾値βを設定する。
閾値設定部８のスキャン部１１は、量子化部３から出力された各画素の量子化係数を受けると、上記実施の形態１と同様に、所定の順序で量子化係数をスキャンし、そのスキャンした量子化係数を非ゼロ係数検出部１６に順次出力する。
【００３５】
閾値設定部８の非ゼロ係数検出部１６は、上記実施の形態１と同様に、スキャン部１１から量子化係数を受ける毎に、その量子化係数が零値であるか否かを判定する。
そして、その量子化係数が零値でなければ、その量子化係数を平均値算出部１３及び係数遅延部１４に出力するとともに、零値である量子化係数の連続数を示すカウントＣｔをゼロリセットする。一方、その量子化係数が零値であれば、そのカウントＣｔを１だけインクリメントする。ただし、カウントＣｔの初期値は“０”である。
【００３６】
閾値設定部８の平均値算出部１３は、上記実施の形態１と同様に、非ゼロ係数検出部１６から出力された零値ではない量子化係数の平均値を算出する。
閾値設定部８の係数遅延部１４は、平均値算出部１３が零値ではない量子化係数の平均値の算出に要する時間だけ、非ゼロ係数検出部１６から出力された零値ではない量子化係数を保持し、遅延後の量子化係数を分散算出部１７に出力する。
【００３７】
閾値設定部８の分散算出部１７は、係数遅延部１４から遅延後の量子化係数を受ける毎に、遅延後の量子化係数と平均値算出部１３により算出された平均値の差分を求める。
そして、分散算出部１７は、各差分値の絶対値和を算出し、その差分絶対値和に応じてゼロラン閾値αと係数閾値βを設定する。即ち、分散算出部１７は、差分絶対値和が大きいほど、ゼロラン閾値αと係数閾値βを小さい値に設定する。
【００３８】
例えば、その差分絶対値和が所定値Ａより大きい場合、図１０に示すように、小さい値の量子化係数が多く存在するので、小さい値の量子化係数のみを切り捨てるため、ゼロラン閾値αと係数閾値βを小さい値に設定する。例えば、ゼロラン閾値αを“１”に設定し、係数閾値βを“３”に設定する。
一方、その差分絶対値和が所定値Ａより小さい場合、図１１に示すように、同じような値の量子化係数が多く存在するので、小さい値の量子化係数であっても、零値である量子化係数が連続している状況下にある場合（前にスキャンされた数個の量子化係数が零値）に限り、量子化係数を切り捨てるため、ゼロラン閾値αと係数閾値βを大きい値に設定する。例えば、ゼロラン閾値αを“２”に設定し、係数閾値βを“５”に設定する。
ただし、図１０及び図１１において、黒丸は量子化係数が零値であることを表しており、数字は量子化係数の値を表している。
【００３９】
係数遅延部５は、閾値設定部８がゼロラン閾値αと係数閾値βの設定に要する時間だけ、量子化部３から出力された各画素の量子化係数を保持し、遅延後の量子化係数を係数切り捨て処理部９に順次出力する。
係数切り捨て処理部９は、係数遅延部５から出力された各画素の量子化係数を受ける毎に、その量子化係数より前の量子化係数が連続して零値であるか否かを判定し、閾値設定部８により設定されたゼロラン閾値αを上回る個数の零値が連続していれば、その量子化係数と閾値設定部８により設定された係数閾値βを比較する。そして、その量子化係数が係数閾値βより小さければ、その量子化係数を零値に変更する切り捨て処理を実施する。
具体的には、以下に示すような切り捨て処理を実施する。
【００４０】
まず、係数切り捨て処理部９は、係数遅延部５から量子化係数Ｃ（ｎ）を入力する（ステップＳＴ１１）。ただし、ここではｎ＝１である。
次に、係数切り捨て処理部９は、閾値設定部８の非ゼロ係数検出部１６から出力されたカウントＣｔとゼロラン閾値αを比較する（ステップＳＴ１２）。
係数切り捨て処理部９は、そのカウントＣｔがゼロラン閾値αより大きければ、その量子化係数Ｃ（ｎ）と係数閾値βを比較する（ステップＳＴ１３）。
そして、係数切り捨て処理部９は、その量子化係数Ｃ（ｎ）が係数閾値βより小さければ、その量子化係数Ｃ（ｎ）を符号化データに含めないようにするため、その量子化係数Ｃ（ｎ）を零値に変更する切り捨て処理を実施する（ステップＳＴ１４）。
【００４１】
次に、係数切り捨て処理部９は、ブロック内の全画素について処理を終了したか否かを判定する。即ち、ｎ＝６４であるか否かを判定し（ステップＳＴ１５）、ｎ＜６４であれば、ｎの値を“１”だけインクリメントして、ステップＳＴ１１の処理に移行する。
一方、ｎ＝６４であれば、当ブロックの切り捨て処理を完了する。
【００４２】
なお、量子化部３から出力された各画素の量子化係数が図１０に示す通りであり、ゼロラン閾値αが“１”、係数閾値βが“３”に設定された場合、５６番目、６３番目の量子化係数を零値に変更して切り捨てることができる。
また、量子化部３から出力された各画素の量子化係数が図１１に示す通りであり、ゼロラン閾値αが“２”、係数閾値βが“５”に設定された場合、５４番目、６３番目の量子化係数を零値に変更して切り捨てることができる。
【００４３】
可変長符号化部７は、上記のようにして、係数切り捨て処理部９が切り捨て処理を実施し、係数切り捨て処理部９から零値ではない量子化係数を受けると、上記実施の形態１と同様に、その量子化係数を可変長符号化し、その符号化データを伝送する。
【００４４】
以上で明らかなように、この実施の形態２によれば、量子化部３から出力された各画素の量子化係数に応じてゼロラン閾値αと係数閾値βを設定する閾値設定部８を設け、係数遅延部５から零値である量子化係数がゼロラン閾値αを上回る個数連続して出力されている状況下で、係数遅延部５から零値ではない量子化係数が出力された場合、その量子化係数が係数閾値βより小さければ、その量子化係数を零値に変更するように構成したので、画像に影響のない量子化係数を切り捨てつつ、長いゼロランを発生させることができるようになり、その結果、画質の劣化を招くことなく、情報伝送量を削減することができる効果を奏する。
【００４５】
また、この実施の形態２によれば、量子化部３から出力された各画素の量子化係数のうち、零値ではない量子化係数の平均値を算出したのち、零値ではない量子化係数と当該平均値の差分絶対値和を算出し、その差分絶対値和に応じてゼロラン閾値αと係数閾値βを設定するように構成したので、画質に影響が少ない量子化係数のみを切り捨てることを可能にするゼロラン閾値αと係数閾値βを設定することができる効果を奏する。
即ち、閾値設定部８が、差分絶対値和が大きいほど、ゼロラン閾値αと係数閾値βを小さい値に設定するので、小さい値の量子化係数が多く存在しているような場合には、小さい値の量子化係数のみを切り捨てることができ、同じような値の量子化係数が多く存在しているような場合には、ゼロランを長くすることができる量子化係数を切り捨てることができる効果を奏する。
【００４６】
実施の形態３．
上記実施の形態２では、閾値設定部８が零値ではない量子化係数と平均値の差分絶対値和を算出し、その差分絶対値和に応じてゼロラン閾値αと係数閾値βを設定するものについて示したが、各画素の量子化係数から差分絶対値和以外の指標（例えば、標準偏差）を算出し、その指標に応じてゼロラン閾値αと係数閾値βを設定するようにしてもよく、上記実施の形態２と同様の効果を奏することができる。
【００４７】
実施の形態４．
上記実施の形態１〜３では、画像圧縮装置の各構成要素（例えば、ブロック化部１、直交変換部２、量子化部３、閾値設定部４、係数遅延部５、係数切り捨て処理部６、可変長符号化部７）がハードウェア化されているものについて示したが、各構成要素の処理内容が記述されたプログラムを用意し、図示せぬ画像圧縮装置のＣＰＵが当該プログラムを実行するようにしてもよい。
【図面の簡単な説明】
【００４８】
【図１】この発明の実施の形態１による画像圧縮装置を示す構成図である。
【図２】スキャン部がジグザグスキャン方式で量子化係数をスキャンする場合のスキャン順序を示す説明図である。
【図３】スキャン部がオルタネートスキャン方式で量子化係数をスキャンする場合のスキャン順序を示す説明図である。
【図４】量子化部から出力される量子化係数を示す説明図である。
【図５】この発明の実施の形態１による画像圧縮装置における係数切り捨て処理部の処理内容を示すフローチャートである。
【図６】量子化部から出力される量子化係数を示すグラフ図である。
【図７】量子化部から出力される量子化係数を示すグラフ図である。
【図８】この発明の実施の形態２による画像圧縮装置を示す構成図である。
【図９】この発明の実施の形態２による画像圧縮装置における係数切り捨て処理部の処理内容を示すフローチャートである。
【図１０】量子化部から出力される量子化係数を示すグラフ図である。
【図１１】量子化部から出力される量子化係数を示すグラフ図である。
【符号の説明】
【００４９】
１  ブロック化部（ブロック化手段）、２  直交変換部（直交変換手段）、３  量子化部（量子化手段）、４  閾値設定部（閾値設定手段）、５  係数遅延部（係数変更手段）、６  係数切り捨て処理部（係数変更手段）、７  可変長符号化部（符号化手段）、８  閾値設定部（閾値設定手段）、９  係数切り捨て処理部（係数変更手段）、１１  スキャン部、１２  非ゼロ係数検出部、１３  平均値算出部、１４  係数遅延部、１５  分散算出部、１６  非ゼロ係数検出部、１７  分散算出部。
【図１】
2005236561.tif 000003
【図２】
2005236561.tif 000004
【図３】
2005236561.tif 000005
【図４】
2005236561.tif 000006
【図５】
2005236561.tif 000007
【図６】
2005236561.tif 000008
【図７】
2005236561.tif 000009
【図８】
2005236561.tif 000010
【図９】
2005236561.tif 000011
【図１０】
2005236561.tif 000012
【図１１】
2005236561.tif 000013