(57)【要約】【課題】動画像符号化における正確で安定したフレーム内レート制御を可能とする。【解決手段】目標符号量計算部１０２は，ピクチャ内の制御単位ごとに，それまでのピクチャ内累積発生符号量の目標値と実際の累積発生符号量との差分に基づいて，次の制御単位の目標発生符号量を計算する。量子化パラメータ計算部１０３は，過去の符号化結果から前記目標発生符号量を発生させる量子化パラメータの推定値を計算する。量子化パラメータ平滑化部１０４は，前記量子化パラメータの推定値とそれまでに符号化した制御単位の量子化パラメータとの重み付き平均値を計算し，次の制御単位の量子化パラメータとする。【選択図】          図２
2004357079.tif 000002
【特許請求の範囲】
【請求項１】
動画像符号化におけるフレーム内レート制御方法において，
ピクチャ内の制御単位ごとに，次の制御単位の目標発生符号量を決定するステップと，
過去の符号化結果から前記目標発生符号量を発生させる量子化パラメータを推定するステップと，
前記量子化パラメータの推定値とそれまでに符号化した制御単位の量子化パラメータとの重み付き平均値を，次の制御単位の量子化パラメータとするステップとを有する
ことを特徴とする動画像符号化におけるフレーム内レート制御方法。
【請求項２】
動画像符号化におけるフレーム内レート制御方法において，
ピクチャ内の制御単位ごとに，それまでのピクチャ内累積発生符号量の目標値と実際の累積発生符号量との差分に基づいて，次の制御単位の目標発生符号量を決定するステップと，
それまでに符号化した制御単位の発生符号量と量子化パラメータとの積を，次の制御単位の発生符号量の目標値で割って量子化パラメータを決定するステップと，
その決定した値とそれまでに符号化した制御単位の量子化パラメータとの重み付き平均値を，次の制御単位の量子化パラメータとするステップとを有する
ことを特徴とする動画像符号化におけるフレーム内レート制御方法。
【請求項３】
動画像符号化におけるフレーム内レート制御方法において，
ピクチャ内の制御単位ごとに，次の制御単位の目標発生符号量を決定するステップと，
決定した目標発生符号量の逆数に比例する量子化パラメータを決定するステップと，
その決定した値とそれまでに符号化した制御単位の量子化パラメータとの重み付き平均値を，次の制御単位の量子化パラメータとするステップとを有する
ことを特徴とする動画像符号化におけるフレーム内レート制御方法。
【請求項４】
動画像符号化におけるフレーム内レート制御装置において，
ピクチャ内の制御単位ごとに，次の制御単位の目標発生符号量を決定する目標符号量計算部と，
過去の符号化結果から前記目標発生符号量を発生させる量子化パラメータを推定する量子化パラメータ計算部と，
前記量子化パラメータの推定値とそれまでに符号化した制御単位の量子化パラメータとの重み付き平均値を，次の制御単位の量子化パラメータとする量子化パラメータ平滑化部とを備える
ことを特徴とする動画像符号化におけるフレーム内レート制御装置。
【請求項５】
動画像符号化におけるフレーム内レート制御装置において，
ピクチャ内の制御単位ごとに，それまでのピクチャ内累積発生符号量の目標値と実際の累積発生符号量との差分に基づいて，次の制御単位の目標発生符号量を決定する目標符号量計算部と，
それまでに符号化した制御単位の発生符号量と量子化パラメータとの積を，次の制御単位の発生符号量の目標値で割って量子化パラメータを決定する量子化パラメータ計算部と，
その決定した値とそれまでに符号化した制御単位の量子化パラメータとの重み付き平均値を，次の制御単位の量子化パラメータとする量子化パラメータ平滑化部とを備える
ことを特徴とする動画像符号化におけるフレーム内レート制御装置。
【請求項６】
動画像符号化におけるフレーム内レート制御装置において，
ピクチャ内の制御単位ごとに，次の制御単位の目標発生符号量を決定する目標符号量計算部と，
決定した目標発生符号量の逆数に比例する量子化パラメータを決定する量子化パラメータ計算部と，
その決定した値とそれまでに符号化した制御単位の量子化パラメータとの重み付き平均値を，次の制御単位の量子化パラメータとする量子化パラメータ平滑化部とを備える
ことを特徴とする動画像符号化におけるフレーム内レート制御装置。
【請求項７】
請求項４から請求項６までのいずれか１項に記載の動画像符号化におけるフレーム内レート制御装置と，
該動画像符号化におけるフレーム内レート制御装置がピクチャ内の制御単位ごとに決定した量子化パラメータを用いて，動画像を可変長符号化する手段とを備える
ことを特徴とする動画像符号化装置。
【請求項８】
請求項１から請求項３までのいずれか１項に記載の動画像符号化におけるフレーム内レート制御方法を，コンピュータに実行させるための動画像符号化におけるフレーム内レート制御プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は，動画像符号化におけるフレーム内レート制御技術に関し，特に，従来より正確で安定したレート制御を行なう方法，装置およびプログラムに関する。
【０００２】
【従来の技術】
動画像符号化においては，符号化ビットレートを所望のビットレートに保つために，レート制御が行なわれるのが一般的である。一般にレート制御は，各ピクチャに目標符号量を割り当てるフレーム間レート制御と，与えられた目標符号量に合わせてピクチャの発生符号量を制御するフレーム内レート制御に分けることができる。
【０００３】
通常，動画像は複数のフレームから構成され，特にインタレース映像の場合には，各フレームは２つのフィールドから構成される。動画像符号化においては，フレーム単位で符号化するものと，フィールド単位で符号化するものがあるが，これらの符号化単位をまとめて以下，ピクチャという。
【０００４】
ここで，本来制御の単位の名称からして，フレーム間レート制御，フレーム内レート制御は，ピクチャ間レート制御，ピクチャ内レート制御と呼ぶべきであるが慣習としてフレーム間レート制御，フレーム内レート制御という呼び方が一般的であるため，こちらの呼び方も同一の意味として使用する。すなわち，本明細書におけるフレーム間レート制御，フレーム内レート制御は，フィールド単位の符号化の制御を排除するものではない。
【０００５】
フレーム内（ピクチャ内）レート制御では，ピクチャ内の各符号化単位の量子化パラメータの制御を行ないながら符号化を行なうのが一般的である。
【０００６】
ＭＰＥＧ−２のテストモデル５（以下，ＴＭ５という）に示されるピクチャ内レート制御手法においては，与えられたピクチャ目標符号量にピクチャの発生符号量を一致させるために，毎マクロブロックごとに量子化パラメータを決定する（非特許文献１参照）。
【０００７】
毎マクロブロック符号化ごとに，それまでのピクチャ内累積発生符号量の実際値から目標値を引いた差分値を求める。ピクチャ内累積発生符号量の目標値とは，ピクチャ目標符号量を全マクロブロックに平均に分配した場合の各マクロブロック目標符号量の累積値である。各マクロブロックの量子化パラメータは，その差分値に初期値を足した値に比例した値とする。これにより，差分値が大きい場合には，量子化パラメータが大きくなり，発生符号量が減り，差分値が小さい場合には，量子化パラメータが小さくなり，発生符号量が増えることにより，レート制御が実現される。
【０００８】
これを式で表すと下記のようになる。
【０００９】
Ｑｊ  ＝ｄｊ  ・３１／ｒ                                  ……（１）
ｄｊ  ＝ｄ０  ＋（Ｂｊ−１  −（ｊ−１）・Ｔ／Ｎ）            ……（２）
ｊは処理対象のマクロブロック番号，Ｎは総マクロブロック数，Ｂｊ−１  はマクロブロック番号ｊ−１までの累積発生符号量，Ｔはピクチャ目標符号量，ｒ  は制御の応答の強弱を決めるパラメータである。また，ｄ０  は変数ｄｊ  の初期値であり，その値は直前同種ピクチャの最後のマクロブロックのｄｊ  が用いられる。
【００１０】
このｄ０  の値によってピクチャの最初のマクロブロックの量子化パラメータが決まるため，その量子化パラメータの値を以下において，量子化パラメータの初期値Ｑ０  と呼ぶことにする。すなわち，Ｑ０  ＝ｄ０  ・３１／ｒとする。
【００１１】
実際の制御では，量子化パラメータは，上記Ｑｊ  にマクロブロックごとの特性に応じた係数Ｎａｃｔ  を乗じて，２倍したのち，規格上取りうる値（２〜６２，または１〜１１２）にクリッピングした値ｍｑｕａｎｔｊ  が用いられるが，ここでは簡単のためにＱｊ  を量子化パラメータと呼ぶことにする。
【００１２】
ｍｑｕａｎｔｊ  ＝ｃｌｉｐ（２．０・Ｑｊ  ・Ｎａｃｔ  ）      ……（３）
以上述べた方法は比較的計算量も少なく，制御の特性が良く知られているために，この制御手法を基にする制御方法は広く用いられている。
【００１３】
マクロブロック単位での制御の例を説明したが，それ以外の単位で同様の符号化制御をすることも考えられる。例えば，ＴＭ５では制御の単位がマクロブロック単位であったが，実装上の観点から見ると，より制御の単位が大きいほうが計算量が少なく有利な場合がある。そのため，制御の単位を水平に連続するマクロブロックの集合であるスライス単位とし，スライスに一度だけ，上記式を計算しスライスの量子化パラメータを決定する方法などがありうる。この場合，制御の応答はやや遅くなるが，量子化パラメータ決定のための計算量を削減できる利点がある。
【００１４】
図５は，上記ＴＭ５に示されるピクチャ内レート制御手法を用いた従来の符号化装置の構成例を示す図である。図５において，２は符号化装置，１１は入力画像信号から動き探索・補償部１８からの信号を減じて予測誤差を求める減算部，１２は予測誤差をＤＣＴ変換するＤＣＴ部，１３はＤＣＴ部１２で得られた変換係数を量子化する量子化部，１４は量子化部１３で得られた量子化変換係数を逆量子化する逆量子化部である。
【００１５】
１５は逆量子化した係数を逆ＤＣＴ変換する逆ＤＣＴ部，１６は逆ＤＣＴ部１５で得られた差分画像に動き探索・補償部１８からの信号を加算する加算部，１７は復号画像が格納されるフレームメモリ，１８はフレームメモリ１７に格納された復号画像を参照フレームとして動き探索，動き補償を行う動き探索・補償部，１９は量子化部１３で得られた量子化変換係数を可変長符号化する可変長符号化部である。
【００１６】
また，２０はピクチャの発生符号量を制御する符号化制御部，６０はフレーム内（ピクチャ内）の量子化パラメータを制御するフレーム内量子化制御部，１００はピクチャ内の発生符号量を累算する累積符号量累算部，１０１は現時点までのピクチャ内の累積発生符号量の目標値を算出する目標累積符号量計算部である。
【００１７】
１０５は目標累積符号量計算部１０１により算出された累積発生符号量の目標値から累積符号量累算部１００に記録された累積発生符号量の値を減じる減算部，１０６は減算部１０５による減算結果に基づいて量子化パラメータを算出する量子化パラメータ計算部である。
【００１８】
まず，ＤＣＴ部１２が，減算部１１で得られた予測誤差をＤＣＴ変換し，量子化部１３が，符号化制御部２０が決定した量子化パラメータＱに従って，変換係数を量子化する。量子化後の変換係数に対して，逆量子化部１４，逆ＤＣＴ部１５が，それぞれ逆量子化，逆ＤＣＴ変換を行い，その結果に加算部１６が動き探索・補償部１８からの信号を加算する。その結果得られた復号画像をフレームメモリ１７に格納する。
【００１９】
一方，可変長符号化部１９は，量子化部１３による量子化後の変換係数を可変長符号化するとともに，発生符号量Ｒの情報をフレーム内量子化制御部６０内の累積符号量累算部１００に送信する。累積符号量累算部１００は，送信されたそれまでの発生符号量Ｒを累算して記録する。
【００２０】
そして，減算部１０５が，目標累積符号量計算部１０１により算出された累積発生符号量の目標値から累積符号量累算部１００に記録された実際の累積発生符号量の値を減じる。量子化パラメータ計算部１０６は，減算部１０５による減算結果に基づいて次の制御単位の量子化パラメータＱを算出し，算出された量子化パラメータＱの情報を量子化部１３に送信する。
【００２１】
【非特許文献１】
ＭＰＥＧ−２  Ｔｅｓｔ  Ｍｏｄｅｌ  ５，  Ｄｏｃｕｍｅｎｔ  ＩＳＯ／ＩＥＣ  ＪＴＣ１  ＳＣ２９  ＷＧ１１／９３−４００，  Ｔｅｓｔ  Ｍｏｄｅｌ  Ｅｄｉｔｉｎｇ  Ｃｏｍｍｉｔｔｅｅ，  Ａｐｒｉｌ  １９９３．
【００２２】
【発明が解決しようとする課題】
しかし，上記従来技術の方法では以下のような問題がある。一つは制御の安定性に関する問題である。一般に量子化パラメータＱと発生符号量Ｒとは，反比例に近い関係にあるため，図６に示すように量子化パラメータが大きい場合の符号量変化より量子化パラメータが小さい場合の符号量変化の方が大きい。
【００２３】
ＴＭ５では，ピクチャ内累積発生符号量の実際値と目標値の差分値に比例して量子化パラメータの値を変化させているために，この差分値が負の値をとり，量子化パラメータが小さい時に特に応答が敏感になる。そのため，制御単位がマクロブロック単位でなくスライス単位などであり，フィードバックが遅い系においては，制御の過程で量子化パラメータが必要以上に小さくなった後に符号量が爆発的に増えて制御が振動的になる問題がある。
【００２４】
もう一つは，制御の正確性に関する問題である。ＴＭ５においては，制御の過程でピクチャ内累積発生符号量の実際値と目標値が一致した場合は，ｄｊ  ＝ｄ０  となり，量子化パラメータは初期値Ｑ０  となる。しかし，Ｑ０  がそのピクチャの絵柄および目標符号量に適切な値でない場合には，発生符号量が再びピクチャ内累積発生符号量の実際値と目標値が乖離する方向に働く。
【００２５】
例えば，初期値Ｑ０  が適切な値より小さい場合には，符号量が出過ぎて，ピクチャ内累積発生符号量の実際値と目標値の差分値が再び増えていく。このため，Ｑ０  の値が適切な値でない場合，発生符号量と目標符号量との偏差が必ず残ってしまう。
【００２６】
別の見方をすれば，制御の過程においてある量子化パラメータで発生符号量がＴ／Ｎとなる状態が続くと，ピクチャ内累積発生符号量の実際値と目標値の差分値が変化しないために量子化パラメータも変化せず，それ以上目標符号量に近づかない定常状態に陥ってしまう問題がある。このために，ピクチャに与えられた目標符号量を正確に実現することができないという問題がある。
【００２７】
本発明は，上記従来技術の問題点を解決し，正確で安定したレート制御を可能とするフレーム内レート制御を実現することを目的とする。
【００２８】
【課題を解決するための手段】
上記課題を解決するため，本発明は，ピクチャ内の制御単位ごとに，次の制御単位の目標符号量を決定し，それまでに符号化した制御単位の発生符号量と量子化パラメータとの積をその発生符号量の目標値で割るなどして，次の制御単位の目標符号量を発生させる量子化パラメータを推定する。または，目標符号量の逆数に比例した値を量子化パラメータとする。
【００２９】
そして，そのようにして求めた量子化パラメータとそれまでに符号化した制御単位の量子化パラメータとの重み付き平均値を，次の制御単位の量子化パラメータとすることによってレート制御を行なう。このような制御を行なうことにより，前述の制御の安定性に関する問題と正確性に関する問題を解決することができる。
【００３０】
本発明の作用は，以下のとおりである。本発明では，次の制御単位の目標符号量を決定し，その符号量を発生させる量子化パラメータを推定したり，または，その目標発生符号量の逆数に比例した値を量子化パラメータとしたりすることにより，符号量が異常に出過ぎたり，出なかったりすることによる制御の不安定化を防ぐことができる。ここで，目標符号量を発生させる量子化パラメータの推定は，例えば，それまでに符号化した制御単位の発生符号量と量子化パラメータとの積を，次の制御単位の発生符号量の目標値で割った値などを推定値とすることなどにより行う。
【００３１】
上述した従来法（ＴＭ５）と本発明によるレート制御方法との違いを，図７に示す従来のレート制御概念図と，図１に示す本発明によるレート制御概念図とを用いて説明する。従来法では，図７に示すように，目標値（ｊ・Ｔ／Ｎ）と累積発生符号量（Ｂｊ  ）との差分をとり，差分値に基づいて量子化パラメータＱの計算を行い，算出された量子化パラメータＱに基づいて符号化を行い，発生符号量Ｒを積分器（図５の累積符号量累算部１００）により累算する方法を採っていた。しかし，従来法では，制御対象が直線的な特性を持っておらず，その特性を補正することを行なっていなかったため，制御全体も安定しにくかった。
【００３２】
一方，本発明においては，図１のレート制御概念図に示すように，目標値（ｊ・Ｔ／Ｎ）と累積発生符号量（Ｂｊ  ）との差分値に基づいて量子化パラメータＱの計算を行うにあたり，差分値から目標符号量Ｒ’  を算出し，算出された目標符号量Ｒ’を発生させる量子化パラメータＱ’を推定し，その推定した量子化パラメータＱ’を平滑化して，量子化パラメータＱを決定する。
【００３３】
本発明においては，量子化パラメータの計算において，制御対象の特性と逆の特性をもつ変換，すなわち，目標発生符号量の逆数に比例した値（仮の量子化パラメータ）を求めたり，目標符号量を発生させる量子化パラメータを推定する操作を行なうために，累積発生符号量と目標値との差分値と符号化による発生符号量の関係が直線的になり，制御系全体の安定性が増す。
【００３４】
また，制御単位ごとの目標符号量を適切に決定することにより，ピクチャに与えられた目標符号量を正確に実現することができるようになる。例えば，ピクチャ目標符号量Ｔをピクチャ内の制御単位の数Ｎで割った値から，それまでに出過ぎた符号量を一定率Ｋずつ返す分を差し引いて，次の制御単位の目標符号量などに設定する。すなわち，次の制御単位の目標符号量を，
目標符号量＝Ｔ／Ｎ−Ｋ・（Ｂｊ−１  −（ｊ−１）・Ｔ／Ｎ）
などとすることにより，ピクチャに与えられた目標符号量を従来よりも正確に実現することができるようになる。
【００３５】
一方，ピクチャ内の制御単位ごとの発生符号量と量子化パラメータの関係は通常大きく異なるために，上記のように毎制御単位ごとの発生符号量が比較的一定値に近くなるように量子化パラメータを決定すると，制御単位ごとの量子化パラメータの変動が大きくなってしまう。そこで，求めた量子化パラメータとそれまでに符号化した制御単位の量子化パラメータとの重み付き平均値をとることによりその変動を抑制する。
【００３６】
例えば，直前に符号化した制御単位の量子化パラメータと今回求めた量子化パラメータとの間で７対１の重み付き平均をとり，この値を量子化パラメータとする。これにより，制御の正確性は若干落ちるもののピクチャ内の制御単位ごとの量子化パラメータの変動を滑らかにすることができ，視覚的にもすぐれた制御を実現することができる。また，制御の安定性と正確性に関しても従来より優れた性能を得ることができる。
【００３７】
すなわち，本発明は，ピクチャ内の制御単位ごとに，次の制御単位の目標発生符号量を決定し，過去の符号化結果からその目標発生符号量を発生させる量子化パラメータを推定し，その値とそれまでに符号化した制御単位の量子化パラメータとの重み付き平均値を，次の制御単位の量子化パラメータとすることを特徴とする。
【００３８】
また，本発明は，ピクチャ内の制御単位ごとに，それまでのピクチャ内累積発生符号量の目標値と実際値との差分に基づいて，次の制御単位の目標発生符号量を決定し，それまでに符号化した制御単位の発生符号量と量子化パラメータとの積を次の制御単位の発生符号量の目標値で割って量子化パラメータを決定し，その値とそれまでに符号化した制御単位の量子化パラメータとの重み付き平均値を次の制御単位の量子化パラメータとすることを特徴とする。
【００３９】
また，本発明は，ピクチャ内の制御単位ごとに，次の制御単位の目標発生符号量を決定し，その逆数に比例して量子化パラメータを決定し，その決定した値とそれまでに符号化した制御単位の量子化パラメータとの重み付き平均値を，次の制御単位の量子化パラメータとすることを特徴とする。
【００４０】
【発明の実施の形態】
以下に，図を用いて，本発明の実施の形態について説明する。
【００４１】
〔装置の構成例〕
図２は，本発明のピクチャ内レート制御方法を用いた符号化装置の構成例を示す図である。１は符号化装置，１０はピクチャの発生符号量を制御する符号化制御部，５０はフレーム内（ピクチャ内）の量子化パラメータを制御するフレーム内量子化制御部である。符号化装置１の符号化制御部１０を除いた部分は，図５で説明した従来の符号化装置２の符号化制御部２０を除いた部分の構成と同様である。
【００４２】
図２において，１００はピクチャ内のそれまでの発生符号量を累算する累積符号量累算部，１０１はピクチャ内の現時点での累積発生符号量の目標値を算出する目標累積符号量計算部，１０２は減算部１０５による減算結果に基づいて次の制御単位の目標符号量Ｒ’を算出する目標符号量計算部である。
【００４３】
１０３は目標符号量計算部１０２が算出した目標符号量Ｒ’に対応する量子化パラメータＱ’を算出する量子化パラメータ計算部，１０４は量子化パラメータ計算部１０３が算出した量子化パラメータＱ’を平滑化して，次の制御単位の量子化パラメータＱを算出する量子化パラメータ平滑化部である。
【００４４】
符号化装置１の動作は，以下のとおりである。まず，ＤＣＴ部１２が，減算部１１で得られた予測誤差をＤＣＴ変換し，量子化部１３が，符号化制御部１０が決定した量子化パラメータＱに従って，変換係数を量子化する。量子化後の変換係数に対して，逆量子化部１４，逆ＤＣＴ部１５が，それぞれ逆量子化，逆ＤＣＴ変換を行い，その結果に加算部１６が動き探索・補償部１８からの信号を加算する。その結果得られた復号画像をフレームメモリ１７に格納する。
【００４５】
一方，可変長符号化部１９は，量子化部１３による量子化後の変換係数を可変長符号化し，発生符号量Ｒの情報をフレーム内量子化制御部５０内の累積符号量累算部１００に送信する。
【００４６】
累積符号量累算部１００は，送信されたそれまでの発生符号量Ｒを累算して記録する。そして，減算部１０５が，目標累積符号量計算部１０１により算出された累積発生符号量の目標値から累積符号量累算部１００に記録された実際の累積発生符号量の値を減じる。目標符号量計算部１０２は，減算部１０５による減算結果に基づいて，次の制御単位の発生符号量の目標値である目標符号量Ｒ’を算出し，算出された目標符号量Ｒ’の情報を量子化パラメータ計算部１０３に送信する。量子化パラメータ計算部１０３は，目標符号量計算部１０２から送信された目標符号量Ｒ’に基づいて，目標符号量Ｒ’を発生させるための量子化パラメータＱ’を算出する。
【００４７】
ここで，後述するように，目標符号量Ｒ’を発生させるための量子化パラメータＱ’は，例えばそれまでに符号化した制御単位の発生符号量Ｒと量子化パラメータとの積を目標符号量Ｒ’で割るなどして，または，目標符号量Ｒ’の逆数に比例した値として算出する。
【００４８】
量子化パラメータ平滑化部１０４は，量子化パラメータが急激に変化しないように，量子化パラメータ計算部１０３が算出した量子化パラメータＱ’を平滑化し，平滑化の結果得られる量子化パラメータＱの情報を量子化部１３に送信する。ここで，量子化パラメータ平滑化部１０４が行う平滑化処理は，例えば，量子化パラメータＱ’とそれまでに符号化した制御単位の量子化パラメータとの重み付き平均値を，次の制御単位の量子化パラメータＱとすることにより行う。
【００４９】
〔第１の実施の形態〕
図３は，本発明の第１の実施の形態に係るレート制御処理フローを示す図である。本発明の第１の実施の形態では，ピクチャ内レート制御をスライス単位で符号化制御を行なうものとする。ピクチャ内のスライス数はＮであるものとする。
【００５０】
始めに，ピクチャ間レート制御アルゴリズムにより，これから符号化するピクチャの目標符号量Ｔを決定する（ステップＳ１）。このアルゴリズムは本発明の範囲ではないが，例えば，ＴＭ５には過去の符号化結果（発生符号量および量子化パラメータ）および残りＧＯＰ符号量などからピクチャ目標符号量を計算する手法が紹介されている。
【００５１】
ピクチャの符号化の始めに，最初の１スライス（スライス０）の量子化パラメータの値Ｑ０  を決定する。これから符号化するピクチャと同じピクチャタイプを持つ過去のピクチャが存在しない場合には（ステップＳ２），Ｉ，ＰピクチャではＱ０  ＝１０，ＢピクチャではＱ０  ＝１４とする（ステップＳ３）。存在する場合には，同種ピクチャの最も近い過去のピクチャ（直前同種ピクチャ）の最後のスライスの量子化パラメータを１スライス目の量子化パラメータＱ０  とする（ステップＳ４）。
【００５２】
この量子化パラメータＱ０  を用いて，１スライス目（スライス０）を符号化する（ステップＳ５）。実際には，量子化パラメータＱ０  にマクロブロックごとの特性に応じた係数Ｎａｃｔ  を乗じて，２倍したのち，規格上取りうる値（２〜６２，または１〜１１２）にクリッピングした値ｍｑｕａｎｔｊ  を用い，スライス０内の各マクロブロックの符号化を行なう。スライス０の符号化が終了したら，スライス０の発生符号量Ｒ０  を集計し，次のスライス１の量子化パラメータＱ１  を以下のように決定する。
【００５３】
ここでより一般的に，スライスｊの量子化パラメータＱｊ  を決定する方法を記述する。ただし，ｊは１以上Ｎ−１以下である。スライスｊ−１の符号化が終了したら，スライスの発生符号量Ｒｊ−１  を集計し（ステップＳ６），スライスｊ−１の発生符号量Ｒｊ−１  と量子化パラメータＱｊ−１  との積により，スライスｊ−１の複雑さ指標Ｘｊ−１  を求める（ステップＳ７）。
【００５４】
Ｘｊ−１  ＝Ｑｊ−１  ・Ｒｊ−１                  ……（４）
次に，スライスｊ−１の発生符号量Ｒｊ−１  から，スライスｊ−１までのピクチャ内の累積発生符号量Ｂｊ−１  を求める（ステップＳ８）。ｊ＝１の場合，Ｂ０  ＝Ｒ０  であり，ｊ≧２の場合，下記のとおりである。
【００５５】
Ｂｊ−１  ＝Ｒｊ−１  ＋Ｂｊ−２                  ……（５）
次にスライスｊの目標符号量Ｒ’  ｊ  を決定する（ステップＳ９）。目標符号量Ｒ’  ｊ  は，「（１スライスあたりの平均目標符号量）−（返済符号量）」で決定する。１スライスあたりの平均目標符号量は，１ピクチャ目標符号量Ｔをピクチャ内のスライス数Ｎで割った値であり，返済符号量は，その時点の累積発生符号量の実際値と目標値の差分値に定率Ｋ（例えば０．１）を掛けた量とする。
【００５６】
Ｒ’  ｊ  ＝Ｔ／Ｎ−０．１・（Ｂｊ−１  −（ｊ−１）・Ｔ／Ｎ）    …（６）
このスライスｊの目標符号量Ｒ’  ｊ  を発生させるための量子化パラメータＱ’ｊ  をスライスｊ−１の複雑さ指標Ｘｊ−１  を用いて求める。すなわち，下記のように，スライスｊ−１の複雑さ指標Ｘｊ−１  を，スライスｊの目標符号量Ｒ’  ｊ  で割って量子化パラメータＱｊ  ’を求める（ステップＳ１０）。
【００５７】
Ｑ’ｊ  ＝Ｘｊ−１  ／Ｒ’  ｊ                                    ……（７）
これは，量子化パラメータと発生符号量が反比例するという近似と，直前のスライスの複雑さ指標と，これから符号化するスライスの複雑さ指標とがあまり変わらないという近似に基づいている。
【００５８】
今回求めた値Ｑ’ｊ  と前のスライスで決定された値Ｑｊ−１  との間で，ａ：（１−ａ）（ａは例えば１／８など）の比率で重み付き平均をとって，スライスｊの量子化パラメータＱｊ  を決定する（ステップＳ１１）。
【００５９】
Ｑｊ  ＝１／８・Ｑ’ｊ  ＋７／８・Ｑｊ−１                    ……（８）
これは，量子化パラメータはスライス毎に急激に変化すると画質や安定性の面で望ましくないので，量子化パラメータを平滑化する効果がある。
【００６０】
実際には，量子化パラメータＱｊ  にマクロブロックごとの特性に応じた係数Ｎａｃｔ  を乗じて，２倍したのち，規格上取りうる値（２〜６２，または１〜１１２）にクリッピングした値ｍｑｕａｎｔｊ  を用い，スライスｊ内の各マクロブロックの符号化を行なう（ステップＳ１２）。
【００６１】
ステップＳ６〜Ｓ１２をピクチャ内の全てのスライスについて繰り返し（ステップＳ１３），ピクチャ符号化終了時には，最終スライスの量子化パラメータＱｊ  を，後の同種ピクチャの初期値のために記憶しておく（ステップＳ１４）。
【００６２】
これをすべてのピクチャ符号化について繰り返す（ステップＳ１５）。このようにすることによって，従来より正確で安定したレート制御を行なうことができる。
【００６３】
〔第２の実施の形態〕
図４は，本発明の第２の実施の形態に係るレート制御処理フローを示す図である。本発明の第２の実施の形態では，ピクチャ内レート制御をＭ個のマクロブロックを一つの制御単位（以下，ＭＢグループという）として符号化制御を行なうものとする。ピクチャ内のＭＢグループの数はＮであるものとする。
【００６４】
始めに，ピクチャ間レート制御アルゴリズムにより，これから符号化するピクチャの目標符号量Ｔを決定する（ステップＳ２１）。このアルゴリズムは，本発明の範囲ではない。ピクチャの符号化の始めに，最初の制御単位（ＭＢグループ０）の量子化パラメータの値Ｑ０  を決定する。これから符号化するピクチャと同じピクチャタイプを持つ過去のピクチャが存在しない場合には（ステップＳ２２），Ｉ，ＰピクチャではＱ０  ＝１０，ＢピクチャではＱ０  ＝１４とする（ステップＳ２３）。存在する場合には，同種ピクチャの最も近い過去のピクチャ（直前同種ピクチャ）の最後のＭＢグループの量子化パラメータをＱ０  とする（ステップＳ２４）。
【００６５】
この量子化パラメータＱ０  を用いて，ＭＢグループ０を符号化する（ステップＳ２５）。実際には，量子化パラメータＱ０  にマクロブロックごとの特性に応じた係数Ｎａｃｔ  を乗じて，２倍したのち，規格上取りうる値（２〜６２，または１〜１１２）にクリッピングした値ｍｑｕａｎｔｊ  を用いＭＢグループ０内の各マクロブロックの符号化を行なう。
【００６６】
ＭＢグループ０の符号化が終了したら，ＭＢグループの発生符号量Ｒ０  を集計し，ＭＢグループｊの量子化パラメータＱｊ  を以下のように決定する。ここでより一般的に，ＭＢグループｊの量子化パラメータＱｊ  を決定する方法を記述する。ただし，ｊは１以上Ｎ−１以下である。
【００６７】
ＭＢグループｊ−１の符号化が終了したら，ＭＢグループの発生符号量Ｒｊ−１  を集計する（ステップＳ２６）。次に，ＭＢグループの複雑さ指標Ｘｊ−１  （Ｘｊ−１  ＝Ｒｊ−１  ・Ｑｊ−１  ）を計算し記憶する（ステップＳ２７）。そして，ＭＢグループｊ−１の発生符号量Ｒｊ−１  から，ＭＢグループｊ−１までのピクチャ内の累積発生符号量Ｂｊ−１  を求める（ステップＳ２８）。ｊ＝１の場合，Ｂ０  ＝Ｒ０  であり，ｊ≧２の場合，下記のとおりである。
【００６８】
Ｂｊ−１  ＝Ｒｊ−１  ＋Ｂｊ−２                                  ……（９）
次に，ＭＢグループｊの目標符号量Ｒ’ｊ  を決定する（ステップＳ２９）。目標符号量Ｒ’ｊ  は，「（１ＭＢグループあたりの平均目標符号量）−（返済符号量）」で決定する。１ＭＢグループあたりの平均目標符号量は，１ピクチャ目標符号量Ｔをピクチャ内のＭＢグループ数Ｎで割った値であり，返済符号量は，その時点の累積発生符号量の実際値と目標値との差分値を，残り制御単位数Ｎ−ｊで割った値とする。
【００６９】
Ｒ’ｊ  ＝Ｔ／Ｎ−（Ｂｊ−１  −（ｊ−１）・Ｔ／Ｎ）／（Ｎ−ｊ）…（１０）
このＭＢグループｊの目標符号量Ｒ’ｊ  の逆数に比例した値を仮の量子化パラメータＱ’  ｊ  として求める（ステップＳ３０）。
【００７０】
Ｑ’  ｊ  ＝Ｘ／Ｒ’ｊ            ……（１１）
このとき用いる比例定数Ｘは，直前同種ピクチャの全ＭＢグループの複雑さ指標の平均値，すなわちＭＢグループの発生符号量と平均量子化パラメータとの積の平均値とし，ピクチャ内の各ＭＢグループについて同じ値を用いる。このようにすることによって，ＭＢグループｊの符号化時に実際に発生する符号量はＭＢグループｊの目標符号量Ｒ’ｊ  とは必ずしも一致しないが，仮の量子化パラメータＱ’ｊ  は変動が少なくなり視覚的に望ましいというメリットがある。
【００７１】
そして，今回求めた仮の量子化パラメータＱ’ｊ  と前の２つのＭＢグループの仮の量子化パラメータＱ’ｊ−１  との間で１：１：１の比率で重み付き平均（移動平均）をとって，以下のようにＭＢグループｊの量子化パラメータＱｊ  を決定する（ステップＳ３１）。
【００７２】
Ｑｊ  ＝（Ｑ’ｊ  ＋Ｑ’ｊ−１  ＋Ｑ’ｊ−２  ）／３          ……（１２）
実際には，量子化パラメータＱｊ  にマクロブロックごとの特性に応じた係数Ｎａｃｔ  を乗じて，２倍したのち，規格上取りうる値（２〜６２，または１〜１１２）にクリッピングした値ｍｑｕａｎｔｊ  を用いＭＢグループｊ内の各マクロブロックの符号化を行なう（ステップＳ３２）。ステップＳ２６〜Ｓ３２をピクチャ内の全てのＭＢグループについて繰り返し（ステップＳ３３），ピクチャ符号化終了時には，最終ＭＢグループの量子化パラメータＱｊ  を，後の同種ピクチャの初期値のために記憶しておく（ステップＳ３４）。また，ＭＢグループの複雑さ指標の平均値Ｘを記憶しておく（ステップＳ３５）。
【００７３】
これをすべてのピクチャ符号化について繰り返す（ステップＳ３６）。このようにすることによって，従来より正確で安定したレート制御を行なうことができる。
【００７４】
以上説明した各実施の形態の処理は，ハードウェアや符号化処理専用のプロセッサによって実現することができ，また，汎用のコンピュータとソフトウェアプログラムとによって実現することもできる。そのソフトウェアプログラムは，コンピュータ読み取り可能な記録媒体に記録して提供することも，ネットワークを通して提供することも可能である。
【００７５】
【発明の効果】
本発明によれば，次の制御単位の目標符号量を決定し，その符号量を発生させる量子化パラメータを推定したり，または，その目標発生符号量の逆数に比例した値を量子化パラメータとしたりすることにより，符号量が異常に出過ぎたり，出なかったりすることによる制御の不安定化を防ぐことができる。
【００７６】
また，本発明によれば，例えば，ピクチャ目標符号量Ｔをピクチャ内の制御単位の数Ｎで割った値から，それまでに出過ぎた符号量を一定率Ｋずつ返す分を差し引いて次の制御単位の目標符号量に設定するなど，制御単位ごとの目標符号量を適切に決定することにより，ピクチャに与えられた目標符号量を正確に実現することができるようになる。
【図面の簡単な説明】
【図１】本発明によるレート制御概念図である。
【図２】本発明のピクチャ内レート制御方法を用いた符号化装置の構成例を示す図である。
【図３】本発明の第１の実施の形態に係るレート制御処理フローを示す図である。
【図４】本発明の第２の実施の形態に係るレート制御処理フローを示す図である。
【図５】従来の符号化装置の構成例を示す図である。
【図６】量子化パラメータと発生符号量との関係を示す図である。
【図７】従来のレート制御概念図である。
【符号の説明】
１，２  符号化装置
１０，２０  符号化制御部
１１    減算部
１２    ＤＣＴ部
１３    量子化部
１４    逆量子化部
１５    逆ＤＣＴ部
１６    加算部
１７    フレームメモリ
１８    動き探索・補償部
１９    可変長符号化部
５０，６０  フレーム内量子化制御部
１００  累積符号量累算部
１０１  目標累積符号量計算部
１０２  目標符号量計算部
１０３，１０６  量子化パラメータ計算部
１０４  量子化パラメータ平滑化部
１０５  減算部
【図１】
2004357079.tif 000003
【図２】
2004357079.tif 000004
【図３】
2004357079.tif 000005
【図４】
2004357079.tif 000006
【図５】
2004357079.tif 000007
【図６】
2004357079.tif 000008
【図７】
2004357079.tif 000009