(57)【要約】【課題】画像の絵柄や変化等に対して符号発生量を適応的に制御して画質の劣化を少なくすることと、空間的な冗長度を効率的に削減して符号量に余裕を持たせ画面全体の画質を向上させること。【解決手段】この適応型フィルタ１８は、異なるフィルタリング特性を与える複数たとえばＮ個（Ｎは整数）のフィルタ係数Ｆ１，Ｆ２，‥‥ＦＮをそれぞれ係数テーブルとして保持する係数テーブルメモリ４４と、所定のパラメータに応じてフィルタ係数Ｆ１，Ｆ２，‥‥ＦＮの中の１つ（ＦＫ）を選択するためのフィルタ係数選択部４６と、このフィルタ係数選択部４６で選択されたフィルタ係数ＦＫを用いてＤＣＴ変換器１６からのＤＣＴ係数に所定の演算を施すフィルタ計算部４８とを有している。【選択図】    図２
2004336103.tif 000002
【特許請求の範囲】
【請求項１】
１フレーム分の画像データを複数個の変換ブロックに分割するブロック分割部と、
前記変換ブロックを構成する複数個の画素データに直交変換を施して複数の周波数成分に応じた変換係数を生成する直交変換部と、
前記変換係数を所望の量子化係数で量子化する量子化部と、
量子化された前記変換係数を符号化してビット列の符号化データを生成する符号化部と、
情報圧縮率を制御するために量子化前の前記変換係数にフィルタリングを施すフィルタ部と
を有する画像情報圧縮装置。
【請求項２】
前記フィルタ部が、異なるフィルタ特性を与える複数のフィルタ係数を有し、所定のパラメータに応じて前記複数のフィルタ係数の中の１つを選択して前記フィルタリングに用いる請求項１に記載の画像情報圧縮装置。
【請求項３】
前記フィルタ部が、前記量子化部で用いる量子化係数に応じたフィルタ係数を選択する請求項２に記載の画像情報圧縮装置。
【請求項４】
前記フィルタ部が、前記変換ブロックの輝度に応じたフィルタ係数を選択する請求項２に記載の画像情報圧縮装置。
【請求項５】
前記フィルタ部が、前記変換ブロックの当該フレーム内の位置に応じたフィルタ係数を選択する請求項２に記載の画像情報圧縮装置。
【請求項６】
前記フィルタ部が、前記量子化部で用いる量子化係数と前記変換ブロックの輝度値とに応じたフィルタ係数を選択する請求項２に記載の画像情報圧縮装置。
【請求項７】
前記フィルタ部が、前記量子化部で用いる量子化係数と前記変換ブロックの当該フレーム内の位置とに応じたフィルタ係数を選択する請求項２に記載の画像情報圧縮装置。
【請求項８】
前記フィルタ部が、前記変換ブロックの輝度値と前記変換ブロックの当該フレーム内の位置とに応じたフィルタ係数を選択する請求項２に記載の画像情報圧縮装置。
【請求項９】
前記フィルタ部が、前記量子化部で用いる量子化係数と前記変換ブロックの輝度値と前記変換ブロックの当該フレーム内の位置とに応じたフィルタ係数を選択する請求項２に記載の画像情報圧縮装置。
【請求項１０】
前記フィルタ部が、前記量子化係数の値が大きいほど高周波成分に対して大きな帯域制限を与えるフィルタ係数を選択する請求項３，６，７，９のいずれか一項に記載の画像情報圧縮装置。
【請求項１１】
前記符号化部より出力される符号化データのビットレートを制御するために前記量子化部で用いる量子化係数を選択するレートコントロール部を有する請求項３，６，７，９，１０のいずれか一項に記載の画像情報圧縮装置。
【請求項１２】
前記フィルタ部が、前記変換ブロックの輝度値が下限値または上限値に近いほど高周波成分に対して大きな帯域制限を与えるフィルタ係数を選択する請求項４，６，８，９のいずれか一項に記載の画像情報圧縮装置。
【請求項１３】
前記変換ブロックを構成する画素データの輝度成分に基づいて前記変換ブロックの輝度値を検出するブロック輝度検出部を有する請求項４，６，８，９，１２のいずれか一項に記載の画像情報圧縮装置。
【請求項１４】
前記フィルタ部が、前記変換ブロックが当該フレーム内の所定範囲の周辺部に属するときに高周波成分に大きな帯域制限を与えるフィルタ係数を選択する請求項５，７，８，９のいずれか一項に記載の画像情報圧縮装置。
【請求項１５】
前記ブロック分割部におけるブロック分割処理の中で前記変換ブロックの当該フレーム内の位置を検出するブロック位置検出手段を有する請求項５，７，８，９，１４のいずれか一項に記載の画像情報圧縮装置。
【請求項１６】
前記ブロック分割部が、１フレーム分の画像データをＮ画素×Ｎライン（Ｎは整数）の変換ブロックに分割する請求項１〜１５のいずれか一項に記載の画像情報圧縮装置。
【請求項１７】
前記ブロック分割部が、１フレーム分の画像データをＭ画素×Ｍライン（Ｍ＝４Ｎ）のマクロブロックに分割する第１のブロック分割手段と、各々の前記マクロブロックをＮ画素×Ｎラインの変換ブロックに４分割する第２のブロック分割手段とを有する請求項１６に記載の画像情報圧縮装置。
【請求項１８】
前記直交変換部が、前記変換ブロックを構成するＮ×Ｎ個の画素データに離散コサイン変換（ＤＣＴ）を施してＮ×Ｎ個の周波数成分に応じたＮ×Ｎ個のＤＣＴ係数要素を一組のＤＣＴ係数として生成する離散コサイン変換手段を有する請求項１６または１７に記載の画像情報圧縮装置。
【請求項１９】
前記フィルタ部が、
各々の前記フィルタ係数をＮ×Ｎ個のフィルタ係数要素からなる係数テーブルとして与える係数テーブルメモリと、
前記パラメータに応じて複数の前記係数テーブルの中の１つを選択するためのフィルタ係数選択部と、
前記変換ブロックに対して選択された前記係数テーブルのＮ×Ｎ個のフィルタ係数要素を基にそれぞれ対応するＮ×Ｎ個のＤＣＴ係数要素に所定の演算を施すフィルタ演算部と
を有する請求項１８に記載の画像情報圧縮装置。
【請求項２０】
前記フィルタ演算部が、前記Ｎ×Ｎ個のＤＣＴ係数要素に前記Ｎ×Ｎ個のフィルタ係数要素を１対１の対応関係で掛ける請求項１９に記載の画像情報圧縮装置。
【請求項２１】
前記符号化部が、各符号に発生確率に応じた符号長を割り当てる可変長符号化手段を有する請求項１〜２０のいずれか一項に記載の画像情報圧縮装置。
【請求項２２】
前記量子化部からの量子化された前記変換係数を復号して各フレームの復号画像データを生成する局所復号部と、
現フレームの画像データと前記局所復号部より得られる前フレームの復号画像データとに基づいて両フレームの間で動いた部分の移動方向と移動量とを表す動きベクトルを生成する動き検出部と、
前記局所復号部より得られる前記前フレームの復号画像データと前記動き検出部より得られる前記動きベクトルとに基づいて前記現フレームの画像を予測した予測画像データを生成する動き補償部と、
前記現フレームの画像データと前記予測画像データとの差分をとり、その差分の画像を表す差分画像データを前記直交変換部に与える差分演算部と
を有する請求項１〜２１のいずれか一項に記載の画像情報圧縮装置。
【請求項２３】
前記局所復号部が、
前記量子化部からの量子化された前記変換係数を前記量子化係数に対応する逆量子化係数を用いて逆量子化する逆量子化部と、
前記逆量子化部より出力された変換係数を逆変換して前記復号差分画像データを生成する逆変換部と、
前記逆変換部より得られた前記復号差分画像データと前記動き補償部からの前記予測画像データとを加え合わせて前記復号画像データを生成する加算部と、
前記加算部より得られる前記復号画像データをフレーム単位で蓄積するフレームメモリと
を有する請求項２２に記載の画像情報圧縮装置。
【請求項２４】
前記動き検出部が、前記マクロブロック毎に前記動きベクトルを生成する請求項２２または２３に記載の画像情報圧縮装置。
【請求項２５】
前記符号化部が、前記動き検出部からの動きベクトルを前記量子化部からの量子化された前記変換係数に多重して符号化する請求項２２〜２４のいずれか一項に記載の画像情報圧縮装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像情報を符号化して圧縮する技術に係り、特に直交変換の符号化アルゴリズムを用いる画像情報圧縮装置に関する。
【０００２】
【従来の技術】
画像をディジタル化して扱う場合は、画像情報を符号化して圧縮するのが通例である。画像情報圧縮の有効な手法は画像に含まれている空間的な冗長度を削減することであり、この方面の代表的な符号化手法として離散コサイン変換（ＤＣＴ）を用いる変換符号化がよく知られている。変換符号化では、入力画像データをたとえば８画素×８ラインにブロック化し、２次元ＤＣＴを施して、画素間の相関除去を受けた変換係数つまりＤＣＴ係数を生成する。通常は、ＤＣＴ係数を有限精度（ビット長）の整数値に量子化したうえで、たとえばハフマン符号を用いる可変長符号化により２進符号のビット列に変換する。
【０００３】
動画像をディジタル化する場合は、上記のような空間的情報圧縮に加えて時間的情報圧縮も行なわれる。時間的情報圧縮には、現フレームと前フレームとの差分を符号化するフレーム間差分符号化や動き分を補償してフレーム間の予測を行う動き補償予測符号化などがよく用いられる。フレーム間差分符号化を用いる場合は、現フレームと前フレームとの差分を表す差分画像に対してＤＣＴが適用される。
【０００４】
【発明が解決しようとする課題】
一般に、ディジタル画像を扱う標準規格は、伝送路の容量やデコーダ側の特性などを考慮して、上記のような画像情報圧縮を行うエンコーダより伝送路に符号化データを送り出すビットレートに一定基準を定めている。このような規格に準拠するため、エンコーダでは、符号化出力のビットレートをモニタして符号発生量をフィードバック制御するようにしている。たとえば、動画像を１５フレーム／秒のフレームレートで伝送する場合は、１秒の間で、つまり連続する１５枚のフレーム全体でビットレート基準に適うように、量子化係数を調整して各フレームの符号量を可変制御するようにしている。しかしながら、シーンチェンジがあったときや画像の動きが激しいときには、そこで瞬間的に多量の情報が発生してしまうため、後続のフレームに十分な符号量を割り当てられなくなり、いわゆる駒落としを行って１秒間あたりのフレーム数を減らすほかなく、全体的に画質の劣化が目立ってしまうという問題があった。
【０００５】
本発明は、かかる従来技術の問題点に鑑みてなされたもので、画像の絵柄や変化等に対して符号発生量を適応的に制御して画質の劣化を少なくするようにした画像情報圧縮装置を提供することを目的とする。
【０００６】
本発明の別の目的は、空間的な冗長度を効率的に削減して符号量に余裕を持たせ画面全体の画質を向上させるようにした画像情報圧縮装置を提供することにある。
【０００７】
【課題を解決するための手段】
上記の目的を達成するために、本発明の画像情報圧縮装置は、１フレーム分の画像データを複数個の変換ブロックに分割するブロック分割部と、前記変換ブロックを構成する複数個の画素データに直交変換を施して複数の周波数成分に応じた変換係数を生成する直交変換部と、前記変換係数を所望の量子化係数で量子化する量子化部と、量子化された前記変換係数を符号化してビット列の符号化データを生成する符号化部と、情報圧縮率を制御するために量子化前の前記変換係数にフィルタリングを施すフィルタ部とを有する。
【０００８】
本発明では、画像の画素値を直交変換により周波数成分に分解してから、量子化に先立って、周波数成分に応じた変換係数にフィルタリングを施すことで、帯域制限を通じて情報圧縮率を適応的に制御する。
【０００９】
本発明において、好ましくは、フィルタ部が、異なるフィルタ特性を与える複数のフィルタ係数を有し、所定のパラメータに応じて複数のフィルタ係数の中の１つを選択してフィルタリングに用いる。使用するパラメータを適宜選択ないし組み合わせることで、あるいは様々なフィルタ特性のフィルタ係数を用意することで、画像圧縮のためのフィルタ適応制御をより多彩かつフレキシブルに行うことができる。
【００１０】
好ましい一態様によれば、本発明の適応制御に用いるパラメータとして、量子化部で用いる量子化係数、変換ブロックの輝度および／または変換ブロックの当該フレーム内の位置が選ばれる。
【００１１】
量子化係数をパラメータとする場合、好ましくは、量子化係数の値が大きいほど、つまり量子化分解能が粗いほど、高周波成分に対して大きな帯域制限を与えるフィルタ係数を選択してよく、これによって視覚的により重要な低周波成分に相対的に多くの符号を割り当てて、画質の劣化を最小限に抑えることができる。このような適応制御を行うときは、符号化部より出力される符号化データのビットレートを制御するために量子化部で用いる量子化係数を選択するレートコントロール部を設けてよい。
【００１２】
変換ブロックの輝度値をパラメータとする場合、好ましくは、変換ブロックの輝度値が下限値または上限値に近いほど高周波成分に対して大きな帯域制限を与えるフィルタ係数を選択してよく、これによって画質劣化の目立ちやすい中間輝度値の領域に余剰の符号を割り当てて、画面全体の画質を向上させることができる。このような適応制御を行うときは、変換ブロックを構成する画素データの輝度成分に基づいて変換ブロックの輝度値を検出するブロック輝度検出部を設けてよい。
【００１３】
フレーム内ブロック位置をパラメータとする場合、好ましくは、変換ブロックが当該フレーム内の所定範囲の周辺部に属するときに高周波成分に大きな帯域制限を与えるフィルタ係数を選択してよく、これによって画質劣化の目立ちやすい画面中央の領域に余剰の符号を割り当てて、画面全体の画質を向上させることができる。このような適応制御を行うときは、ブロック分割部におけるブロック分割処理の中で変換ブロックの当該フレーム内の位置を検出するブロック位置検出手段を設けてよい。
【００１４】
本発明の好適な一態様によれば、ブロック分割部が、１フレーム分の画像データをＮ画素×Ｎライン（Ｎは整数：たとえば８）の変換ブロックに分割する。あるいは、１フレーム分の画像データをいったんＭ画素×Ｍライン（Ｍ＝４Ｎ）のマクロブロックに分割してから、各マクロブロックをＮ画素×Ｎラインの変換ブロックに４分割する。この場合は、直交変換に離散コサイン変換（ＤＣＴ）を用いるのが好ましく、変換ブロックを構成するＮ×Ｎ個の画素データに離散コサイン変換（ＤＣＴ）を施してＮ×Ｎ個の周波数成分に応じたＮ×Ｎ個のＤＣＴ係数要素を一組のＤＣＴ係数として生成してよい。
【００１５】
また、本発明の好適な一態様によれば、フィルタ部が、各々のフィルタ係数をＮ×Ｎ個のフィルタ係数要素からなる係数テーブルとして与える係数テーブルメモリと、パラメータに応じて複数の係数テーブルの中の１つを選択するためのフィルタ係数選択部と、変換ブロックに対して選択された係数テーブルのＮ×Ｎ個のフィルタ係数要素を基にそれぞれ対応するＮ×Ｎ個のＤＣＴ係数要素に所定の演算を施すフィルタ演算部とを有する。この場合、好ましくは、フィルタ演算部が、Ｎ×Ｎ個のＤＣＴ係数要素にＮ×Ｎ個のフィルタ係数要素を１対１の対応関係で掛ける乗算を行ってよい。
【００１６】
また、本発明の好適な一態様によれば、符号化部が、各符号に発生確率に応じた符号長を割り当てる可変長符号化手段を有するものであってよい。
【００１７】
本発明の画像情報圧縮装置を動画像の情報圧縮に適用する場合は、好ましい一態様として、量子化部からの量子化された変換係数を復号して各フレームの復号画像データを生成する局所復号部と、現フレームの画像データと局所復号部より得られる前フレームの復号画像データとに基づいて両フレームの間で動いた部分の移動方向と移動量とを表す動きベクトルを生成する動き検出部と、局所復号部より得られる前フレームの復号画像データと動き検出部より得られる動きベクトルとに基づいて現フレームの画像を予測した予測画像データを生成する動き補償部と、現フレームの画像データと予測画像データとの差分をとり、その差分の画像を表す差分画像データを直交変換部に与える差分演算部とを有してよい。
【００１８】
この場合、好ましい一態様として、局所復号部が、量子化部からの量子化された変換係数を量子化係数に対応する逆量子化係数を用いて逆量子化する逆量子化部と、この逆量子化部より出力された変換係数を逆変換して復号差分画像データを生成する逆変換部と、この逆変換部より得られた復号差分画像データと動き補償部からの予測画像データとを加え合わせて復号画像データを生成する加算部と、この加算部より得られる復号画像データをフレーム単位で蓄積するフレームメモリとを有してよい。また、動き検出部は、マクロブロック毎に動きベクトルを生成するものであってよい。また、符号化部は、動き検出部からの動きベクトルを量子化部からの量子化された変換係数に多重して符号化してよい。
【００１９】
【発明の実施の形態】
以下、添付図を参照して本発明の好適な実施の形態を説明する。
【００２０】
図１に、本発明の一実施形態による画像情報圧縮装置の構成を示す。この画像情報圧縮装置は、ＤＣＴと動き補償とを併用して動画像の情報圧縮を行うエンコーダとして構成されている。
【００２１】
このエンコーダにおいて、フレームメモリ１０には、たとえばビデオカメラ（図示せず）からの動画像を構成するディジタル画像信号または画像データがフレーム単位で入力される。マクロブロック分割部１２は、１フレーム分の画像データを複数個のマクロブロックに分割するもので、フレームメモリ１０からたとえば１６画素×１６ラインのブロックサイズでマクロブロックを順次抽出する。
【００２２】
マクロブロック分割部１２により抽出されたマクロブロック単位の画像データは、現フレームの画像データとして差分演算器１４と動き検出部２６とに与えられる。差分演算器１４は、マクロブロック単位で現フレームの画像データと後述する動き補償部２８からの前フレームの画像データとの差分をとり、その差分の画像を表す差分画像データを生成する。この差分画像データはＤＣＴ変換器１６に入力される。
【００２３】
ＤＣＴ変換器１６は、入力したマクロブロック単位の差分画像データをたとえば８画素×８ラインの変換ブロックに４分割し、各変換ブロックについて２次元ＤＣＴ演算を行って、図３に示すような正方行列で表現される８×８個のＤＣＴ係数要素［ａｉｊ］（ｉ＝０〜７，ｊ＝０〜７）を一組のＤＣＴ係数として生成する。図３の正方行列において、（ｉ，ｊ）位置が（０，０）の要素ａ００はＤＣ係数で、それ以外の６３個の要素はＡＣ係数である。ＡＣ係数の中では、ｉが大きくなるほど縦縞周波数の高い周波数成分に対応し、ｊが大きくなるほど横縞周波数の高い周波数成分に対応している。したがって、（ｉ，ｊ）位置の小さいものほど、つまり左上角隅に近いものほど、より低域の周波数成分に対応している。また、（ｉ，ｊ）位置の大きいものほど、つまり右下角隅に近いものほど、より高域の周波数成分に対応している。ＤＣＴ変換器１６より出力された各変換ブロック毎のＤＣＴ係数は、本発明による適応型フィルタ１８でフィルタリングを施されてから量子化器２０に入力される。
【００２４】
量子化器２０は、入力したＤＣＴ係数を有限精度（ビット長）の整数値に量子化する。より詳細には、各ＤＣＴ係数要素を量子化係数で除して、余りを丸める。量子化器２０で量子化されたＤＣＴ係数は、次段の可変長符号化器２２でたとえばハフマン符号を用いる可変長またはエントロピー符号化により２進符号のビット列に変換されて、伝送路上に送り出される。可変長符号化では、出現または発生確率の高い符号には短い符号長が割り当てられ、発生確率の低い符号には長い符号長が割り当てられる。
【００２５】
このエンコーダは、動き補償予測符号化のために局所復号部２４と動き検出部２６と動き補償部２８とを有する。
【００２６】
局所復号部２４は、逆量子化器３０と逆ＤＣＴ変換器３２と加算器３４とフレームメモリ３６とで構成される。逆量子化器３０は、量子化器２０からの量子化されたＤＣＴ係数を所定の逆量子化係数を用いて逆量子化する。通常の逆量子化では、８画素×８ラインの変換ブロック毎に量子化されたＤＣＴ係数に量子化係数と等しい値の逆量子化係数を掛ける乗算を行って、量子化前のＤＣＴ係数を復元する。逆ＤＣＴ変換器３２は、変換ブロック毎にＤＣＴ係数について逆ＤＣＴ演算（逆変換）を行ってＤＣＴ変換以前のデータつまり差分画像データを復元する。加算器３４は、逆ＤＣＴ変換部３２からの復号差分画像データに動き補償部２８からの予測画像データを加え合わせて前フレームの画像を復元した復号画像データを生成する。フレームメモリ３６は、フレーム単位でこの復号画像データを蓄積する。
【００２７】
動き検出部２６は、マクロブロック単位で画像の動き部分を検出するものである。より詳細には、マクロブロック分割部１２より入力する現フレームの画像データと局所復号部２４のフレームメモリ３６より与えられる前フレームの復号画像データとに基づいて両フレームの間で動いた部分の移動方向と移動量とを表す動きベクトルを生成する。動き検出部２６で生成された動きベクトルは、可変長符号化器２２によりＤＣＴ符号化係数と一緒に２進符号のビット列に変換されて伝送路上に送り出されるとともに、動き補償部２８にも与えられる。なお、可変長符号化器２２より送出される符号化データの大部分はＤＣＴ符号のデータであり、動きベクトル分のデータは無視できるほど少ない。
【００２８】
動き補償部２８は、フレームメモリ３６からの前フレームの復号画像データと動き検出部２６からの動きベクトルとに基づいてマクロブロック単位で現フレームの画像を予測した予測画像データを生成する。
【００２９】
このエンコーダでは、上記のようなフレーム間差分予測符号化だけでなく、たとえばリフレッシュとして定期的にフレーム内符号化も行なわれるようになっており、その時はマクロブロック分割部１２からの画像データが点線３８で示すように差分演算器１４をバイパスしてＤＣＴ変換器１６に入力されるようになっている。なお、フレーム内符号化の最中は、動き検出部２６および動き補償部２８は休止する。
【００３０】
また、このエンコーダでは、可変長符号化器２２より伝送路上に出力する符号化データのビットレートを規格に合わせるために、レートコントロール部４０を設けている。このレートコントロール部４０は、たとえばフレーム毎にデータ送信量つまり符号発生量をモニタして、１秒間当たりの符号発生量をビットレート基準内に抑えるように量子化器２０における量子化係数を選択する。この実施形態では、レートコントロール部４０より量子化器２０に与えられるのと同じ量子化係数選択信号がフィルタ１８にも与えられ、量子化器２０で用いられる量子化係数に応じてフィルタ１８のフィルタ係数が選択されるようになっている。
【００３１】
さらに、このエンコーダは、マクロブロック分割部１２から出力されるマクロブロック単位の画像データについて、そのブロック領域の輝度値を検出するブロック輝度値検出部４２を設けている。このブロック輝度値検出部４２は、マクロブロック単位の画像データの各画素データに含まれる輝度信号成分に基づいて、１画素当たりの輝度値つまり輝度平均値あるいはマクロブロック全体の総合計輝度値をブロック輝度値として求める。ブロック輝度検出部４２で求められたブロック輝度値は、フィルタ係数を選択するためのパラメータの１つとしてフィルタ１８に与えられる。
【００３２】
また、マクロブロック分割部１２では、ＤＣＴ変換器１６でＤＣＴを受ける８画素×８ラインの変換ブロックについて、その変換ブロックの属するマクロブロックのフレーム内の位置を検出または把握することができる。この実施形態では、フレーム内ブロック位置も、フィルタ１８においてフィルタ係数選択パラメータの１つとなる。
【００３３】
図２に、一実施例によるフィルタ１８の構成を示す。このフィルタ１８は、異なるフィルタリング特性を与える複数たとえばＮ個（Ｎは整数）のフィルタ係数Ｆ１，Ｆ２，‥‥ＦＮをそれぞれ係数テーブルとして保持する係数テーブルメモリ４４と、所定のパラメータに応じてフィルタ係数Ｆ１，Ｆ２，‥‥ＦＮの中の１つ（ＦＫ）を選択するためのフィルタ係数選択部４６と、このフィルタ係数選択部４６で選択されたフィルタ係数ＦＫを用いてＤＣＴ変換器１６からのＤＣＴ係数に所定の演算を施すフィルタ計算部４８とを有している。
【００３４】
図４に、各フィルタ係数Ｆを与える係数テーブルの構造を示す。ＤＣＴ係数のテーブル構造（図３）に対応させて、フィルタ係数Ｆのテーブルも、正方行列で表現される８×８個のフィルタ係数要素［ｂｉｊ］（ｉ＝０〜７，ｊ＝０〜７）を有している。より詳細には、（０，０）のフィルタ係数要素ｂ００はＤＣＴ係数における同位置のＤＣ係数ａ００に対応し、他の６３個のフィルタ係数要素ｂｉｊもＤＣＴ係数における同位置のＡＣ係数ａｉｊにそれぞれ対応している。したがって、（ｉ，ｊ）位置の小さいものほど、つまり左上角隅に近いものほど、より低域の周波数成分に対応している。また、（ｉ，ｊ）位置の大きいものほど、つまり右下角隅に近いものほど、より高域の周波数成分に対応している。
【００３５】
図５に、フィルタ係数Ｆ１，Ｆ２，‥‥ＦＮのテーブル内容（数値例）を示す。この実施例では、全てのフィルタ係数Ｆ１，Ｆ２，‥‥ＦＮがローパス特性を与えるが、通過または制限帯域（特に除去される高周波成分の量や帯域）がフィルタ係数毎に異なる。より詳細には、いずれのフィルタ係数においても、（ｉ，ｊ）位置の小さい行列の左上角隅寄りの低周波成分に対応するフィルタ係数要素を最大値「１」またはその付近の値に設定している。しかしながら、（ｉ，ｊ）位置の大きい行列の右下角隅寄りの高周波成分に対応するフィルタ係数要素の設定値がフィルタ係数Ｆ１，Ｆ２，‥‥ＦＮ間で異なり、フィルタ係数番号が小さくなるほど、右下角隅寄りの領域で最小値「０」またはその付近の値が多くなる。
【００３６】
このような各フィルタ係数Ｆにおけるフィルタ係数要素の数値設定により、フィルタ係数番号の最も大きいフィルタ係数ＦＮは、低周波成分はもちろん高周波成分を最もよく通過させるフィルタ特性を与えるようになっている。そして、フィルタ係数番号が小さくなるほど高周波成分に対して帯域制限を強め、フィルタ係数番号の最も小さいフィルタ係数Ｆ１は高周波成分に対して最も大きな帯域制限を与えるようになっている。
【００３７】
フィルタ計算部４８は、フィルタ係数選択部４６で選択されたフィルタ係数ＦＫを構成する８×８個のフィルタ係数要素［ｂｉｊ］を基にそれぞれ対応する８×８個のＤＣＴ係数要素［ａｉｊ］に所定の演算を施す。この実施例では、各ＤＣＴ係数要素ａｉｊに対応する各フィルタ係数要素ｂｉｊを掛ける乗算（ａｉｊ×ｂｉｊ）を行って、乗算結果ｃｉｊ（ｃｉｊ＝ａｉｊ×ｂｉｊ）をフィルタ出力における対応ＤＣＴ係数要素とする。一変形例として、各ＤＣＴ係数要素ａｉｊを対応する各フィルタ係数要素ｂｉｊで除する割算（ａｉｊ÷ｂｉｊ）を行って、割算結果ｃｉｊ（ｃｉｊ＝ａｉｊ÷ｂｉｊ）をフィルタ出力における対応ＤＣＴ係数要素とすることも可能である。
【００３８】
図６に、或るＤＣＴ係数におけるＤＣＴ係数要素［ａｉｊ］（ｉ＝０〜７，ｊ＝０〜７）の数値例を示すとともに、フィルタ係数選択部４６でフィルタ係数Ｆ１が選択された場合のフィルタ計算部４８のフィルタ計算結果（フィルタ出力）を示す。また、図７に、図６と同一のＤＣＴ係数に対して、フィルタ係数選択部４６でフィルタ係数ＦＮが選択された場合のフィルタ計算部４８のフィルタ計算結果（フィルタ出力）を示す。
【００３９】
フィルタ係数Ｆ１が選択された場合は、図６に示すように、（ｉ，ｊ）位置の小さい行列の左上角隅寄りの低周波成分に対応するＤＣＴ係数要素の大部分はフィルタリングを受けても元の値またはそれに近い値を保っている一方で、（ｉ，ｊ）位置の大きい行列の右下角隅寄りの高周波成分に対応するＤＣＴ係数要素の殆ど全部がフィルタリングを受けることによって最小値「０」になる。
【００４０】
フィルタ係数ＦＮが選択された場合は、図７に示すように、（ｉ，ｊ）位置の小さい行列の左上角隅寄りの低周波成分に対応するＤＣＴ係数要素の大部分はフィルタリングを受けても元の値を保つとともに、（ｉ，ｊ）位置の大きい行列の右下角隅寄りの高周波成分に対応するＤＣＴ係数要素の一部もフィルタリングを受けた後に有意の値を保っている。
【００４１】
このように、同一のＤＣＴ係数に対してフィルタ係数Ｆ１でフィルリングを施した場合と、フィルタ係数ＦＮでフィルリングを施した場合とでは、どちらも低周波成分をよく通過させる点では共通しているが、高周波成分に対してはフィルタ係数Ｆ１を用いる方がフィルタ係数ＦＮよりも大きな帯域制限を与え、そのぶん発生符号量を減らすことになる。程度の違いはあるが、フィルタ係数番号の異なる任意のフィルタ係数の間でそのようなフィルタ特性の相違がある。
【００４２】
フィルタ係数選択部４６は、フィルタ係数を選択するためのパラメータとして、▲１▼レートコントロール部４０より与えられる量子化係数選択信号と、▲２▼ブロック輝度値検出部４２より与えられるブロック輝度検出値と、▲３▼マクロブロック分割部１２より与えられるフレーム内ブロック位置情報の３つを用いる。
【００４３】
本実施例のアルゴリズムによれば、フィルタ係数選択部４６は、選択候補フィルタ係数のフィルタ番号Ｋ０をデフォルトとして設定し、上記３つのパラメータ▲１▼，▲２▼，▲３▼に応じたフィルタ番号補正値Ａ，Ｂ，Ｃで候補番号Ｋ０をＫ０→Ｋ１→Ｋ２→Ｋ３と３回補正し、最終結果の候補番号Ｋ３を使用（選択）フィルタ係数ＦＫの番号Ｋとする。たとえば、選択候補フィルタ係数のフィルタ番号Ｋ０としてＮ（最大値）をデフォルト値とする場合は、下記（１），（２），（３）のような減算によって上記の番号補正が行なわれる。なお、下記の式（１），（２），（３）においてフィルタ番号補正値Ａ，Ｂ，Ｃを相互に入れ換えできることはもちろんである。
Ｋ１＝Ｋ０−Ａ      ‥‥‥（１）
Ｋ２＝Ｋ１−Ｂ      ‥‥‥（２）
Ｋ３＝Ｋ２−Ｃ      ‥‥‥（３）
Ｋ＝Ｋ３  （但し、１≦Ｋ）  ‥‥‥（４）
【００４４】
以下、各パラメータ▲１▼，▲２▼，▲３▼についてフィルタ係数選択部４６におけるフィルタ係数選択の手法を説明する。
【００４５】
上記のように、レートコントロール部４０からの量子化係数選択信号は、本来的には量子化器２０における量子化のアルゴリズムで用いる量子化係数を選択するものである。ここで、量子化係数は量子化の分解能を規定するパラメータであって、たとえば１≦Ｑ≦３１（５ビット値）の範囲内で選択される値Ｑを有し、量子化係数の値Ｑが小さいほど量子化精度が上がってそのぶん符号量は増加し、量子化係数の値Ｑが大きいほど量子化精度が下がってそのぶん符号量は減少する。したがって、レートコントロール部４０は、伝送路上に送り出された符号化データのデータ量をモニタし、規格のビットレート基準に合わせるうえで、現フレームに対して割り当て可能な符号量が十分にあるときは小さな値の量子化係数を指示し、割り当て可能な符号量が不足しているときは大きな値の量子化係数を指示するように働く。しがって、たとえばシーンチェンジがあった時や動きの激しい時は、そこで多量の符号を発生し、後続のフレームに対しては割り当て可能な符号量が不足することから、量子化係数の値Ｑを上げるようなビットレートコンロールが行なわれる。
【００４６】
フィルタ係数選択部４６は、レートコントロール部４０からの量子化係数選択信号を入力して、量子化器２０で用いられるべき量子化係数の値Ｑを解読または認識し、１≦Ｑ≦３のときはＡ＝０、４≦Ｑ≦３１のときはＡ＝Ｑ／４（余りは切り捨てる）と設定して上記の式（１）を演算する。すなわち、量子化係数の値Ｑに応じて下記の式（４），（５）を演算する。
１≦Ｑ≦３のとき      Ｋ１＝Ｋ０          ‥‥‥（４）
４≦Ｑ≦３１のとき    Ｋ１＝Ｋ０−Ｑ／４  ‥‥‥（５）
【００４７】
このようなアルゴリズムによれば、量子化係数の値Ｑが小さいとき、つまり現フレームに対して割り当て可能な符号量が十分にあるときは、フィルタ番号の比較的大きい（広い通過帯域のフィルタ特性を与える）係数フィルタが選択され、画面の空間周波数全体に十分な符号量が割り当てられる傾向となる。しかし、量子化係数の値Ｑが大きいとき、つまり現フレームに対して割り当て可能な符号量が不足しているときは、フィルタ番号の比較的小さい（低域重視で通過帯域の狭いフィルタ特性を与える）係数フィルタが選択され、視覚的により重要な低周波数成分にのみ重点的に符号が割り当てられる傾向となる。このことによって、駒落としが回避され、動画像全体の画質が改善される。
【００４８】
ブロック輝度値検出部４２より与えられるブロック輝度検出値は、上記のように、フィルタリングを受けるべきＤＣＴ係数に対応する変換ブロックの輝度値Ｌを表すものであり、たとえば０≦Ｌ≦２５５（８ビット値）の範囲内で与えられる。一般に、人間の視覚は、色に対する感度よりも輝度に対する感度の方が格段に高いが、極端に暗い部分や極端に明るい部分に対しては感度が低くなるという性質がある。このような人間の視覚特性に鑑みて、フィルタ係数選択部４６では、たとえば、Ｌ＜４４または２１０＜ＬのときはＢ＝２、４５≦Ｌ＜６４または２００＜Ｌ≦２０９のときはＢ＝１、６４≦Ｌ≦２００のときはＢ＝０と設定して上記の式（２）を演算する。すなわち、ブロック輝度検出値Ｌに応じて下記の式（６），（７），（８）を演算する。
Ｌ＜４４，２１０＜Ｌのとき                Ｋ２＝Ｋ１−２  ‥‥（６）
４５≦Ｌ＜６４，２００＜Ｌ≦２０９のとき  Ｋ２＝Ｋ１−１  ‥‥（７）
６４≦Ｌ≦２００のとき                    Ｋ２＝Ｋ１      ‥‥（８）
【００４９】
このようなアルゴリズムによれば、画像の中で視覚感度の低い極端に明るい領域または極端に暗い領域については、フィルタ番号の比較的小さい（低域重視で通過帯域の狭いフィルタ特性を与える）係数フィルタが選択されることで、そのぶん符号量が節減される。一方、明るすぎるでもなければ暗すぎるでもない視覚感度の高い領域については、フィルタ番号の比較的大きい（通過帯域の広いフィルタ特性を与える）係数フィルタが選択され、ここに十分な符号量が割り当てられる。このことにより、画面全体ないし動画像全体の画質を改善できる。
【００５０】
マクロブロック分割部１２より与えられるフレーム内ブロック位置情報は、上記のように、フィルタリングを受けるべきＤＣＴ係数に対応する変換ブロックの当該フレームにおける位置を表すものであり、マクロブロック単位で特定される。一般に、人間の目には、画面の中心部と比べて周辺部分の方が画質の劣化は目立ちにくい。この視覚特性を利用して、フィルタ係数選択部４６では、たとえば、図８に示すように当該変換ブロックのフレーム内ブロック位置が画面５０のエッジから一定範囲（たとえば画素１６個分）内の周辺エリア５２に入っている場合はフィルタ番号補正値Ｃ＝２、周辺エリア５２より内側の中央エリア５４に入っているときはＣ＝０と設定して上記の式（３）を演算する。すなわち、フレーム内ブロック位置に応じて下記の式（９），（１０）を演算する。
周辺エリア内に在るとき        Ｋ３＝Ｋ２−２  ‥‥（９）
中央エリア内に在るとき        Ｋ３＝Ｋ２      ‥‥（１０）
【００５１】
このようなアルゴリズムによれば、画質劣化の目立ちにくい画面の外周部分にはフィルタ番号の比較的小さい（通過帯域の狭いフィルタ特性を与える）係数フィルタが選択されることで、そのぶん符号量が節減されるとともに、画質劣化の目立ちやすい画面の中央部分にはフィルタ番号の比較的大きい（通過帯域の広いフィルタ特性を与える）係数フィルタが選択され、ここに余剰の符号が割り振られる。このことにより、画面全体ないし動画像全体の画質が改善される。
【００５２】
なお、変形例として、図９に示すように、周辺エリア５２を２段階（５２ａ，５２ｂ）に設定し、たとえば外側周辺エリア５２ａにＣ＝３、内側周辺エリア５２ｂにＣ＝２、中央エリア５４にＣ＝０を割り当てて、上記と同様のフィルタ係数番号に係る補正演算を行うことも可能である。
【００５３】
上記したように、この実施形態のエンコーダでは、ＤＣＴ変換器１６と量子化器２０との間に適応型のフィルタ１８を設け、現フレームに割り当て可能な符号またはビットが少なくなったときは帯域制限の狭いフィルタリングをかけて、視覚的により重要な低域成分に重点的に符号を割り当てることで、動画像全体の画質劣化を防止することができる。また、画面上の各部の輝度や位置に応じて、視覚的にさほど重要でない部分に対しては帯域制限の狭いフィルタリングをかけて、その分の余剰符号を視覚的に重要な他の部分に割り当てることで、画面全体ないし動画像全体の画質を向上させることができる。
【００５４】
上記した実施形態では、フィルタ１８においてフィルタ係数を選択するために、量子化器２０における量子化係数、変換ブロックの輝度およびフレーム内位置の３つのパラメータを併用したが、これらのパラメータを任意の組み合わせで用いることが可能であり、あるいは他のパラメータを用いることも可能である。上記実施形態では直交変換としてＤＣＴを用いたが、他の直交変換方式も使用可能である。また、上記実施形態におけるエンコーダの方式および各部の構成は一例であり、任意の変形や置換が可能である。本発明は、動画像の情報圧縮だけでなく、静止画の情報圧縮にも適用できることはいうまでもない。
【００５５】
【発明の効果】
本発明の画像情報圧縮装置によれば、画像の絵柄や変化等に対して符号発生量を適応的に制御して画質の劣化を少なくすることができる。また、空間的な冗長度を効率的に削減して符号量に余裕を持たせ、画面全体の画質を向上させることができる。
【図面の簡単な説明】
【図１】本発明の一実施形態による画像情報圧縮装置の構成を示すブロック図である。
【図２】図１の画像情報圧縮装置におけるフィルタ内の構成を示すブロック図である。
【図３】一組のＤＣＴ係数を構成するＤＣＴ係数要素の配列構成を示す図である。
【図４】実施形態において各フィルタ係数を構成するＤＣＴ係数要素の配列構成を示す図である。
【図５】実施形態の各フィルタ係数におけるＤＣＴ係数要素の数値設定例を示す図である。
【図６】実施形態において通過帯域の最も狭いフィルタ係数が選択された場合のフィルタリングの作用を示す図である。
【図７】実施形態において通過帯域の最も広いフィルタ係数が選択された場合のフィルタリングの作用を示す図である。
【図８】フィルタ特性を切り換える画面内のエリア設定例を示す図である。
【図９】フィルタ特性を切り換える画面内のエリア設定例を示す図である。
【符号の説明】
１０    フレームメモリ
１２    マクロブロック分割部
１４    差分演算器
１６    ＤＣＴ変換器
１８    適応型フィルタ
２０    量子化器
２２    可変長符号化器
２４    局所復号部
２６    動き検出部
２８    動き補償部
３０    逆量子化器
３２    逆ＤＣＴ変換器
３４    加算器
３６    フレームメモリ
４０    レートコントロール部
４２    ブロック輝度値検出部
４４    係数テーブルメモリ
４６    フィルタ係数選択部
４８    フィルタ計算部
【図１】
2004336103.tif 000003
【図２】
2004336103.tif 000004
【図３】
2004336103.tif 000005
【図４】
2004336103.tif 000006
【図５】
2004336103.tif 000007
【図６】
2004336103.tif 000008
【図７】
2004336103.tif 000009
【図８】
2004336103.tif 000010
【図９】
2004336103.tif 000011