(57)【特許請求の範囲】
【請求項１】
入力画像データにＧＯＰを設定し、イントラ予測、インター予測により前記入力画像データをマクロブロック単位で順次符号化処理して符号化データを出力する符号化装置において、
前記イントラ予測、インター予測による前記入力画像データの予測誤差データを直交変換処理して係数データを出力する直交変換部と、
前記係数データを量子化処理する量子化部と、
前記量子化部の出力データを符号化処理して前記符号化データを出力する符号化部と、
前記符号化データにより前記量子化部における量子化スケールを制御することにより、
前記符号化データをレート制御するレート制御部とを有し、
前記レート制御部は、
前記入力画像データの平滑度を示すアクティビティを検出するアクティビティ検出部と、
前記入力画像データの前記インター予測による予測残差を検出する予測残差の検出部とを有し、
１ＧＯＰを構成するピクチャにおいて、未だ符号化処理されていないピクチャへの目標符号量を計算し、
前記ピクチャの目標符号量から、符号化処理に係るピクチャのマクロブロックに係る目標符号量を計算し、発生符号量が該目標符号量となる前記量子化部の量子化スケールを計算し、
前記アクティビティ検出部により検出されるアクティビティを正規化して正規化アクティビティを計算し、前記発生符号量が該目標符号量となる前記量子化スケールを前記正規化アクティビティにより補正して前記正規化アクティビティにより補正された量子化スケールを計算し、
前記予測残差の検出部により検出される予測残差を正規化して正規化予測残差を計算し、前記発生符号量が該目標符号量となる前記量子化スケールを前記正規化予測残差により補正して前記正規化予測残差により補正された量子化スケールを計算し、
前記正規化アクティビティにより補正された量子化スケールと、前記正規化予測残差により補正された量子化スケールとの合成により、前記発生符号量が該目標符号量となる前記量子化スケールを補正する、符号化装置。
【請求項２】
入力画像データにＧＯＰを設定し、イントラ予測、インター予測により前記入力画像データをマクロブロック単位で順次符号化処理して符号化データを出力する符号化方法において、
前記イントラ予測、インター予測による前記入力画像データの予測誤差データを直交変換処理して係数データを出力する直交変換ステップと、
前記係数データを量子化処理する量子化ステップと、
前記量子化ステップによる出力データを符号化処理して前記符号化データを出力する符号化ステップと、
前記符号化データにより前記量子化ステップにおける量子化スケールを制御することにより、前記符号化データをレート制御するレート制御ステップとを有し、
前記レート制御ステップは、
前記入力画像データの平滑度を示すアクティビティを検出するアクティビティ検出ステップと、
前記入力画像データの前記インター予測による予測残差を検出する予測残差検出ステップと、
１ＧＯＰを構成するピクチャにおいて、未だ符号化処理されていないピクチャへの目標符号量を計算するピクチャの目標符号量計算ステップと、
前記ピクチャの目標符号量計算ステップによる目標符号量から、符号化処理に係るピクチャのマクロブロックに係る目標符号量を計算し、発生符号量が該目標符号量となる前記量子化ステップの量子化スケールを計算する量子化スケール計算ステップと、
前記アクティビティと前記予測残差とに基づいて、前記量子化スケール計算ステップによる量子化スケールを補正する量子化スケールの補正ステップとを有し、
前記量子化スケールの補正ステップは、
前記アクティビティ検出ステップにより検出されるアクティビティを正規化して正規化アクティビティを計算するアクティビティの正規化ステップと、
前記量子化スケール計算ステップで計算された前記量子化スケールを前記正規化アクティビティにより補正して前記正規化アクティビティにより補正された量子化スケールを計算する正規化アクティビティによる補正ステップと、
前記予測残差検出ステップにより検出される予測残差を正規化して正規化予測残差を計算する予測残差の正規化ステップと、
前記量子化スケール計算ステップで計算された前記量子化スケールを前記正規化予測残差により補正して前記正規化予測残差により補正された量子化スケールを計算する正規化予測残差による補正ステップと、
前記正規化アクティビティにより補正された量子化スケールと、前記正規化予測残差により補正された量子化スケールとの合成により、前記量子化スケール計算ステップによる量子化スケールを補正する量子化スケール合成のステップとを有する、符号化方法。
【請求項３】
前記量子化スケール合成のステップは、
前記正規化アクティビティにより補正された量子化スケールと、前記正規化予測残差により補正された量子化スケールとの重み付け平均により、前記量子化スケールを計算する
ことを特徴とする請求項２に記載の符号化方法。
【請求項４】
前記量子化スケール合成のステップは、
前記重み付け平均の処理に係る重み付け係数を適応的に可変する
ことを特徴とする請求項３に記載の符号化方法。
【請求項５】
前記入力画像データの解像度を低減した縮小画像により大まかに動きベクトルを検出した後、該検出結果により動きベクトル検出範囲を制限して動きベクトルを検出することにより、前記インター予測に係る動きベクトルを検出する
ことを特徴とする請求項２に記載の符号化方法。
【請求項６】
複数の参照画像から最適な参照画像を選択して前記イントラ予測による予測誤差データを生成し、
前記予測残差検出ステップは、
前記複数の参照画像の各縮小画像で検出される前記動きベクトルによる予測残差から最小値を検出して、前記インター予測による予測残差を検出する
ことを特徴とする請求項５に記載の符号化方法。
【請求項７】
前記イントラ予測における予測残差を計算するイントラ予測に係る予測残差検出ステップを有し、
前記量子化スケールの補正ステップは、
前記イントラ予測による符号化処理では、前記予測残差検出ステップで検出される前記予測残差に代えて、前記イントラ予測に係る予測残差検出ステップで検出される前記イン
トラ予測における予測残差を用いて、前記量子化スケールを補正する
ことを特徴とする請求項２に記載の符号化方法。
【請求項８】
前記入力画像データが、入力符号化データを復号して生成される画像データであり、
前記予測残差検出ステップは、
前記入力符号化データにおける符号量と量子化スケールとから、前記予測残差を検出する
ことを特徴とする請求項２に記載の符号化方法。
【請求項９】
コンピュータを、
入力画像データにＧＯＰを設定し、イントラ予測、インター予測により前記入力画像データをマクロブロック単位で順次符号化処理して符号化データを出力する符号化装置において、
前記イントラ予測、インター予測による前記入力画像データの予測誤差データを直交変換処理して係数データを出力する直交変換部と、
前記係数データを量子化処理する量子化部と、
前記量子化部の出力データを符号化処理して前記符号化データを出力する符号化部と、
前記符号化データにより前記量子化部における量子化スケールを制御することにより、
前記符号化データをレート制御するレート制御部とを有し、
前記レート制御部は、
前記入力画像データの平滑度を示すアクティビティを検出するアクティビティ検出部と、
前記入力画像データの前記インター予測による予測残差を検出する予測残差の検出部とを有し、
１ＧＯＰを構成するピクチャにおいて、未だ符号化処理されていないピクチャへの目標符号量を計算し、
前記ピクチャの目標符号量から、符号化処理に係るピクチャのマクロブロックに係る目標符号量を計算し、発生符号量が該目標符号量となる前記量子化部の量子化スケールを計算し、
前記アクティビティ検出部により検出されるアクティビティを正規化して正規化アクティビティを計算し、前記発生符号量が該目標符号量となる前記量子化スケールを前記正規化アクティビティにより補正して前記正規化アクティビティにより補正された量子化スケールを計算し、
前記予測残差の検出部により検出される予測残差を正規化して正規化予測残差を計算し、前記発生符号量が該目標符号量となる前記量子化スケールを前記正規化予測残差により補正して前記正規化予測残差により補正された量子化スケールを計算し、
前記正規化アクティビティにより補正された量子化スケールと、前記正規化予測残差により補正された量子化スケールとの合成により、前記発生符号量が該目標符号量となる前記量子化スケールを補正する、符号化装置として機能させるためのプログラム。
【請求項１０】
コンピュータを、
入力画像データにＧＯＰを設定し、イントラ予測、インター予測により前記入力画像データをマクロブロック単位で順次符号化処理して符号化データを出力する符号化装置において、
前記イントラ予測、インター予測による前記入力画像データの予測誤差データを直交変換処理して係数データを出力する直交変換部と、
前記係数データを量子化処理する量子化部と、
前記量子化部の出力データを符号化処理して前記符号化データを出力する符号化部と、
前記符号化データにより前記量子化部における量子化スケールを制御することにより、
前記符号化データをレート制御するレート制御部とを有し、
前記レート制御部は、
前記入力画像データの平滑度を示すアクティビティを検出するアクティビティ検出部と、
前記入力画像データの前記インター予測による予測残差を検出する予測残差の検出部とを有し、
１ＧＯＰを構成するピクチャにおいて、未だ符号化処理されていないピクチャへの目標符号量を計算し、
前記ピクチャの目標符号量から、符号化処理に係るピクチャのマクロブロックに係る目標符号量を計算し、発生符号量が該目標符号量となる前記量子化部の量子化スケールを計算し、
前記アクティビティ検出部により検出されるアクティビティを正規化して正規化アクティビティを計算し、前記発生符号量が該目標符号量となる前記量子化スケールを前記正規化アクティビティにより補正して前記正規化アクティビティにより補正された量子化スケールを計算し、
前記予測残差の検出部により検出される予測残差を正規化して正規化予測残差を計算し、前記発生符号量が該目標符号量となる前記量子化スケールを前記正規化予測残差により補正して前記正規化予測残差により補正された量子化スケールを計算し、
前記正規化アクティビティにより補正された量子化スケールと、前記正規化予測残差により補正された量子化スケールとの合成により、前記発生符号量が該目標符号量となる前記量子化スケールを補正する、符号化装置として機能させるためのプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化装置、符号化方法、符号化方法のプログラム及び符号化方法のプログラムを記録した記録媒体に関し、例えば直交変換と動き補償とにより画像データをデータ圧縮して伝送、記録等する場合に適用することができる。本発明は、各マクロブロックに設定した量子化スケールを、アクティビティと予測残差とに基づいて視覚特性により画質が向上するように補正することにより、視覚特性を考慮して従来に比して一段と画質を向上することができるようにする。
【背景技術】
【０００２】
近年、放送局、一般家庭等に係る動画の伝送、記録においては、画像データの冗長性を有効に利用して効率良く画像データを伝送、蓄積する装置が普及しつつあり、このような装置は、例えばＭＰＥＧ（Moving Picture Experts Group）等の方式に準拠して、離散コサイン変換等の直交変換と動き補償とにより画像データをデータ圧縮するように構成されている。
【０００３】
ここでこのような方式の１つであるＭＰＥＧ２（ISO/IEC 13818-2 ）は、汎用の画像符号化方式として定義された方式であり、飛び越し走査方式、順次走査方式の双方に対応できるように、また標準解像度画像、高精細画像の双方に対応できるように定義され、これらにより現在、プロフェッショナル用途及びコンシューマー用途の広範なアプリケーションに広く用いられている。具体的にＭＰＥＧ２によれば、例えば７２０×４８０画素による標準解像度、飛び越し走査方式の画像データを４〜８〔Ｍｂｐｓ〕のビットレートにデータ圧縮して、また１９２０×１０８８画素による高解像度、飛び越し走査方式の画像データを１８〜２２〔Ｍｂｐｓ〕のビットレートにデータ圧縮して、高画質で高い圧縮率を確保することができる。
【０００４】
しかしながらＭＰＥＧ２は、放送用に適合した高画質符号化方式であり、ＭＰＥＧ１より符号量の少ない高圧縮率の符号化方式には対応していない。これに対して近年の携帯端末の普及により、このようなＭＰＥＧ１より符号量の少ない高圧縮率の符号化方式のニーズの高まりが予測される。このためＭＰＥＧ４による符号化方式の規格が、ＩＳＯ／ＩＥＣ（International 0rganization for Standardization／International Electrotechnical Commission ）１４４９６−２により１９９８年１２月に国際標準に承認された。
【０００５】
またこのような方式にあっては、当初はテレビ会議用の画像符号化を目的としたものであったＨ２６Ｌ（ITU-T Q6/16 VCEG）の規格化が進み、ＭＰＥＧ２、ＭＰＥＧ４に比して演算量が増大するものの、ＭＰＥＧ２、ＭＰＥＧ４に比して高い符号化効率を確保できるようになり、またＭＰＥＧ４の活動の一環として、このＨ２６Ｌをベースにして各種機能を取り入れ、さらに一段と高い符号化効率を確保する符号化方式の標準化が、Joint Model of Enhanced-Compression Video Codingとして進められ、これらの方式にあっては、２００３年３月に、Ｈ２６４及びＭＰＥＧ−４  Ｐａｒｔ１０（ＡＶＣ：Advanced Video Coding ）との名称により国際標準に設定された。
【０００６】
ここで図４は、このＡＶＣに基づく符号化装置を示すブロック図である。この符号化装置１は、複数のイントラ予測モードと複数のインター予測モードとから最適な予測モードを選択し、この選択した予測モードによる予測値を画像データから減算して差分データ（予測誤差データ）を生成し、この差分データを直交変換処理、量子化処理、可変長符号化処理することにより、この画像データをイントラ符号化、インター符号化により符号化処理する。
【０００７】
すなわちこの符号化装置１において、アナログディジタル変換回路（Ａ／Ｄ）２は、ビデオ信号Ｓ１をアナログディジタル変換処理して画像データＤ１を出力する。画面並べ替えバッファ３は、このアナログディジタル変換回路２から出力される画像データＤ１を入力し、この符号化装置１の符号化処理に係るＧＯＰ（Group of Pictures ）構造に応じて、この画像データＤ１のフレームを並べ替えて出力する。
【０００８】
減算器４は、この画面並べ替えバッファ３から出力される画像データＤ１を受け、イントラ符号化においては、イントラ予測回路５で生成される予測値との差分データＤ２を生成して出力するのに対し、インター符号化においては、動き予測・補償回路６で生成される予測値との差分データＤ２を生成して出力する。直交変換回路７は、減算器４の出力データＤ２を入力し、離散コサイン変換、カルーネン・レーベ変換等の直交変換処理を実行し、その処理結果による変換係数データＤ３を出力する。
【０００９】
量子化回路８は、レート制御回路９のレート制御による量子化スケールにより、この変換係数データＤ３を量子化して出力する。可逆符号化装置１０は、この量子化回路８の出力データを可変長符号化、算術符号化等により可逆符号化処理して出力する。また可逆符号化装置１０は、イントラ符号化に係るイントラ予測モードに関する情報、インター符号化に係る動きベクトルに関する情報等をイントラ予測回路５、動き予測・補償回路６から取得し、これらの情報を出力データＤ４のヘッダ情報に設定して出力する。
【００１０】
蓄積バッファ１１は、この可逆符号化装置１０の出力データＤ４を蓄積して続く伝送路の伝送速度により出力する。レート制御回路９は、この蓄積バッファ１１の空き容量の監視により符号化処理による発生符号量を監視すると共に、この監視結果により量子化回路８における量子化スケールを切り換え、これによりこの符号化装置１による発生符号量を制御する。
【００１１】
逆量子化回路１３は、量子化回路８の出力データを逆量子化処理し、これにより量子化回路８の入力データを再生する。逆直交変換回路１４は、逆量子化回路１３の出力データを逆直交変換処理し、これにより直交変換回路７の入力データを再生する。デブロックフィルタ１５は、この逆直交変換回路１４の出力データよりブロック歪を除去して出力する。フレームメモリ１６は、このデブロックフィルタ１５の出力データに、適宜、イントラ予測回路５又は動き予測・補償回路６により生成される予測値を加算して参照画像情報として記録する。
【００１２】
しかして動き予測・補償回路６は、インター符号化において、このフレームメモリ１６に保持された参照画像情報による予測フレームより画面並べ替えバッファ３から出力される画像データの動きベクトルを検出し、またこの検出した動きベクトルによりフレームメモリ１６に保持した参照画像情報を動き補償して予測画像情報を生成し、この予測画像情報による予測値を減算器４に出力する。
【００１３】
イントラ予測回路５は、イントラ符号化において、フレームメモリ１６に蓄積された参照画像情報に基づいてイントラ予測モードを判定し、この判定結果により参照画像情報から予測画像情報の予測値を生成して減算器４に出力する。
【００１４】
これらによりこの符号化方式においては、インター符号化とイントラ符号化とでそれぞれインター予測に係る動き補償による差分データＤ２とイントラ予測による差分データＤ２とを生成し、これらの差分データＤ２を直交変換処理、量子化処理、可変長符号化処理して伝送する。
【００１５】
図５は、このようにして符号化処理された符号化データＤ４を復号化処理する復号化装置を示すブロック図である。この復号化装置２０において、蓄積バッファ２１は、伝送路を介して入力される符号化データＤ４を一時蓄積して出力する。可逆復号化回路２２は、この蓄積バッファ２１の出力データを可変長復号化、算術復号化等により復号化処理し、符号化装置１における可逆符号化装置１０の入力データを再生する。またこのときこの出力データがイントラ符号化されたものである場合、ヘッダに格納されたイントラ予測モードの情報を復号化してイントラ予測回路２３に伝送するのに対し、この出力データがインター符号化されたものである場合、ヘッダに格納された動きベクトルに関する情報を復号して動き予測・補償回路２４へ転送する。
【００１６】
逆量子化回路２５は、可逆復号化回路２２の出力データを逆量子化処理し、これにより符号化装置１の量子化回路８に入力される変換係数データＤ３を再生する。逆直交変換回路２６は、この逆量子化回路２５から出力される変換係数データを受け、４次の逆直交変換処理を実行し、これにより符号化装置１の直交変換回路７に入力される差分データＤ２を再生する。
【００１７】
加算器２７は、逆直交変換回路２６から出力される差分データＤ２を受け、イントラ符号化において、イントラ予測回路２３で生成される予測画像による予測値を加算して出力するのに対し、インター符号化において、動き予測・補償回路２４から出力される予測画像による予測値を加算して出力する。これにより加算器２７は、符号化装置１における減算器４の入力データを再生する。
【００１８】
デブロックフィルタ２８は、この加算器２７の出力データよりブロック歪を除去して出力し、画面並べ替えバッファ２９は、このデブロックフィルタ２８から出力される画像データのフレームをＧＯＰ構造に応じて並べ替えて出力する。ディジタルアナログ変換回路（Ｄ／Ａ）３０は、この画面並べ替えバッファ２９の出力データをディジタルアナログ変換処理して出力する。
【００１９】
フレームメモリ３１は、デブロックフィルタ２８の出力データを参照画像情報として記録して保持する。動き予測・補償回路２４は、インター符号化において、可逆復号化回路２２から通知される動きベクトルの情報によりフレームメモリ３１に保持された参照画像情報を動き補償して予測画像による予測値を生成し、この予測値を加算器２７に出力する。またイントラ予測回路２３は、イントラ符号化において、可逆復号化回路２２から通知されるイントラ予測モードによりフレームメモリ３１に保持された参照画像情報より予測画像による予測値を生成し、この予測値を加算器２７に出力する。
【００２０】
しかしてこのような符号化処理に係るイントラ符号化には、イントラ４×４予測モードとイントラ１６×１６予測モードとが用意されている。ここでＡＶＣでは４×４画素のブロック単位で差分データＤ２を直交変換処理し、イントラ４×４予測モードは、この直交変換処理のブロック単位で、イントラ予測に係る予測値を生成するモードである。これに対して１６×１６予測モードは、この直交変換処理のブロックの複数個を単位にしてイントラ予測に係る予測値を生成するモードであり、この複数個が水平方向及び垂直方向にそれぞれ２個に設定される。
【００２１】
このうちイントラ４×４予測モードでは、図６に示すように、予測値を生成する４×４画素ａ〜ｐによるブロックに対して、近傍１３個の画素Ａ〜Ｍの一部が予測値の生成に供する予測画素に設定され、この予測画素より予測値が生成される。なおここでこの１３個の画素Ａ〜Ｍは、このブロックの走査開始端側、垂直方向に隣接する４個の画素Ａ〜Ｄと、この４個の画素Ａ〜Ｄの走査終了端側の画素Ｄに続く４個の画素Ｅ〜Ｈと、このブロックの走査開始端側、水平方向に隣接する４個の画素Ｉ〜Ｌと、この水平方向に隣接する４個の画素Ｉ〜Ｌのうちの走査開始端側の画素Ｉの上方に位置する画素Ｍとにより形成される。
【００２２】
イントラ４×４予測モードでは、これら１３個の画素Ａ〜Ｍと、予測値の生成に供する４×４個の画素ａ〜ｐとの相対的な関係により、図７及び図８に示すように、モード０〜モード８の予測モードが定義される。
【００２３】
より具体的には、図９（Ａ）において矢印により示すように、モード０は、垂直方向に隣接する画素Ａ〜Ｄより予測値を生成するモードであり、予測値を生成する４×４個の画素ａ〜ｐのうち、垂直方向に連続する１列目の画素ａ、ｅ、ｉ、ｍは、その上方向の画素Ａが予測画素に設定される。また続く２列目の画素ｂ、ｆ、ｊ、ｎは、その上方向の画素Ｂが予測画素に設定され、続く３列目及び４列目の画素ｃ、ｇ、ｋ、ｏ及びｄ、ｈ、ｌ、ｐは、それぞれ上方の画素Ｃ及びＤが予測画素に設定され、これら予測画素Ａ〜Ｄの画素値がそれぞれ対応する画素ａ〜ｐの予測値に設定される。なおモード０は、このモードにおける予測画素Ａ〜Ｄが有意である場合にのみ適用される。
【００２４】
また図９（Ｂ）に同様に示すように、モード１は、水平方向に隣接する画素Ｉ〜Ｌより予測値を生成するモードであり、予測値を生成する４×４個の画素ａ〜ｐのうち、水平方向に連続する１ラインの画素ａ〜ｄは、その左方の画素Ｉが予測画素に設定される。また続く２ライン目の画素ｅ〜ｈは、その左方の画素Ｊが予測画素に設定され、続く３ライン目及び４ライン目の画素ｉ〜ｌ及びｍ〜ｐは、それぞれ左方の画素Ｋ及びＬが予測画素に設定され、これら予測画素Ｉ〜Ｌの画素値がそれぞれ対応する画素ａ〜ｐの予測値に設定される。なおモード１は、このモードにおける予測画素Ｉ〜Ｌが有意である場合にのみ適用される。
【００２５】
これに対してモード２は、図９（Ｃ）に示すように、１３個の画素Ａ〜Ｍのうち、このブロックの垂直方向及び水平方向に隣接する画素Ａ〜Ｄ及びＩ〜Ｌより予測値を生成するモードであり、これらの画素Ａ〜Ｄ及びＩ〜Ｌが全て有意な場合に、次式により各画素ａ〜ｐの予測値が生成される。
【００２６】
【数１】
0004650173.tif 000002
【００２７】
なおモード２においては、画素Ａ〜Ｄが全て有意でない場合、予測値は、（２）式により生成され、画素Ｉ〜Ｌが全て有意でない場合、予測値は、（３）式により生成され、画素Ａ〜Ｄ及びＩ〜Ｌが全て有意でない場合、予測値は値１２８に設定される。
【００２８】
【数２】
0004650173.tif 000003
【００２９】
【数３】
0004650173.tif 000004
【００３０】
これに対してモード３は、図９（Ｄ）に示すように、１３個の画素Ａ〜Ｍのうち、水平方向に連続する画素Ａ〜Ｈより予測値を生成するモードであり、これらの画素Ａ〜Ｈのうちの画素Ａ〜Ｄと画素Ｉ〜Ｍとが全て有意な場合にのみ適用されて、次式により各画素ａ〜ｐの予測値が生成される。
【００３１】
【数４】
0004650173.tif 000005
【００３２】
これに対してモード４は、図９（Ｅ）に示すように、１３個の画素Ａ〜Ｍのうち、４×４個の画素ａ〜ｐによるブロックに隣接する画素Ａ〜Ｄ、Ｉ〜Ｍとにより予測値を生成するモードであり、これらの画素Ａ〜Ｄ、Ｉ〜Ｍが全て有意な場合にのみ適用されて、次式により各画素ａ〜ｐの予測値が生成される。
【００３３】
【数５】
0004650173.tif 000006
【００３４】
これに対してモード５は、図９（Ｆ）に示すように、モード４と同様に、１３個の画素Ａ〜Ｍのうち、４×４個の画素ａ〜ｐによるブロックに隣接する画素Ａ〜Ｄ、Ｉ〜Ｍとにより予測値を生成するモードであり、これらの画素Ａ〜Ｄ、Ｉ〜Ｍが全て有意な場合にのみ適用されて、次式により各画素ａ〜ｐの予測値が生成される。
【００３５】
【数６】
0004650173.tif 000007
【００３６】
これに対してモード６は、図９（Ｇ）に示すように、モード４及びモード５と同様に、１３個の画素Ａ〜Ｍのうち、４×４個の画素ａ〜ｐによるブロックに隣接する画素Ａ〜Ｄ、Ｉ〜Ｍにより予測値を生成するモードであり、これらの画素Ａ〜Ｄ、Ｉ〜Ｍが全て有意な場合にのみ適用されて、次式により各画素ａ〜ｐの予測値が生成される。
【００３７】
【数７】
0004650173.tif 000008
【００３８】
これに対してモード７は、図９（Ｈ）に示すように、１３個の画素Ａ〜Ｍのうち、４×４個の画素ａ〜ｐによるブロックの上方に隣接する４個の画素Ａ〜Ｄと、この４個の画素Ａ〜Ｄに続く４個の画素Ｅ〜Ｇとにより予測値を生成するモードであり、これらのうちの画素Ａ〜Ｄ及び画素Ｉ〜Ｍが全て有意な場合にのみ適用されて、次式により各画素ａ〜ｐの予測値が生成される。
【００３９】
【数８】
0004650173.tif 000009
【００４０】
これに対してモード８は、図９（Ｉ）に示すように、１３個の画素Ａ〜Ｍのうち、４×４個の画素によるブロックの左方に隣接する４個の画素Ｉ〜Ｌにより予測値を生成するモードであり、画素Ａ〜Ｄ及び画素Ｉ〜Ｍが全て有意な場合にのみ適用されて、次式により各画素ａ〜ｐの予測値が生成される。
【００４１】
【数９】
0004650173.tif 000010
【００４２】
これに対してイントラ１６×１６予測モードでは、図１０に示すように、予測値を生成する１６×１６個の画素Ｐ（０，１５）〜Ｐ（１５，１５）によるブロックＢに対して、このブロックＢを構成する画素Ｐ（０，１５）〜Ｐ（１５，１５）と、このブロックＢの上方及び左方に隣接する画素Ｐ（０，−１）〜Ｐ（１５，−１）及びＰ（−１，０）〜Ｐ（−１，１５）が予測画素に設定され、これらの予測画素により予測値が生成される。
【００４３】
イントラ１６×１６予測モードでは、図１１に示すように、モード０〜モード３の予測モードが定義され、このうちモード０は、ブロックＢの上方に隣接する画素Ｐ（０，−１）〜Ｐ（１５，−１）（Ｐ（ｘ，−１）；ｘ，ｙ＝−１〜１５）が有意な場合にのみ適用されて、次式により示すように、ブロックＢを構成する各画素Ｐ（０，１５）〜Ｐ（１５，１５）の予測値が生成され、これにより図１２（Ａ）に示すように、ブロックＢに隣接する各画素Ｐ（０，−１）〜Ｐ（１５，−１）の画素値によりブロックＢの垂直方向に連続する各画素の予測値が生成される。
【００４４】
【数１０】
0004650173.tif 000011
【００４５】
これに対してモード１は、ブロックＢの左方に隣接する画素Ｐ（−１，０）〜Ｐ（−１，１５）（Ｐ（−１，ｙ）；ｘ，ｙ＝−１〜１５）が有意な場合にのみ適用されて、次式により示すように、ブロックＢを構成する各画素Ｐ（０，１５）〜Ｐ（１５，１５）の予測値が生成され、これにより図１２（Ｂ）に示すように、ブロックＢに隣接する各画素Ｐ（−１，０）〜Ｐ（−１，１５）の画素値によりブロックＢの水平方向に連続する各画素の予測値が生成される。
【００４６】
【数１１】
0004650173.tif 000012
【００４７】
これに対してモード２は、ブロックＢの上方及び左方に隣接する画素Ｐ（０，−１）〜Ｐ（１５，−１）及びＰ（−１，０）〜Ｐ（−１，１５）が全て有意な場合には、次式により予測値が求められ、これにより図１２（Ｃ）に示すように、これらの画素Ｐ（０，−１）〜Ｐ（１５，−１）及びＰ（−１，０）〜Ｐ（−１，１５）による画素値の平均値によりブロックＢを構成する各画素の予測値が生成される。
【００４８】
【数１２】
0004650173.tif 000013
【００４９】
なおモード２においては、これらブロックＢの上方及び左方に隣接する画素Ｐ（０，−１）〜Ｐ（１５，−１）及びＰ（−１，０）〜Ｐ（−１，１５）のうち、上方に隣接する画素Ｐ（−１，０）〜Ｐ（−１，１５）が有意でない場合、（１３）式が適用されて有意な側の隣接画素の平均値により各画素の予測値が生成される。また左方に隣接する画素Ｐ（−１，０）〜Ｐ（−１，１５）が有意でない場合、（１４）式が適用され、この場合も有意な側の隣接画素の平均値によりブロックＢを構成する各画素の予測値が生成される。またブロックＢの上方及び左方に隣接する画素Ｐ（０，−１）〜Ｐ（１５，−１）及びＰ（−１，０）〜Ｐ（−１，１５）の全てが有意でない場合、値１２８に予測値が設定される。
【００５０】
【数１３】
0004650173.tif 000014
【００５１】
【数１４】
0004650173.tif 000015
【００５２】
これに対してモード３は、ブロックＢの上方及び左方に隣接する画素Ｐ（０，−１）〜Ｐ（１５，−１）及びＰ（−１，０）〜Ｐ（−１，１５）が全て有意な場合にのみ適用され、次式により予測値が求められ、これにより図１２（Ｄ）に示すように、斜め方向の演算処理により各画素の予測値が生成される。ここでＣｌｉｐ１は、値０〜２５５の範囲のクリップ処理である。
【００５３】
【数１５】
0004650173.tif 000016
【００５４】
これらにより符号化装置１のイントラ予測装置５は、Ｉピクチャ、Ｐピクチャ、Ｂピクチャにおいて、画面並べ替えバッファ３より出力される画像データＤ１を入力してフレームメモリ１６に保持した参照画像情報によりいわゆるイントラ予測して最適な予測モードを選択する。またこの選択した予測モードによりイントラ符号化する場合、この選択した予測モードによる予測値を参照画像情報より生成して減算器４に出力し、またこの予測モードを可逆符号化装置１０に通知して符号化データＤ４と共に伝送する。これに対して復号化装置２０のイントラ予測装置２３は、この符号化データＤ４と共に伝送された予測モードの情報により予測値を計算して加算器２７に出力する。
【００５５】
これに対してインター符号化では、図１３に示すように、Multiple Reference Frames により、処理対象のフレームＯｒｇに対して、複数の参照フレームＲｅｆの何れかを選択して動き補償することができ、これにより直前のフレームにおいて動き補償のブロックに対応する部位が隠れている場合、さらにはフラッシュにより直前のフレームで一時的に全体の画素値が変動した場合等にあっても、高い精度により動き補償してデータ圧縮効率を向上する。
【００５６】
また動き補償に係るブロックは、図１４（Ａ１）に示すように、１６画素×１６画素によるブロックを基準にして動き補償するものの、variable MCBlock Size によりtree-structured motion compensation がサポートされており、これにより図１４（Ａ２）〜（Ａ４）に示すように、１６画素×１６画素によるブロックを水平方向及び又は垂直方向に２分割して、１６画素×８画素、８画素×１６画素、８画素×８画素によるサブブロックによりそれぞれ独立に動きベクトル、参照フレームを設定して動き補償することができる。また８画素×８画素によるサブブロックについては、図１４（Ｂ１）〜（Ｂ４）に示すように、８画素×８画素、８画素×４画素、４画素×８画素、４画素×４画素によるブロックにさらに分割して、それぞれ独立に動きベクトル、参照フレームを設定して動き補償することができる。
【００５７】
また動き補償では、６タップのＦＩＲフィルタを用いて１／４画素精度により動き補償する。ここで図１５において、大文字の符号により示す画素は、１画素精度の画素であり、小文字により示す画素は、１／２画素精度、１／４画素精度の画素である。動き補償では、始めに、６タップのＦＩＲフィルタの各タップ入力を値１、−５、２０、２０、−５、１により重み付けして次式の演算処理を順次実行することにより、水平方向又は垂直方向の連続する画素間に１／２画素精度による画素ｂ、ｈの画素値を計算する。
【００５８】
【数１６】
0004650173.tif 000017
【００５９】
またこのようにして計算した１／２画素精度による画素値ｂ又はｈを用いて、６タップのＦＩＲフィルタの各タップ入力を値１、−５、２０、２０、−５、１により重み付けして次式の演算処理を実行することにより、水平方向及び垂直方向の連続する画素間の１／２画素精度による画素値ｊを計算する。
【００６０】
【数１７】
0004650173.tif 000018
【００６１】
またこのようにして計算した１／２画素精度により画素値ｂ〜ｊを用いた直線補間により、１／４画素精度による画素値ａ、ｄ、ｅ……を計算する。なおこれら（１６）式及び（１７）式の重み付け加算に係る正規化の処理においては、垂直方向及び水平方向の全ての補間処理が完了して実行される。
【００６２】
なお色差信号については、図１６に示すように、次式の演算処理による線型内挿演算処理により、直接、整数精度による画素から少数画素精度の画素値が求められる。なおここで図１６において、ｄｘ、ｄｙは、それぞれ水平方向及び垂直方向の内挿係数であり、符号Ａ〜Ｄは、各画素の画素値である。
【００６３】
【数１８】
0004650173.tif 000019
【００６４】
これらにより符号化装置１における動き予測・補償装置６は、Ｐピクチャ及びＢピクチャにおいて、フレームメモリ１６に保持された参照画像情報による符号化処理のレベル及びプロファイルにより定義される複数の予測フレームを用いて、マクロブロック、サブブロック毎に１／４画素精度による動きベクトルを検出し、最も予測残差の少ない参照フレームによる動きベクトルを検出する。またこのようにして検出した参照フレームによりフレームメモリ１６に保持した参照画像情報を１／４画素精度により動き補償していわゆるインター予測の処理を実行する。またこのインター予測によりインター符号化処理する場合、動き補償による画素値を予測値として減算器４に出力すると共に、これら参照フレーム、ブロック、動きベクトルを可逆符号化装置１０に通知して符号化データＤ４と共に伝送する。
【００６５】
これに対して復号化装置２０の動き予測・補償装置２４は、この符号化データＤ４と共に伝送された参照フレーム、動きベクトルによりフレームメモリ１６に保持した参照画像情報を１／４画素精度により動き補償して予測値を生成し、この予測値を加算器２７に出力する。しかして符号化装置１は、Ｐピクチャ及びＢピクチャにおいては、例えばイントラ予測装置５によるイントラ予測結果、動き予測・補償装置６によるインター予測結果に基づいてイントラ符号化、インター符号化を選択し、イントラ予測装置５、動き予測・補償装置６は、この選択結果によりそれぞれイントラ予測、インター予測による予測値を出力する。
【００６６】
なおＡＶＣによる符号化処理は、図１７に示すように、インターレース方式によるビデオ信号を符号化処理する場合、１フレームで垂直方向に連続する２つのマクロブロックの対（マクロブロックペアである）を定義し、このマクロブロックの対に対して、フィールドモードにより又はフレームモードにより符号化処理することが可能である。
【００６７】
これに対してレート制御装置９によるレート制御は、例えばＴＭ５（ＭＰＥＧ−２  Ｔｅｓｔ  Ｍｏｄｅｌ  ５）による手法が適用される。ここでＴＭ５によるレート制御は、図１８に示す処理手順の実行により量子化装置８の量子化スケールを制御することにより実行される。すなわちレート制御装置９においては、処理を開始するとステップ１に移り、１ＧＯＰを構成するピクチャにおいて、未だ符号化処理されていないピクチャへの目標符号量を計算し、これによりピクチャへのビット配分を行う。ここでＴＭ５では、以下の２つの仮定に基づいて、各ピクチャへの符号割り当て量を計算する。
【００６８】
ここで第１の仮定は、各ピクチャを符号化する際に用いる平均量子化スケールと、発生符号量との積は、画面が変化しない限り、ピクチャタイプ毎に一定値であるとの仮定である。これによりこのレート制御は、各ピクチャを符号化処理した後、各ピクチャタイプ毎に、画面の複雑さを表すパラメータＸi 、Ｘp 、Ｘb （global complexity measure ) を次式により更新する。これによりＴＭ５によるレート制御は、これらのパラメータＸi 、Ｘp 、Ｘb により、次のピクチャを符号化処理する際の量子化スケールコードと発生符号量との関係を推定する。
【００６９】
【数１９】
0004650173.tif 000020
【００７０】
ここで（１９）式の各変数の添え字は、それぞれＩピクチャ、Ｐピクチャ、Ｂピクチャを示す添え字である。またＳi 、Ｓp 、Ｓb は、各ピクチャの符号化処理による発生符号ビット量であり、Ｑi 、Ｑp 、Ｑb は、各ピクチャの符号化時における平均量子化スケールコードである。またパラメータＸi 、Ｘp 、Ｘb の初期値は、目標符号量bit rate〔bit/sec 〕を用いて、次式により与えられる。
【００７１】
【数２０】
0004650173.tif 000021
【００７２】
また第２の仮定は、Ｉピクチャの量子化スケールに対するＰピクチャの量子化スケールコードの比率Ｋp 、Ｉピクチャの量子化スケールに対するＢピクチャの量子化スケールコードの比率Ｋb が、次式の関係に保持されている場合に、常に全体の画質が最良となるとの仮定である。
【００７３】
【数２１】
0004650173.tif 000022
【００７４】
すなわちこの仮定は、Ｉピクチャ、Ｐピクチャの量子化スケールに対してＢピクチャの量子化スケールを常に１．４倍に設定することにより全体の画質が最良となることを意味し、Ｉピクチャ、Ｐピクチャに比してＢピクチャを粗く量子化してＢピクチャに割り当てる符号量を節約し、その分、Ｉピクチャ、Ｐピクチャに多くの符号量を振り分けてＩピクチャ、Ｐピクチャの画質を向上すると共に、Ｉピクチャ、Ｐピクチャを参照するＢピクチャの画質も併せて向上し、これらにより全体的に見た画質を最良とする。
【００７５】
これらによりレート制御装置９は、次式の演算処理により、各ピクチャへの割当ビット量Ｔi 、Ｔp 、Ｔb を計算する。なおここでＮp 、Ｎb は、処理対象であるＧＯＰ内で、未だ符号化されていないＰピクチャ、Ｂピクチャの枚数である。
【００７６】
【数２２】
0004650173.tif 000023
【００７７】
これによりレート制御装置９は、上述した２つの仮定に基づいて、各ピクチャの発生符号量を推定する。このとき符号割り当て対象とは異なるピクチャタイプのピクチャについては、画質最適化条件の下で、そのピクチャの発生する符号量が、割当対象ピクチャの発生符号量の何倍となるかを推定する。またこの推定により、ＧＯＰ内の未符号化ピクチャが、符号割り当て対象のピクチャタイプにおける何枚分のピクチャに相当するかを推計し、この推計結果より各ピクチャへの割り当てビット量を計算する。なおこの場合に、レート制御装置９は、ヘッダ等の固定的に必要となる符号量を考慮して、その値に下限を設定して割り当てビット量を計算する。
【００７８】
これによりレート制御装置９は、１つのピクチャの符号化を完了する毎に、次式の演算処理を実行して、ＧＯＰ内の未符号化ピクチャに対する割り当てビット量Ｒを、実際の発生符号量Ｓにより補正する。
【００７９】
【数２３】
0004650173.tif 000024
【００８０】
なおＧＯＰの先頭ピクチャでは、この（２３）式による演算処理に代えて、次式の演算処理によりＧＯＰ内の未符号化ピクチャに対する割り当てビット量Ｒを計算する。なおここで右辺の符号Ｎは、１ＧＯＰのピクチャ数である。また右辺のＲは、ＧＯＰまで処理で残ったビット量であり、シーケンス先頭では値０である。
【００８１】
【数２４】
0004650173.tif 000025
【００８２】
続いてＴＭ５のレート制御においては、ステップ２に移り、仮想バッファ制御を用いたレート制御の処理を実行する。ここでこのレート制御においては、ステップ１で求められた各ピクチャへの割当ビット量Ｔi 、Ｔp 、Ｔb と、実際の発生符号量とを一致させるため、各ピクチャタイプ毎に独立に３種類の仮想バッファを設定し、この仮想バッファの容量に基づいて量子化装置８の量子化スケールをマクロブロック単位のフィードバック制御により計算する。
【００８３】
ここで始めに、これら３種類の仮想バッファの占有率を、次式の演算式により計算する。なおここでｄ0i、ｄ0p、ｄ0bは、各仮想バッファの初期占有量、Ｂj は、ピクチャ先頭からｊ番目のマクロブロックまでの発生ビット量、MB#cntは、１ピクチャ内でのマクロブロック数である。
【００８４】
【数２５】
0004650173.tif 000026
【００８５】
この（２５）式による計算結果に基づいてｊ番目のマクロブロックに対する量子化スケールを、次式により計算する。
【００８６】
【数２６】
0004650173.tif 000027
【００８７】
なおここでｒは、リアクションパラメータであり、フィードバックの応答を制御するパラメータである。ＴＭ５において、リアクションパラメータｒ及びシーケンス先頭における仮想バッファの初期値ｄ0i、ｄ0p、ｄ0bは、次式により与えられる。
【００８８】
【数２７】
0004650173.tif 000028
【００８９】
続いてＴＭ５のレート制御においては、ステップ３に移り、視覚特性を考慮してステップ２で求めた量子化スケールを補正し、これにより視覚特性を考慮した最適量子化の処理を実行する。ここでこの最適量子化の処理は、視覚的に劣化の目立ちやすい平坦部ではより細かく量子化するように、また劣化の比較的目立ちにくい絵柄の複雑な部分でより粗く量子化するように、各マクロブロックのアクティビティにより、ステップ２で求めた量子化スケールを補正して実行される。
【００９０】
ここでアクティビティは、１６×１６画素の大きさによるマクロブロック毎に、このマクロブロックを構成する８×８画素による４個のブロックについて、フレームＤＣＴモードにおける４個のブロックと、フィールドＤＣＴモードにおける４個のブロックとによる計８個のブロックの画素値を用いて、次式により算出され、これにより該当マクロブロックにおける輝度レベルの平滑度を示す。
【００９１】
【数２８】
0004650173.tif 000029
【００９２】
なおここでＰk は、原画の輝度信号ブロック内画素値である。この（２８）式において最小値を取るのは、このマクロブロック内の一部だけでも平坦部分のある場合には量子化ステップを細かくして画質劣化を防止するためである。
【００９３】
レート制御装置９は、この計算式により求めたアクティビティを次式により正規化し、これにより０．５〜２の範囲で値を取る正規化アクティビティNactjを求める。なおここでavg actは、直前に符号化したピクチャにおけるアクティビティactjの平均値である。
【００９４】
【数２９】
0004650173.tif 000030
【００９５】
またこの正規化アクティビティNactjにより次式の演算処理を実行し、ステップ２で計算した量子化スケールＱj を補正して量子化装置８を制御する。
【００９６】
【数３０】
0004650173.tif 000031
【００９７】
これらによりＴＭ５によるレート制御は、上述した２つの仮定に基づいて、各ピクチャ、さらには各マクロブロックに符号量を配分し、この配分した符号量を実際の発生符号量により逐次補正するフィードバック制御により量子化スケールを制御して逐次符号化処理する。
【００９８】
このようなＴＭ５によるレート制御に関して、特開２００３−６１０９６号公報には、図１８におけるステップ２の処理について、動きベクトル残差により各マクロブロックへの割り当て符号量を制御することにより、画質を向上する方法が提案されている。
【００９９】
ところでＴＭ５のステップ３のレート制御では、マクロブロックのアクティビティによりステップ２で求めた量子化スケールを補正し、これにより視覚特性を考慮して量子化スケールを補正して画質を向上する。
【０１００】
これによりＩピクチャについては、十分に視覚特性を考慮して画質を向上することができるものの、Ｐピクチャ、Ｂピクチャにおけるインター予測では、必ずしも適切に画質を向上できない問題がある。具体的には、画質劣化が比較的目立ち難い絵柄の複雑な部分であっても、この部分が静止している場合には、視覚的に劣化が目立ってしまう問題がある。これにより従来のＴＭ５のステップ３の処理では、キャプション等の文字の部分で画質劣化が目立つってしまうことになる。
【特許文献１】特開２００３−６１０９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０１０１】
本発明は以上の点を考慮してなされたもので、視覚特性を考慮して従来に比して一段と画質を向上することができる符号化装置、符号化方法、符号化方法のプログラム及び符号化方法のプログラムを記録した記録媒体を提案しようとするものである。
【課題を解決するための手段】
【０１０２】
かかる課題を解決するため請求項１の発明は、入力画像データにＧＯＰを設定し、イントラ予測、インター予測により前記入力画像データをマクロブロック単位で順次符号化処理して符号化データを出力する符号化装置に適用して、前記イントラ予測、インター予測による前記入力画像データの予測誤差データを直交変換処理して係数データを出力する直交変換部と、前記係数データを量子化処理する量子化部と、前記量子化部の出力データを符号化処理して前記符号化データを出力する符号化部と、前記符号化データにより前記量子化部における量子化スケールを制御することにより、前記符号化データをレート制御するレート制御部とを有し、前記レート制御部は、前記入力画像データの平滑度を示すアクティビティを検出するアクティビティ検出部と、前記入力画像データの前記インター予測による予測残差を検出する予測残差の検出部とを有し、１ＧＯＰを構成するピクチャにおいて、未だ符号化処理されていないピクチャへの目標符号量を計算し、前記ピクチャの目標符号量から、符号化処理に係るピクチャのマクロブロックに係る目標符号量を計算し、発生符号量が該目標符号量となる前記量子化部の量子化スケールを計算し、前記アクティビティと前記予測残差とに基づいて、該計算した量子化スケールを視覚特性により画質が向上するように補正する。
【０１０３】
また請求項２の発明は、入力画像データにＧＯＰを設定し、イントラ予測、インター予測により前記入力画像データをマクロブロック単位で順次符号化処理して符号化データを出力する符号化方法に適用して、前記イントラ予測、インター予測による前記入力画像データの予測誤差データを直交変換処理して係数データを出力する直交変換ステップと、前記係数データを量子化処理する量子化ステップと、前記量子化ステップによる出力データを符号化処理して前記符号化データを出力する符号化ステップと、前記符号化データにより前記量子化ステップにおける量子化スケールを制御することにより、前記符号化データをレート制御するレート制御ステップとを有し、前記レート制御ステップは、前記入力画像データの平滑度を示すアクティビティを検出するアクティビティ検出ステップと、前記入力画像データの前記インター予測による予測残差を検出する予測残差検出ステップと、１ＧＯＰを構成するピクチャにおいて、未だ符号化処理されていないピクチャへの目標符号量を計算するピクチャの目標符号量計算ステップと、前記ピクチャの目標符号量計算ステップによる目標符号量から、符号化処理に係るピクチャのマクロブロックに係る目標符号量を計算し、発生符号量が該目標符号量となる前記量子化ステップの量子化スケールを計算する量子化スケール計算ステップと、前記アクティビティと前記予測残差とに基づいて、前記量子化スケール計算ステップによる量子化スケールを補正する量子化スケールの補正ステップとを有する。
【０１０４】
また請求項１０の発明は、演算処理手順における実行により、入力画像データにＧＯＰを設定し、イントラ予測、インター予測により前記入力画像データをマクロブロック単位で順次符号化処理して符号化データを出力する符号化方法のプログラムに適用して、前記イントラ予測、インター予測による前記入力画像データの予測誤差データを直交変換処理して係数データを出力する直交変換ステップと、前記係数データを量子化処理する量子化ステップと、前記量子化ステップによる出力データを符号化処理して前記符号化データを出力する符号化ステップと、前記符号化データにより前記量子化ステップにおける量子化スケールを制御することにより、前記符号化データをレート制御するレート制御ステップとを有し、前記レート制御ステップは、前記入力画像データの平滑度を示すアクティビティを検出するアクティビティ検出ステップと、前記入力画像データの前記インター予測による予測残差を検出する予測残差検出ステップと、１ＧＯＰを構成するピクチャにおいて、未だ符号化処理されていないピクチャへの目標符号量を計算するピクチャの目標符号量計算ステップと、前記ピクチャの目標符号量計算ステップによる目標符号量から、符号化処理に係るピクチャのマクロブロックに係る目標符号量を計算し、発生符号量が該目標符号量となる前記量子化ステップの量子化スケールを計算する量子化スケール計算ステップと、前記アクティビティと前記予測残差とに基づいて、前記量子化スケール計算ステップによる量子化スケールを補正する量子化スケールの補正ステップとを有する。
【０１０５】
また請求項１１の発明は、演算処理手順における実行により、入力画像データにＧＯＰを設定し、イントラ予測、インター予測により前記入力画像データをマクロブロック単位で順次符号化処理して符号化データを出力する符号化方法のプログラムを記録した記録媒体に適用して、前記イントラ予測、インター予測による前記入力画像データの予測誤差データを直交変換処理して係数データを出力する直交変換ステップと、前記係数データを量子化処理する量子化ステップと、前記量子化ステップによる出力データを符号化処理して前記符号化データを出力する符号化ステップと、前記符号化データにより前記量子化ステップにおける量子化スケールを制御することにより、前記符号化データをレート制御するレート制御ステップとを有し、前記レート制御ステップは、前記入力画像データの平滑度を示すアクティビティを検出するアクティビティ検出ステップと、前記入力画像データの前記インター予測による予測残差を検出する予測残差検出ステップと、１ＧＯＰを構成するピクチャにおいて、未だ符号化処理されていないピクチャへの目標符号量を計算するピクチャの目標符号量計算ステップと、前記ピクチャの目標符号量計算ステップによる目標符号量から、符号化処理に係るピクチャのマクロブロックに係る目標符号量を計算し、発生符号量が該目標符号量となる前記量子化ステップの量子化スケールを計算する量子化スケール計算ステップと、前記アクティビティと前記予測残差とに基づいて、前記量子化スケール計算ステップによる量子化スケールを補正する量子化スケールの補正ステップとを有する。
【０１０６】
請求項１の構成により、符号化装置に適用して、前記イントラ予測、インター予測による前記入力画像データの予測誤差データを直交変換処理して係数データを出力する直交変換部と、前記係数データを量子化処理する量子化部と、前記量子化部の出力データを符号化処理して前記符号化データを出力する符号化部と、前記符号化データにより前記量子化部における量子化スケールを制御することにより、前記符号化データをレート制御するレート制御部とを有し、前記レート制御部は、前記入力画像データの平滑度を示すアクティビティを検出するアクティビティ検出部と、前記入力画像データの前記インター予測による予測残差を検出する予測残差の検出部とを有し、１ＧＯＰを構成するピクチャにおいて、未だ符号化処理されていないピクチャへの目標符号量を計算し、前記ピクチャの目標符号量から、符号化処理に係るピクチャのマクロブロックに係る目標符号量を計算し、発生符号量が該目標符号量となる前記量子化部の量子化スケールを計算し、前記アクティビティと前記予測残差とに基づいて、該計算した量子化スケールを視覚特性により画質が向上するように補正すれば、劣化の比較的目立ちにくい絵柄の複雑な部分にあっても、静止していて視覚的に画質劣化が目立ち易い場合には、予測残差により検出して量子化スケールを補正することができる。これにより原画像の情報によるアクティビティだけでは分からない視覚的に画質の劣化する部位を、予測残差による動き情報により検出して画質が劣化しないように量子化スケールを補正することができ、これにより視覚特性を考慮して従来に比して一段と画質を向上することができる。
【０１０７】
これにより請求項２、請求項１０、請求項１１の構成によれば、視覚特性を考慮して従来に比して一段と画質を向上することができる符号化方法、符号化方法のプログラム、符号化方法のプログラムを記録した記録媒体を提供することができる。
【発明の効果】
【０１０８】
本発明によれば、視覚特性を考慮して従来に比して一段と画質を向上することができる。
【発明を実施するための最良の形態】
【０１０９】
以下、適宜図面を参照しながら本発明の実施例を詳述する。
【実施例１】
【０１１０】
（１）実施例の構成
図２は、本発明の実施例に係る符号化装置を示すブロック図である。この符号化装置４１は、レート制御装置４２、動き予測・補償装置４３の構成が異なる点を除いて、図４について上述した符号化装置１と同一に構成され、これによりこの符号化装置１と同一の構成については、対応する符号を付して示し、重複した説明を省略する。
【０１１１】
ここで動き予測・補償装置４３は、動き予測・補償装置６と同様に、Ｐピクチャ及びＢピクチャにおいて、フレームメモリ１６に保持された参照画像情報による符号化処理のレベル及びプロファイルにより定義される複数の予測フレームを用いて、マクロブロック、サブブロック毎に動きベクトルを検出し、最も予測残差の少ない参照フレームによる動きベクトルを検出する。またこのようにして検出した参照フレームによりフレームメモリ１６に保持した参照画像情報を動き補償していわゆるインター予測の処理を実行する。またこのインター予測によりインター符号化処理する場合、この動き補償による画素値を予測値として減算器４に出力すると共に、これら参照フレーム、動きベクトルを可逆符号化装置１０に通知して符号化データＤ４と共に伝送する。
【０１１２】
さらにこの動き予測・補償装置４３は、この動き補償に係る各マクロブロックの予測残差mb me residueをレート制御装置４２に通知する。
【０１１３】
レート制御装置４２は、レート制御装置９と同様にして、量子化装置８の量子化スケールを制御する。この一連の処理において、動き予測・補償装置４３は、図１８について上述したＴＭ５のステップ１、ステップ２の処理により各マクロブロックの量子化スケールを設定した後、図１に示す処理手順を各マクロブロック毎に実行し、これによりステップ２で求めた各マクロブロックの量子化スケールＱj を視覚特性を考慮して補正し、これにより視覚特性を考慮して従来に比して一段と画質を向上する。
【０１１４】
すなわちレート制御装置４２は、この処理手順を開始すると、ステップＳＰ１１からステップＳＰ１２に移り、対象ピクチャの各マクロブロックで検出されるアクティビティmb actにより次式の演算処理を順次実行する。これによりレート制御装置４２は、アクティビティmb actの平均値avg mb actを計算した後、この平均値avg mb actと処理対象マクロブロックのアクティビティmb actとにより、処理対象マクロブロックのアクティビティmb actに応じて０．５〜２の範囲で値を取る正規化アクティビティNactjを求める。なおここで平均値avg mb actは、直前に符号化したピクチャにおけるアクティビティactjの平均値を用いるようにしてもよい。
【０１１５】
【数３１】
0004650173.tif 000032
【０１１６】
また続くステップＳＰ１３において、この正規化アクティビティNactjを用いて、ステップ２の処理により設定された量子化スケールＱｊを補正し、正規化アクティビティNactjによる量子化スケールQactを計算する。なおここでｉｎｔは、（）内の数値を越えない最大の整数を返す関数である。
【０１１７】
また続くステップＳＰ１４において、レート制御装置４２は、動き予測・補償装置４３より通知される予測残差mb me residueにより次式の演算処理を実行し、これにより対象ピクチャにおける予測残差の平均値avg mb me residueを計算する。またこの予測残差の平均値avg mb me residueと処理対象マクロブロックの予測残差mb me residueにより、正規化アクティビティNactjに対応して０．５〜２の範囲で値を取る正規化予測残差Nmbを計算する。なおここで平均値avg mb me residueは、直前に符号化したピクチャにおける予測残差mb me residueの平均値を用いるようにしてもよい。
【０１１８】
【数３２】
0004650173.tif 000033
【０１１９】
また続くステップＳＰ１５において、この正規化予測残差Nmbによりステップ２の処理により設定された量子化スケールＱｊを補正し、これにより正規化予測残差Nmbによる量子化スケールQmeを計算する。
【０１２０】
このようにしてアクティビティ、予測残差により量子化スケールQact、Qmeをそれぞれ計算すると、レート制御装置４２は、続くステップＳＰ１６において、これらの量子化スケールQact、Qmeにより次式の演算処理を実行し、これにより重み付け係数α、βによりこれらの係数Qact、Qmeを重み付け平均してこのマクロブロックの量子化に係る量子化スケールＱＰを計算した後、ステップＳＰ１７に移ってこの処理手順を終了する。
【０１２１】
【数３３】
0004650173.tif 000034
【０１２２】
ここでこの係数α、βは、必ずしも固定値とする必要はなく、任意の値を適用することができる。この場合に、例えば、出力する符号化データＤ４のビットレートに応じて、ビットレートが高い時には、αを大きく、低い時にはβを大きくするようにして、適応的に値を変化させてもよい。しかしてこのように重み付け平均に係る係数を適応的に変化させるようにすれば、画質等に応じて量子化スケールの補正量を種々変更することができ、その分、視覚特性により画質を一段と向上することができる。
【０１２３】
なお動き予測・補償装置４３は、動きベクトルを検出する際に、入力画像データＤ１、参照画像に係る画像データを間引きして縮小画像を生成し、この縮小画像により動きベクトルを検出した後、この検出結果により動きベクトル検出範囲を制限して最終的な動きベクトルを検出する。このため縮小フィルタ４４は、フレームメモリ１６に保持した各参照画像の画像データを間引きして出力する。これによりこの符号化装置４１は、動きベクトルの検出に供する演算量を低減する。
【０１２４】
この場合に、図１３について上述したMultiple Reference Frames により、複数の参照画像の候補より参照画像を選択して予測値を生成する場合、次式により示すように、各参照フレームRef(k) (k=0,..,n) の縮小画像における予測残差SAD(Ref(k) )より最小値を検出して総合の残差SAD を求め、（３１）式の予測残差mb me residueに代えてこの残差SAD を適用して量子化スケールＱＰを計算するようにしてもよい。
【０１２５】
【数３４】
0004650173.tif 000035
【０１２６】
またイントラ予測においても、インター予測について上述したと同様にして予測残差を計算し、イントラ予測の場合には、インター予測による上述の予測残差に代えて、このイントラ予測による予測残差により同様に、量子化スケールを補正するようにしてもよい。このようにすれば、イントラ予測において、従来に比してより適切に量子化スケールを補正して視覚的な画質を向上することができる。
【０１２７】
（２）実施例の動作
以上の構成において、この符号化装置４１（図１）においては、アナログ信号によるビデオ信号Ｓ１がアナログディジタル変換装置２により画像データＤ１に変換された後、画面並べ替えバッファ３により符号化処理に係るＧＯＰ構造によりフレームの順序が並べ替えられた後、イントラ予測装置５、動き予測・補償装置６に入力され、ここで各ピクチャに応じて、複数のイントラ予測モードと複数のインター予測モードとから最適な予測モードが選択され、この選択された予測モードによる予測値が減算器４で画像データＤ１から減算されて差分データＤ２が生成される。画像データＤ１は、これにより連続するフレーム間、水平方向、垂直方向の相関を有効に利用してデータ量が低減され、この差分データＤ２が直交変換処理、量子化処理、可変長符号化処理されてさらにデータ量が低減されて符号化データＤ４が生成される。これによりビデオ信号Ｓ１においては、イントラ符号化、インター符号化により符号化処理されて例えば記録媒体に記録される。
【０１２８】
これらの処理において、この符号化データＤ４は、ＴＭ５の手法を適用したレート制御において、このＴＭ５のステップ１の処理により、１ＧＯＰに割り当てる符号量とそれまでの発生符号量とから、１ＧＯＰを構成するピクチャにおいて、未だ符号化処理されていないピクチャへの目標符号量が逐次計算される。またステップ２の処理により、このステップ１による各ピクチャへの目標符号量からマクロブロックに割り当てる目標符号量が計算され、この目標符号量により量子化装置８の量子化スケールが設定され、これにより符号化データＤ４がレート制御される。
【０１２９】
従来のＴＭ５によるレート制御では、各マクロブロック毎に、輝度データの平滑度を示すアクティビティが検出され、このアクティビティを用いたステップ３の処理により、量子化装置８に設定される量子化スケールが、ステップ２で計算された量子化スケールより補正され、これにより視覚特性を考慮して画質が向上するように量子化スケールを設定して符号化データＤ４が生成される。
【０１３０】
しかしながらアクティビティにあっては、輝度信号における平滑度であることにより、イントラ予測については、視覚特性により充分に画質を向上することができるものの、インター予測にあっては、実用上未だ不十分な問題があり、これにより画質の劣化が目立ち難い複雑な絵柄の部分が静止している場合には、画質の劣化が目立ってしまい、そのためにキャプション等の文字の部分で画質劣化が目立ってしまう。
【０１３１】
これによりこの符号化装置４１では、このようなアクティビティとインター予測による予測残差とに基づいて、視覚特性により画質が向上するように、ステップ２で計算された量子化スケールが補正され、これにより劣化の比較的目立ち難い絵柄の複雑な部分にあっても、静止していて視覚的に画質劣化が目立ち易い場合には、予測残差により量子化スケールを補正することができる。これにより原画像の情報によるアクティビティだけでは分からない視覚的に画質の劣化する部位を、予測残差による動き情報により検出して画質が劣化しないように量子化スケールを補正することができ、これにより視覚特性を考慮して従来に比して一段と画質を向上することができる。
【０１３２】
具体的に符号化装置４１では、アクティビティを正規化して正規化アクティビティを計算し、この正規化アクティビティにより量子化スケールを補正する。また予測残差を正規化して正規化予測残差を計算し、この正規化予測残差により量子化スケールを補正する。またこれら２種類の量子化スケールの合成により、視覚特性を考慮した量子化スケールが計算され、これにより視覚特性を考慮して従来に比して一段と画質を向上することができるように、簡易かつ確実に量子化スケールが補正される。
【０１３３】
（３）実施例の効果
以上の構成によれば、各マクロブロックに設定した量子化スケールを、アクティビティと予測残差とに基づいて視覚特性により画質が向上するように補正することにより、視覚特性を考慮して従来に比して一段と画質を向上することができるようにする。
【０１３４】
またこのとき、アクティビティを正規化した正規化アクティビティにより量子化スケールを補正し、予測残差を正規化した正規化予測残差により量子化スケールを補正し、これら２種類の量子化スケールの合成により、視覚特性を考慮した量子化スケールを計算することにより、視覚特性を考慮して従来に比して一段と画質を向上することができるように、簡易かつ確実に量子化スケールを補正することができる。
【０１３５】
またこのような量子化スケールの合成処理を、２種類の量子化スケールとの重み付け平均により実行することにより、一段と簡易な処理により確実に量子化スケールを計算することができる。
【０１３６】
またこの重み付け平均の処理に係る重み付け係数を適応的に可変することにより、画質等に応じて量子化スケールの補正を適宜変更して処理して、その分、視覚的な画質を向上することができる。
【０１３７】
また入力画像データの解像度を低減した縮小画像により大まかに動きベクトルを検出した後、この検出結果により動きベクトル検出範囲を制限して動きベクトルを検出することにより、インター予測に係る動きベクトルの検出処理を簡略化することができる。
【０１３８】
またこのようにして動きベクトルの検出処理を簡略化する場合に、複数の参照画像の各縮小画像で検出される動きベクトルによる予測残差から最小値を検出して、インター予測による予測残差を検出することにより、動きベクトル検出処理を有効に利用して、インター予測による予測残差検出処理を簡略化することができる。
【０１３９】
またイントラ予測における予測残差を計算し、イントラ予測による符号化処理では、インター予測による予測残差に代えて、イントラ予測に係る予測残差により量子化スケールを補正することにより、一段と視覚特性による画質を向上することができる。
【実施例２】
【０１４０】
図３は、本発明の実施例２に係る符号化装置を示すブロック図である。この符号化装置５１は、図２について上述した符号化装置４１の構成に、さらにＭＰＥＧ２復号化装置５２、ＭＰＥＧ２情報出力装置５３が設けられる。なおこの符号化装置５１は、このＭＰＥＧ２復号化装置５２、ＭＰＥＧ２情報出力装置５３に係る構成を除いて、図２について上述した符号化装置４１と同一に構成され、これにより符号化装置４１と同一の構成は、対応する符号を付して示し、重複した説明は省略する。
【０１４１】
ここでＭＰＥＧ２復号化装置５２は、ＭＰＥＧ２による符号化データＤ５を入力してデコードし、画像データＤ１を出力する。これによりこの符号化装置５１は、ユーザーによる動作モードの設定により、ＭＰＥＧ２による符号化データＤ５をＡＶＣによる符号化データＤ４に変換して出力する。
【０１４２】
ＭＰＥＧ２情報出力装置５３は、ＭＰＥＧ２による符号化データＤ５に設定された各種の復号化の処理に必要な情報から、各マクロブロックの符号量ＭＢｂｉｔ、各マクロブロックの量子化スケールMBQscaleを検出してレート制御装置５４に通知する。
【０１４３】
レート制御装置５４は、ＭＰＥＧ２復号化装置５２以外の機器より出力される入力画像データＤ１を符号化処理する場合には、実施例１について上述した符号化装置４１のレート制御装置４２と同様にして量子化装置８の量子化スケールを制御する。
【０１４４】
これに対してＭＰＥＧ２復号化装置５２から出力される入力画像データＤ１を符号化処理する場合、次式の演算処理により、マクロブロックの符号量ＭＢｂｉｔを対応する量子化スケールMBQscaleと順次乗算し、これによりマクロブロックコンプレキシティmb comlexityを計算する。しかしてこのマクロブロックコンプレキシティmb comlexityは、ＭＰＥＧ２による符号化処理において、予測残差に対応することになる。これにより（３２）式における予測残差に代えて、このマクロブロックコンプレキシティmb comlexityにより正規化マクロブロックコンプレキシティを計算し、またさらに量子化スケールＱＰcompを計算する。これによりこの場合、レート制御装置５４は、マクロブロックの符号量ＭＢｂｉｔと量子化スケールMBQscaleとの乗算により予測残差を計算する。
【０１４５】
【数３５】
0004650173.tif 000036
【０１４６】
また続いて次式により示すように、このようにして計算した量子化スケールＱＰcompとアクティビティによる量子化スケールとの重み付け平均により量子化スケールを計算する。
【０１４７】
【数３６】
0004650173.tif 000037
【０１４８】
この実施例によれば、入力画像データが、入力符号化データを復号して生成される画像データの場合、この入力符号化データにおける符号量と量子化スケールとから予測残差を検出して処理することにより、予測残差を検出する構成を簡略化して実施例１と同様の効果を得ることができる。
【実施例３】
【０１４９】
なお上述の実施例においては、ステップ２の処理により計算した量子化スケールをアクティビティと予測残差とによりそれぞれ補正した後、その結果得られる２種類の量子化スケールを重み付け平均する場合について述べたが、本発明はこれに限らず、ステップ２の処理により計算した量子化スケールをアクティビティと予測残差とによりそれぞれ補正する補正値を計算した後、この補正値を重み付け平均して最終的な補正値を計算し、この最終的な補正値によりステップ２の処理により計算した量子化スケールを補正するようにしてもよい。
【０１５０】
また上述の実施例においては、本発明をハードウエアにより構成する場合について述べたが、本発明はこれに限らず、ソフトウエアの処理により実行するようにしてもよい。なおこの場合、このようなソフトウエアに係るプログラムにあっては、このような符号化装置に事前にインストールして提供するようにしてもよく、またこれに代えてインターネット等のネットワークを介してダウンロードにより提供するようにしてもよく、さらには光ディスク、磁気ディスク、メモリカード等の各種の記録媒体を介して提供するようにしてもよい。
【０１５１】
また上述の実施例においては、ＡＶＣにより入力画像データを符号化処理する場合について述べたが、本発明はこれに限らず、ＭＰＥＧ−４、Ｈ．２６３等、同様のフォーマットにより符号化処理する場合に広く適用することができる。
【産業上の利用可能性】
【０１５２】
本発明は、直交変換と動き補償とにより画像データをデータ圧縮して伝送、記録等する場合に適用することができる。
【図面の簡単な説明】
【０１５３】
【図１】本発明の実施例１に係る符号化装置におけるレート制御の説明に供するフローチャートである。
【図２】本発明の実施例１に係る符号化装置を示すブロック図である。
【図３】本発明の実施例２に係る符号化装置を示すブロック図である。
【図４】ＡＶＣ方式の符号化装置を示すブロック図である。
【図５】ＡＶＣ方式の復号化装置を示すブロック図である。
【図６】イントラ４×４予測モードに係る予測画素の説明に供する略線図である。
【図７】イントラ４×４予測モードにおける予測モードの説明に供する略線図である。
【図８】イントラ４×４予測モードを示す図表である。
【図９】イントラ４×４予測モードの各モードの説明に供する略線図である。
【図１０】イントラ１６×１６予測モードの予測画素の説明に供する略線図である。
【図１１】イントラ１６×１６予測モードを示す図表である。
【図１２】イントラ１６×１６予測モードにおける予測モードの説明に供する略線図である。
【図１３】ＡＶＣ方式の参照フレームの説明に供する略線図である。
【図１４】ＡＶＣ方式の動き補償の説明に供する略線図である。
【図１５】ＡＶＣ方式の動き補償精度の説明に供する略線図である。
【図１６】色差信号に係る動き補償精度の説明に供する略線図である。
【図１７】マクロブロックペアの説明に供する略線図である。
【図１８】ＴＭ５によるレート制御の説明に供するフローチャートである。
【符号の説明】
【０１５４】
１、４１、５１……符号化装置、４……減算器、５……イントラ予測装置、６、４３……動き予測・補償装置、７……直交変換装置、８……量子化装置、１０……可逆符号化装置、９、４２、５４……レート制御装置、２０……復号化装置、４４……縮小フィルタ、５２……ＭＰＥＧ復号化装置、５３……ＭＰＥＧ情報出力装置
【図１】
0004650173.tif 000038
【図２】
0004650173.tif 000039
【図３】
0004650173.tif 000040
【図４】
0004650173.tif 000041
【図５】
0004650173.tif 000042
【図６】
0004650173.tif 000043
【図７】
0004650173.tif 000044
【図８】
0004650173.tif 000045
【図９】
0004650173.tif 000046
【図１０】
0004650173.tif 000047
【図１１】
0004650173.tif 000048
【図１２】
0004650173.tif 000049
【図１３】
0004650173.tif 000050
【図１４】
0004650173.tif 000051
【図１５】
0004650173.tif 000052
【図１６】
0004650173.tif 000053
【図１７】
0004650173.tif 000054
【図１８】
0004650173.tif 000055