(57)【要約】【課題】  重要な量子化係数を切り捨てることなく、画像情報量を削減することを可能にする。【解決手段】  切り捨て設定部は、ブロック内の量子化係数について、連続する非ゼロ量子化係数の個数を算出し、またＡＣ成分の絶対値和を算出し、さらに高周波側からの絶対値和を算出し、係数切り捨て処理部は、非ゼロ量子化係数の個数が０か否かを判定する第１の処理条件、処理対象の量子化係数がＡＣ成分の量子化係数の絶対値和に１未満の任意の値αを乗じた値より小さいか否かを判定する第２の処理条件、高周波側からの量子化係数の絶対値和がＡＣ成分の量子化係数の絶対値和に１未満の任意の値βを乗じた値より小さいか否かを判定する第３の処理条件を設定し、第１乃至第３の処理条件に従って、処理対象の量子化係数をゼロに切り捨てる処理を行う。【選択図】        図１
2005204238.tif 000002
【特許請求の範囲】
【請求項１】
画像信号あるいは予測誤差信号を複数の画素からなるブロックに分割するブロック化部と、ブロックに分割された画像信号あるいは予測誤差信号を直交変換して直交変換係数を出力する直交変換部と、前記直交変換係数を量子化して量子化係数を出力する量子化部と、量子化係数をゼロに切り捨てる際の処理条件を設定するためのデータをブロック内の量子化係数から抽出する切り捨て設定部と、設定された処理条件に従って前記量子化部が出力した量子化係数の切り捨て処理を実行し、前記量子化係数を圧縮する係数切り捨て処理部とを備えた画像情報量圧縮装置であって、
前記切り捨て設定部は、
前記ブロック内の量子化係数の中から非ゼロ量子化係数を検出し、連続する非ゼロ量子化係数の個数を算出する非ゼロ係数検出部と、
前記ブロック内の量子化係数のＡＣ成分の絶対値和を算出する第１加算部と、
前記ブロック内の量子化係数の高周波側からの絶対値和を算出する第２加算部とを有し、
前記係数切り捨て処理部は、
前記非ゼロ量子化係数の個数が０か否かを判定する第１の処理条件と、
前記量子化部からの量子化係数が前記ＡＣ成分の量子化係数の絶対値和に１未満の任意の値αを乗じた値より小さいか否かを判定する第２の処理条件と、
前記高周波側からの量子化係数の絶対値和が前記ＡＣ成分の量子化係数の絶対値和に１未満の任意の値βを乗じた値より小さいか否かを判定する第３の処理条件とを設定し、
前記第１乃至第３の処理条件に従って、前記量子化部が出力した量子化係数をゼロに切り捨てる処理を行うようにしたことを特徴とする画像情報量圧縮装置。
【請求項２】
係数切り捨て処理部は、
第１の処理条件で非ゼロ量子化係数の個数が０でない場合には第２の処理条件の判定を行い、
当該第２の処理条件で量子化部からの量子化係数の方が小さい場合には第３の処理条件の判定を行い、
当該第３の処理条件で第２加算部が示す高周波側からの量子化係数の絶対値和の方が小さい場合には量子化部からの量子化係数をゼロに切り捨て処理し、
前記第１、第２および第３処理条件で反する判定結果が出た場合には、前記量子化部からの量子化係数を切り捨てずに出力するようにしたことを特徴とする請求項１記載の画像情報量圧縮装置。
【請求項３】
画像信号あるいは予測誤差信号を複数の画素からなるブロックに分割し、ブロックに分割された画像信号あるいは予測誤差信号を直交変換し、前記直交変換係数を量子化して量子化係数を得、得られた量子化係数を設定された処理条件に従ってゼロに切り捨てる処理を行い、前記量子化係数を圧縮する画像情報量圧縮方法において、
前記ブロック内の量子化係数の中から連続する非ゼロ量子化係数の個数を算出し、算出された個数が０か否かを判定する第１の処理条件を設定し、
前記ブロック内の量子化係数のＡＣ成分の絶対値和を算出し、入力される量子化計数が前記ＡＣ成分の絶対値和に１未満の任意の値αを乗じた値より小さいか否かを判定する第２の処理条件を設定し、
前記ブロック内の量子化係数の高周波側からの絶対値和を算出し、算出された高周波側からの絶対値和が前記ＡＣ成分の量子化係数の絶対値和に１未満の任意の値βを乗じた値より小さいか否かを判定する第３の処理条件を設定し、
前記第１の処理条件で非ゼロ量子化係数の個数が０でない場合には前記第２の処理条件の判定を行い、
前記第２の処理条件で量子化係数の方が小さい場合には前記第３の処理条件の判定を行い、
前記第３の処理条件で前記高周波側からの量子化係数の絶対値和の方が小さい場合には入力された量子化係数をゼロに切り捨て処理し、
前記第１乃至第３の処理条件で反する判定結果が出た場合には入力された量子化係数を切り捨てずに出力するようにしたことを特徴とする画像情報量圧縮方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像信号を直交変換して量子化する画像情報量圧縮装置および画像情報量圧縮方法に関するものである。
【背景技術】
【０００２】
従来の画像データ圧縮装置において、伝送する画像情報量を削減するために、ゼロ係数判別部を備え、量子化係数を低周波領域から高周波領域に向かって順番に量子化係数がゼロか非ゼロかを調べ、ゼロ係数がある設定値以上続いた場合にはそれ以降の量子化係数をゼロに切り捨てて量子化係数中のゼロランを長くするという処理が行なわれている（例えば、特許文献１参照）。
【０００３】
上記ゼロ係数判別部の処理の具体的な手順では、まず、ゼロ係数の連続する数を示すＣＯＵＮＴと連続するゼロ係数が閾値を超えたかどうかを示すＦＬＡＧを初期化してゼロにする。ここで、ＦＬＡＧは、連続するゼロ係数の数が閾値ｎ（１≦ｎ≦６３）を超えていない場合は０で、閾値ｎを超えた場合は１となる。次に、ＦＬＡＧがゼロか非ゼロかを判別（ＦＲＡＧ判別ステップ）する。ＦＬＡＧがゼロの場合には、係数がゼロか非ゼロかを調べるステップへ進む。係数が非ゼロの場合には、ＣＯＵＮＴがゼロに初期化されて、ＦＬＡＧ判別ステップへ戻る。一方、係数がゼロの場合には、ＣＯＵＮＴに１を加えた後、そのＣＯＵＮＴが閾値ｎを超えているかを調べる。ＣＯＵＮＴが閾値ｎより小さい場合には、そのままＦＬＡＧ判別ステップへ戻るが、ＣＯＵＮＴが閾値ｎ以上の場合には、ＦＬＡＧに１が代入された後、ＦＬＡＧ判別ステップに戻る。また、ＦＬＡＧ判別ステップにおいて、ＦＬＡＧが１の場合には、それ以降の係数はすべてゼロに切り捨てられる。ここで、係数は低周波領域から高周波領域に向かって調べられる。
【０００４】
【特許文献１】特開平４−１９６６９５号公報（３頁、第２図）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
以上のような従来の画像データ圧縮装置では、ゼロ係数の連続する数（ゼロラン）だけを基準に係数を切り捨て、しかも一度ゼロランが閾値を超えるとそれ以降の係数がすべてゼロに切り捨てられている。したがって、中周波数領域から高周波数領域にかけて重要な量子化係数を切り捨ててしまうことになり、画像の劣化を招くという問題点があった。また、場合によっては、低周波数領域の係数もゼロに切り捨てられる可能性がある。
【０００６】
この発明は上記のような問題点を解決するためになされたもので、重要な量子化係数を切り捨てることなく、画像情報量を削減することを可能にする画像情報量圧縮装置および画像情報量圧縮方法を得ることを目的とする。
【課題を解決するための手段】
【０００７】
この発明に係る画像情報量圧縮装置は、画像信号あるいは予測誤差信号を複数の画素からなるブロックに分割するブロック化部と、ブロックに分割された画像信号あるいは予測誤差信号を直交変換して直交変換係数を出力する直交変換部と、直交変換係数を量子化して量子化係数を出力する量子化部と、量子化係数をゼロに切り捨てる際の処理条件を設定するためのデータをブロック内の量子化係数から抽出する切り捨て設定部と、設定された処理条件に従って量子化部が出力した量子化係数の切り捨て処理を実行し、量子化係数を圧縮する係数切り捨て処理部とを備えた画像情報量圧縮装置であって、切り捨て設定部は、ブロック内の量子化係数の中から非ゼロ量子化係数を検出し、連続する非ゼロ量子化係数の個数を算出する非ゼロ係数検出部と、ブロック内の量子化係数のＡＣ成分の絶対値和を算出する第１加算部と、ブロック内の量子化係数の高周波側からの絶対値和を算出する第２加算部とを有し、係数切り捨て処理部は、非ゼロ量子化係数の個数が０か否かを判定する第１の処理条件と、量子化部からの量子化係数がＡＣ成分の量子化係数の絶対値和に１未満の任意の値αを乗じた値より小さいか否かを判定する第２の処理条件と、高周波側からの量子化係数の絶対値和がＡＣ成分の量子化係数の絶対値和に１未満の任意の値βを乗じた値より小さいか否かを判定する第３の処理条件とを設定し、第１乃至第３の処理条件に従って、量子化部が出力した量子化係数をゼロに切り捨てる処理を行うようにしたものである。
【発明の効果】
【０００８】
この発明によれば、低周波数領域から高周波数領域にかけて画質の劣化を抑えながら量子化係数をゼロに切り捨てつつ長いゼロランを発生させることができ、重要な量子化係数を切り捨てることなく画像情報量の削減を可能にする効果がある。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
図１はこの発明の実施の形態１による画像情報量圧縮装置の構成を示すブロック図である。
図において、ブロック化部１０１は、入力画像信号あるいは予測誤差信号を複数の画素からなるブロックに分割する手段である。直交変換部１０２は、複数の画素からなるブロックに分割された画像信号を直交変換して直交変換係数を出力する手段である。量子化部１０３は、直交変換係数を量子化して量子化係数を出力する手段である。係数切り捨て処理部１０４は、後述するような設定された処理条件に従って量子化部１０３が出力した量子化係数に切り捨て処理を実行し量子化係数を圧縮する手段である。可変長符号化部１０５は、圧縮された量子化係数に可変長符号化処理を実行して符号化データを得る手段である。切り捨て設定部１０６は、係数切り捨て処理部１０４で量子化係数をゼロに切り捨てる際の処理条件を設定するためのデータをブロック内の量子化係数から抽出する手段で、スキャン部１０７、非ゼロ係数検出部１０８、第１加算部１０９、後方スキャン部１１０、第２加算部１１１から構成されている。
【００１０】
スキャン部１０７は、ブロック内の量子化後の直交変換係数（以下、量子化係数とする。）をスキャンする手段である。非ゼロ係数検出部１０８は、スキャンされたブロック内の量子化係数の中から非ゼロ量子化係数を検出し、連続する非ゼロ量子化係数の個数を算出する手段である。第１加算部１０９は、スキャンされたブロック内の量子化係数のＡＣ成分の絶対値和を算出する手段である。後方スキャン部１１０は、ブロック内の量子化係数を高周波側からスキャンする手段である。第２加算部１１１は、ブロック内の量子化係数の高周波側からの絶対値和を算出する手段である。
【００１１】
次に動作について説明する
画像信号あるいは予測誤差信号がブロック化部１０１に入力されると、その画像データは複数の画素からなる所定の数のブロックに分割される。ブロックに分割された画像信号は、直交変換部１０２において直交変換が施され、空間周波数領域に変換される。直交変換された係数は量子化部１０３で量子化され量子化係数となる。係数切り捨て処理部１０４では、量子化部１０３からの量子化係数に対して、切り捨て設定部１０６でブロック内の量子化係数から抽出したデータに基づいて処理条件を設定し、その処理条件に従って後述の係数切り捨て処理が施され圧縮される。ここで、量子化部１０３が量子化係数を係数切り捨て処理部１０４へ入力するタイミングは、切り捨て設定部１０６におけるデータが抽出されてから行われる。そして、可変長符号化部１０５では、圧縮された量子化係数に可変長符号化処理を実行して符号化データが得られる。
【００１２】
一方、切り捨て設定部１０６において、量子化部１０３からのブロック内の量子化係数がスキャン部１０７によりスキャンされる。図２はスキャン部１０７によるジグザグスキャン方式を示し、図３はスキャン部１０７によるオルタネートスキャン方式を示し、それぞれの図の数字は量子化係数のスキャン順序を示している。非ゼロ係数検出部１０８では、スキャンされた量子化係数について、ブロック中の非ゼロ量子化係数を検出し、非ゼロ量子化係数が連続する場合にはその個数を算出する。また第１加算部１０９では、ブロック中の量子化係数のＡＣ成分の絶対値和が算出される。また、後方スキャン部１１０では、ブロック中の量子化係数に対して高周波側からジグザグスキャン方式あるいはオルタネートスキャン方式によりスキャンが行われる。第２加算部１１１では、スキャンされた量子化係数の高周波側からの絶対値和が算出される。非ゼロ係数検出部１０８の非ゼロ量子化係数の個数、第１加算部１０９の絶対値和および第２加算部１１１の高周波側からの絶対値和が係数切り捨て処理部１０４に与えられ、これらのデータを用いて処理条件が設定される。係数切り捨て処理部１０４では、以下に述べるように、この処理条件に従って量子化部１０３からの量子化係数に対して切り捨て処理が実行され圧縮を行う。
【００１３】
次に、係数切り捨て処理の動作について説明する。
図４はブロック化部１０１により画像信号を８×８画素にブロック分割した場合の周波数成分を示す説明図である。図において、Ｃ（ｎ）は量子化部１０３から出力される量子化係数であり、Ｃ（１）はＤＣ成分の量子化係数で、Ｃ（２）〜Ｃ（６４）はＡＣ成分の量子化係数である。
【００１４】
図５は係数切り捨て処理部１０４で実行される係数切り捨て処理の動作を示すフローチャートである。
量子化部１０３からの量子化係数Ｃ（ｎ）が係数切り捨て処理部１０４へ入力される（ステップＳＴ１）。ここではｎ＝１である。係数切り捨て処理部１０４では、非ゼロ係数検出部１０８で算出した非ゼロ量子化係数の個数が“０”でないか否かの判定（第１の処理条件）を行う（ステップＳＴ２）。非ゼロ量子化係数の個数が“０”でない場合には、量子化係数Ｃ（ｎ）が第１加算部１０９で算出したブロック内のＡＣ成分の量子化係数の絶対値和（図５では「ブロック内絶対値和」）に１未満の任意の値αを乗じた値より小さいか否かの判定（第２の処理条件）を行う（ステップＳＴ３）。なお、任意の値αは量子化係数の値が大きいものはゼロに切り捨てないようにするために選ぶ値である。一方、ステップＳＴ１で、非ゼロ量子化係数の個数が“０”の場合には、切り捨て処理をせずステップＳＴ６へ移行する。
【００１５】
次に、ステップＳＴ３において、量子化係数Ｃ（ｎ）の方が小さかった場合には、第２加算部１１１で算出した高周波側からの量子化係数の絶対値和が、第１加算部１０９で算出したＡＣ成分の量子化係数の絶対値和に１未満の任意の値βを乗じた値より小さいか否かの判定（第３の処理条件）を行う（ステップＳＴ４）。なお、任意の値βは中周波数領域の量子化係数をなるべくゼロに切り捨てないようにするために選ぶ値である。一方、ステップＳＴ３で、量子化係数Ｃ（ｎ）の方が大きかった場合には、切り捨て処理をせずステップＳＴ６へ移行する。
【００１６】
ステップＳＴ４において、高周波側からの量子化係数の絶対値和の方が小さかった場合には、量子化係数Ｃ（ｎ）をゼロに切り捨てる処理が実行され（ステップＳＴ５）、ステップＳＴ６に移行する。一方、ステップＳＴ４で、高周波側からの量子化係数の絶対値和の方が大きかった場合には、切り捨て処理をせずステップＳＴ６に移行する。
ステップＳＴ６では、ブロック内におけるすべての量子化係数Ｃ（ｎ）の処理が終了したかを判定し、ｎ＝６４でなければ、ステップＳＴ７でｎをｎ＋１に更新してステップＳＴ１に戻り、またｎ＝６４となった場合には係数切り捨て処理を終了する。
【００１７】
次に、係数切り捨て処理部１０４による切り捨て処理の動作について、具体的例を用いて説明する。図６は量子化部１０３から出力される量子化係数をスキャン順に示す説明図である。図において、黒丸は量子化係数がゼロであることを表す。ここで、１未満の任意の値αを０．１、１未満の任意の値βを０．２とする。また、ブロックにおける量子化係数Ｃ（ｎ）の絶対値和を１００、スキャン順序で５０番目の量子化係数の値を４、５３番目の量子化係数の値を１１、５４番目の量子化係数の値を２、５５番目の量子化係数の値を１、５８番目の量子化係数の値を３、６１番目の量子化係数の値を１とする。
【００１８】
一般的に、画像信号はピクチャによって異なった特徴を持ち、階調変化の激しい画像があれば、緩やかな画像もある。また、同一ピクチャにおいてもブロック毎に異なった特徴を持っている。つまり、画像信号の特性は入力画像により動的に変化し、図６はその一例を示している。図ではスキャン順序で８番目の量子化係数の前にゼロランが４個存在している。特許文献１の従来の方法によると、例えばゼロランが３個続いたら、それ以降の量子化係数をすべてゼロに切り捨てることになるので、この図の場合だと８番目以降のすべての量子化係数はゼロに切り捨てられることになる。したがって、従来の方法では、中周波から高周波の量子化係数を考慮せずに切り捨ててしまう場合が起る。このことに対し、この実施の形態１では、第２加算部１１１でブロック内の高周波側からの量子化係数の絶対値和を算出し、量子化係数をゼロに切り捨てる際の処理条件としているので、中周波から高周波の量子化係数をゼロに切り捨てることにより生じる画質の劣化を回避することができる。
【００１９】
図６におけるスキャン順序で５８番目、６１番目の非ゼロ量子化係数は、下に示すように、図５のステップＳＴ２、ＳＴ３およびＳＴ４の各条件をすべて満たしているので、ゼロに切り捨てられる。
５８番目の量子化係数について：
ステップＳＴ２：非ゼロ量子化係数の個数（２）≠０                  →  真
ステップＳＴ３：量子化係数値（３）＜１００×０．１                →  真
ステップＳＴ４：高周波側からの絶対値和（４）＜１００×０．２      →  真
６１番目の量子化係数について：
ステップＳＴ２：非ゼロ量子化係数の個数（２）≠０                  →  真
ステップＳＴ３：量子化係数値（１）＜１００×０．１                →  真
ステップＳＴ４：高周波側からの絶対値和（１）＜１００×０．２      →  真
【００２０】
図６におけるスキャン順序で５４番目、５５番目の非ゼロ量子化係数、以下に示すように、図５のステップＳＴ２の条件を満たさないので、ゼロに切り捨てない。
５４番目の量子化係数について：
ステップＳＴ２：非ゼロ量子化係数の個数（０）≠０                  →  偽
５５番目の量子化係数について：
ステップＳＴ２：非ゼロ量子化係数の個数（０）≠０                  →  偽
このように連続する非ゼロ量子化係数を算出することによって、孤立した量子化係数だけを切り捨て対象とすることができる。
【００２１】
また、図６におけるスキャン順序で５３番目の非ゼロ量子化係数は、以下に示すように、図５のステップＳＴ３の条件を満たさないので、ゼロに切り捨てない。
５３番目の量子化係数について：
ステップＳＴ３：量子化係数値（１１）＜１００×０．１              →  偽
このように量子化係数Ｃ（ｎ）がブロック内の量子化係数の絶対値和に対してどれくらいの割合かを考慮することによって、ブロックの特性に応じて量子化係数をゼロに切り捨てることができ、画質の劣化を回避できる。
【００２２】
さらに、図６におけるスキャン順序で５０番目の非ゼロ量子化係数は、以下に示すように、図５のステップＳＴ４の条件を満たさないので、ゼロに切り捨てない。
５０番目の量子化係数について：
ステップＳＴ４：高周波側からの絶対値和（２２）＜１００×０．２    →  偽
このように高周波側の量子化係数を考慮することによって、ブロックの特性に応じて低周波側からどこまでの量子化係数を切り捨て対象とするかを判断することができる。
【００２３】
以上のように、この実施の形態１によれば、非ゼロ係数検出部１０８によりブロック内の量子化係数の中から連続する非ゼロ量子化係数の個数を算出し、第１加算部１０９によりブロック内の量子化係数のＡＣ成分の絶対値和を算出し、また第２加算部１１１によりブロック内の量子化係数の高周波側からの絶対値和を算出し、係数切り捨て処理部１０４が、これらの算出されたデータを用いて非ゼロ量子化係数の個数が０か否かを判定する第１の処理条件と、量子化部１０３からの量子化係数Ｃ（ｎ）がＡＣ成分の量子化係数の絶対値和に１未満の任意の値αを乗じた値より小さいか否かを判定する第２の処理条件と、高周波側からの量子化係数の絶対値和がＡＣ成分の量子化係数の絶対値和に１未満の任意の値βを乗じた値より小さいか否かを判定する第３の処理条件とを設定し、これらの処理条件に従って、量子化係数Ｃ（ｎ）をゼロに切り捨てる処理を行うようにしている。したがって、低周波数領域から高周波数領域にかけて画質の劣化を抑えながら量子化係数をゼロに切り捨てつつ、長いゼロランを発生させることができ、これにより、重要な量子化係数を切り捨てることなく伝送する符号化データ量を削減できる効果が得られる。
【００２４】
なお、上記実施の形態１においては、ブロックのサイズを８×８としたがブロックサイズは任意である。また、この発明は、システムあるいは装置にプログラムを供給することによっても達成されるものである。
【図面の簡単な説明】
【００２５】
【図１】この発明の実施の形態１による画像情報量圧縮装置の構成を示すブロック図である。
【図２】この発明の実施の形態１に係るスキャン部のジグザグスキャン方式を示す説明図である。
【図３】この発明の実施の形態１に係るスキャン部のオルタネートスキャン方式を示す説明図である。
【図４】画像信号を８×８画素にブロック分割した場合の周波数成分を示す説明図である。
【図５】この発明の実施の形態１に係る係数切り捨て処理部の係数切り捨て処理の動作を示すフローチャートである。
【図６】量子化部から出力される量子化係数の例を示す説明図である。
【符号の説明】
【００２６】
１０１  ブロック化部、１０２  直交変換部、１０３  量子化部、１０４  係数切り捨て処理部、１０５  可変長符号化部、１０６  切り捨て設定部、１０７  スキャン部、１０８  非ゼロ係数検出部、１０９  第１加算部、１１０  後方スキャン部、１１１  第２加算部。
【図１】
2005204238.tif 000003
【図２】
2005204238.tif 000004
【図３】
2005204238.tif 000005
【図４】
2005204238.tif 000006
【図５】
2005204238.tif 000007
【図６】
2005204238.tif 000008