(57)【要約】  【課題】  複雑な画像の後、易しい内容の画像に急変した場合、あるいはその逆の場合でもそのような急変する遷移状態における画質の低下が起きない、画像符号化装置と方法を提供する。  【解決手段】  エンコーダ２０に、ＶＢＲ（可変ビットレート）の量子化（Ｑ）スケールＶＢＲq を求めるＶＢＲ制御部２２と、最大ＣＢＲ（固定ビットレート）のＱスケールＣＢＲmaxqを求める最大ＣＢＲ制御部２３Ａと、最小ＣＢＲのＱスケールＣＢＲminqを求める最小ＣＢＲ制御部２３Ｂと、量子化スケール比較部２５を設け、量子化スケール比較部２５において、まずＶＢＲq とＣＢＲmaxqとの大きなほうを選択し、次いで選択した大きなほうとＣＢＲminqとの小さいほうを選択する。画像圧縮符号化部２４は量子化スケール比較部２５が選択した量子化スケールＱＳＣを用いて符号化する。【選択図】  図６
2006157853.tif 000002
【特許請求の範囲】
【請求項１】
符号化対象の画像信号を可変ビットレート方式で符号化するときの符号化難易度に応じた与えられた少なくとも１つの目標のビットレートを達成するため、第１画像処理単位において第１量子化スケールを算出する第１量子化スケール算出手段と、
上記符号化対象の画像信号に応じて予め定められた最大のビットレートを越えないため、上記第１画像処理単位より短い第２画像処理単位において第２量子化スケールを算出する第２量子化スケール算出手段と、
上記符号化対象の画像信号に応じて予め定められた最小のビットレートを下回らないため、上記１画像処理単位より短い第２画像処理単位において第２量子化スケールを算出する第３量子化スケール算出手段と、
上記第１の量子化スケールと第２の量子化スケールとを比較して大きいほうの量子化スケールを選択し、該選択した量子化スケールと上記第３量子化スケールとを比較して小さい量子化スケールを選択する量子化スケール選択手段と、
上記量子化スケール選択手段によって選択された上記量子化スケールを用いて、上記入力画像信号に対して符号化処理を行う符号化手段と
を有する画像符号化装置。
【請求項２】
上記第１量子化スケールを算出する第１量子化スケール算出手段に、上記符号化対象の画像信号を可変ビットレート方式で符号化するときの符号化難易度に応じた複数の目標のビットレートおよびこれに対応する複数の量子化しきい値が設定され、上記第１量子化スケール算出手段は上記与えられた複数の目標のビットレートそれぞれ達成するため、第１画像処理単位において複数の第１量子化スケールを算出し、
上記量子化スケール選択手段は、上記複数の第１の量子化スケールと対応する複数の量子化しきい値とを比較して上記符号化対象の画像信号の難易度および難易度の変化に応じて上記複数の第１の量子化スケールから１つの第１の量子化スケールを選択し、該選択された第１の量子化スケールと上記第２の量子化スケールとを比較して大きいほうの量子化スケールを選択し、該選択した量子化スケールと上記第３量子化スケールとを比較して小さい量子化スケールを選択して、上記符号化手段に出力する、
請求項１に記載の画像符号化装置。
【請求項３】
上記第１画像処理単位は複数のピクチャを含むＧＯＰ単位であり、
上記第２画像処理単位はマクロ・ブロック単位である
請求項１または２記載の画像符号化装置。
【請求項４】
前記符号化手段は、量子化スケール選択手段で選択した上記量子化スケールを用いてＭＰＥＧ２規格に基づいて入力画像信号を符号化する、
請求項３記載の画像符号化装置。
【請求項５】
上記第１量子化スケール設定手段は、上記第１画像処理単位における符号化処理の目標ビット量を設定する
請求項３記載の画像符号化装置。
【請求項６】
上記第１量子化スケール設定手段は、直前の上記第１画像処理単位における符号化ビット残量および応答速度に応じて上記第１量子化スケールを設定する
請求項５記載の画像符号化装置。
【請求項７】
上記第１画像処理単位における符号化ビット残量を記憶する記憶手段を有し、上記第１量子化スケール設定手段は、上記記憶手段に記憶されている符号化ビット残量に応じて次の上記第１画像処理単位における目標ビット量を設定する
請求項６記載の画像符号化装置。
【請求項８】
上記第２量子化スケール設定手段は、最大ビットレートに基づき、上記第２画像処理単位毎に次の上記第２画像処理単位における最大目標ビット量を設定する、
請求項１または２記載の画像符号化装置。
【請求項９】
上記第３量子化スケール設定手段は、最小ビットレートに基づき、上記第２画像処理単位毎に次の上記第２画像処理単位における最小目標ビット量を設定する、
請求項１または２記載の画像符号化装置。
【請求項１０】
上記第２量子化スケール設定手段は、最大目標ビットレートおよび直前の上記第２画像処理単位における符号化ビット残量に応じて、次の上記第２画像処理単位における目標ビット量を設定する
請求項８記載の画像符号化装置。
【請求項１１】
上記第２量子化スケール設定手段は、上記第１量子化スケールで画像を符号化することが指示されたとき、最大ビットレート及び直前の上記第２の画像処理単位における符号化ビット残量に応じて、次の上記第２の画像処理単位における目標ビット量を設定する
請求項８記載の画像符号化装置。
【請求項１２】
上記第２量子化スケール設定手段は、直前の上記第２の画像処理単位の符号化ビット残量が正または０のとき、当該符号化ビット残量を考慮せず、上記最大ビットレートに応じて、次の上記第２の画像処理単位における目標ビット量を設定する
請求項８記載の画像符号化装置。
【請求項１３】
上記第３量子化スケール設定手段は、最小目標ビットレート及び直前の上記第３画像処理単位における符号化ビット残量に応じて、次の上記第３画像処理単位における目標ビット量を設定する
請求項９記載の画像符号化装置。
【請求項１４】
上記第３量子化スケール設定手段は、上記第１量子化スケールで画像を符号化することが指示されたとき、最小ビットレート及び直前の上記第３の画像処理単位における符号化ビット残量に応じて、次の上記第３画像処理単位における目標ビット量を設定する
請求項９記載の画像符号化装置。
【請求項１５】
上記第３量子化スケール設定手段は、直前の上記第３の画像処理単位の符号化ビット残量が正または０のとき、当該符号化ビット残量を考慮せず、上記最小ビットレートに応じて、次の上記第３画像処理単位における目標ビット量を設定する
請求項９記載の画像符号化装置。
【請求項１６】
符号化対象の画像信号を可変ビットレート方式で符号化するときの符号化難易度に応じた与えられた少なくとも１つの目標のビットレートを達成するため、第１画像処理単位において第１量子化スケールを算出する第１量子化スケール算出ステップと、
上記符号化対象の画像信号に応じて予め定められた最大のビットレートを越えないため、上記第１画像処理単位より短い第２画像処理単位において第２量子化スケールを算出する第２量子化スケール算出ステップと、
上記符号化対象の画像信号に応じて予め定められた最小のビットレートを下回らないため、上記１画像処理単位より短い第２画像処理単位において第２量子化スケールを算出する第３量子化スケール算出ステップと、
上記第１の量子化スケールと第２の量子化スケールとを比較して大きいほうの量子化スケールを選択し、該選択した量子化スケールと上記第３量子化スケールとを比較して小さい量子化スケールを選択する量子化スケール選択ステップと、
上記量子化スケール選択手段によって選択された上記量子化スケールを用いて、上記入力画像信号に対して符号化処理を行う符号化ステップと
を有する画像符号化方法。
【請求項１７】
上記第１量子化スケールを算出する第１量子化スケール算出ステップにおいて、上記符号化対象の画像信号を可変ビットレート方式で符号化するときの符号化難易度に応じた複数の目標のビットレートおよびこれに対応する複数の量子化しきい値が設定され、上記第１量子化スケール算出ステップにおいて、上記与えられた複数の目標のビットレートそれぞれ達成するため、第１画像処理単位において複数の第１量子化スケールを算出し、
上記量子化スケール選択ステップにおいて、上記複数の第１の量子化スケールと対応する複数の量子化しきい値とを比較して上記符号化対象の画像信号の難易度および難易度の変化に応じて上記複数の第１の量子化スケールから１つの第１の量子化スケールを選択し、該選択された第１の量子化スケールと上記第２の量子化スケールとを比較して大きいほうの量子化スケールを選択し、該選択した量子化スケールと上記第３量子化スケールとを比較して小さい量子化スケールを選択する、
請求項１６に記載の画像符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データを符号化する画像符号化装置、特に可変ビットレートで動画像データを符号化する画像符号化装置及びその方法に関する。
【背景技術】
【０００２】
通常、画像符号化装置において、固定符号化レート（ＣＢＲ：Constant Bit Rate）または可変符号化レート（ＶＢＲ：Variable Bit Rate）で画像信号を符号化してビットストリームとして出力する。
固定符号化レートで符号化されたビットストリームは、一定のビットレートを有し、目標ビットレートを大きく逸脱することはない。
これに対して、可変符号化レートで符号されたビットストリームは符号化対象となる画像信号の特徴などに応じて変化するから、ビットレートが一定ではない。ただし、この場合においても、規格によって定められた最大ビットレートを越えない範囲内において画像信号に対して圧縮符号化処理が行われる。
【０００３】
ディジタル化した動画像信号を符号化する場合、符号化ビットレート制御が行われる。
符号化ビットレート制御とは、符号化によって発生する符号系列をある一定の時間幅でみたときに所望のビットレートになるよう制御することである。
【０００４】
これまで、動画像を高能率で圧縮符号化するための規格が複数提案されている。そのなかで、ＭＰＥＧ２規格が動画像符号化の標準規格として現在、通信、放送及びメディア蓄積など様々な応用分野で注目を集め、実用化されつつある。
その一つの応用例であるＤＶＤ（Digital Versatile Disc）は、ＭＰＥＧ２規格に準じて動画像を圧縮符号化したデータを保存する記録媒体として、大容量、低価格かつ取り扱いが簡単なため、今後ますますの普及が期待されている。
【０００５】
ＭＰＥＧ２規格ではビットレートを制御する符号化制御について規定されていない。このため、符号化情報量は規格によって定められた範囲内にあればよい。
通常、ＤＶＤのオーサリング（Authoring ，ＤＶＤタイトル作成のための編集作業）では可変符号化レートが用いられている。その際の符号化方法は、一回目の処理で符号化処理対象のソース全体の符号化難易度を調べ、二回目の処理で全体の符号化情報量が規格によって定められた範囲内になるように上記調べた符号化難易度に対応した符号量を割り当てて符号化を行うことで可変符号化レートを実現している。このような２回の処理によって、符号化情報量の全体が規格によって定められた範囲内にしつつ、難易度の高い（複雑な）画像信号に対してより多くの符号量が割り当てられ、逆に難易度の低い（複雑でない）画像信号に対して割り当てられる符号量を抑えることによって、全体として画質の均一化を達成できる。
【０００６】
ところで、ビデオカメラのように撮像装置で得られた動画像信号を実時間で記録媒体に記録する用途においては、連続的に入力される動画像信号を逐次圧縮符号化し、記録媒体に記録する必要がある。このような実時間処理が必要な場合、上述した２段階符号化処理における一回目の処理を行うことができない。すなわち、あらかじめ符号化しようとする画像全体を調べることができないため、通常、たとえば、１５フレーム程度を単位とするＧＯＰ（Group of Picture）毎に符号量を一定に制御する固定符号化レートで画像の圧縮符号化処理を行う。
【０００７】
図１は、固定符号化レートによって画像信号を符号化した場合の符号化レートを示している。固定符号化レート制御によって画像信号を圧縮符号化した場合、得られた符号列のビットレートが、画像の特徴にかかわらず、ほぼ目標ビットレートに固定されている。この固定符号化レートを実現するために、画像符号化装置の符号化レート制御部では、予め与えられた目標符号化レートに対して、数ブロックからなるマクロブロック単位で量子化スケールを迅速に変化させる。
固定符号化レートによる圧縮符号化処理は、画像の特徴にかかわりなく符号化レートを一定にするため、符号化難易度の低いシーンでは画質がよいが、符号化難易度の高いシーンでは画質が劣化してしまうという不具合が生ずる。このため、画質を一定のレベル以上に維持しながら、圧縮符号化で得られた符号量が規定値以内に収まるよう符号化処理のビットレートを可変に設定することが望まれる。
【０００８】
図２は、可変ビットレート制御（可変符号化レート制御）によって得られた符号列のビットレートの一例を示している。可変ビットレート制御では、目標ビットレートに対して、たとえば、ＧＯＰ単位で量子化（Ｑ）スケールを制御する。たとえば、画像符号化難易度の低いところ（複雑ではない画像部分）ではビットレートが低くなり、画像符号化難易度の高いところ（複雑な画像部分）では、ビットレートが高くなり、画像の符号化難易度に応じてビットレートが時間的に変化することで、再生画像の画質をほぼ一様に保つことができる。
しかし、ビデオカメラなど実時間での画像処理が要求される用途例では、上述したように、画像全体の特徴を事前に調べることができないため、符号化レートの設定は経験的に行われる。実際の撮像装置から得られた画像が時々刻々と変化し、画像符号化難易度も時間的に変化するため、符号化難易度の高い画像部分では、符号化ビットレートがビットストリームの先頭に来るシーケンスヘッダで指定された最大ビットレートを越えてしまうことがある。したがって、単に符号化難易度の変化に対する量子化スケールの応答速度を遅くするだけでは、あらゆる場合に規格に準じたビットストリームを生成することはできない。
さらに、上記可変符号化レート制御を民生用に適用する場合を考えると、ハードウエアの回路規模や、ソフトウエアの演算量の増加の少ない、シンプルなアルゴリズムが求められる。
【０００９】
特許文献１は、上述した不具合を克服し、上記ニーズに対応すべく考案された、実時間処理が要求される用途において可変符号化レート制御での動画像の圧縮符号化処理を実現できる画像符号化装置及びその処理方法を開示している。特許文献１に開示されている技術は、要約すれば、量子化（Ｑ）スケールを制御することにより行なう可変ビットレート（ＶＢＲ）制御技術である。以下、特許文献１に開示された発明の概要を述べる。
【００１０】
特許文献１によれば、Ｑスケールを所定の値に固定するいわゆる固定Ｑスケールによる画像符号化処理が行われる。これによって、符号化難易度の高い画像ではより多くのビットが発生し、逆に符号化難易度の低い画像では発生するビット数が少なくなる。その結果、一連の画像全体で見れば、符号化難易度の低い部分で発生するビット量が抑制され、難易度の高い部分でより多くのビット数が割り当てられるので、画質を均一に保ちながら可変符号化レートを実現できる。
【００１１】
また特許文献１に開示された技術は、画像全体の平均ビットレートが一定の基準になるように、ＧＯＰ単位、たとえば、１５ピクチャ以上の単位で符号化レート制御を行う。ＧＯＰ毎の目標ビット量を予め設定し、各ＧＯＰの発生ビット量が目標ビット量からのずれに応じてＱスケールを制御することにより、符号化レートがＧＯＰ単位に緩やかに変化し、かつ画像全体のビットレートが目標ビットレートから大きく逸脱しない範囲内に保持される。
【００１２】
さらに特許文献１に開示された技術は、入力画像の符号化レートが符号化システムの最大許容ビットレートを満足するように、通常の画像符号化装置に備えられている第２量子化（Ｑ）スケール設定手段により、あらかじめ定められた最大ビットレートに応じて固定符号化レート制御用Ｑスケールを設定し、設定された固定符号化レート制御用Ｑスケールと第１量子化スケール制御手段により求まる可変符号化レート制御用Ｑスケールとを比較して大きい方を実際の符号化処理に適用することにより、画像符号化処理におけるビットレートを符号化システムの最大許容値以内に保持することを可能にしている。
【００１３】
また特許文献１に開示された可変符号化レート処理では、通常の固定符号化レート制御手段を利用するため、画像符号化装置に適用する際には、ハードウエアの回路規模やソフトウエアの演算量の増加を最小限にとどめることができるという利点がある。
【特許文献１】ＷＯ００／６５８４２（ＰＣＴ／ＪＰ００／０２５９２）
【発明の開示】
【発明が解決しようとする課題】
【００１４】
特許文献１に開示されている技術では、規格によって定められた最大ビットレートを超えないために最大ビットレートの制限を行なっている。しかし符号化による画質を考えると、図３に図解したように、符号化難易度が高い画像が続きＱスケールが高い状態になっているときに、符号化難易度が低い画像（Ｑスケールが低い値に収束する画像）が入力された第１遷移領域Ｚ１においてビットレートが低くなり過ぎ符号化による画質の劣化が目立つ。そのため、このような画質劣化を防ぐために最小ビットレートを制限することも必要となる。
他方、目標ビットレートが低い場合など、規格以下であっても図３の第２遷移領域Ｚ２においてビットレートが高くなりすぎると、長期的に見た発生ビット量は目標ビットレートに応じた値に制限を加える必要があるため、発生し過ぎたビット量分を相殺するためその後ビットレートを下げる必要があり、このとき画質劣化が生じる可能性がある。
すなわち最大ビットレートの制限も、規格によるもの以外に目標ビットレートに応じた最大ビットレートを設定し、これを超えないようにする制限が必要である。
【００１５】
特許文献１ではまた、最大ビットレートを制限するためにＣＢＲ（固定ビットレート）でレート制御を行い、得られたＱスケールをＶＢＲ（可変ビットレート）のＱスケールと大小比較し、比較結果を選択することを行なっている。このＣＢＲレート制御はＭＰＥＧ２規格のＴＭ（Test Model) ５をベースに行っているが、１フレーム毎の目標ビット量を求める元になっているＧＯＰの残りビット量の計算において、ＧＯＰの最初に設定される１ＧＯＰ間の目標発生ビット量は最大ビットレートを元に求められているが、そこから１フレーム毎に引かれる発生ビット量は、目標ビットレートを元に制御される実際に発生したビット量である。
通常、最大ビットレートに比べて目標ビットレートは低いため、ＧＯＰの残りビット量は最初に設定される値に比べて引かれる値が小さく、詳細は後述する図１０（Ａ）、（Ｂ）に実線で示した曲線ＣＶ１１、ＣＶ１２のように、ＧＯＰの後のピクチャになるにしたがい徐々に過剰になってくる。すなわち、ＧＯＰの最初に求められる１フレームの目標ビット量は適切なものであるが、徐々に１フレームの目標ビット量が多くなり、ＧＯＰの後半では最大ビットレートでの制限が行なわれにくくなっていく。
最小ビットレートでの制限を加えた場合も同様に、図１０（Ｃ）に実線で示した曲線ＣＶ１３のように、ＭＰＥＧ２規格のＴＭ５ベースのＣＢＲレート制御を行なうと、上記と同じ不具合が生じる。
【００１６】
最大ビットレートを制限するＣＢＲでレート制御されたＱスケールは、通常の符号化状態ではＶＢＲのＱスケールに比べて小さい値を取り、符号化に用いられるＱスケールとして選択されない。しかしＶＢＲのＱスケールを用いて符号化処理を行なった結果、ビットレートが最大ビットレートを越えるようになった時、ＣＢＲのＱスケールが大きくなり、ＣＢＲのＱスケールが選択されて最大ビットレートの制限が行なわれる。このとき、通常の状態ではＣＢＲのＱスケールは小さくなる一方であり、最小Ｑスケール値は０に設定されているためＱスケールは０に張り付いた状態になっており、最大ビットレートでの制限が必要な場合にＱスケールは０から増加を始めるのでＶＢＲのＱスケールを超えるまでに時間がかかり、ビットレート制御に遅れが生じる。
【００１７】
最小ビットレートの場合はＱスケールの大小関係が逆になり、通常はＣＢＲのＱスケールが大きな値になり、制限を加えないとＱスケールははるかに大きな値になり、最小ビットレートを制限するためにＶＢＲのＱスケール以下になるまでの時間がさらに長くなる。この間、ビットレートが低くなりすぎることによる画質劣化も最小ビットレートの制限では問題になる。
【００１８】
本発明は特許文献１における上述した問題を克服して、画像の複雑さ、変化などに依存せず画質の高い符号化を行う、画像符号化装置およびその方法を提供することを目的とする。
【課題を解決するための手段】
【００１９】
本発明によれば、符号化対象の画像信号を可変ビットレート方式で符号化するときの符号化難易度に応じた与えられた少なくとも１つの目標のビットレートを達成するため、第１画像処理単位において第１量子化スケールを算出する第１量子化スケール算出手段と、上記符号化対象の画像信号に応じて予め定められた最大のビットレートを越えないため、上記第１画像処理単位より短い第２画像処理単位において第２量子化スケールを算出する第２量子化スケール算出手段と、上記符号化対象の画像信号に応じて予め定められた最小のビットレートを下回らないため、上記１画像処理単位より短い第２画像処理単位において第２量子化スケールを算出する第３量子化スケール算出手段と、上記第１の量子化スケールと第２の量子化スケールとを比較して大きいほうの量子化スケールを選択し、該選択した量子化スケールと上記第３量子化スケールとを比較して小さい量子化スケールを選択する量子化スケール選択手段と、上記量子化スケール選択手段によって選択された上記量子化スケールを用いて、上記入力画像信号に対して符号化処理を行う符号化手段とを有する画像符号化装置が提供される。
好ましくは、上記第１量子化スケールを算出する第１量子化スケール算出手段に、上記符号化対象の画像信号を可変ビットレート方式で符号化するときの符号化難易度に応じた複数の目標のビットレートおよびこれに対応する複数の量子化しきい値が設定され、上記第１量子化スケール算出手段は上記与えられた複数の目標のビットレートそれぞれ達成するため、第１画像処理単位において複数の第１量子化スケールを算出し、上記量子化スケール選択手段は、上記複数の第１の量子化スケールと対応する複数の量子化しきい値とを比較して上記符号化対象の画像信号の難易度および難易度の変化に応じて上記複数の第１の量子化スケールから１つの第１の量子化スケールを選択し、該選択された第１の量子化スケールと上記第２の量子化スケールとを比較して大きいほうの量子化スケールを選択し、該選択した量子化スケールと上記第３量子化スケールとを比較して小さい量子化スケールを選択して、上記符号化手段に出力する。
【００２０】
また本発明によれば、符号化対象の画像信号を可変ビットレート方式で符号化するときの符号化難易度に応じた与えられた少なくとも１つの目標のビットレートを達成するため、第１画像処理単位において第１量子化スケールを算出する第１量子化スケール算出ステップと、上記符号化対象の画像信号に応じて予め定められた最大のビットレートを越えないため、上記第１画像処理単位より短い第２画像処理単位において第２量子化スケールを算出する第２量子化スケール算出ステップと、上記符号化対象の画像信号に応じて予め定められた最小のビットレートを下回らないため、上記１画像処理単位より短い第２画像処理単位において第２量子化スケールを算出する第３量子化スケール算出ステップと、上記第１の量子化スケールと第２の量子化スケールとを比較して大きいほうの量子化スケールを選択し、該選択した量子化スケールと上記第３量子化スケールとを比較して小さい量子化スケールを選択する量子化スケール選択ステップと、上記量子化スケール選択手段によって選択された上記量子化スケールを用いて、上記入力画像信号に対して符号化処理を行う符号化ステップとを有する画像符号化方法が提供される。
好ましくは、上記第１量子化スケールを算出する第１量子化スケール算出ステップにおいて、上記符号化対象の画像信号を可変ビットレート方式で符号化するときの符号化難易度に応じた複数の目標のビットレートおよびこれに対応する複数の量子化しきい値が設定され、上記第１量子化スケール算出ステップにおいて、上記与えられた複数の目標のビットレートそれぞれ達成するため、第１画像処理単位において複数の第１量子化スケールを算出し、上記量子化スケール選択ステップにおいて、上記複数の第１の量子化スケールと対応する複数の量子化しきい値とを比較して上記符号化対象の画像信号の難易度および難易度の変化に応じて上記複数の第１の量子化スケールから１つの第１の量子化スケールを選択し、該選択された第１の量子化スケールと上記第２の量子化スケールとを比較して大きいほうの量子化スケールを選択し、該選択した量子化スケールと上記第３量子化スケールとを比較して小さい量子化スケールを選択する。
【発明の効果】
【００２１】
本発明によれば、画像の複雑さと易しさに適した効果的な符号化を実現できる上に、複雑な画像が継続したのち急激に易しい画像が入力されたとき、逆に、易しい画像が継続したのち急激に複雑な画像が入力されたときでも、その遷移領域において画質の低下を起こさず、効果的な符号化処理を行うことができる。
【００２２】
本発明においては、画像および画像の変化に応じて適切な量子化スケールＱＳＣを設定することによって、符号化対象の画像信号の符号化難易度に対応して、平均的に目標ビットレートに近い符号ビットレートで符号化対象の画像信号を符号化でき、さらに規格によって定められた最大ビットレートを越えないことを保証することができる。すなわち、ＶＢＲの最大ビットレートと最小ビットレートを制限することにより、符号化難易度の変化点での画質劣化およびビットレートが上がり過ぎたことをキャンセルするためにその後ビットレートを下げることによる画質劣化が抑えられる。
その理由は、実発生ビット量を用いて、たとえば、ＧＯＰ残りビット量を求めることによりＧＯＰの後ろになるほど最大ビットレートの制限が正しく働かず、ＧＯＰの後半で、たとえば、Ｐ，Ｂピクチャの発生ビット量が多くなり、たとえば、ＭＰＥＧ２規格のＴＭ５ステップ１で用いる画面の複雑さを示すパラメータ（global complexity measure）のＩ，Ｐ，Ｂピクチャ間の比率が崩れ、次のＧＯＰにおいてＩピクチャの最大ビットレートを制限するための目標ビット量が小さく抑えられることにより、Ｉピクチャの画質が劣化するという不具合を防ぐことができる。
さらに、本発明によれば、最小ビットレートを制限するためのＱスケールを求める仮想バッファが無制限に増加することがなくなり、符号化難易度が難しい画像から易しい画像に変化した時にＱスケールが速やかに下がることが可能となり、この間の画質劣化を防ぐことができる。
【発明を実施するための最良の形態】
【００２３】
画像符号化装置の基本構成
図４は本発明に係る実施形態の画像符号化装置の全体基本構成を示す図である。
本発明の実施形態の画像符号化装置１は、制御回路１０、エンコーダ（符号化装置）２０および画像入力装置３０を含む。
画像符号化装置１における画像入力装置３０の画像入力部としては、たとえば、ビデオカメラなどの撮像装置、または、他の記録媒体から画像信号を再生する画像再生装置などであり、何らかの手段で画像信号を生成し、かつアナログ形式の画像信号をディジタル信号に変換する機能を有するものであればよい。本実施形態において、画像符号化装置１にはディジタル形式の画像信号が入力される。
【００２４】
制御回路１０は、画像符号化装置１の外部から入力された制御信号Ｓ１に応じて、画像入力装置３０およびエンコーダ２０にそれぞれ制御信号Ｓ１２とＳ１３を出力し、画像入力装置３０およびエンコーダ２０の動作を制御する。
【００２５】
画像入力装置３０は、たとえば、ビデオカメラなどの撮像装置などから入力されたディジタル画像データＳ３０を符号化対象の画像データとしてエンコーダ２０に出力する。画像入力装置３０は、入力した画像信号の種類、特徴などに応じて画像情報データＳ３２を生成し、制御回路１０に供給する。
制御回路１０は、画像情報データＳ３２を入力し、入力画像信号の特徴などに応じてエンコーダ２０に圧縮符号化パラメータＳ１２を出力する。なお、圧縮符号化パラメータＳ１２は、目標符号化レート、最大符号化レート、可変ビットレート指示信号など複数のパラメータまたはこれらの信号からなり、これらについて後述する。
【００２６】
エンコーダ２０は、制御回路１０からの圧縮符号化パラメータＳ１２に応じて、画像入力装置３０から送られてきたディジタル画像データＳ３０を所定の符号化アルゴリズム、たとえば、ＭＰＥＧ２規格に基づく符号化アルゴリズムに基づいて圧縮符号化して、ビットストリームＳ２０を出力する。
エンコーダ２０は、可変符号化レートと固定符号化レートとを適宜選択することにより、画像の特徴、画像の変化にあわせて最適な符号化レートを求め、その符号化レート（Ｑスケール）に基づいて、画像の複雑さ、画像の変化に則して、画像全体の画質の均一化と圧縮効率の向上を図る。
エンコーダ２０により画像データが圧縮符号化された結果、ビットストリームＳ２０のデータ量が圧縮符号化前の画像データＳ３０に比べてはるかに低減される。このため、エンコーダ２０により圧縮符号化したビットストリームＳ２０を情報伝送、蓄積することによって、伝送路の伝送容量又は画像記録媒体の記憶容量を大幅に低減できる。
【００２７】
エンコーダ（符号化装置）の基本構成
図５は本実施形態におけるエンコーダ２０の基本構成を示すブロック図である。
エンコーダ２０は、可変符号化ビットレート（ＶＢＲ）制御回路２２ａ、固定符号化ビットレート（ＣＢＲ）制御回路２３ａ、量子化（Ｑ）スケール選択回路２５ａ、および、画像圧縮符号化部２４を有する。
固定ビットレート制御回路２３ａは、たとえば、図６に図解したように、最大ＣＢＲ制御部２３Ａと最小ＣＢＲ制御部２３Ｂとを有する。
ＶＢＲ制御回路２２ａは、第１画像処理単位、たとえば、複数のピクチャからなるＧＯＰ単位で画像符号化を行うための第１量子化スケール（第１Ｑスケール）を設定する第１量子化スケール設定手段であり、目標ビットレートに対して、第１画像処理単位で画像入力装置３０からの符号化対象の入力画像信号（画像データＳ３０）の符号化の難易度に応じて、緩やかに変化する第１量子化スケールＱＳ１を設定する。
ＣＢＲ制御回路２３ａは、上記第１画像処理単位、たとえば、ＧＯＰ単位より短い第２画像処理単位、たとえば、ピクチャまたはマクロ・ブロック（ＭＢ）単位で、ビットストリームの先頭のシーケンスヘッダによって指定した最大のビットレートに対して当該最大のビットレートを越えないように迅速に変化する第２および第３量子化スケールＱＳ２、ＱＳ３を設定する第２および第３量子化スケール設定手段である。そのため、固定ビットレート制御回路２３ａは、たとえば、図６を参照して述べるように、最大ＣＢＲ制御部２３Ａと最小ＣＢＲ制御部２３Ｂとを有する。
量子化スケール選択回路２５ａは、ＶＢＲ制御回路２２ａによって設定された第１量子化スケールＱＳ１とＣＢＲ制御回路２３ａによって設定された第２および第３量子化スケールＱＳ２、ＱＳ３とを比較し、これらの量子化スケールのうち適切なＱスケールを符号化対象の入力画像信号（画像データＳ３０）に対して符号化処理を行うための量子化スケールＱＳＣとして、画像圧縮符号化部２４に出力する。
画像圧縮符号化部２４は、画像データＳ３０を量子化スケール選択回路２５ａからの量子化スケールＱＳＣおよび制御回路１０からの圧縮符号化パラメータＳ１２に基づいて符号化する。
【００２８】
エンコーダの第１実施形態
図６は図５に図解したエンコーダ２０の第１実施形態の構成を示すブロック図である。
第１実施形態のエンコーダ２０は、ＶＢＲバッファ記録部２１、ＶＢＲ制御部２２、最大ＣＢＲ制御部２３Ａ、最小ＣＢＲ制御部２３Ｂ、画像圧縮符号化部２４および量子化スケール比較部２５を有する。
図５に図解したＶＢＲ制御回路２２ａがＶＢＲ制御部２２に対応し、ＣＢＲ制御回路２３ａが最大ＣＢＲ制御部２３Ａと最小ＣＢＲ部２３Ｂに対応し、量子化スケール選択回路２５ａが量子化スケール比較部２５に対応し、画像圧縮符号化部２４がそのまま画像圧縮符号化部２４に対応している。この他、第１実施形態のエンコーダ２０は、ＶＢＲバッファ記録部２１を含む。
【００２９】
第１実施形態のエンコーダ２０と、特許文献１に記載したエンコーダ（符号化装置）と比較すると、特許文献１におけるＣＢＲ制御部２３が、第１実施形態のエンコーダ２０においては、上記最大ＣＢＲ制御部２３Ａおよび最小ＣＢＲ部２３Ｂに置換されている。
その他、詳細は図９を参照して特許文献１の構成との相違を述べる。
【００３０】
画像圧縮符号化部
図７は図６に図解したエンコーダ２０内の画像圧縮符号化部２４の一構成を示す図である。
画像圧縮符号化部２４は、目標ビットレートＢＲobj、最大ビットレートＢＲmax、ＶＢＲ指示信号ＶＢＤ、および、量子化スケール比較部２５から提供される量子化スケールＱＳＣに応じて、画像入力装置３０から入力される符号化対象の画像データＳ３０を圧縮符号化し、ビットストリームＳ２０を出力する。
さらに画像圧縮符号化部２４は、圧縮符号化により生成したビット量を示す発生ビット量ＢＱＴおよび画像符号化種類を示すＰＣＴ信号を生成し、図６に図示したように、ＶＢＲ制御部２２、および、最大ＣＢＲ制御部２３Ａ、最小ＣＢＲ制御部２３Ｂにそれぞれ出力する。
【００３１】
画像圧縮符号化部２４は、加算器（加減算器）２０１、離散コイサン変換処理部（ＤＣＴ（Discrete Cosine Transform）処理部）２０２、量子化部２０３、可変長符号化部（ＶＬＣ）２０４、逆量子化部２０５、逆ＤＣＴ部２０６、加算器２０７、フレームメモリ２０８、動き検出部２０９、動き補償部２１０、切り換え回路２１１および符号化制御部２１２を有する。
【００３２】
画像入力装置３０から画像圧縮符号化部２４に入力された符号化対象のディジタル画像信号Ｓ３０は、加算器２０１において切り換え回路２１１から入力される以前の再生画像信号との差分が求められ、その差分がＤＣＴ部２０２に出力される。
イントラピクチャ（Ｉピクチャ）モードの時には、切り換え回路２１１からは有意な画像が入力されないので（図７では、このモードにおける切り換え回路２１１からの出力を大地電位の０としている）、加算器２０１に入力された画像データがそのままＤＣＴ部２０２に出力される。
動き補償予測モードの時には、加算器２０１には切り換え回路２１１を経由してその前の再生画像に基づいた動き補償部２１０からの画像データが入力されるので、その差分を加算器２０１で求め、求めた差分をＤＣＴ部２０２に入力する。
【００３３】
ＤＣＴ部２０２は、加算器２０１から入力された画像信号に対して、離散コサイン変換を行い画像データの空間的冗長性を削減する。ＤＣＴによって得られた変換係数は、量子化部２０３に入力される。
量子化部２０３は、符号化制御部２１２を介して入力される量子化スケール比較部２５からの量子化スケールＱＳＣに従って、ＤＣＴ部２０２により得られたＤＣＴ変換係数の量子化を行い、量子化ＤＣＴ変換係数を可変長符号化部２０４および逆量子化部２０５に出力する。このように、量子化部２０３における量子化スケールは量子化スケール比較部２５から量子化スケールＱＳＣを入力した符号化制御部２１２により制御される。
【００３４】
可変長符号化部２０４は、量子化部２０３において量子化されたＤＣＴ変換係数を可変長符号化し、符号化ビット列、すなわち、ビットストリームＳ２０を生成し、順次出力する。
【００３５】
符号化制御部２１２は、量子化部２０３の量子化レート（Ｑスケール）、フレームメモリ２０８への画像データの記録および切り換え回路２１１の切り換えなどを制御する。図７に図示のように、符号化制御部２１２は、たとえば、制御回路１０から入力される目標ビットレートＢＲobj、最大ビットレートＢＲmax、ＶＢＲ指示信号ＶＢＤ、および、量子化スケール比較部２５からの量子化スケールＱＳＣに応じて、量子化部２０３に所定の量子化スケールを設定し、量子化部２０３における量子化レートを制御する。
量子化部２０３で量子化されたＤＣＴ変換係数は逆量子化部２０５に入力される。量子化されたＤＣＴ変換係数は、逆量子化部２０５において逆量子化されて量子化部２０３に入力される前のＤＣＴ変換係数に復元され、さらに、逆ＤＣＴ部２０６において逆離散コサイン変換（逆ＤＣＴ）が行われて、ＤＣＴ部２０２に入力される前の加算器２０１の出力画像に逆変換される。
動き補償予測を行うモードの時には、加算器２０７で、逆ＤＣＴ部２０６において逆ＤＣＴが行われた画像信号と、切り換え回路２１１を経由して出力される動き補償部２１０において動き補償予測により得られた画像信号を加算して加算器２０１に入力された元の画像信号と同等の画像信号に戻し、フレームメモリ２０８に記録する。
イントラピクチャモードの時には、加算器２０７には切り換え回路２１１を介して動き補償部２１０における動き補償予測による画像は入力されず、逆ＤＣＴ部２０６で逆ＤＣＴされた画像信号がそのままフレームメモリ２０８に記録される。
動き検出部２０９および動き補償部２１０において動き補償予測を行う場合には、フレームメモリ２０８に記録されている画像信号が用いられる。すなわち、フレームメモリ２０８に記録されている画像信号に基づいて、次の画像ソース信号より動き検出部２０９において動き検出を行い、動きベクトルを検出する。さらに、その動きベクトルに基づいて、動き補償部２１０において動き補償予測を行う。この動き補償予測により得られた画像信号を切り換え回路２１１を介して加算器２０１に出力し、加算器２０１において次に入力される画像ソース信号との差分を求める。同様に、動き補償予測を行うモードの時には、切り換え回路２１１から出力される動き補償予測により得られた画像信号を加算器２０７に入力して加算器２０７において加算器２０１に入力された画像に相当する画像を求める。
【００３６】
このように、画像圧縮符号化部２４によって、入力されたディジタル画像データＳ３０が符号化され、ビットストリームＳ２０が生成される。
制御回路１０から供給されるＶＢＲ指示信号ＶＢＤが０のとき、ビットストリームＳ２０におけるシーケンスヘッダのビットレートに目標ビットレートＢＲobjが出力され、ＶＢＲ指示信号ＶＢＤが１のとき、ビットレートに最大ビットレートＢＲmaxが出力される。
マクロブロック（ＭＢ）毎に量子化スケールが設定されると、画像圧縮符号化部２４は、これをベースにＭＰＥＧ２のＴＭ５における符号化レート制御のステップ３に基づいた視覚効果を狙った量子化スケールの変更を行い、これを量子化に用いる。そしてＭＢ毎に発生されるビットストリームＳ２０を出力する。
【００３７】
本実施形態の画像圧縮符号化部２４は、量子化スケールによる符号化レート制御がうまくいかず、ＶＢＶバッファ部（図示せず）がアンダーフローしそうになるとき、ＤＣＴ係数を強制的にカットするなどしてこれを防止するなど、通常のＭＰＥＧ２の画像符号化装置としての一般的な機能も有する。
【００３８】
上述した画像圧縮符号部２４によって、上述した２段階の符号化処理を行う方法ではなく、一回だけの符号化処理、すなわち、１パス処理により、可変符号化レートで画像信号の符号化を実現できる。このため、たとえば、ビデオカメラなどの実時間での画像撮像及び記録を行う画像処理装置などにおいて、一度の符号化処理で可変符号化レートによる画像符号化を実現可能となり、異なる特徴を持つ画像信号における画質の均一化を実現可能であり、さらに可変符号化レート制御により、符号化能率の向上を図ることができる。
【００３９】
ＶＢＲバッファ記録部
ＶＢＲバッファ記録部２１は、ＶＢＲバッファ値ＶＢＲｂを保持して、上述した画像圧縮符号化部２４における一連の符号化処理におけるトータルの値が目標ビットレートＢＲOBJからの逸脱量を小さくするために設けられている。
符号化処理開始前、ＶＢＲバッファ記録部２１は、制御回路１０から入力されたＶＢＲバッファ初期値ＢＲINIを記憶する。もっとも簡単な初期化方法として、処理開始前に、制御回路１０からの初期化制御信号に応じてＶＢＲバッファ記録部２１を初期化し、ＶＢＲバッファ初期値ＢＲINIを“０”に設定するか、または、予め与えられた値に設定する。
ＶＢＲバッファ記録部２１は、エンコーダ（符号化装置）２０において圧縮符号化を開始したあとＶＢＲ制御部２２に記録したＶＢＲバッファ初期値ＢＲINIを提供し、また、エンコーダ２０における符号化終了時にＶＢＲ制御部２２からＶＢＲバッファ値ＶＢＲｂを入力して記録する。ＶＢＲバッファ記録部２１は次回の符号化処理において、記録したＶＢＲバッファ値ＶＢＲｂをＶＢＲ制御部２２に出力する。
【００４０】
ＶＢＲ制御部
ＶＢＲ制御部２２は、制御回路１０から入力されたＶＢＲ応答速度ＶＢＲｒ、目標ビットレートＢＲobj、最大ビットレートＢＲmax、最小ビットレートＢＲminに応じて、ＶＢＲの量子化（Ｑ）スケールＶＢＲq を求めて量子化スケール比較部２５に出力する。
ＶＢＲ制御部２２は、目標ビットレートＢＲOBJから求められる１ＧＯＰの目標発生ビ
ット量に対し、実際にそのＧＯＰで発生したビット量を比較し、目標ビットレートＢＲOBJよりビット量が発生しすぎていればＱスケールを徐々に大きくして発生ビット量を徐々に抑え、逆に目標ビットレートＢＲOBJよりビット量の発生が足りなければＱスケールを徐々に小さくして発生するビット量を徐々に増加させる。これにより、Ｑスケールを余りレスポンスよく変動させないことから符号化難易度に応じた発生ビット量となるＶＢＲレート制御となり、かつ、Ｑスケールを発生ビット量に応じて徐々に変動させることで、長期的には目標ビットレートＢＲOBJに応じた発生ビット量となる。
ＶＢＲ制御部２２において、内部パラメータとして、ＶＢＲ量子化スケールＶＢＲｑを求めるためのＶＢＲバッファ値ＶＢＲｂ、目標ビットレートＢＲOBJで符号化する場合のＧＯＰにおける残りビット量ＲＢＧ、ＶＢＲ量子化スケールＶＢＲｑの応答速度を表すＶＢＲ応答速度ＶＢＲｒを保持している。
【００４１】
ＶＢＲ制御部２２においてＶＢＲ量子化スケールＶＢＲｑは次式により求める。
ＶＢＲｑ＝ＶＢＲｂ／（２ｎ ×ＶＢＲｒ）                    …（１）
式（１）において、ｎは演算パラメータであり、用途などに応じて設定され、たとえば、ｎ＝９とする。
【００４２】
ＶＢＲ量子化スケールＶＢＲｑが１になると、発生するビット量が急激に増加してＶＢＲレート制御が不安定になるため、式（１）により算出したＶＢＲ量子化スケールＶＢＲｑが１以下のとき、ＶＢＲ制御部２２においてＶＢＲ量子化スケールＶＢＲｑを強制的に２に変更するなどの対策を講じる。
さらに、ＧＯＰにおけるＩ／Ｐ／Ｂピクチャの違いに着目して、ＶＢＲ制御部２２は、符号化タイプ（coding type ）がＢピクチャの場合に式（１）により得られた値に係数、たとえば、１．４をかけた値をＶＢＲ量子化スケールＶＢＲｑとする。すなわち、Ｂピクチャの場合、ＶＢＲ量子化スケールを常にＩ，ＰピクチャのＶＢＲ量子化スケールの１．４倍に設定される。その理由は、ＢピクチャをＩ，Ｐピクチャに比較して多少粗めに符号化することにより、Ｂピクチャで節約できる符号化量をＩ，Ｐピクチャに符号量に振り分けると、Ｉ，ＰピクチャのＳ／Ｎが改善されるとともに、これを参照して生成されるＢピクチャのＳ／Ｎも改善されることになり、総合的にＳ／Ｎの改善を図ることができるからである。
ＶＢＲ制御部２２において、Ｉ／Ｐ／ＢピクチャのＱスケールが上述したように簡単な方法で決定されるが、上述した例示に限定されず、それぞれのピクチャの符号化難易度を調べてそれに応じたＱスケールの差を付けることもできる。
【００４３】
ＶＢＲ制御部２２において、ＧＯＰでの残りビット量ＲＢＧとしてＧＯＰ毎に目標ビット量が設定される。
そして、ＶＢＲ制御部２２において、たとえば、ＭＢ（マクロブロック）毎に発生ビット量を受け取ると、ここからその分（ＧＯＰ毎に目標ビット量）を引く。各ＧＯＰの終わりには目標ビット量からの逸脱量がＧＯＰでの残りビット量ＲＢＧに残るので、ＶＢＲ制御部２２はこれ（残りビット量ＲＢＧ）をＶＢＲバッファ値ＶＢＲｂから引く。この時、ＶＢＲバッファ値ＶＢＲｂが負になるとＶＢＲ制御部２２はそれを０に設定する。また、ＶＢＲバッファ値ＶＢＲｂがオーバーフローしそうな場合にはＶＢＲ制御部２２はそれ（ＶＢＲバッファ値ＶＢＲｂ）を最大値に固定する。
【００４４】
上述したように、符号化処理開始時のＶＢＲバッファ値ＶＢＲｂの初期値は、ＶＢＲバッファ記録部２１からＶＢＲ制御部２２に入力される。ここで、たとえば、ＶＢＲバッファ記録部２１から入力されたＶＢＲバッファ値ＶＢＲｂが０以外の場合、ＶＢＲ制御部２２はその値を使用し、０の場合、以下の式により求た値を用いる。
ＶＢＲｂ＝ｍ・ＶＢＲｒ／（ＢＲobj×２k）            …（２）
式（２）において、ｍ，ｋは演算パラメータである。ここで、たとえば、ｍ＝２．５×１０7 であり、ｋ＝１０である。
【００４５】
式（２）における応答速度ＶＢＲｒは制御回路１０により供給される値を使用する。たとえば、応答速度ＶＢＲｒが２００程度の値に設定されるとき数十秒、４０００程度の値に設定されるとき数十分の応答速度が得られる。符号化終了時に式（２）により算出されたＶＢＲバッファ値ＶＢＲｂは、ＶＢＲバッファ記録部２１に伝送されて記憶される。
【００４６】
ＧＯＰでの残りビット量ＲＢＧには、最初に以下の式で求められる値が設定される。
ＲＢＧ＝ＢＲobj・Ｎ／ＰＣＲ                                …（３）
式（３）において、ＮはＩピクチャの間隔であり、ＰＣＲはピクチャレートである。
【００４７】
ＣＢＲ制御部
第１実施の形態のＣＢＲ制御部は、最大ＣＢＲ制御部２３Ａと最小ＣＢＲ制御部２３Ｂとを有する。
図８は第１実施の形態の最大ＣＢＲ制御部２３Ａと最小ＣＢＲ制御部２３Ｂの構成と画像圧縮符号化部２４、特に、符号化制御部２１２との関係を示す図である。
最大ＣＢＲ制御部２３Ａは、ＧＯＰ割り当てビット量演算部２３１１、ＧＯＰ残りビット量バッファ２３１２、ＴＭ５ステップ１演算部２３１３、および、ＴＭ５ステップ２演算部２３１４を有する。
最小ＣＢＲ制御部２３Ｂは、ＧＯＰ割り当てビット量演算部２３２１、ＧＯＰ残りビット量バッファ２３２２、ＴＭ５ステップ１演算部２３２３、および、ＴＭ５ステップ２演算部２３２４を有する。
最大ＣＢＲ制御部２３Ａおよび最小ＣＢＲ制御部２３Ｂにおいて、本実施形態においては、たとえば、ＭＰＥＧ２についてのＴＭ５のアルゴリズムに基づいてＣＢＲのレート制御を行う。もちろん、本発明の実施の形態の画像符号化装置１では、ＣＢＲにおけるレート制御はＴＭ５のアルゴリズムに基づいて行うことに限定されるものではなく、他の制御方式に基づいてレート制御を行ってもよい。ただし、以下、ＴＭ５のアルゴリズムに基づいて行う場合について述べる。
【００４８】
図９に特許文献１のＣＢＲ制御部２３の構成例を示す。ＣＢＲ制御部２３は、最大ＣＢＲ制御部２３Ａと同様、ＧＯＰ割り当てビット量演算部２３１１、ＧＯＰ残りビット量バッファ２３１２、ＴＭ５ステップ１演算部２３１３およびＴＭ５ステップ２演算部２３１４を有する。
本発明の実施の形態のＣＢＲ制御部には、特許文献１には記載されていない最小ＣＢＲ制御部２３Ｂが付加されている。
最大ＣＢＲ制御部２３ＡとＣＢＲ制御部２３とは個々の構成部分について類似する構成を持つが、本実施形態と特許文献１に記載の内容とは、画像圧縮符号化部２４との関係、および、ＣＢＲ制御部２３内の処理内容は下記に詳述するように異なる。
【００４９】
図９に図解した特許文献１に記載のＣＢＲ制御部２３は、ＣＢＲmaxqを求める際の、あるいは、通常のＣＢＲでＱスケールを求める際の、ＧＯＰ残りビット量の演算処理を行うため、画像圧縮符号化部２４から出力されるフレーム毎の発生ビット量をＧＯＰ残りビット量から引いていく。
このような最大ビットレートを制限するＣＢＲ制御部２３によれば、図１０（Ａ）〜（Ｃ）において太い実線の曲線ＣＶ１１、ＣＶ１２、ＣＶ１３で示したように、ＧＯＰ残りビット量には最大ビットレートから求められた値が設定される。ここから求められる毎フレームの目標ビット量は通常のＣＢＲに比べて大きな値になるが、その値に応じた符号化処理が行なわれるのではなく、目標ビットレートＢＲOBJに応じたＶＢＲでレート制御された結果となるので、ＧＯＰ残りビット量は、図１０（Ｂ）の太線の曲線ＣＶ１２で示したように変化し、ＧＯＰの最後になっても大きな値を取る。これにより、１フレームの目標ビット量はＧＯＰの後になるに従い大きな値となり、これから求められるＱスケールは適切なものではなくなる。
これまでに発生したビット量に応じて以降の発生ビット量を調整する必要があるため、実際に発生したビット量をＧＯＰ残りビット量から引く必要があるが、ＶＢＲの最大ビットレートあるいは最小ビットレートを制限するために求めるＣＢＲのＱスケールは、過去の発生ビット量とは関係なく目標値として求めるものなので、このような求め方をしてもなんら問題がない。
この問題は、最小ビットレートを制限するＣＢＲでも同様である。
【００５０】
理想的には、ＧＯＰ残りビット量は、図１０（Ｂ）、（Ｃ）の細い点線の曲線ＣＶ２２、ＣＶ２３で示したように所定の割合で均一に変化するべきである。
最大ＣＢＲ制御部２３Ａと最小ＣＢＲ制御部２３Ｂとを用いた本実施の形態のＧＯＰのＣＢＲ制御方法は、図１０（Ｂ）、（Ｃ）に点線の曲線ＣＶ２２、ＣＶ２３で示すように、ビットレートに応じた１ＧＯＰの目標ビット量ＲがＧＯＰ残りビット量に設定され、ここから求められる毎フレームの目標ビット量Ｒにより符号化が制御され、目標ビットレートＢＲOBJに応じたビット量が毎フレーム発生し、毎フレームの目標ビット量がＧＯＰ残りビット量から引かれることにより、ＧＯＰの最後にはＧＯＰ残りビット量がゼロに近い値になる。
最大ＣＢＲ制御部２３Ａと最小ＣＢＲ制御部２３Ｂとを有する本実施形態のＣＢＲ制御部によれば、図１０（Ｂ）、（Ｃ）の点線の曲線ＣＶ２２、ＣＶ２３のようにＧＯＰ残りビット量がほぼ一定の割合で変化するために、フレーム毎にＧＯＰ残りビット量から引くビット量は、目標ビットレートＢＲOBJを元に制御される発生ビット量ではなく、最大ビットレートＢＲmaxあるいは最小ビットレートＢＲminから求められる１フレーム毎の目標ビット量を引くようにする。
【００５１】
本実施形態の最大ＣＢＲ制御部２３Ａは、ＣＢＲmaxqを求める際のＧＯＰ残りビット量の演算処理を行う。すなわち、本実施形態では、特許文献１に記載の図９のＣＢＲ制御部２３と画像圧縮符号化部２４の符号化制御部２１２との関係のように符号化制御部２１２から出力されるフレーム毎の発生ビット量ではなく、ＴＭ５ステップ１演算部２３１３から出力される目標ビット量ＲをＧＯＰ残りビット量から引くように変更している。これにより、ＧＯＰ内のフレーム位置によらず出力されるＣＢＲmaxqは常に適切な値となる。
本実施形態における最小ＣＢＲ制御部２３ＢにおいてＣＢＲminqを求める際も同様である。
【００５２】
本実施形態の最大ＣＢＲ制御部２３Ａは、制御回路１０から入力された最大ビットレートＢＲmaxに応じて最大ＣＢＲ量子化スケールＣＢＲmaxｑを設定し、設定したＣＢＲmaxｑを量子化スケール比較部２５に出力する。
本実施形態のＧＯＰ割り当てビット量演算部２３１１は、ＧＯＰ毎に含まれているピクチャ数とビットレートからＧＯＰに対して割り当てられるビット量を決定する。現在処理されているＧＯＰの前のＧＯＰにおけるビット量の残量ΔＲ（正または負）は今回の処理分に加えられない。
本実施形態においては、ＧＯＰ残りビット量Ｒと、ピクチャタイプ（Ｉ／Ｂ／Ｐ）毎の符号化難易度と、ピクチャタイプ毎の残りピクチャ数から、これから符号化するピクチャに対する目標ビット量が決定される。さらに、ＧＯＰ残りビット量から符号化するピクチャに対する目標ビット量が引かれて、ビット量の残差ΔＲが算出される。
【００５３】
ＭＰＥＧ２規格のＴＭ５のステップ１、２の処理を行う本実施形態のＴＭ５ステップ１演算部２３１３およびＴＭ５ステップ２演算部２３１４においては、ＧＯＰ単位で画像符号化処理が行われる。
マクロブロック（ＭＢ）単位の処理では、ピクチャがＭＢ単位で符号化され、ＭＢ毎に発生ビット量がピクチャでの目標ビット量を越えそうな場合に、Ｑスケールが大きく設定され、逆に発生ビット量が目標ビット量を下回りそうな場合にはＱスケールが小さく設定される。さらに人間の視覚特性が画面内の平坦な部分では、画質の劣化に敏感なことを考慮して、相対的に平坦な画像部分ではＱスケールが小さく設定され、逆に細かい画像部分ではＱスケールが大きく設定される。
【００５４】
ＭＰＥＧ２のＴＭ５においては、ＧＯＰ毎に次のＧＯＰの目標ビット量Ｒを決定する。ＧＯＰの終わりではそのＧＯＰでの発生するビット量がＲから引かれた値になる。これを当該ＧＯＰのビット残量としΔＲと表記する。そして、このビット残量ΔＲは次のＧＯＰの目標ビット量Ｒに加えられる。
ＭＰＥＧ２のＴＭ５において、ＧＯＰ毎に次のＧＯＰの目標ビット量Ｒを決めるが、最大ＣＢＲ制御部２３Ａおよび最小ＣＢＲ制御部２３Ｂにおいては、以下の異なる処理が行われ、次のＧＯＰの目標ビット量Ｒを決定する。
【００５５】
（ａ）ＴＭ５ステップ１演算部２３１３において、制御回路１０から与えられるＶＢＲ指示信号ＶＢＤ＝０のとき、次式により現在のＧＯＰビット残量ΔＲiに応じて、次のＧＯＰの目標ビット量Ｒi+1を算出する。ここで、ｉはＧＯＰの番号を示す。
Ｒi+1＝ＢＲobj・Ｎ／ＰＣＲ＋ΔＲi                     …（４）
なお式（４）において、ＮはＩピクチャの間隔であり、ＰＣＲはピクチャレートである。
【００５６】
（ｂ）ＴＭ５ステップ１演算部２３１３において、ＶＢＲ指示信号ＶＢＤ＝１、かつ、直前のＧＯＰのビット残量ΔＲiが負のとき（ΔＲi＜０）、次式により、次のＧＯＰの目標ビット量Ｒi+1を算出する。
Ｒi+1＝ＢＲmax・Ｎ／ＰＣＲ＋ΔＲi                     …（５）
【００５７】
（ｃ）ＴＭ５ステップ１演算部２３１３において、ＶＢＲ指示信号ＶＢＤ＝１、かつ、直前のＧＯＰのビット残量ΔＲiが正または０のとき（ΔＲi≧０）、次式により、次のＧＯＰの目標ビット量Ｒi+1を算出する。
Ｒi+1＝ＢＲmax・Ｎ／ＰＣＲ                              …（６）
【００５８】
（ａ）の場合は、図９のＣＢＲ制御部２３による通常のＭＰＥＧ２のＴＭ５の処理と同じであり、エンコーダ２０において、ＣＢＲ制御が行われる。目標ビットレートＢＲobjを大きく逸脱しないように、ＧＯＰ毎のビット残量ΔＲを常に次のＧＯＰの目標ビット量にフィードバックさせ、次のＧＯＰの目標ビット量Ｒi+1が直前のＧＯＰのビット残量ΔＲiに応じて修正される。
（ｂ，ｃ）の場合は、エンコーダ２０において、ＶＢＲ制御が行われ、最大ビットレートＢＲmax／最小ビットレートＢＲminを越えないように、ＧＯＰ毎のビット残量ΔＲに応じて次のＧＯＰの目標ビット量が算出される。直前のＧＯＰのビット残量ΔＲiが正または０のとき、上述した理由で直前のＧＯＰのビット残量ΔＲiがフィードバックせず、次のＧＯＰの目標ビット量Ｒi+1が式（６）に示すように、最大ビットＢＲmax／最小ビットレートＢＲｍｉｎなどに応じて決定される。
【００５９】
最大ＣＢＲ制御部２３Ａおよび最小ＣＢＲ制御部２３Ｂは、上述したように算出されたＧＯＰの目標ビット量に基づき、最大ＣＢＲ量子化スケールＣＢＲmaxｑ、最小ＣＢＲ量子化スケールＣＢＲminｑを求めて、量子化スケール比較部２５に供給する。
【００６０】
量子化スケール比較部
量子化スケール比較部２５は、ＶＢＲ制御部２２から入力されたＶＢＲ量子化スケールＶＢＲｑ、最大ＣＢＲ制御部２３Ａから入力された最大ＣＢＲ量子化スケールＣＢＲmaxｑ、最小ＣＢＲ制御部２３Ｂから入力された最小ＣＢＲ量子化スケールＣＢＲminｑに応じてベースとなる量子化スケールＱＳＣを算出し、画像圧縮符号化部２４に提供する。
【００６１】
量子化スケール比較部２５においては、図１１のフローチャートに示すように、ステップ１（Ｓ１）においてＶＢＲq とＣＢＲminqを比較して小さい方を選ぶ。これにより、Ｑスケールが大き過ぎてビットレートが下がり過ぎないように、Ｑスケールの最大値が制限される。次に、量子化スケール比較部２５は、ステップ２（Ｓ２）において、上記比較結果とＣＢＲmaxqを比較して大きい方を選ぶ。これにより、Ｑスケールが小さ過ぎてビットレートが上がり過ぎないようにＱスケールの最小値が制限される。
【００６２】
たとえば、最小ビットレートＢＲminを制限するＣＢＲのＱスケール（ＣＢＲminq）は、図１２（Ａ）に示すように、通常は大きな値をとるが、最小ビットレートＢＲminによる制限が必要な場合にＶＢＲのＱスケールＶＢＲq を下回る値をとり、ＶＢＲq より小さいＱスケールであるＣＢＲminqが選択されて画像圧縮符号化部２４において符号化に用いられることにより、大きなＱスケールによりビットレートが小さくなりすぎることがなく、最小ビットレートの制限が行なわれる。
【００６３】
通常の状態あるいは難しい画像が入力され続けた場合、ＣＢＲminqは大きな値をとるが、ＣＢＲminqの最大値は、図１２（Ａ）、（Ｂ）に図解したように、たとえば、ＭＰＥＧではコードに換算して「３１」の上限が設定されているため、「３１」を越えることはない。しかし、ＣＢＲminqをＭＰＥＧ２規格のＴＭ５ベースの制御で求める場合、これに対応する仮想バッファの値に（３１／リアクションパラメータ）の値を乗じて求め、これがコードに換算して「３１」を上回れば「３１」にするという計算を行なっている。この仮想バッファの値は、ＴＭ５では制限が加えられないため、通常の状態あるいは難しい画像が入力されつづけた場合は、ＣＢＲminqは図１２（Ａ）に破線で示すように増加し続ける。
この状態で符号化対象の入力画像データの符号化難易度が易しくなっても、仮想バッファの値が十分小さくなり、これから求められるＱスケールＣＢＲminqがＶＢＲq を下回るまでに時間がかかり、たとえば、数フレームの期間、画質が劣化した状態が続く。
このような問題に対応するため、図１２（Ｂ）に図解したように、ある短い期間、たとえば、フレーム毎に、ＣＢＲminqがＶＢＲq を上回っていれば、ＣＢＲminqをＶＢＲq に近い値に設定しなおす。
【００６４】
ＣＢＲminqをＶＢＲq に近い値に設定する方法としては、たとえば、仮想バッファの値を（ＶＢＲq×リアクションパラメータ）／３１に書き換える。これにより、図３に示す遷移領域Ｚ１、Ｚ２における画質劣化する期間が、たとえば、数スライス間と短くなり、かつ、その間のＱスケールも大きくなりすぎないため画質劣化度合いも小さくなり、難しい画像から易しい画像に切換わった時の画質劣化が抑えられる。
その結果、上述した図３に示した遷移領域Ｚ１、Ｚ２におけるＱスケールの変化が図１３の図解の曲線のようになり符号化難易度の変化点（遷移領域Ｚ１、Ｚ２）で生じる問題点が解決される。
このように第１実施形態によれば、画像および画像の変化に応じて適切な量子化スケールＱＳＣを設定することによって、入力画像信号の符号化難易度に対応して、平均的に目標ビットレートに近い符号ビットレートで入力画像信号を符号化でき、さらに規格によって定められた最大ビットレートを越えないことを保証することができる。
【００６５】
ＣＢＲmaxqについても同様であるが、ＧＯＰ残りビット量バッファ２３２２として用いる仮想バッファはunsigned型の引数が用いられることが多く、負の値になるときはゼロに抑えられるので、ＣＢＲminqに比べて効果は小さい場合が多く、またすぐにＱスケールが大きな値にならないことにより、すなわち、ある短い期間符号化された画質が良くなり過ぎることにより問題になることはないと思われるが、ＣＢＲmaxqについてもＣＢＲminqと同様にある短い期間で値を設定し直してもよい。
【００６６】
画像符号化装置の全体処理
図１４は第１実施形態の画像符号化装置全体の動作を示すフローチャートである。
以下、それぞれのパラメータの具体的な数値例を用いて、第１実施形態の画像符号化装置１の動作を説明する。
【００６７】
ステップ１１において、制御回路１０が符号化処理開始した後、まず、ＶＢＲ制御部２２が与えられたパラメータに応じて式（２）でＶＢＲバッファ値ＶＢＲｂの初期値を求める。
ここで、たとえば、ＢＲobj＝４Ｍｂｐｓ、最大ビットレートＢＲmax＝８Ｍｂｐｓ、ＶＢＲ応答速度ＶＢＲｒ＝３００とし、さらに、式（２）におけるｍ＝２．５×１０７ であり、ｋ＝１０とすると、式（２）により、ＶＢＲバッファ値ＶＢＲｂは、（２．５×１０７×３００／（４×１０６×２１０））＝１９２００００となる。
【００６８】
ステップ１２において、ＶＢＲ制御部２２がＧＯＰの目標ビット量を、式（３）に基づいて求める。
なお式（３）において、ＧＯＰを１５ピクチャ単位とするとＮ＝１５となる。たとえば、ＮＴＳＣ方式のテレビジョン画像信号を符号化処理するとき、各フレームは、２９．９７Ｈｚで更新するので、この場合のピクチャレートＰＣＲは２９．９７となる。このため、式（３）により、ＧＯＰの目標ビット量は、（４×１０６×１５／２９．９７）＝２００２００２となる。
【００６９】
ステップ１３において、制御回路１０がＣＢＲの目標ビット量を求める。
たとえば、最大ビットレートＢＲmax、ＧＯＰのピクチャ数Ｎ及びピクチャレートＰＣＲに応じて、ＣＢＲの目標ビット量は、（８×１０６×１５／２９．９７）＝４００４００４となる。
【００７０】
ステップ１４において、ステップ１１で求めたＶＢＲバッファ値ＶＢＲｂに基づき、ＶＢＲ制御部２２が式（１）でＶＢＲ量子化スケールＶＢＲｑを求めて、量子化スケール比較部２５に出力する。
式（１）においてｎ＝９とすると、ＶＢＲ量子化スケールＶＢＲｑは、（１９２００００／（２９×３００））＝１２．５となる。なお、量子化スケールは整数値が要求されるので、ここで、たとえば、ＶＢＲ量子化スケールＶＢＲｑ＝１３と設定される。
ピクチャ符号化タイプが１または２、すなわち、ＩまたはＰピクチャのとき、可変量子化スケールＶＢＲｑ＝１３に設定され、ピクチャ符号化タイプが３、すなわち、Ｂピクチャのとき、可変量子化スケールは、式（１）により算出された量子化スケールを１．４倍にした値に設定される。すなわち、Ｂピクチャの場合、ＶＢＲｑ＝１８に設定される。
【００７１】
ステップ１５において、最大ＣＢＲ制御部２３Ａが最大ビットレートＢＲmaxに応じて最大ＣＢＲ量子化スケールＣＢＲmaxｑを求め、最小ＣＢＲ制御部２３Ｂが最小ビットレートＢＲmin に応じて最小ＣＢＲ量子化スケールＣＢＲminｑを求めて、量子化スケール比較部２５に出力する。
【００７２】
ステップ１６において、量子化スケール比較部２５が、図１１を参照して述べた量子化スケール判定処理を行う。すなわち、ＶＢＲ量子化スケールＶＢＲｑと最小ＣＢＲ量子化スケールＣＢＲminｑとが比較され、小さい方が選択され、さらに、選択結果と最大ＣＢＲ量子化スケールＣＢＲmaxｑとが比較され、大きいほうが選択されて、量子化スケールＱＳＣとして画像圧縮符号化部２４の符号化制御部２１２に出力される。
【００７３】
ステップ１７において、画像圧縮符号化部２４は、量子化スケール比較部２５により提供された量子化スケールで、１ＭＢ（１マクロブロック）単位で入力画像信号に対して符号化処理を行う。
【００７４】
ステップ１８において、最大ＣＢＲ制御部２３Ａおよび最小ＣＢＲ制御部２３Ｂにおいて、目標ビット量が設定されたＧＯＰ目標ビット量から減算される。
【００７５】
ステップ１９において、制御回路１０は、１ＧＯＰの全ての画像信号に対する符号化処理が終わるまでステップ１５からＳ１８の処理が繰り返して行うように制御する。
１ＧＯＰの符号化処理が終了したあと、ステップ２０において、１ＧＯＰにおけるビット残量ＲＢＧが取り出される。
ステップ２１において、ビット残量ＲＢＧに応じて、ＶＢＲ制御部２２においてＶＢＲバッファ値が更新される。
【００７６】
ステップ２２において、最大ＣＢＲ制御部２３Ａ、最小ＣＢＲ制御部２３Ｂは、発生ビット量に応じて、ＧＯＰのビット残量ΔＲを算出し、当該ビット残量に応じて、式（６）に基づき最大ＣＢＲ制御部２３Ａ、最小ＣＢＲ制御部２３ＢにおけるＧＯＰの目標ビット量を更新する。
上述したように、直前のＧＯＰのビット残量ΔＲが正または０のとき、式（６）に基づき、次のＧＯＰの目標ビット量が算出される。
【００７７】
ステップ２３において、制御回路１０により画像符号化処理が終了するか否かの判断が行われ、符号化処理が継続する場合にステップ１４の処理に戻り、次のＧＯＰにおける符号化処理が行われる。
【００７８】
このように、画像符号化装置１においては、ステップＳ１４からＳ２３までの各処理が繰り返して行われるので、符号化対象のディジタル画像データＳ３０についてＧＯＰ毎に符号化処理が行われる。
【００７９】
上述した処理は、ＧＯＰ単位に限定されることなく、他の画像処理単位、たとえば、ピクチャ単位で符号化処理を行うことも可能である。
また、符号化処理におけるそれぞれのステップは、別の順序でも実現可能であり、さらに、必要に応じて、他の処理ステップを追加することもできる。たとえば、処理開始直後の数ピクチャまたは数ＧＯＰにおいて、まず最大ＣＢＲ制御部２３Ａ、最小ＣＢＲ制御部２３Ｂにより目標ビットレートＢＲobjに応じて設定された固定符号化レートで入力画像信号を符号化処理し、これらのピクチャまたはＧＯＰにおける処理結果に応じて、符号化処理のパラメータを設定し、その後可変符号化レートによる符号化処理に移行することも可能である。
【００８０】
符号化対象の入力画像信号の符号化難易度が変化した場合の画像符号化処理について説明する。
まず、符号化処理開始後しばらくの間の入力画像は、ステップ１２において算出した量子化レート１３と１８を用いて符号化処理を行う場合、最大ビットレートＢＲmax以下のビット量となる程度の符号化難易度を有するものとする。
符号化処理において、最大ＣＢＲ制御部２３Ａにおいて、たとえば、ＭＢ（マクロブロック）毎の発生ビット量が集計され、ピクチャ毎に目標ビット量Ｒから集計された発生ビット量を減算して、ビット残量ΔＲが算出される。なお、いくつかのブロックで共通して用いるのであれば、別のブロックで集計し、集計した結果をもらってもよい。
そして、最大ＣＢＲ制御部２３Ａ、最小ＣＢＲ制御部２３Ｂにより、目標ビット量を引くことにより求められたビット残量ΔＲが０に近づくようにＣＢＲ量子化スケールが求められる。
ＣＢＲ量子化スケールが下げられた結果、量子化スケール比較部２５において図１１の判断処理に従って決定された量子化スケールＱＳＣが画像圧縮符号化部２４の符号化制御部２１２に提供されるので、次のＧＯＰ量子化処理の終わりで、たとえば、大きなビット残量ΔＲが残されることもある。
【００８１】
本実施形態では、当該ビット残量ΔＲが正であるため、ビット残量によるフィードバック処理をせず、式（６）に示すように、最大ビットレートＢＲmaxに基づき次のＧＯＰの目標ビット量Ｒが求められる。
一方、ＶＢＲ制御部２２において、ＭＢ毎に発生するビット量が式（３）に基づいて算出されたＧＯＰのビット残量ＲＢＧより引かれる。これに応じて、次のＧＯＰにおけるＶＢＲ量子化スケールＶＢＲｑは式（２）により求められる。このように、ＧＯＰ毎にＶＢＲ量子化スケールは変化していき、発生ビット量が目標ビット量から大きい逸脱することが防止できる。
【００８２】
以上で求めたＶＢＲ量子化スケールでは、最大ビットレートＢＲmaxを越えてしまうような符号化難易度の高い画像データが入力されたとする。この場合、最大ＣＢＲ制御部２３Ａの最大量子化スケールＣＢＲmax ｑは１ピクチャの間にどんどん大きくなり、ＶＢＲ量子化スケールＶＢＲｑを越えるので、量子化スケール比較部２５において、図１１に図解した処理によって、大きいほうのＶＢＲｑが選択されて、量子化スケールＱＳＣとして画像圧縮符号化部２４に提供される。
【００８３】
上述したように、一度の符号化処理で可変ビットレートで入力画像を符号化処理する場合、急激に画像の符号化難易度が上がったときに最大ビットレートを越えない保証をしなければならない。
難しい画像から易しい画像に急激に変化した場合も、最小ビットレートを下回らないことが望ましい。
本実施の形態においては、画像符号化装置に通常備えているＣＢＲ制御部を、最大ＣＢＲ制御部２３Ａ、最小ＣＢＲ制御部２３Ｂに流用することによって、画像符号化装置の構成を大きく変えることなくＶＢＲレート制御を実現可能となる。
さらに、本実施形態のように最大ＣＢＲ制御部２３Ａ、最小ＣＢＲ制御部２３Ｂを使用しない場合には、ＶＢＶバッファがアンダーフローしそうになるので、画像圧縮符号化部２４によるＤＣＴ係数のカットが行われると、画質の劣化を生ずるので、本実施形態によればこれを改善できることが期待される。
【００８４】
符号化終了時にＶＢＲバッファ値ＶＢＲｂはＶＢＲバッファ記録部２１に出力され、ＶＢＲバッファ記録部２１により保持される。そして、次の符号化開始時にはこの保持された値がＶＢＲバッファ値ＶＢＲｂの初期値となるので、ＶＢＲバッファ値ＶＢＲｂは、前回の符号化処理の終了時の値となる。
【００８５】
図１３は、本実施形態の画像符号化装置１における画像符号化処理の量子化スケールを示す図である。複雑な画像が入力された場合、符号化ビットレートが所定の画像符号化規格によって定められた最大ビットレートを越えそうなとき、最大ＣＢＲ制御部２３ＡにおけるＣＢＲ制御が機能しはじめ、符号化レートが最大ビットレートを越えないように制御される。
易しい画像の場合は最小ＣＢＲ制御部２３ＢのＣＢＲ制御機能による。
【００８６】
このような制御によって本発明の実施の形態の画像符号化装置１では、規格によって定められた最大符号化レートを守りつつ、画像の符号化難易度に応じて、かつ、画像の複雑さの急激な変化があっても、ビットレートを適切に制御することによって、画質をほぼ均一に保つことができる。
【００８７】
本発明の第１施形態の画像符号化装置１の特徴を纏めると下記になる。
（１）本発明の第１実施形態の画像符号化装置１は特に、Ｑスケールを操作することにより行なうＶＢＲレート制御において、最大ＣＢＲ制御部２３Ａと最小ＣＢＲ制御部２３Ｂとでビットレートの最大値と最小値の制限を加えることを特徴としている。ビットレートの最大値と最小値の制限は、固定ビットレート（ＣＢＲ）方式でレート制御を行い、それぞれのＱスケールを求め、量子化スケール比較部２５でＶＢＲのＱスケールと大小比較を行なうことで適切な１つを選択し、選択した量子化スケールＱＳＣを画像圧縮符号化部２４における符号化に用いる。
（２）ＣＢＲ方式でレート制御を行なう際に、たとえば、ＭＰＥＧ２規格のＴＭ５のステップ１などで一般的に用いられるＧＯＰ内の未符号化ピクチャに対して割り当てられるビット量Ｒに対して、更新計算で引かれる１ピクチャ毎のビット量は、通常のＣＢＲ方式で用いられる実際に発生したビット量ではなく、符号化前に計算されたターゲットビット量である。
（３）ＣＢＲ方式でレート制御を行なう際に、そのＱスケールを短い周期でＶＢＲのＱスケールに近い値に設定し直すことにより、ビットレートの最大値あるいは最小値の制限が必要になった場合に、ＣＢＲ方式のＱスケールがすみやかに選択されるようにしている。
【００８８】
以上述べたように、本発明の第１実施形態によれば、最大ビットレートの制限について、下記の効果を奏する。
（１）ＶＢＲ方式の最大ビットレートと最小ビットレートを制限することにより、符号化難易度の変化点での画質劣化およびビットレートが上がり過ぎたことをキャンセルするためにその後ビットレートを下げることによる画質劣化が抑えられる。
（２）実発生ビット量を用いてＧＯＰ残りビット量を求めることによりＧＯＰの後ろになるほど最大ビットレートの制限が正しく働かず、ＧＯＰの後半でＰ，Ｂピクチャの発生ビット量が多くなり、ＴＭ５ステップ１で用いる画面の複雑さを示すパラメータ（global complexity measure）のＩ，Ｐ，Ｂピクチャ間の比率が崩れ、次のＧＯＰにおいてＩピクチャの最大ビットレートを制限するための目標ビット量が小さく抑えられることによりＩピクチャの画質が劣化する問題を防ぐことができる。
また本発明の第１実施の形態によれば、最小ビットレートの制限について、逆に同様の効果を奏する。
（３）最小ビットレートを制限するためのＱスケールを求める仮想バッファが無制限に増加することがなくなり、符号化難易度が難しい画像から易しい画像に変化した時にＱスケールが速やかに下がることが可能となり、この間の画質劣化を防ぐことができる。
【００８９】
以上説明したように、本発明の第１実施形態の画像符号化装置及びその方法によれば、一度の符号化処理により可変符号化レートによる画像信号の圧縮符号化処理を実現できる。
さらに、一般的な符号化処理回路を活用することにより、回路構成を大きく変更することなく、実時間での符号化処理が要求される用途において可変符号化レート処理を実現できるという利点がある。
【００９０】
第２実施の形態
図１５〜図１８を参照して、本発明の第２実施の形態の画像符号化装置および画像符号化方法について述べる。
図１５に図解したエンコーダ２０Ａは、第１ＶＢＲバッファ記録部２１−１、第１ＶＢＲ制御部２２−１、第２ＶＢＲバッファ記録部２１−２、第２ＶＢＲ制御部２２−２、最大ＣＢＲ制御部２３Ａ、最小ＣＢＲ制御部２３Ｂ、画像圧縮符号化部２４、第１量子化（Ｑ）スケール比較部２５Ａおよび第２量子化（Ｑ）スケール比較部２５Ｂを有する。
本発明の第２実施の形態の画像符号化装置におけるエンコーダ２０Ａと図６に図解した第１実施の形態のエンコーダ２０、および、第２実施の形態の制御回路１０Ａと第１実施の形態の制御回路１０との相違を下記に述べる。
【００９１】
（１）エンコーダ２０Ａ
本発明の第１実施の形態も第２実施の形態も、図５に図解した可変符号化ビットレート（ＶＢＲ）制御回路２２ａとしては基本的には同じであるが、図６を参照して述べた第１実施の形態におけるＶＢＲバッファ記録部２１およびＶＢＲ制御部２２を、第２実施の形態においては、図１５に図解のように、第１ＶＢＲバッファ記録部２１−１および第１ＶＢＲ制御部２２−１、および、第２ＶＢＲバッファ記録部２１−２および第２ＶＢＲ制御部２２−２に２系統並列に設けた。
（２）制御回路１０Ａ
図１５に図解した制御回路１０Ａは、第１ＶＢＲ制御部２２−１に第１目標ビットレートＢＲobj １と第１ＶＢＲ応答速度ＶＢＲｒ１を印加し、第１ＶＢＲバッファ記録部２１−１に第１ＶＢＲバッファ初期値ＢＲINI １を印加する。同様に、制御回路１０Ａは、第２ＶＢＲ制御部２２−２に第２目標ビットレートＢＲobj ２と第２ＶＢＲ応答速度ＶＢＲｒ２を印加し、第２ＶＢＲバッファ記録部２１−２に第２ＶＢＲバッファ初期値ＢＲINI２を印加する。
（３）第１ＶＢＲ制御部２２−１および第２ＶＢＲ制御部２２−２からそれぞれ、第１および第２可変ビットレート（ＶＢＲ）量子化スケールＶＢＲq １、ＶＢＲq ２が出力される。
（４）図５に図解した量子化スケール選択回路２５ａとして、図６を参照して述べた第１実施の形態においては量子化（Ｑ）スケール比較部２５としていたが、第２実施の形態においては、図６を参照して述べた量子化（Ｑ）スケール比較部２５に相当する第１量子化（Ｑ）スケール比較部２５Ａに加えて、第２量子化（Ｑ）スケール比較部２５Ｂを設けている。第１および第２量子化（Ｑ）スケール比較部２５Ａ、２５Ｂの処理内容を、図１６のフローチャートに示す。第２量子化（Ｑ）スケール比較部２５Ｂは、第１ＶＢＲ制御部２２−１から出力される第１可変ビットレート量子化スケールＶＢＲq １と、第２ＶＢＲ制御部２２−２から出力される第２可変ビットレート量子化スケールＶＢＲq ２とを、量子化しきい値Ｑthを参照して、最終的な可変ビットレート量子化スケールＶＢＲq を選択する。第１量子化（Ｑ）スケール比較部２５Ａは、図１１に図解した量子化（Ｑ）スケール比較部２５の処理と同じ量子化スケールＱＳＣの選択処理を行う。
【００９２】
第２実施の形態の画像符号化装置におけるその他の構成、動作は、第１実施の形態と同様である。参考までに記載する。
（１）画像符号化装置
本発明の第２実施の形態の画像符号化装置の構成は、図４に図解にした画像符号化装置と同じである。本発明の第２実施形態の画像符号化装置１は、図４に図解した制御回路１０に代えて上述した制御回路１０Ａ、図４に図解したエンコーダ２０に代えて上述したエンコーダ２０Ａおよび画像入力装置３０を含む。画像入力装置３０は同じである。なお、制御回路１０Ａ、エンコーダ２０Ａの基本構成とその動作は、第１実施の形態として述べた制御回路１０およびエンコーダ２０と同じである。
【００９３】
（２）エンコーダ
本発明の第２実施の形態のエンコーダ２０Ａの基本構成も、図５に図解したエンコーダ２０と同じである。エンコーダ２０Ａは、可変符号化ビットレート（ＶＢＲ）制御回路２２ａ、固定符号化ビットレート（ＣＢＲ）制御回路２３ａ、量子化（Ｑ）スケール選択回路２５ａ、および、画像圧縮符号化部２４を有する。
【００９４】
ＣＢＲ制御回路２３ａは、第２実施の形態においても第１実施の形態と同様、第１画像処理単位、たとえば、ＧＯＰ単位より短い第２画像処理単位、たとえば、ピクチャまたはマクロ・ブロック（ＭＢ）単位で、ビットストリームの先頭のシーケンスヘッダによって指定した最大のビットレートに対して当該最大のビットレートを越えないように迅速に変化する第２および第３量子化スケールＱＳ２、ＱＳ３を設定する第２および第３量子化スケール設定手段である。
そのため、固定ビットレート制御回路２３ａは、図１５に図解したように、最大固定ビットレート（ＣＢＲ）制御部２３Ａと最小ＣＢＲ制御部２３Ｂとを有する。図１５に図解したＣＢＲ制御回路２３ａの構成は、図６を参照して述べた第１実施の形態におけるＣＢＲ制御回路２３ａと同じである。最大ＣＢＲ制御部２３Ａおよび最小ＣＢＲ制御部２３Ｂの構成と、画像圧縮符号化部２４との関係も図８を参照して述べたものと同様である。
【００９５】
第２実施の形態においては、可変符号化ビットレート（ＶＢＲ）制御回路２２ａは、第１ＶＢＲ制御部２２−１および第１ＶＢＲバッファ記録部２１−１、ならびに、第２ＶＢＲ制御部２２−２および第２ＶＢＲバッファ記録部２１−２とで２系統並列動作するように構成されている。
第１ＶＢＲ制御部２２−１および第２ＶＢＲ制御部２２−２の基本動作は、第１実施の形態のＶＢＲ制御部２２と同様である。すなわち、第１ＶＢＲ制御部２２−１および第２ＶＢＲ制御部２２−２は、第１画像処理単位、たとえば、複数のピクチャからなるＧＯＰ単位で画像符号化を行うための第１量子化スケール（第１Ｑスケール）として第１可変ビットレート量子化スケールＶＢＲq １と第２可変ビットレート量子化スケールＶＢＲq ２とを設定する第１量子化スケール設定手段であり、第１目標ビットレートＢＲobj １と第２目標ビットレートＢＲobj ２に対して、第１画像処理単位で画像入力装置３０からの符号化対象の入力画像信号（画像データＳ３０）の符号化の難易度に応じて、図１６にフローチャートを示した方法で、第１量子化スケールＱＳ１（可変ビットレート量子化スケールＶＢＲq ）を設定する。
【００９６】
量子化スケール選択回路２５ａは、第２実施の形態においても第１実施の形態と同様、と図５のＶＢＲ制御回路２２ａによって設定された第１量子化スケールＱＳ１とＣＢＲ制御回路２３ａによって設定された第２および第３量子化スケールＱＳ２、ＱＳ３とを比較し、これらの量子化スケールのうち適切なＱスケールを符号化対象の入力画像信号（画像データＳ３０）に対して符号化処理を行うための量子化スケールＱＳＣとして、画像圧縮符号化部２４に出力する。
【００９７】
画像圧縮符号化部２４は、第２実施の形態においても第１実施の形態と同様、図７に図解した構成を持ち、符号化対象の画像データＳ３０を、第１量子化（Ｑ）スケール比較部２５Ａおよび第２量子化（Ｑ）スケール比較部２５Ｂからなる量子化スケール選択回路２５ａからの量子化スケールＱＳＣおよび制御回路１０Ａからの圧縮符号化パラメータＳ１２に基づいて符号化する。
画像圧縮符号化部２４は、目標ビットレートＢＲobj、最大ビットレートＢＲmax、ＶＢＲ指示信号ＶＢＤ、および、第１量子化（Ｑ）スケール比較部２５Ａから提供される量子化スケールＱＳＣに応じて、画像入力装置３０から入力される符号化対象の画像データＳ３０を圧縮符号化し、ビットストリームＳ２０を出力する。
さらに画像圧縮符号化部２４は、圧縮符号化により生成したビット量を示す発生ビット量ＢＱＴおよび画像符号化種類を示すＰＣＴ信号を生成し、図１５に図解したように、ＶＢＲ制御部２２、および、最大ＣＢＲ制御部２３Ａ、最小ＣＢＲ制御部２３Ｂにそれぞれ出力する。
画像圧縮符号化部２４は、図７に図解した構成を有し、その動作は第１実施の形態と同じである。第２実施の形態においても、画像圧縮符号部２４によって、一回だけの符号化処理、すなわち、１パス処理により、可変符号化レートで画像信号の符号化を実現できる。
【００９８】
ＶＢＲバッファ記録部
第１ＶＢＲバッファ記録部２１−１および第２ＶＢＲバッファ記録部２１−２の動作は、第１実施の形態のＶＢＲバッファ記録部２１と同様である。
第１ＶＢＲバッファ記録部２１−１および第２ＶＢＲバッファ記録部２１−２も、第１実施の形態のＶＢＲバッファ記録部２１と同様、それぞれ、第１ＶＢＲ制御部２２−１および第２ＶＢＲ制御部２２−２から出力される第１ＶＢＲバッファ値ＶＢＲｂ１および第２ＶＢＲバッファ値ＶＢＲｂ２を保持して、上述した画像圧縮符号化部２４における一連の符号化処理におけるトータルの値が、それぞれ、第１目標ビットレートＢＲobj １および第２目標ビットレートＢＲobj ２からの逸脱量を小さくするために設けられている。
符号化処理開始前、第１ＶＢＲバッファ記録部２１−１および第２ＶＢＲバッファ記録部２１−２は、制御回路１０Ａから入力された第１ＶＢＲバッファ初期値ＢＲINI １および第２ＶＢＲバッファ初期値ＢＲINI ２を記憶する。もっとも簡単な初期化方法として、処理開始前に、制御回路１０Ａからの初期化制御信号に応じて第１ＶＢＲバッファ記録部２１−１と第２ＶＢＲバッファ記録部２１−２とを初期化し、第１ＶＢＲバッファ初期値ＢＲINI １と第２ＶＢＲバッファ初期値ＢＲINI ２とを“０”に設定するか、または、予め与えられた値に設定する。
第１ＶＢＲバッファ記録部２１−１および第２ＶＢＲバッファ記録部２１−２は、エンコーダ２０Ａにおいて圧縮符号化を開始したあと第１ＶＢＲ制御部２２−１および第２ＶＢＲ制御部２２−２に記録した第１ＶＢＲバッファ初期値ＢＲINI １および第２ＶＢＲバッファ初期値ＢＲINI ２を提供し、また、エンコーダ２０Ａにおける符号化終了時に第１ＶＢＲ制御部２２−１および第２ＶＢＲ制御部２２−２から第１ＶＢＲバッファ値ＶＢＲｂ１および第２ＶＢＲバッファ値ＶＢＲｂ２を入力して記録する。第１ＶＢＲバッファ記録部２１−１および第２ＶＢＲバッファ記録部２１−２は次回の符号化処理において、記録した第１ＶＢＲバッファ値ＶＢＲｂ１および第２ＶＢＲバッファ値ＶＢＲｂ２を第１ＶＢＲ制御部２２−１および第２ＶＢＲ制御部２２−２に出力する。
【００９９】
ＶＢＲ制御部
第１ＶＢＲ制御部２２−１および第２ＶＢＲ制御部２２−２の動作は、第１実施の形態のＶＢＲ制御部２２と同様である。
以下、第１ＶＢＲ制御部２２−１について述べる。第２ＶＢＲ制御部２２−２も、第１目標ビットレートＢＲobj １を第２目標ビットレートＢＲobj ２、第１ＶＢＲバッファ値ＶＢＲｂ１を第２ＶＢＲバッファ値ＶＢＲｂ２、第１ＶＢＲ量子化スケールＶＢＲq １を第２ＶＢＲ量子化スケールＶＢＲq ２に置き換えるだけで、基本的には、第１ＶＢＲ制御部２２−１の処理と同様である。
【０１００】
第１ＶＢＲ制御部２２−１は、制御回路１０Ａから入力された第１ＶＢＲ応答速度ＶＢＲｒ１、第１目標ビットレートＢＲobj １、最大ビットレートＢＲmax、最小ビットレートＢＲminに応じて第１可変ビットレート（ＶＢＲ）量子化スケールＶＢＲq １を求めて第２量子化（Ｑ）スケール比較部２５Ｂに出力する。第１ＶＢＲ制御部２２−１は、第１目標ビットレートＢＲobj １から求められる１ＧＯＰの目標発生ビット量に対し、実際にそのＧＯＰで発生したビット量を比較し、第１目標ビットレートＢＲobj １よりビット量が発生しすぎていればＱスケールを徐々に大きくして発生ビット量を徐々に抑え、逆に第１目標ビットレートＢＲobj １よりビット量の発生が足りなければＱスケールを徐々に小さくして発生するビット量を徐々に増加させる。これにより、Ｑスケールを余りレスポンスよく変動させないことから符号化難易度に応じた発生ビット量となるＶＢＲレート制御となり、かつ、Ｑスケールを発生ビット量に応じて徐々に変動させることで、長期的には目標ビットレートＢＲOBJに応じた発生ビット量となる。
第１ＶＢＲ制御部２２−１において、内部パラメータとして、第１ＶＢＲ量子化スケールＶＢＲq １を求めるための第１ＶＢＲバッファ値ＶＢＲｂ１、第１目標ビットレートＢＲobj １で符号化する場合のＧＯＰにおける第１残りビット量ＲＢＧ１、第１ＶＢＲ量子化スケールＶＢＲq １の応答速度を表す第１ＶＢＲ応答速度ＶＢＲｒ１を保持している。
【０１０１】
第１ＶＢＲ制御部２２−１において第１ＶＢＲ量子化スケールＶＢＲq １は式（１）と同様に、下記式（１ａ）を用いて求める。
ＶＢＲｑ１＝ＶＢＲｂ１／（２n ×ＶＢＲｒ１）                …（１ａ）
【０１０２】
第１ＶＢＲ量子化スケールＶＢＲq １が１になると、発生するビット量が急激に増加してＶＢＲレート制御が不安定になるため、式（１ａ）により算出した第１ＶＢＲ量子化スケールＶＢＲq １が１以下のとき、第１ＶＢＲ制御部２２−１において第１ＶＢＲ量子化スケールＶＢＲq １を強制的に２に変更するなどの対策を講じる。
ＧＯＰにおけるＩ／Ｐ／Ｂピクチャの違いに着目して、第１ＶＢＲ制御部２２−１は、符号化タイプがＢピクチャの場合に式（１ａ）により得られた値に係数、たとえば、１．４をかけた値を第１ＶＢＲ量子化スケールＶＢＲq １とする。すなわち、Ｂピクチャの場合の第１ＶＢＲ量子化スケールＶＢＲq １を常にＩ，Ｐピクチャの第１ＶＢＲ量子化スケールＶＢＲq １の１．４倍に設定される。その理由は、第１実施の形態においても述べたように、ＢピクチャをＩ，Ｐピクチャに比較して多少粗めに符号化することにより、Ｂピクチャで節約できる符号化量をＩ，Ｐピクチャに符号量に振り分けると、Ｉ，ＰピクチャのＳ／Ｎが改善されるとともに、これを参照して生成されるＢピクチャのＳ／Ｎも改善されることになり、総合的にＳ／Ｎの改善を図ることができるからである。
第１ＶＢＲバッファ記録部２１−１において、Ｉ／Ｐ／ＢピクチャのＱスケールが上述したように簡単な方法で決定されるが、上述した例示に限定されず、それぞれのピクチャの符号化難易度を調べてそれに応じたＱスケールの差を付けることもできる。
【０１０３】
第１ＶＢＲバッファ記録部２１−１において、ＧＯＰでの残りビット量ＲＢＧとしてＧＯＰ毎に目標ビット量が設定される。そして、第１ＶＢＲバッファ記録部２１−１において、たとえば、ＭＢ（マクロブロック）毎に発生ビット量を受け取ると、ここからその分（ＧＯＰ毎に目標ビット量）を引く。各ＧＯＰの終わりには目標ビット量からの逸脱量がＧＯＰでの残りビット量ＲＢＧに残るので、第１ＶＢＲバッファ記録部２１−１はこれ（残りビット量ＲＢＧ）を第１ＶＢＲバッファ値ＶＢＲｂ１から引く。この時、第１ＶＢＲバッファ値ＶＢＲｂ１が負になると第１ＶＢＲ制御部２２−１は第１ＶＢＲバッファ値ＶＢＲｂ１を０に設定する。また、第１ＶＢＲバッファ値ＶＢＲｂ１がオーバーフローしそうな場合には第１ＶＢＲ制御部２２−１は第１ＶＢＲバッファ値ＶＢＲｂ１を最大値に固定する。
【０１０４】
符号化処理開始時の第１ＶＢＲバッファ値ＶＢＲｂ１の初期値は、第１ＶＢＲバッファ記録部２１−１から第１ＶＢＲ制御部２２−１に入力される。たとえば、第１ＶＢＲバッファ記録部２１−１から入力された第１ＶＢＲバッファ値ＶＢＲｂ１が０以外の場合、第１ＶＢＲ制御部２２−１はその値を使用し、０の場合、式（２）と同様の下記の式（２ａ）により求めた値を用いる。
ＶＢＲｂ１＝ｍ・ＶＢＲｒ１／（ＢＲobj１×２k）            …（２ａ）
【０１０５】
式（２ａ）における第１ＶＢＲ応答速度ＶＢＲｒ１は制御回路１０Ａにより供給される値を使用する。たとえば、第１ＶＢＲ応答速度ＶＢＲｒ１が２００程度の値に設定されるとき数十秒、４０００程度の値に設定されるとき数十分の応答速度が得られる。符号化終了時に式（２ａ）により算出された第１ＶＢＲバッファ値ＶＢＲｂ１は、第１ＶＢＲバッファ記録部２１−１に伝送されて記憶される。
【０１０６】
ＧＯＰでの第１残りビット量ＲＢＧ１には、最初に式（３）と同様の下記式（３ａ）で求められる値が設定される。
ＲＢＧ１＝ＢＲobj１・Ｎ／ＰＣＲ                              …（３ａ）
【０１０７】
第２ＶＢＲ制御部２２−２も第１ＶＢＲ制御部２２−１と同様な動作（処理）を、第１ＶＢＲ制御部２２−１と並列に行う。
第２ＶＢＲ制御部２２−２によっても、Ｑスケールを余りレスポンスよく変動させないことから符号化難易度に応じた発生ビット量となるＶＢＲレート制御となり、かつ、Ｑスケールを発生ビット量に応じて徐々に変動させることで、長期的には第２目標ビットレートＢＲobj ２に応じた発生ビット量となる。
【０１０８】
ＣＢＲ制御部
第２実施の形態のＣＢＲ制御部は、最大ＣＢＲ制御部２３Ａと最小ＣＢＲ制御部２３Ｂとを有し、図８を参照した述べた第１実施の形態と同じである。
最大ＣＢＲ制御部２３Ａおよび最小ＣＢＲ制御部２３Ｂにおいて、第２実施の形態においても第１実施の形態と同様、たとえば、ＭＰＥＧ２についてのＴＭ５のアルゴリズムに基づいてＣＢＲのレート制御を行う。
第２実施の形態の最大ＣＢＲ制御部２３Ａおよび最小ＣＢＲ制御部２３Ｂによって、図１０（Ｂ）、（Ｃ）に点線の曲線ＣＶ２２、ＣＶ２３で示すように、ビットレートに応じた１ＧＯＰの目標ビット量ＲがＧＯＰ残りビット量に設定され、ここから求められる毎フレームの目標ビット量Ｒにより符号化が制御され、目標ビットレートＢＲOBJに応じたビット量が毎フレーム発生し、毎フレームの目標ビット量がＧＯＰ残りビット量から引かれることにより、ＧＯＰの最後にはＧＯＰ残りビット量がゼロに近い値になる。
【０１０９】
第２実施の形態においても第１実施の形態と同様、最大ＣＢＲ制御部２３Ａは、制御回路１０Ａから入力された最大ビットレートＢＲmaxに応じて最大ＣＢＲ量子化スケールＣＢＲmaxｑを設定し、設定したＣＢＲmaxｑを第１量子化（Ｑ）スケール比較部２５Ａに出力する。
第２実施の形態においても、式（４）〜（６）に相当する演算のもとで処理が行われる。
最大ＣＢＲ制御部２３Ａおよび最小ＣＢＲ制御部２３Ｂは、上述したように算出されたＧＯＰの目標ビット量に基づき、最大ＣＢＲ量子化スケールＣＢＲmaxｑ、最小ＣＢＲ量子化スケールＣＢＲminｑを求めて、第１量子化（Ｑ）スケール比較部２５Ａに供給する。
【０１１０】
量子化スケール比較部
第２実施の形態における第１量子化（Ｑ）スケール比較部２５Ａと第２量子化（Ｑ）スケール比較部２５Ｂとの処理を図１６にフローチャートで示した。
なお、制御回路１０Ａから第１ＶＢＲ制御部２２−１と第２ＶＢＲ制御部２２−２に設定した第１目標ビットレートＢＲobj １と第２目標ビットレートＢＲobj ２とは、第２目標ビットレートＢＲobj ２が第１目標ビットレートＢＲobj １より大きいとしている（ＢＲobj ２＞ＢＲobj １）。
第２量子化（Ｑ）スケール比較部２５Ｂにおいて、第１ＶＢＲ量子化スケールＶＢＲq
１と量子化しきい値Ｑthとの大小比較を行い、小さいほうを選択する（ステップ１１）。ついで、第２量子化（Ｑ）スケール比較部２５Ｂは選択されたものと第２ＶＢＲ量子化スケールＶＢＲq ２とを比較して大きいほうをＶＢＲ量子化スケールＶＢＲq として第１量子化（Ｑ）スケール比較部２５Ａに出力する。
以上のように、ＶＢＲ量子化スケールＶＢＲq が決定されると、第１量子化（Ｑ）スケール比較部２５Ａは、図１１を参照して述べたと同様に、ステップ１においてＶＢＲ量子化スケールＶＢＲq と最小ＣＢＲ制御部２３Ｂから入力された最小ＣＢＲ量子化スケールＣＢＲminｑとを比較して小さいほうを選択し、ステップ２において、選択した量子化スケールと最大ＣＢＲ制御部２３Ａから入力された最大ＣＢＲ量子化スケールＣＢＲmaxｑとを比較して大きいほうを選択して、選択したスケールを量子化スケールＱＳＣとして算出し、画像圧縮符号化部２４に提供する。
【０１１１】
上記第１Ｑスケール比較部２５Ａにおける処理は、図１１のフローチャートを参照して述べたものと同じである。ステップ１においてＶＢＲq とＣＢＲminqを比較して小さい方を選ぶことによりＱスケールが大き過ぎてビットレートが下がり過ぎないように、Ｑスケールの最大値が制限される。次に、ステップ２において、上記比較結果とＣＢＲmaxqを比較して大きい方を選で、Ｑスケールが小さ過ぎてビットレートが上がり過ぎないようにＱスケールの最小値が制限される。第１Ｑスケール比較部２５Ａのその他の処理などは第１実施の形態において述べたものと同様である。
【０１１２】
第２Ｑスケール比較部２５Ｂにおいて、第１ＶＢＲ量子化スケールＶＢＲq １と第２ＶＢＲ量子化スケールＶＢＲq ２とからＶＢＲ量子化スケールＶＢＲq を選択する意味を述べる。
制御回路１０Ａは、たとえば、図１８（Ｂ）に例示したように、低いビットレートＢＲを第１目標ビットレートＢＲobj １として第１ＶＢＲ制御部２２−１に設定し、高いビットレートＢＲを第２目標ビットレートＢＲobj ２として第２ＶＢＲ制御部２２−２に設定する。
【０１１３】
図１７は、第１領域Ｚ１１は符号化対象の画像データＳ３０として易しい画像が入力され、第３領域Ｚ１３は難しい画像が入力され、第５領域は易しい画像が入力され、第１領域と第３領域との間に易しい画像が難しい画像に遷移する第１遷移領域Ｚ１２、第３領域と第５領域との間に難しいが易しい画像に遷移する第４遷移領域Ｚ１４が存在する場合を示す。
曲線ＶＢＲq １は第１ＶＢＲ量子化スケールＶＢＲq １で符号化対象の画像データＳ３０を符号化した場合を想定した量子化スケールＱ（ＢＲ）、曲線ＶＢＲq ２は第２ＶＢＲ量子化スケールＶＢＲq で符号化した場合を想定した量子化スケールＱ（ＢＲ）、Ｑthは固定の量子化しきい値Ｑthで符号化したときの量子化スケールＱ（ＢＲ）を示す。実線のＶＢＲq は、第１量子化（Ｑ）スケール比較部２５Ａおよび第２量子化（Ｑ）スケール比較部２５Ｂによって選択された量子化スケールＱＳＣによる符号化処理を想定した場合の量子化スケールＱ（ＢＲ）を示す。
【０１１４】
第１領域Ｚ１１においては、易しい画像であるので、第１目標ビットレートＢＲobj １（なお、ＢＲobj ２＞ＢＲobj １）に基づいてビットレート制御され、第１ＶＢＲ量子化スケールＶＢＲq １が量子化しきい値Ｑthより小さく、第２Ｑスケール比較部２５Ｂにおいて第１ＶＢＲ量子化スケールＶＢＲq １が選択されて、画像圧縮符号化部２４においてＶＢＲq １に基づいて、低いビットレートＢＲ（高いＱスケール）で符号化処理が行われる。
画像が難しくなっていき、第１遷移時点ＴＰ１に到達すると、ＶＢＲq １が量子化しきい値Ｑthより大きくなり、Ｑスケール比較部２５ＢにおいてＱthが選択されて、画像圧縮符号化部２４においてＱthに基づいて固定のビットレートＢＲ（固定のＱスケール）で符号化処理が行われる。
第２遷移時点ＴＰ２を越えた第３領域Ｚ１３においては、難しい画像であるので、第２目標ビットレートＢＲobj ２に基づいてビットレート制御され、第２ＶＢＲ量子化スケールＶＢＲq ２が量子化しきい値Ｑthより大きく、かつ、第１ＶＢＲ量子化スケールＶＢＲq １より小さく、第２Ｑスケール比較部２５ＢにおいてＶＢＲq ２が選択されて、画像圧縮符号化部２４においてＶＢＲq ２に基づいて、より高いビットレートＢＲ（より低いＱスケール）で符号化処理が行われる。
第３遷移時点ＴＰ３を越えて画像が易しくなっていく第４遷移時点Ｚ１４においては、ＶＢＲq ２が量子化しきい値Ｑthより小さくなり、Ｑスケール比較部２５ＢにおいてＱthが選択されて、画像圧縮符号化部２４においてＱthに基づいて固定のビットレートＢＲ（固定のＱスケール）で符号化処理が行われる。
さらに第４遷移時点ＴＰ４を越えて画像が一層易しくなっていく第５遷移時点Ｚ１５においては、第１領域Ｚ１１における処理と同様、ＶＢＲq １がＱthより小さくなり、Ｑスケール比較部２５ＢにおいてＶＢＲq １が選択されて、画像圧縮符号化部２４においてＶＢＲq １に基づいて、低いビットレートＢＲ（高いＱスケール）で符号化処理が行われる。
【０１１５】
図１８（Ａ）は第１実施の形態による例示的な画像の複雑さとビットレートＢＲの変化を示した図であり、図１８（Ｂ）は上記第２実施の形態による例示的な画像の複雑さとビットレートＢＲの変化を示した図である。
第１実施の形態においては目標ビットレートＢＲobjが１つであり、図１８（Ａ）に例示したビットレートＢＲは、画像の符号化の難易度に関わらず、同じビットレートＢＲに収束している。
第２実施の形態においては、第１目標ビットレートＢＲobj １と第２目標ビットレートＢＲobj ２とを設けており、図１８（Ｂ）に例示したビットレートＢＲは、（１）符号化が易しい画像ではビットレートＢＲが低くなり、たとえば、符号化データを記録媒体に記録することを想定すると、記録媒体への記録時間を、高いビットレートのみに比較して、長くできるという利点がある。他方、難しい画像ではビットレートが高くなり、低いビットレートのみに比較して画質の劣化を抑えることができる。
このように、第２実施の形態によれば、第１実施の形態の特徴および効果（利点）に加えて、画像の符号化の難易度に応じて、符号化データの量を削減（に基づく、たとえば、記録時間の延長）でき、または、所定の符号化画質に維持することができるという効果を奏することができる。
【０１１６】
第２実施の形態の変形態様
目標ビットレートＢＲobjの種類は上述した２つに限らない。
たとえば、図１９に例示したように、可変符号化ビットレート（ＶＢＲ）制御回路２２ａをｎ個並列に配設することができる。すなわち、第１ＶＢＲバッファ記録部２１−１と第１ＶＢＲ制御部２２−１、第２ＶＢＲバッファ記録部２１−２と第２ＶＢＲ制御部２２−２、・・・、第ｎＶＢＲバッファ記録部２１−ｎと第ｎＶＢＲ制御部２２−ｎを設ける。制御回路１０Ｂは、第１ＶＢＲバッファ記録部２１−１〜第ｎＶＢＲバッファ記録部２１−ｎに、第１ＶＢＲバッファ初期値ＢＲINI １〜第ｎＶＢＲバッファ初期値ＢＲINI ｎを設定し、第１ＶＢＲ制御部２２−１〜第ｎＶＢＲ制御部２２−ｎに、第１目標ビットレートＢＲobj １〜第ｎ標ビットレートＢＲobj ｎ、第１ＶＢＲ応答速度ＶＢＲｒ１〜第ｎＶＢＲ応答速度ＶＢＲｒｎ、および、ＢＲmax とＢＲmin を設定する。
第１ＶＢＲバッファ記録部２１−１と第１ＶＢＲ制御部２２−１との間〜第ｎＶＢＲバッファ記録部２１−ｎと第ｎＶＢＲ制御部２２−ｎとの間にはそれぞれ第１ＶＢＲバッファ値ＶＢＲｂ１〜第ｎＶＢＲバッファ値ＶＢＲｂｎが授受される。
もちろん、制御回路１０Ｂからは、符号化画像の難易度に応じて適切に設定された、第１目標ビットレートＢＲobj １〜第ｎ標ビットレートＢＲobj ｎが第１ＶＢＲ制御部２２−１〜第ｎＶＢＲ制御部２２−ｎに設定される。その結果、第１ＶＢＲ制御部２２−１〜第ｎＶＢＲ制御部２２−ｎからは第１ＶＢＲ量子化スケールＶＢＲq １〜第ｎＶＢＲ量子化スケールＶＢＲq ｎが、第２Ｑスケール比較部２５Ｃに出力される。
【０１１７】
図２０は第２Ｑスケール比較部２５Ｃの処理の概要を示すフローチャートである。
第２Ｑスケール比較部２５Ｃは、複数の量子化しきい値Ｑth１〜Ｑthｎ-1を参照して、図１６を参照して述べたＱスケール比較部２５Ｂと同様の比較判断処理を行う。それにより、可変ビットレートとして適切な量子化スケールＶＢＲq が選択される。
第１Ｑスケール比較部２５Ａは、図１１および図１６に図解した方法と同様の比較判断処理を行う。
本実施の形態によるビットレートは、図１８（Ｂ）において、目標ビットレートＢＲobjを複数設けた場合になる。
【図面の簡単な説明】
【０１１８】
【図１】図１は固定ビットレート制御による画像符号化レートの一例を示す図である。
【図２】図２は可変ビットレート制御における画像の特性によって規格で定められた最大ビットレートを越えた場合を示す図である。
【図３】図３は量子化スケール制御結果を示す図である。
【図４】図４は本発明の実施形態に係る画像符号化装置の全体基本構成を示す図である。
【図５】図５は本実施形態におけるエンコーダの基本構成を示すブロック図である。
【図６】図６は図５に図解したエンコーダの第１実施形態としてのエンコーダの構成を示すブロック図である。
【図７】図７は図６に図解したエンコーダ内の画像圧縮符号化部の一構成例を示すブロック図である。
【図８】図８は図６に図解したエンコーダ内の最大ＣＢＲ制御部および最小ＣＢＲ制御部の一構成例を示すブロック図である。
【図９】図９は特許文献１に記載されたＣＢＲ制御部の一構成例を示すブロック図である。
【図１０】図１０（Ａ）〜（Ｃ）は、細い破線の曲線ＣＶ２１，ＣＶ２２で示した図８に図解した最大ＣＢＲ制御部と最小ＣＢＲ制御部によるＣＢＲレート制御の状態と、太い実線の曲線ＣＶ１１〜ＣＶ１３で示した図９に図解したＣＢＲ制御部によるＣＢＲレート制御の状態とを図解した図である。
【図１１】図１１は図６に図解したエンコーダ内の量子化スケール比較部の処理を示すフローチャートである。
【図１２】図１２（Ａ）、（Ｂ）は本発明の第１実施の形態の画像符号化装置による量子化スケールの制御を示す図である。
【図１３】図１３は本発明の第１実施の形態の画像符号化装置によるＱスケールの制御結果例を示す図である。
【図１４】図１４は本発明の第１実施形態の画像符号化装置全体の動作を示すフローチャートである。
【図１５】図１５は図５に図解したエンコーダの第２実施形態としてのエンコーダの構成を示すブロック図である。
【図１６】図１６は図１５に図解したエンコーダ内の量子化スケール比較部の処理を示すフローチャートである。
【図１７】図１７は本発明の第２実施の形態の画像符号化装置による量子化（Ｑ）スケールの例示的な変化を示す図である。
【図１８】図１８（Ａ）、（Ｂ）は、本発明の第１および第２実施の形態の画像符号化装置による例示的なビットレートの変化を示す図である。
【図１９】図１９は図５に図解したエンコーダの第２実施形態の変形態様としてのエンコーダの構成を示すブロック図である。
【図２０】図２０は図１９に図解したエンコーダ内の量子化スケール比較部の一部の処理を示すフローチャートである。
【符号の説明】
【０１１９】
１…画像符号化装置
10…制御回路、20…エンコーダ（符号化装置）、30…画像入力装置
20…エンコーダ（符号化装置）
21…ＶＢＲバッファ記録部
22…ＶＢＲ制御部
23A …最大ＣＢＲ制御部
2311…ＧＯＰ割り当てビット量演算部
2312…ＧＯＰ残りビット量バッファ
2313…ＴＭ５ステップ１演算部
2314…ＴＭ５ステップ２演算部
23B …最小ＣＢＲ制御部
2321…ＧＯＰ割り当てビット量演算部
2322…ＧＯＰ残りビット量バッファ
2323…ＴＭ５ステップ１演算部
2324…ＴＭ５ステップ２演算部
24…圧縮符号化部
212 …符号化制御部
25…量子化スケール比較部
25A …第１Ｑスケール比較部
25B,25C …第２Ｑスケール比較部
【図１】
2006157853.tif 000003
【図２】
2006157853.tif 000004
【図３】
2006157853.tif 000005
【図４】
2006157853.tif 000006
【図５】
2006157853.tif 000007
【図６】
2006157853.tif 000008
【図７】
2006157853.tif 000009
【図８】
2006157853.tif 000010
【図９】
2006157853.tif 000011
【図１０】
2006157853.tif 000012
【図１１】
2006157853.tif 000013
【図１２】
2006157853.tif 000014
【図１３】
2006157853.tif 000015
【図１４】
2006157853.tif 000016
【図１５】
2006157853.tif 000017
【図１６】
2006157853.tif 000018
【図１７】
2006157853.tif 000019
【図１８】
2006157853.tif 000020
【図１９】
2006157853.tif 000021
【図２０】
2006157853.tif 000022