(57)【特許請求の範囲】
【請求項１】
入力画像信号を所定の大きさのブロックに分割し、その分割されたブロック単位で符号化を行なう符号化装置において、
前記入力画像信号と局所復号画像信号とに基づいて、予測画像信号を生成する予測手段と、
前記画像信号と前記予測画像信号との差分を求めて、予測誤差画像信号を生成する減算手段と、
前記予測誤差画像信号を直交変換し、直交変換係数を生成する直交変換手段と、
前記直交変換係数の行列の要素ごとに、切り捨て、切り上げまたは四捨五入の演算方法を定義した行列である演算方法行列を保持し、前記要素に対応する直交変換係数を量子化マトリックスによる除算で量子化する際に、前記演算方法行列に対応したまるめ演算を行なうことで量子化直交変換係数を生成する複数の量子化手段と、
切替信号に基づいて、前記量子化手段を選択的に切替える切替手段と、
前記量子化直交変換係数から、逆量子化信号を生成する逆量子化手段と、
前記逆量子化信号を逆直交変換し、逆直交変換係数を生成する逆直交変換手段と、
前記予測画像信号と前記逆直交変換係数とを加算し、局所復号画像信号を生成する加算手段と、
前記入力画像信号と前記局所復号画像信号とに基づいて、量子化歪み値を算出し、前記量子化歪み値が最良となる量子化手段を決定し、前記切替手段に対して切替信号を出力する歪み検出手段と
を備えたことを特徴とする符号化装置。
【請求項２】
前記歪み検出手段は、前記ブロックのうち、ある隣接した２つのブロックの各画素値の差の絶対値またはその二乗を、ブロックに属する全部または一部の画素数分を加算した値に基づいて、量子化歪み値を算出することを特徴とする請求項１に記載の符号化装置。
【請求項３】
入力画像信号を所定の大きさのブロックに分割し、その分割されたブロック単位で符号化を行なうためにコンピュータを、
前記入力画像信号と局所復号画像信号とに基づいて、予測画像信号を生成する予測手段、
前記画像信号と前記予測画像信号との差分を求めて、予測誤差画像信号を生成する減算手段、
前記予測誤差画像信号を直交変換し、直交変換係数を生成する直交変換手段、
前記直交変換係数の行列の要素ごとに、切り捨て、切り上げまたは四捨五入の演算方法を定義した行列である演算方法行列を保持し、前記要素に対応する直交変換係数を量子化マトリックスによる除算で量子化する際に、前記演算方法行列に対応したまるめ演算を行なうことで量子化直交変換係数を生成する複数の量子化手段、
切替信号に基づいて、前記量子化手段を選択的に切替える切替手段、
前記量子化直交変換係数から、逆量子化信号を生成する逆量子化手段、
前記逆量子化信号を逆直交変換し、逆直交変換係数を生成する逆直交変換手段、
前記予測画像信号と前記逆直交変換係数とを加算し、局所復号画像信号を生成する加算手段、
前記入力画像信号と前記局所復号画像信号とに基づいて、量子化歪み値を算出し、前記量子化歪み値が最良となる量子化手段を決定し、前記切替手段に対して切替信号を出力する歪み検出手段、
として機能させる符号化プログラム。
【請求項４】
前記歪み検出手段は、前記ブロックのうち、ある隣接した２つのブロックの各画素値の差の絶対値またはその二乗を、ブロックに属する全部または一部の画素数分を加算した値に基づいて、量子化歪み値を算出することを特徴とする請求項３に記載の符号化プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、直交変換を用いる画像信号の符号化装置及び符号化プログラムに関する。
【０００２】
【従来の技術】
従来、高能率符号化方式としては、ISO/IEC JTC1 SC29のWG11(Working Group11)で標準化されたＭＰＥＧ−２（Moving Picture Experts Group 2）がある。このＭＰＥＧ−２は、入力画像を１６×１６画素（マクロブロック）の単位で、動き補償予測を行ない、この動き補償された画像と入力画像との差分を、８×８画素のブロックに分割し、離散コサイン変換（ＤＣＴ：Discrete Cosine Transform）を行なう。ここで生成される変換係数を量子化し、符号化を行なうことで動画像を圧縮した符号化データが生成される。
【０００３】
一般に、前記離散コサイン変換のような直交変換を使用した符号化装置は、図５のように構成された符号化装置１０Ａで実現されている。
【０００４】
符号化装置１０Ａは、入力画像信号と後記する予測手段８の出力である動き補償された予測画像信号とを所定の大きさのブロック毎に差分をとり予測誤差画像信号を出力する減算手段１と、前記予測誤差画像信号の離散コサイン変換を行ないＤＣＴ係数行列を生成する直交変換手段２と、前記ＤＣＴ係数行列を量子化し、量子化ＤＣＴ係数行列を生成する量子化手段３Ａと、前記量子化ＤＣＴ係数行列を符号化し、符号化情報として外部へ出力する可変長符号化手段４と、前記量子化ＤＣＴ係数行列を量子化歪みを含むＤＣＴ係数行列に変換する逆量子化手段５と、前記量子化歪みを含むＤＣＴ係数行列をさらに量子化歪みを含む予測誤差画像信号に変換する逆直交変換手段６と、前記量子化歪みを含む予測誤差画像信号と後記する予測手段８で生成される予測画像信号とを加算し局所復号画像信号を生成する加算手段７と前記入力画像信号と前記局所復号画像信号とに基づいて、予測画像信号を生成する予測手段８と、から構成される。
【０００５】
前記ＭＰＥＧ−２は、符号化されたビットストリーム（符号化された圧縮データのデータ列）の解釈とその復号処理について規定しているものであるため、符号化処理は、前記ＭＰＥＧ−２のビットストリームに準拠している限り、自由に行なうことができる。
【０００６】
【発明が解決しようとする課題】
しかし、前記従来の直交変換を使用した符号化装置では、ブロック単位で符号化処理を行なうため、量子化による歪みがブロック境界で不連続として検知される、いわゆるブロック歪みといわれる劣化が発生するといった問題があった。
【０００７】
この問題は、例えば、細かい絵柄であったり、多くの色が混ざっていて、しかも、動きの遅い情報量の多い画像において、圧縮率が高い場合あるいはビットレートが低い場合に、特に顕著に発生していた。
【０００８】
本発明は、以上のような問題点に鑑みてなされたものであり、量子化による歪みを抑え、ブロック歪みの発生を低減させる符号化装置及び符号化プログラムを提供することを目的とする。
【００１５】
【課題を解決するための手段】
本発明は、前記目的を達成するために提供されるものであり、まず、請求項１に記載の符号化装置は、入力画像信号と局所復号画像信号とに基づいて、予測画像信号を生成する予測手段と、前記入力画像信号と前記予測画像信号との差分を求めて、予測誤差画像信号を生成する減算手段と、前記予測誤差画像信号を直交変換し、直交変換係数を生成する直交変換手段と、前記直交変換係数の行列の要素ごとに、切り捨て、切り上げまたは四捨五入の演算方法を定義した行列である演算方法行列を保持し、前記要素に対応する直交変換係数を量子化マトリックスによる除算で量子化する際に、前記演算方法行列に対応したまるめ演算を行なうことで量子化直交変換係数を生成する量子化手段と、切替信号に基づいて、前記量子化手段を選択的に切替える切替手段と、前記量子化直交変換係数から、逆量子化信号を生成する逆量子化手段と、前記逆量子化信号を逆直交変換し、逆直交変換係数を生成する逆直交変換手段と、前記予測画像信号と前記逆直交変換係数とを加算し、局所復号画像信号を生成する加算手段と、前記入力画像信号と前記局所復号画像信号とに基づいて、量子化歪み値を算出し、前記量子化歪み値が最良となる量子化手段を決定し、前記切替手段に対して切替信号を出力する歪み検出手段と、を備える構成とした。
【００１６】
かかる構成によれば、符号化装置において、予測手段が、入力画像信号と局所復号画像信号とに基づいて、予測画像信号を生成し、減算手段が、前記入力画像信号と前記予測画像信号との差分を求め、予測誤差画像信号を生成し、直交変換手段が、前記予測誤差画像信号を直交変換し、直交変換係数を生成する。
【００１７】
さらに、歪み検出手段が、前記量子化手段を切替えて、前記量子化歪み値が最良となる量子化手段を決定する。これにより、符号化装置は、前記量子化歪み値が最良となる量子化手段により量子化を行なう。
【００１８】
また、請求項２に記載の符号化装置は、請求項１に記載の符号化装置において、前記歪み検出手段が、前記ブロックのうち、ある隣接した２つのブロックの各画素値の差の絶対値またはその二乗を、ブロックに属する全部または一部の画素数分を加算した値に基づいて、量子化歪み値を算出する構成とした。
【００１９】
かかる構成によれば、符号化装置において、歪み検出手段が、前記ブロックのうち、ある隣接した２つのブロックの各画素値の差の絶対値またはその二乗を、ブロックに属する全部または一部の画素数分を加算した値に基づいて、量子化歪み値を算出する。そして、この量子化歪み値が最良となる量子化手段による量子化を行なう。
【００２０】
また、請求項３に記載の符号化プログラムは、入力画像信号を所定の大きさのブロックに分割し、その分割されたブロック単位で符号化を行なうコンピュータを、以下の手段により機能させるように構成した。
【００２１】
すなわち、前記入力画像信号と局所復号画像信号とに基づいて、予測画像信号を生成する予測手段、前記入力画像信号と前記予測画像信号との差分を求めて、予測誤差画像信号を生成する減算手段、前記予測誤差画像信号を直交変換し、直交変換係数を生成する直交変換手段、前記直交変換係数の行列の要素ごとに、切り捨て、切り上げまたは四捨五入の演算方法を定義した行列である演算方法行列を保持し、前記要素に対応する直交変換係数を量子化マトリックスによる除算で量子化する際に、前記演算方法行列に対応したまるめ演算を行なうことで量子化直交変換係数を生成する複数の量子化手段、切替信号に基づいて、前記量子化手段を選択的に切替える切替手段、前記量子化直交変換係数から、逆量子化信号を生成する逆量子化手段、前記逆量子化信号を逆直交変換し、逆直交変換係数を生成する逆直交変換手段、前記予測画像信号と前記逆直交変換係数とを加算し、局所復号画像信号を生成する加算手段、前記入力画像信号と前記局所復号画像信号とに基づいて、量子化歪み値を算出し、前記量子化歪み値が最良となる量子化手段を決定し、前記切替手段に対して切替信号を出力する歪み検出手段とした。
【００２２】
かかる構成によれば、符号化プログラムにおいて、予測手段が、画像信号と前時点の画像信号とに基づいて、予測画像信号を生成し、減算手段が、前記画像信号と前記予測画像信号との差分を求め、予測誤差画像信号を生成し、直交変換手段が、前記予測誤差画像信号を直交変換し、直交変換係数を生成する。
【００２３】
さらに、歪み検出手段が、切替手段によって量子化演算方法の異なる量子化手段を切替え、前記量子化手段が前記直交変換係数を量子化する。また、この時、前記歪み検出手段が量子化歪み値を算出する。
また、請求項４に記載の符号化プログラムは、請求項３に記載の符号化プログラムにおいて、前記歪み検出手段が、前記ブロックのうち、ある隣接した２つのブロックの各画素値の差の絶対値またはその二乗を、ブロックに属する全部または一部の画素数分を加算した値に基づいて、量子化歪み値を算出することを特徴とする。
【００２４】
【発明の実施の形態】
まず最初に、本発明における量子化装置の実施形態を図面に基づいて詳細に説明する。
（量子化装置の実施形態）
【００２５】
図２は、本発明の実施形態である量子化装置の構成を示したブロック図である。図２に示すように、量子化装置２０は、特許請求の範囲に記載の量子化手段である複数の量子化器２１1、２１2、…、２１nと、量子化マトリックス保持手段２２と、切替手段２３とで構成されている。
【００２６】
一般に、画像信号は、離散コサイン変換によって画像の周波数成分の大きさを表わす値（以下ＤＣＴ係数と略す）が画素数と同数得られる。ここで得られるＤＣＴ係数は、通常、画素の情報量よりも大きくなるので、符号量を減らすために量子化が行なわれる。
【００２７】
この量子化装置２０は、画像信号を離散コサイン変換によって変換することで生成されるＤＣＴ係数行列を量子化し、量子化ＤＣＴ係数行列を生成する装置である。
【００２８】
量子化器２１1、２１2、…、２１nは、外部から入力されたＤＣＴ係数行列の各要素を後記する量子化マトリックス保持手段２２に保持されたＤＣＴ係数行列に対応した要素で除算を代表とした演算（まるめ）方法により量子化を行ない量子化ＤＣＴ係数行列を生成する。生成された量子化ＤＣＴ係数行列は切替手段２３に入力される。この演算（まるめ）を行なうことで量子化歪みが発生する。なお、まるめとは、数値を扱いやすいように切り捨て、切り上げ、四捨五入などをして近似値を求めることをいう。
【００２９】
ここで、これらの量子化器２１1、２１2、…、２１nは、前記ＤＣＴ係数行列の各要素に対応して定義されたそれぞれ異なる量子化の演算方法を、行列（以降「演算方法行列」という）として保持している。すなわち、量子化装置２０は、それぞれ量子化の演算方法が異なる量子化器を複数備えている。
【００３０】
量子化マトリックス保持手段２２は、前記ＤＣＴ係数行列の各要素に対応して、各要素を量子化する際に使用する除数等を保持する手段である。例えば、画像の高次の周波数成分は目立ちにくい特徴があるため、量子化を行なう際に、高次の周波数成分は情報量を大きく減らし、低次の周波数成分は情報量をあまり減らさないような除数を定義しておく。
【００３１】
切替手段２３は、複数の量子化器２１1、２１2、…、２１nにより生成された複数の量子化ＤＣＴ係数行列のうちから、外部から入力された切替信号に基づいて、一つの量子化ＤＣＴ係数行列を選択して外部へ出力する。すなわち、この切替手段２３によって、量子化方法を切替えることができる。
【００３２】
なお、本実施形態において、ＤＣＴ係数行列を量子化し、量子化ＤＣＴ係数行列を生成する例を説明したが、もちろん、一般的な入力信号において、量子化を行なうことも可能である。
【００３３】
また、この量子化装置２０は、コンピュータにおいて各機能をプログラムで実現することも可能であり、各機能プログラムを結合して量子化プログラムとして動作させることも可能である。
【００３４】
（符号化装置の実施形態）
次に、本発明における符号化装置の実施形態を図面に基づいて詳細に説明する。
図１は、本発明の実施形態である符号化装置の構成を示したブロック図である。図１に示すように、符号化装置１０は、減算手段１と、直交変換手段２と、量子化手段３と、可変長符号化手段４と、逆量子化手段５と、逆直交変換手段６と、加算手段７と、予測手段８と、歪み検出手段９と、から構成される。
【００３５】
符号化装置１０は、例えば、ＭＰＥＧ−２により生成された入力画像信号を離散コサイン変換し、符号化情報を生成する装置である。
【００３６】
減算手段１は、前記入力画像信号と後記する予測手段８から出力される予測画像信号とを所定の大きさのブロック毎に差分をとり予測誤差画像信号を生成する。ここでは、ＭＰＥＧ−２のマクロブロック（１６×１６画素）単位で処理を行なうものとする。また、前記予測誤差画像信号は直交変換手段２に入力される。
【００３７】
直交変換手段２は、前記予測誤差画像信号に対して直交変換である離散コサイン変換を行ないＤＣＴ係数行列を生成する。このＤＣＴ係数行列は、入力画像信号が周波数成分に変換された行列である。また、前記ＤＣＴ係数行列は量子化手段３に入力される。
【００３８】
量子化手段３は、量子化装置２０と同様のものであり、ＤＣＴ係数行列の各要素に対応して定義されたそれぞれ異なる演算方法行列を保持する複数の量子化器を備えている。そして、後記する歪み検出手段９から出力される切替信号に基づいて、複数の量子化器により生成された複数の量子化ＤＣＴ係数行列の中から、一つの量子化ＤＣＴ係数行列を選択する。選択された量子化ＤＣＴ係数行列は、可変長符号化手段４と逆量子化手段５とに入力される。
【００３９】
可変長符号化手段４は、前記量子化ＤＣＴ係数行列を統計量に応じたハフマン符号に置換えるエントロピー符号化を行なう手段である。これにより、入力画像信号を最終的に符号化し、符号化情報として外部へ出力する。
【００４０】
逆量子化手段５は、前記量子化ＤＣＴ係数行列に対して逆量子化を行ない量子化歪みを含むＤＣＴ係数行列を生成する。量子化手段３で量子化マトリックスを使用した場合は、同じ量子化マトリックスを用いて逆量子化演算を行なう。前記量子化歪みを含むＤＣＴ係数行列は、逆直交変換手段６に入力される。
【００４１】
逆直交変換手段６は、前記量子化歪みを含むＤＣＴ係数行列に逆離散コサイン変換を行ない、量子化歪みを含む予測誤差画像信号を生成する。前記量子化歪みを含む予測誤差画像信号は、加算手段７に入力される。
【００４２】
加算手段７は、前記量子化歪みを含む予測誤差画像信号と後記する予測手段８から出力された予測画像信号とを所定の大きさのブロック毎に加算を行ない局所復号画像信号を生成する。ここでも、減算手段１と同様にＭＰＥＧ−２のマクロブロック（１６×１６画素）単位で処理を行なうものとする。この局所復号画像信号は、前記入力画像信号がマクロブロック領域分復元され、かつ、量子化歪みが含まれた信号である。なお、前記局所復号画像信号は、予測手段８と歪み検出手段９に入力される。
【００４３】
予測手段８は、前記入力画像信号により動きを検出し、前記局所復号画像信号に基づいて、動き補償予測を行ない予測画像信号を生成する。なお、前記予測画像信号は、減算手段１と加算手段７に入力される。
【００４４】
歪み検出手段９は、前記入力画像信号と、前記局所復号画像信号とに基づいて量子化歪み量を算出し、量子化手段３に対して、前記量子化歪み量が最小となる量子化演算方法（量子化器）を決定する。そして、この決定に基づいて、量子化手段３に対して切替信号を出力する。
【００４５】
（符号化装置の動作）
次に、前記の如く構成された符号化装置１０の動作について、図４のフローチャートを参照して説明する。なお、ここでは、画像信号が入力されたとき、マクロブロック数分の処理を行なう動作を説明する。
【００４６】
まず最初に、マクロブロックのカウンタ用変数ｉを０に初期化する（ステップＳ１）。
【００４７】
続いて、マクロブロック数分処理を終了したかどうかを判定し（ステップＳ２）、マクロブロック数分処理を終了したとき（Ｙｅｓ）は、本動作を終了する。
【００４８】
一方、マクロブロック数分処理を終了していないとき（Ｎｏ）は、マクロブロックと予測画像信号との差分をとり（ステップＳ３）、直交変換（離散コサイン変換）を実行しＤＣＴ係数行列を生成する（ステップＳ４）。
【００４９】
次に、演算方法行列の番号ｎ（どの量子化器を使用するかを指定する番号（≧０））を０に初期化しておく（ステップＳ５）。
【００５０】
そして、すべての演算方法行列でブロック歪み評価を行なったどうかを判定し（ステップＳ６）、実行すべき演算方法行列が残っている場合（Ｎｏ）は、演算方法行列ｎによる量子化を実行し（ステップＳ７）、量子化されたデータを逆直交変換（逆離散コサイン変換）し（ステップＳ８）、逆直交変換したデータを逆量子化し（ステップＳ９）、予測画像信号を加えることで、局所復号画像信号を生成する（ステップＳ１０）。
【００５１】
次に、入力画像信号と局所復号画像信号とに基づいて、ブロック歪み評価値の計算を行なう（ステップＳ１１）。
【００５２】
続いて、ステップＳ１１で計算したブロック歪み評価値が最小値かどうか判定し（ステップＳ１２）、最小値であれば（Ｙｅｓ）、ブロック歪み評価値を最小値にする演算方法行列ｎをｎｍｉｎに代入し（ステップＳ１３）、ステップＳ１４に進む。一方、最小値でなければ（Ｎｏ）、次に進む。
【００５３】
そして、演算方法行列の番号ｎをインクリメント（＋１）し（ステップＳ１４）、ステップＳ６に戻る。
【００５４】
このステップＳ６において、すべての演算方法行列によってブロック歪み評価が行なわれた場合（Ｙｅｓ）は、該当するマクロブロックでブロック歪み評価値を最小にする演算方法行列が決定されている（ｎｍｉｎ）ので、該演算方法行列ｎｍｉｎにより量子化を実行する（ステップＳ１５）。そして、量子化で得られる量子化ＤＣＴ係数行列を可変長符号化手段４へ通知し符号化を実行することで符号化情報を生成する（ステップＳ１６）。
【００５５】
さらに、マクロブロックのカウンタ用変数ｉをインクリメント（＋１）し（ステップＳ１７）、ステップＳ２に戻る。
【００５６】
以上の手順により、マクロブロック数分のブロック歪み評価値を最小とした演算方法で、量子化を行なうことができる。
【００５７】
また、この符号化装置１０は、コンピュータにおいて各機能をプログラムで実現することも可能であり、各機能プログラムを結合して符号化プログラムとして動作させることも可能である。
【００５８】
（符号化装置の量子化歪み評価方法）
次に、符号化装置１０の歪み検出手段９が、前記量子化歪み量が最小となる量子化演算方法（量子化器）を決定する方法について詳述する。
【００５９】
まず、量子化歪みについて説明する。
ＭＰＥＧ−２に代表される予測誤差画像信号を直交変換するタイプの符号化では、（１）式が成り立つ。
【００６０】
【数１】
0004594561.tif 000002
【００６１】
また、（１）式で得られたＤＣＴ係数Ｙに量子化を行なった結果として、量子化歪みΔが加わった信号を、復号側で予測誤差画像信号として復元すると、（２）式が成り立つ。
【００６２】
【数２】
0004594561.tif 000003
【００６３】
ところで、量子化歪みΔの値は、ＤＣＴ係数行列の各要素の値、ＤＣＴ係数行列に対応した量子化マトリックスの値、量子化器２１1、２１2、…、２１nにおける演算（まるめ）方法（切り捨て、切り上げ、四捨五入等）によって決まる。この演算方法は、任意に決めることができ、マクロブロックに割り当てられた量子化テーブルの値を変更することなく、ＤＣＴ係数行列の各要素ごとに適切に選択することでブロック境界で不連続として検知される、いわゆるブロック歪みを小さくするような量子化歪みΔを制御することが可能である。
【００６４】
そして、離散コサイン変換を行なう前の画像ブロック、すなわちＤＣＴブロックを一次元で考え、ＤＣＴブロックの信号Ｘ＝｛ｘi｝（ｉ＝０，１，…，７）とすると、（２）式は、（３）式のように書くことができる。
【００６５】
【数３】
0004594561.tif 000004
【００６６】
ここで、図３に基づいて、演算方法により異なる量子化誤差の説明を行なう。
図３に示すように、実際の値ｙが量子化され、近似される量子化代表値がｑnまたはｑn+1であるとすると、量子化器２１1、２１2、…、２１nの演算方法として、切り上げが選択されたときは、量子化代表値がｑn+1（＝ｙ＋δ(+)）となり、δ(+)が誤差となる。また、前記演算方法として、切り捨てが選択されたときは、量子化代表値がｑn（＝ｙ−δ(-)）となり、δ(-)が誤差となる。また、前記演算方法として、四捨五入が選択されたときの誤差は、ｍｉｎ（｜δ(+)｜，｜δ(-)｜）とみなすことができる。
【００６７】
ここで、ブロック歪み評価値を与える評価関数Ｂを量子化歪みΔ＝｛δi｝（ｉ＝０，１，…，７）の関数と定義すると、（４）式を満たすΔ*を探索することでブロック歪みを軽減することができる。
【００６８】
【数４】
0004594561.tif 000005
【００６９】
以上の説明に基づいて、ＭＰＥＧ−２で定義されている１つ以上のマクロブロックからなるスライスのうち、水平１スライスのみを対象として、ｎ番目のＤＣＴブロックの信号をＸn＝｛ｘn,i｝（ｉ＝０，１，…，７）とすると、（２）式は（５）式のように書くことができる。
【００７０】
【数５】
0004594561.tif 000006
【００７１】
そして、ブロック歪み評価関数を、隣接ブロック境界における画素値差分の絶対値和と定義すると、ブロック歪み評価関数はΔn-1、Δnの関数として（６）式のように書ける。ここで、Δnはｎ番目のＤＣＴブロックの量子化歪みである。
【００７２】
なお、このブロック歪み評価関数は、隣接ブロック境界における画素値差分の二乗和として定義してもよい。
【００７３】
【数６】
0004594561.tif 000007
【００７４】
また、Δn-1を固定して、Δnを制御するようにすると、ブロック歪み評価関数は、（７）式のように書くことができる。
【００７５】
【数７】
0004594561.tif 000008
【００７６】
ここで、Δは、各成分がδ(+)またはδ(-)であるベクトルの集合Ｄ8の要素である。即ち、Δ∈Ｄ8、Ｄ=｛δ(+)，δ(-)｝となり、Δ*を得るためには、Ｄ8の各要素に対してＢ（Δ）を求め、最小値を知る必要がある。この最小値を探索する探索点数は、Ｄ8の大きさ（要素数）となり、２8である。
【００７７】
ところで、一般に予測誤差画像信号は、高次の周波数の持つ電力は小さく、高次の周波数成分に対しては、視覚感度が低下することが知られている。これにより、ブロック歪み評価関数Ｂでは、演算量を低減するため、係数を低次の係数のみとしても十分に効果が期待できる。そこで、０次及び１次の係数までを考慮すると、ブロック歪み関数は（８）式で定義することができる。
【００７８】
【数８】
0004594561.tif 000009
【００７９】
この場合のＢ（Δ）の最小値を求める探索点数は４（＝２2）となる。
また、（６）式でを共に制御した場合は、（９）式のように書くことができる。この場合の探索点数は１６（＝（２2）2）である。
【００８０】
【数９】
0004594561.tif 000010
【００８１】
次に、１画面内の各ＤＣＴブロックに対して、それぞれ量子化歪みの最小値Δ*を決定する方法について説明する。
【００８２】
始めに、水平１スライスのみを対象として、スライスに沿って左側のブロックから順次Δ*を決定していく。すなわち、（１０）式を満たすΔ*を求めることになる。
【００８３】
【数１０】
0004594561.tif 000011
【００８４】
ただし、この場合は、常にブロックの左境界のブロック歪みを最小にするため、補正の影響が右境界に伝播し、変分が蓄積する可能性がある。そこで、この変分の蓄積を避けるために、以下に示す手順を実行する。
【００８５】
なお、本手順に示した以下の（１１）式、（１２）式、（１３）式において、ブロック歪み評価関数Ｂの引数の数を３にしているが、１つめの引数のブロックと２つめの引数のブロックから画素値差分の絶対値を求め、２つめの引数のブロックと３つめの引数のブロックから画素値差分の絶対値を求め、各々の絶対値を加算することで、ブロック歪みの評価関数とする。
【００８６】
（ａ）マクロブロックの左（偶数）ＤＣＴブロックに対して、（１１）式の如く、両方（または片方）の境界のブロック歪みを最小にするΔ**を求める。
【００８７】
【数１１】
0004594561.tif 000012
【００８８】
（ｂ）マクロブロックの右（奇数）ＤＣＴブロックに対して、（１２）式の如く、両方（または片方）の境界のブロック歪みを最小にするΔ*を求める。
【００８９】
【数１２】
0004594561.tif 000013
【００９０】
（ｃ）再度、マクロブロックの左（偶数）ＤＣＴブロックに対して，（１３）式の如く、Δ*を求める。
【００９１】
【数１３】
0004594561.tif 000014
【００９２】
（ｄ）以下（ｂ）、（ｃ）を画面全体に渡り繰り返す。
【００９３】
以上説明したように、画面全体に渡って、各ブロックについて、最適なΔ*を決定することができる。この値が最適すなわち最小となる量子化演算方法（量子化器）を指定することで、量子化誤差によるブロック歪みが最も抑えられた量子化を行なうことができる
【００９４】
以上、一実施形態に基づいて本発明を説明したが、本発明はこれに限定されるものではない。
【００９５】
【発明の効果】
以上説明したとおり、本発明に係る符号化装置及び符号化プログラムでは、以下に示す優れた効果を奏する。
【００９９】
請求項１，３に記載の発明によれば、歪み検出手段によって、量子化の演算方法を切替えて、量子化歪み値が最良となる演算方法を決定することができる。これにより、さらに量子化歪み値を最良にする演算方法により量子化を行なうことができるので、量子化による歪みを抑え、ビットレートが低い場合でもブロック歪みを視覚的に軽減することができる。
【０１００】
請求項２，４に記載の発明によれば、歪み検出手段によって、ある隣接した２つのブロックの各画素値の差の絶対値またはその二乗を、ブロックに属する全部または一部の画素数分を加算して、量子化歪み値を算出することができる。これにより、量子化歪みを定量的に判定することができ、最適な量子化を行なうことができるので、量子化による歪みを抑え、ビットレートが低い場合でもブロック歪みを視覚的に軽減することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る符号化装置の全体構成を示すブロック図である。
【図２】本発明の実施の形態に係る量子化装置の全体構成を示すブロック図である。
【図３】演算方法による量子化誤差の違いを説明する図である。
【図４】本発明の実施の形態に係る符号化装置の動作を説明したフローチャートである。
【図５】従来の符号化装置の全体構成を示すブロック図である。
【符号の説明】
１０、１０Ａ……符号化装置
１……減算手段
２……直交変換手段
３、３Ａ……量子化手段
４……可変長符号化手段
５……逆量子化手段
６……逆直交変換手段
７……加算手段
８……予測手段
９……歪み検出手段
２０……量子化装置
２１1、２１2、〜、２１n……量子化器
２２……量子化マトリックス保持手段
２３……切替手段
【図１】
0004594561.tif 000015
【図２】
0004594561.tif 000016
【図３】
0004594561.tif 000017
【図４】
0004594561.tif 000018
【図５】
0004594561.tif 000019