(57)【特許請求の範囲】
【請求項１】
複数のフレームからなる動画像データを符号化する画像符号化装置であって、
前記フレームを符号化する符号化部と、
前記符号化された符号化済みフレームの符号量と、前記符号化部による符号化途中である符号化中フレームに含まれる符号化済み領域の符号量とが格納される符号量記憶部と、
前記符号量記憶部に格納された、符号化済みフレームの符号量及び符号化中フレームの符号量に基づき、前記符号化中フレームに含まれる未符号化領域の符号量を推定する符号量推定部と、
前記推定された前記未符号化領域の符号量と、当該未符号化領域に割り当て可能な符号量とに基づいて、当該未符号化領域の符号量制御パラメタを決定する符号量制御部と、を備え、
前記符号化部は、前記符号化中フレームに含まれる未符号化領域を、前記決定された符号量制御パラメタに基づいて符号化するものであって、
前記符号量推定部は、前記符号化中フレームに時間的に近接する符号化済みフレームにおける、当該符号化中フレームに含まれる符号化済み領域及び未符号化領域のそれぞれに対応する領域の符号量である第１の符号量及び第２の符号量の比率に基づいて、当該符号化済み領域の符号量から当該未符号化領域の符号量を推定する、
画像符号化装置。
【請求項２】
前記画像符号化装置は、前記符号化されるフレームの特徴量を検出する特徴量検出部を備え、
前記符号量推定部は、さらに、前記検出された特徴量に基づき、前記未符号化領域の符号量を推定するものであって、
前記符号量推定部は、前記符号化済みフレームと前記符号化中フレームとの間に、所定の変化がある場合、前記符号化中フレームに含まれる符号化済み領域の特徴量と、前記符号化中フレームに含まれる未符号化領域の特徴量との比率に基づいて、当該符号化済み領域の符号量から当該未符号化領域の符号量を推定し、前記符号化済みフレームと前記符号化中フレームとの間に、前記所定の変化がない場合は、前記第１の符号量及び前記第２の符号量の比率に基づいて、前記符号化済み領域の符号量から前記未符号化領域の符号量を推定する、
請求項１に記載の画像符号化装置。
【請求項３】
前記画像符号化装置は、前記符号化中フレームの動き量を検出する動き量検出部を備え、
前記符号量推定部は、前記検出された前記符号化中フレームの動き量に基づいて、前記符号化中フレームに動きがあると判定した場合、前記符号化済み領域及び前記未符号化領域のそれぞれに対応する領域の位置を、当該符号化中フレームにおける動き量に応じて補正する、
請求項１又は２に記載の画像符号化装置。
【請求項４】
前記符号量推定部は、前記符号化中フレームの未符号化領域に動きがあると判定した場合、前記符号化済み領域及び前記未符号化領域のそれぞれに対応する領域の位置を、当該符号化中フレームの未符号化領域における動き量に応じて補正する、
請求項３に記載の画像符号化装置。
【請求項５】
前記符号量推定部は、前記符号化中フレームに動きがあると判定した場合、前記符号化済み領域の符号量と、当該符号化済み領域に対応する領域の符号量とのいずれか一方の領域の符号量を、他方の領域の面積と略同一面積当たりの符号量となるように補正する、もしくは、前記未符号化領域の符号量と、当該未符号化領域に対応する領域の符号量とのいずれか一方の領域の符号量を、他方の領域の面積と略同一面積当たりの符号量となるように補正し、
前記略同一面積は、前記他方の領域の面積との差が、前記他方の領域の面積の数パーセント以内となる面積である、
請求項３又は４に記載の画像符号化装置。
【請求項６】
前記画像符号化装置は、前記符号量記憶部に格納された符号量と、前記符号量推定部によって推定された符号量とに基づいて、仮想デコーダ・モデルにおけるバッファの占有量の推移を推定するバッファ占有量推定部を備え、
前記バッファ占有量推定部は、前記バッファの占有量の推移において、前記バッファから前記符号化中フレームを引き抜いたときのバッファの占有量を、当該符号化中フレームに含まれる符号化済み領域の符号量と、当該符号化済み領域の符号量から推定された未符号化領域の符号量とに基づいて算出した当該符号化中フレームの符号量によって推定し、
前記符号量制御部は、前記バッファ占有量推定部によって推定されたバッファの占有量の推移に基づいて、前記バッファが破綻しないように前記符号量制御パラメタを決定する、
請求項１乃至５のいずれか１項に記載の画像符号化装置。
【請求項７】
前記画像符号化装置は、前記フレームの符号化フォーマットとして、仮想デコーダ・モデルにおける前記フレームの初期遅延量を示し、かつ当該初期遅延量に応じたサイズとなる初期遅延量データを含むヘッダデータと、当該ヘッダデータに続いて当該フレームが符号化された符号化データと、を有するストリームデータを規定する符号化規格に従って、前記フレームを符号化して前記ストリームデータを生成するものであって、
前記画像符号化装置は、前記ストリームデータが格納されるデータ記憶部を備え、
前記符号化部は、前記フレームを符号化して前記ストリームデータを生成するときに、前記初期遅延量データがとり得る最大のサイズの仮初期遅延量データを含めたヘッダデータを前記データ記憶部に格納してから、当該フレームの符号化に応じて、当該フレームの符号化データを前記データ記憶部に格納し、
前記画像符号化装置は、前記フレームの初期遅延量の確定後に、前記仮初期遅延量データを、確定した初期遅延量を示す初期遅延量データに置き換える置換部を備え、
前記置換部は、前記置き換え後の初期遅延量データのサイズが前記置き換え前の仮初期遅延量データのサイズよりも減少する場合、減少するサイズ分のデータに代えてスタッフィングビットをヘッダデータに含めることで、前記初期遅延量データの置き換え前後でヘッダデータのサイズを同一とする、
請求項１乃至５のいずれか１項に記載の画像符号化装置。
【請求項８】
前記画像符号化装置は、前記フレームの初期遅延量を、当該フレームの符号化が終了したときにおける、前記仮想デコーダ・モデルのバッファの占有量から、予め定められたビットレートを除算することによって算出する初期遅延量算出部を備えた、
請求項７に記載の画像符号化装置。
【請求項９】
前記動画像データに含まれる複数のフレームは、それぞれ符号化されており、
前記画像符号化装置は、前記動画像データを再符号化するトランスコーダであって、
前記特徴量検出部は、前記フレームを復号化するとともに、当該復号前のフレームの符号量を当該フレームの特徴量として検出し、
前記符号化部は、前記特徴量検出部によって復号化されたフレームを符号化する、
請求項２に記載の画像符号化装置。
【請求項１０】
前記動画像データに含まれる複数のフレームは、それぞれ符号化されており、
前記画像符号化装置は、前記動画像データを再符号化するトランスコーダであって、
前記動き量検出部は、前記フレームを復号化するとともに、当該フレームの復号化において算出される動き量を、当該フレームの動き量として検出し、
前記符号化部は、前記動き量検出部によって復号化されたフレームを符号化する、
請求項３乃至５のいずれか１項に記載の画像符号化装置。
【請求項１１】
前記符号化済みフレームは、前記符号化中フレームと同じピクチャタイプのフレームである、
請求項１乃至１０のいずれか１項に記載の画像符号化装置。
【請求項１２】
複数のフレームからなる動画像データを画像符号化装置が符号化する画像符号化方法であって、
前記画像符号化装置が、前記フレームを符号化する符号化工程と、
前記画像符号化装置が、前記符号化された符号化済みフレームの符号量と、符号化途中である符号化中フレームに含まれる符号化済み領域の符号量とを符号量記憶部に格納する格納工程と、
前記画像符号化装置が、前記符号量記憶部に格納された、符号化済みフレームの符号量及び符号化中フレームの符号量に基づき、前記符号化中フレームに含まれる未符号化領域の符号量を推定する符号量推定工程と、
前記画像符号化装置が、前記推定された未符号化領域の符号量と、当該未符号化領域に割り当て可能な符号量とに基づいて、当該未符号化領域の符号量制御パラメタを決定するパラメタ決定工程と、を有し、
前記符号量推定工程では、前記符号化中フレームに時間的に近接する符号化済みフレームにおける、当該符号化中フレームに含まれる符号化済み領域及び未符号化領域のそれぞれに対応する領域の符号量である第１の符号量及び第２の符号量の比率に基づいて、当該符号化済み領域の符号量から当該未符号化領域の符号量を前記画像符号化装置が推定し、
前記符号化工程では、前記符号化中フレームに含まれる未符号化領域を、前記決定された符号量制御パラメタに基づいて前記画像符号化装置が符号化する、
画像符号化方法。
【請求項１３】
複数のフレームからなる動画像データ、又は、１枚のフレームからなる静止画像データを符号化する画像符号化装置であって、
符号化するフレームの特徴量を検出する特徴量検出部と、
前記フレームを符号化する符号化部と、
前記符号化部による符号化途中である符号化中フレームに含まれる符号化済み領域の符号量が格納される符号量記憶部と、
前記検出された特徴量と、前記格納された符号量とに基づき、前記符号化中フレームに含まれる未符号化領域の符号量を推定する符号量推定部と、
前記推定された未符号化領域の符号量と、当該未符号化領域に割り当て可能な符号量とに基づいて、当該未符号化領域の符号量制御パラメタを決定する符号量制御部と、を備え、
前記符号化部は、前記符号化中フレームに含まれる未符号化領域を、前記決定された符号量制御パラメタに基づいて符号化するものであって、
前記符号量推定部は、前記符号化中フレームに含まれる符号化済み領域の特徴量と、前記符号化中フレームに含まれる未符号化領域の特徴量との比率に基づいて、当該符号化済み領域の符号量から当該未符号化領域の符号量を推定する、
画像符号化装置。
【請求項１４】
前記画像符号化装置は、前記動画像データ及び前記静止画像データのうち、前記動画像データを符号化するものであって、
前記符号量記憶部は、さらに、前記符号化された符号化済みフレームの符号量が格納され、
前記符号量推定部は、前記符号化済みフレームと前記符号化中フレームとの間に、所定の変化がある場合、前記特徴量の比率に基づいて、前記符号化済み領域の符号量から前記未符号化領域の符号量を推定し、前記符号化済みフレームと前記符号化中フレームとの間に、前記所定の変化がない場合は、前記符号化中フレームに時間的に近接する符号化済みフレームにおける、当該符号化中フレームに含まれる符号化済み領域及び未符号化領域のそれぞれに対応する領域の符号量である第１の符号量及び第２の符号量の比率に基づいて、当該符号化済み領域の符号量から当該未符号化領域の符号量を推定する、
請求項１３に記載の画像符号化装置。
【請求項１５】
前記画像符号化装置は、前記符号化中フレームの動き量を検出する動き量検出部を備え、
前記符号量推定部は、前記検出された前記符号化中フレームの動き量に基づいて、前記符号化中フレームに動きがあると判定した場合、前記符号化済み領域及び前記未符号化領域のそれぞれに対応する領域の位置を、前記符号化中フレームにおける動き量に応じて補正する、
請求項１４に記載の画像符号化装置。
【請求項１６】
前記符号量推定部は、前記符号化中フレームの未符号化領域に動きがあると判定した場合、前記符号化済み領域及び前記未符号化領域のそれぞれに対応する領域の位置を、前記符号化中フレームの未符号化領域における動き量に応じて補正する、
請求項１５に記載の画像符号化装置。
【請求項１７】
前記符号量推定部は、前記符号化中フレームに動きがあると判定した場合、前記符号化済み領域の符号量と、当該符号化済み領域に対応する領域の符号量とのいずれか一方の領域の符号量を、他方の領域の面積と略同一面積当たりの符号量となるように補正する、もしくは、前記未符号化領域の符号量と、当該未符号化領域に対応する領域の符号量とのいずれか一方の領域の符号量を、他方の領域の面積と略同一面積当たりの符号量となるように補正し、
前記略同一面積は、前記他方の領域の面積との差が、前記他方の領域の面積の数パーセント以内となる面積である、
請求項１５又は１６に記載の画像符号化装置。
【請求項１８】
前記画像符号化装置は、前記動画像データ及び前記静止画像データのうち、前記動画像データを符号化するものであって、
前記画像符号化装置は、前記符号量記憶部に格納された符号量と、前記符号量推定部によって推定された符号量とに基づいて、仮想デコーダ・モデルにおけるバッファの占有量の推移を推定するバッファ占有量推定部を備え、
前記バッファ占有量推定部は、前記バッファの占有量の推移において、前記バッファから前記符号化中フレームを引き抜いたときのバッファの占有量を、当該符号化中フレームに含まれる符号化済み領域の符号量と、当該符号化済み領域の符号量から推定された未符号化領域の符号量とに基づいて算出した当該符号化中フレームの符号量によって推定し、
前記符号量制御部は、前記バッファ占有量推定部によって推定されたバッファの占有量の推移に基づいて、前記バッファが破綻しないように前記符号量制御パラメタを決定する、
請求項１３に記載の画像符号化装置。
【請求項１９】
前記画像符号化装置は、前記動画像データ及び前記静止画像データのうち、前記動画像データを符号化するものであって、前記フレームの符号化フォーマットとして、仮想デコーダ・モデルにおける前記フレームの初期遅延量を示し、かつ当該初期遅延量に応じたサイズとなる初期遅延量データを含むヘッダデータと、当該ヘッダデータに続いて当該フレームが符号化された符号化データと、を有するストリームデータを規定する符号化規格に従って、前記フレームを符号化して前記ストリームデータを生成し、
前記画像符号化装置は、前記ストリームデータが格納されるデータ記憶部を備え、
前記符号化部は、前記フレームを符号化して前記ストリームデータを生成するときに、前記初期遅延量データがとり得る最大のサイズの仮初期遅延量データを含めたヘッダデータを前記データ記憶部に格納してから、当該フレームの符号化に応じて、当該フレームの符号化データを前記データ記憶部に格納し、
前記画像符号化装置は、前記フレームの初期遅延量の確定後に、前記仮初期遅延量データを、当該確定した初期遅延量を示す初期遅延量データに置き換える置換部を備え、
前記置換部は、前記置き換え後の初期遅延量データのサイズが前記置き換え前の仮初期遅延量データのサイズよりも減少する場合、減少するサイズ分のデータに代えてスタッフィングビットをヘッダデータに含めることで、前記初期遅延量データの置き換え前後でヘッダデータのサイズを同一とする、
請求項１３に記載の画像符号化装置。
【請求項２０】
前記画像符号化装置は、前記フレームの初期遅延量を、当該フレームの符号化が終了したときにおける、前記仮想デコーダ・モデルのバッファの占有量から、予め定められたビットレートを除算することによって算出する初期遅延量算出部を備えた、
請求項１９に記載の画像符号化装置。
【請求項２１】
前記動画像データに含まれる複数のフレームは、それぞれ符号化されており、
前記画像符号化装置は、前記動画像データ及び前記静止画像データのうち、前記動画像データを再符号化するトランスコーダであって、
前記特徴量検出部は、前記フレームを復号化するとともに、当該復号前のフレームの符号量を当該フレームの特徴量として検出し、
前記符号化部は、前記特徴量検出部によって復号化されたフレームを符号化する、
請求項１３乃至２０のいずれか１項に記載の画像符号化装置。
【請求項２２】
前記動画像データに含まれる複数のフレームは、それぞれ符号化されており、
前記画像符号化装置は、前記動画像データ及び前記静止画像データのうち、前記動画像データを再符号化するトランスコーダであって、
前記動き量検出部は、前記フレームを復号化するとともに、当該フレームの復号化において算出される動き量を、当該フレームの動き量として検出し、
前記符号化部は、前記動き量検出部によって復号化されたフレームを符号化する、
請求項１５乃至１７のいずれか１項に記載の画像符号化装置。
【請求項２３】
前記特徴量検出部は、それぞれの種類が異なる複数の特徴量を検出し、
前記符号量推定部は、前記複数の特徴量のうち、前記符号化中フレームのピクチャタイプに応じた特徴量を使用する、
請求項１３乃至２２のいずれか１項に記載の画像符号化装置。
【請求項２４】
複数のフレームからなる動画像データを符号化する画像符号化装置であって、
符号化するフレームの特徴量を検出する特徴量検出部と、
前記フレームを符号化する符号化部と、
前記符号化部による符号化途中である符号化中フレームに含まれる符号化済み領域の符号量が格納される符号量記憶部と、
前記検出された特徴量と、前記格納された符号量とに基づき、前記符号化中フレームに含まれる未符号化領域の符号量を推定する符号量推定部と、
前記推定された未符号化領域の符号量と、当該未符号化領域に割り当て可能な符号量とに基づいて、当該未符号化領域の符号量制御パラメタを決定する符号量制御部と、を備え、
前記符号化部は、前記符号化中フレームに含まれる未符号化領域を、前記決定された符号量制御パラメタに基づいて符号化するものであって、
前記符号量推定部は、前記符号化中フレームに時間的に近接するフレームにおける、当該符号化中フレームに含まれる符号化済み領域及び未符号化領域のそれぞれに対応する領域の特徴量である第１の特徴量及び第２の特徴量の比率に基づいて、当該符号化済み領域の符号量から当該未符号化領域の符号量を推定する、
画像符号化装置。
【請求項２５】
複数のフレームからなる動画像データ、又は、１枚のフレームからなる静止画像データを画像符号化装置が符号化する画像符号化方法であって、
前記画像符号化装置が、符号化するフレームの特徴量を検出する特徴量検出工程と、
前記画像符号化装置が、前記フレームを符号化する符号化工程と、
前記画像符号化装置が、符号化途中である符号化中フレームに含まれる符号化済み領域の符号量を符号量記憶部に格納する格納工程と、
前記画像符号化装置が、前記検出された特徴量と、前記格納された符号量とに基づき、前記符号化中フレームに含まれる未符号化領域の符号量を推定する符号量推定工程と、
前記画像符号化装置が、前記推定された未符号化領域の符号量と、当該未符号化領域に割り当て可能な符号量とに基づいて、当該未符号化領域の符号量制御パラメタを決定するパラメタ決定工程と、を有し、
前記符号量推定工程では、前記符号化中フレームに含まれる符号化済み領域の特徴量と、前記符号化中フレームに含まれる未符号化領域の特徴量との比率に基づいて、当該符号化済み領域の符号量から当該未符号化領域の符号量を前記画像符号化装置が推定し、
前記符号化工程では、前記符号化中フレームに含まれる未符号化領域を、前記決定された符号量制御パラメタに基づいて前記画像符号化装置が符号化する、
画像符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像符号化装置及び画像符号化方法に関する。
【背景技術】
【０００２】
ビデオフレームのエンコードにおいては、ビデオエンコーダの処理速度の向上のために、複数のエンコーダでビデオフレームのエンコードを分担して並列に処理することが行われている。そのような技術として、特許文献１が開示されている。
【０００３】
特許文献１には、並列にビデオフレームをエンコードする際に、各ビデオフレームをエンコード中に生成したビット量に基づいて、量子化パラメタを最適化する制御を行うことを目的とした技術が開示されている。特許文献１に開示の情報処理装置は、１フレーム内のエンコードされたパーティションのビット量Ｂｉと、未エンコードのパーティション数Ｒｉとから、数式を用いて、残りのパーティションの生成ビット量を計算・予測する。この情報処理装置は、生成されたビット量Ｂｉと数式による計算結果との和と、目的ビット量とを比較する。そして、この情報処理装置は、比較結果に応じて、量子化パラメタの値を大きく又は小さくすることによって量子化パラメタを最適化する制御を行っている。
【０００４】
しかし、この制御方法では、基本的に、エンコード中のビット量のみを用いて残りのパーティションのビット量を算出するようにしているため、残りのパーティションのビット量を精度良く予測することができていないという問題がある。そのため、その予測結果に基づいて適切でない量子化パラメタが決定されてしまう。その結果、適切でない量子化パラメタによってエンコードが行われてしまい、ビデオフレームの画質劣化を引き起こしてしまうという問題がある。
【０００５】
ここで、特許文献２には、画質劣化を抑えながら、画像全体の総符号量を一定値以下に抑えることを目的とした技術が開示されている。特許文献２に開示の符号化方法は、フレーム間の動き検出結果の差分データの絶対値和に応じて、同一符号量制御範囲内の各フレームに割り当てる符号量の比率を変えるようにしている。また、この符号化方法は、符号化フレームに対して、画像の特徴を示すアクティビティから発生符号量の予測モデルを生成して、予測モデルに沿って符号化を行う。具体的には、発生符号量と予測モデルの差に基づいて参照スケーリングファクタを制御している。
【０００６】
しかし、特許文献２は、符号化途中のピクチャの未符号化領域の符号量を推定して、未符号化領域の符号量制御パラメタを決定する技術を開示したものではない。さらに、文献１、２ともに、生成したビットストリームのバッファ占有量については考慮されておらず、バッファオーバーフローあるいはバッファーアンダーフローを引き起こす恐れがある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００７−１６６１９２号公報
【特許文献２】特開平１０−３１３４６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
背景技術として説明したように、特許文献１に開示の技術には、符号化したときにフレームの画質を劣化させてしまうという課題がある。
【課題を解決するための手段】
【０００９】
本発明の第１の態様にかかる画像符号化装置は、複数のフレームからなる動画像データを符号化する画像符号化装置であって、前記フレームを符号化する符号化部と、前記符号化された符号化済みフレームの符号量と、前記符号化部による符号化途中である符号化中フレームに含まれる符号化済み領域の符号量とが格納される符号量記憶部と、前記符号量記憶部に格納された、符号化済みフレームの符号量及び符号化中フレームの符号量に基づき、前記符号化中フレームに含まれる未符号化領域の符号量を推定する符号量推定部と、前記推定された前記未符号化領域の符号量と、当該未符号化領域に割り当て可能な符号量とに基づいて、当該未符号化領域の符号量制御パラメタを決定する符号量制御部と、を備え、前記符号化部は、前記符号化中フレームに含まれる未符号化領域を、前記決定された符号量制御パラメタに基づいて符号化するものであって、前記符号量推定部は、前記符号化中フレームに時間的に近接する符号化済みフレームにおける、当該符号化中フレームに含まれる符号化済み領域及び未符号化領域のそれぞれに対応する領域の符号量である第１の符号量及び第２の符号量の比率に基づいて、当該符号化済み領域の符号量から当該未符号化領域の符号量を推定する、ものである。
【００１０】
本発明の第２の態様にかかる画像符号化方法は、複数のフレームからなる動画像データを符号化する画像符号化方法であって、前記フレームを符号化する符号化工程と、前記符号化された符号化済みフレームの符号量と、符号化途中である符号化中フレームに含まれる符号化済み領域の符号量とを符号量記憶部に格納する格納工程と、前記符号量記憶部に格納された、符号化済みフレームの符号量及び符号化中フレームの符号量に基づき、前記符号化中フレームに含まれる未符号化領域の符号量を推定する符号量推定工程と、前記推定された未符号化領域の符号量と、当該未符号化領域に割り当て可能な符号量とに基づいて、当該未符号化領域の符号量制御パラメタを決定するパラメタ決定工程と、を有し、前記符号量推定工程では、前記符号化中フレームに時間的に近接する符号化済みフレームにおける、当該符号化中フレームに含まれる符号化済み領域及び未符号化領域に対応する領域のそれぞれの符号量である第１の符号量及び第２の符号量の比率に基づいて、当該符号化済み領域の符号量から当該未符号化領域の符号量が推定され、前記符号化工程では、前記符号化中フレームに含まれる未符号化領域が、前記決定された符号量制御パラメタに基づいて符号化される、ものである。
【００１１】
上述した本発明の第１及び第２の態様によれば、符号化中フレームと相関の高い符号化済みフレームの符号量分布を参考にして、未符号化領域の符号量を高い精度で推定することが可能となる。したがって、高い精度で推定された未符号化領域の符号量に基づいて、適切な符号量制御パラメタを決定することができる。
【００１２】
本発明の第３の態様にかかる画像符号化装置は、複数のフレームからなる動画像データ、又は、１枚のフレームからなる静止画像データを符号化する画像符号化装置であって、符号化するフレームの特徴量を検出する特徴量検出部と、前記フレームを符号化する符号化部と、前記符号化部による符号化途中である符号化中フレームに含まれる符号化済み領域の符号量が格納される符号量記憶部と、前記検出された特徴量と、前記格納された符号量とに基づき、前記符号化中フレームに含まれる符号化領域の符号量を推定する符号量推定部と、前記推定された未符号化領域の符号量と、当該未符号化領域に割り当て可能な符号量とに基づいて、当該未符号化領域の符号量制御パラメタを決定する符号量制御部と、を備え、前記符号化部は、前記符号化中フレームに含まれる未符号化領域を、前記決定された符号量制御パラメタに基づいて符号化するものであって、前記符号量推定部は、前記符号化中フレームに含まれる符号化済み領域の特徴量と、前記符号化中フレームに含まれる未符号化領域の特徴量との比率に基づいて、当該符号化済み領域の符号量から当該未符号化領域の符号量を推定する、ものである。
【００１３】
本発明の第４の態様にかかる画像符号化装置は、複数のフレームからなる動画像データを符号化する画像符号化装置であって、符号化するフレームの特徴量を検出する特徴量検出部と、前記フレームを符号化する符号化部と、前記符号化部による符号化途中である符号化中フレームに含まれる符号化済み領域の符号量が格納される符号量記憶部と、前記検出された特徴量と、前記格納された符号量とに基づき、前記符号化中フレームに含まれる符号化領域の符号量を推定する符号量推定部と、前記推定された未符号化領域の符号量と、当該未符号化領域に割り当て可能な符号量とに基づいて、当該未符号化領域の符号量制御パラメタを決定する符号量制御部と、を備え、前記符号化部は、前記符号化中フレームに含まれる未符号化領域を、前記決定された符号量制御パラメタに基づいて符号化するものであって、前記符号量推定部は、前記符号化中フレームに時間的に近接するフレームにおける、当該符号化中フレームに含まれる符号化済み領域及び未符号化領域のそれぞれに対応する領域の特徴量である第１の特徴量及び第２の特徴量の比率に基づいて、当該符号化済み領域の符号量から当該未符号化領域の符号量を推定する、ものである。
【００１４】
本発明の第５の態様にかかる画像符号化方法は、複数のフレームからなる動画像データ、又は、１枚のフレームからなる静止画像データを符号化する画像符号化方法であって、符号化するフレームの特徴量を検出する特徴量検出工程と、前記フレームを符号化する符号化工程と、符号化途中のフレームである符号化中フレームに含まれる符号化済み領域の符号量を符号量記憶部に格納する格納工程と、前記特徴量検出工程にて検出された特徴量と、前記符号量記憶部に格納された符号量とに基づき、前記符号化中フレームに含まれる未符号化領域の符号量を推定する符号量推定工程と、前記推定された未符号化領域の符号量と、当該未符号化領域に割り当て可能な符号量とに基づいて、当該未符号化領域の符号量制御パラメタを決定するパラメタ決定工程と、を有し、前記符号量推定工程では、前記符号化中フレームに含まれる符号化済み領域の特徴量と、前記符号化中フレームに含まれる未符号化領域の特徴量との比率に基づいて、当該符号化済み領域の符号量から当該未符号化領域の符号量が推定され、前記符号化工程では、前記符号化中フレームに含まれる未符号化領域が、前記パラメタ決定工程にて決定された符号量制御パラメタに基づいて符号化される、ものである。
【００１５】
上述した本発明の第３乃至第５の態様によれば、符号化中フレームの符号量分布と相関の高い、符号化済みフレーム又は符号化中フレームの特徴量分布を参考にして、未符号化領域の符号量を高い精度で推定することが可能となる。したがって、高い精度で推定された未符号化領域の符号量に基づいて、適切な符号量制御パラメタを決定することができる。
【発明の効果】
【００１６】
上述した本発明の各態様によれば、符号化したときにおけるフレームの画質の劣化を抑制することができる画像符号化装置及び画像符号化方法を提供することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施の形態１にかかる画像符号化装置の構成図である。
【図２】本発明の実施の形態１にかかる画像符号化装置による画像符号化処理タイミングを示す図である。
【図３】図２の時刻ｔにおけるピクチャの符号化処理状況を示す図である。
【図４】ピクチャの構成を示す図である。
【図５】本発明の実施の形態１にかかる１ピクチャ内の発生符号量の分布の一例を模式的に示した図である。
【図６】本発明の実施の形態１にかかる未符号化領域の符号量推定方法を説明するための図である。
【図７】本発明の実施の形態１にかかる画像符号化装置の処理を示すフローチャートである。
【図８】本発明の実施の形態２にかかる画像符号化装置の構成図である。
【図９】本発明の実施の形態２にかかる未符号化領域の符号量推定方法を説明するための図である。
【図１０】本発明の実施の形態２にかかる画像符号化装置の処理を示すフローチャートである。
【図１１】本発明の実施の形態３にかかる画像符号化装置の構成図である。
【図１２】本発明の実施の形態３にかかる画像符号化装置の処理を示すフローチャートである。
【図１３】本発明の実施の形態４にかかる画像符号化装置の構成図である。
【図１４Ａ】本発明の実施の形態４にかかる動きがある場合における未符号化領域の符号量推定方法を説明するための図である。
【図１４Ｂ】本発明の実施の形態４にかかる動きがある場合における未符号化領域の符号量推定方法を説明するための図である。
【図１５】本発明の実施の形態４にかかる画像符号化装置の処理を示すフローチャートである。
【図１６Ａ】本発明の実施の形態４にかかる動きがある場合における未符号化領域の符号量推定方法を説明するための図である。
【図１６Ｂ】本発明の実施の形態４にかかる動きがある場合における未符号化領域の符号量推定方法を説明するための図である。
【図１７】本発明の実施の形態５にかかる画像符号化装置の構成図である。
【図１８】本発明の実施の形態５にかかるバッファ占有量の推定方法によって推定されたデコーダ側の仮想バッファのバッファ占有量を示す図である。
【図１９】本発明の実施の形態６にかかる画像符号化装置の構成図である。
【図２０】動画符号化規格における１ピクチャのビットストリームの構成を示す図である。
【図２１】推定されたデコーダ側の仮想バッファのバッファ占有量の推移と、実際のデコーダ側の仮想バッファのバッファ占有量の推移とを示す図である。
【図２２】本発明の実施の形態７にかかる画像符号化装置の構成図である。
【図２３】本発明の他の実施の形態にかかる未符号化領域の符号量推定方法を説明するための図である。
【図２４】本発明の他の実施の形態にかかる未符号化領域の符号量推定方法を説明するための図である。
【発明を実施するための形態】
【００１８】
発明の実施の形態１．
図１を参照して、本発明の実施の形態１にかかる画像符号化装置１の構成について説明する。図１は、本発明の実施の形態１にかかる画像符号化装置１の構成図である。
【００１９】
画像符号化装置１は、フレームバッファ１０、発生符号量記憶装置１１、発生符号量予測装置１２、符号量制御装置１３、ストリーム結合装置１４、エンコーダ３０〜３３、及びストリームバッファ４０〜４３を有する。画像符号化装置１は、複数のフレームからなる動画像データを符号化する。画像符号化装置１には、動画像データを構成する複数のフレームのそれぞれが入力画像として順次入力される。以下、フレームを「ピクチャ」又は「画像」とも言う。
【００２０】
画像符号化装置１は、例えば、動画像を符号化して記憶媒体に記憶するレコーダ、地上波デジタル放送番組の動画像を符号化して送信するデジタル放送送信装置、動画像を符号化して他のテレビ電話に送信するテレビ電話等に含まれる。記憶媒体は、例えば、メモリ、ハードディスク、及び光ディスク等である。
【００２１】
フレームバッファ１０は、画像符号化装置１に入力された入力画像が一時的に記憶される。フレームバッファ１０は、入力画像を記憶するための任意の記憶装置を含む。ここで、記憶装置とは、例えば、メモリ及びハードディスク等である。
【００２２】
発生符号量記憶装置１１は、符号化済みの画像の発生符号量と、符号化途中の画像の符号化済み領域の発生符号量とが記憶される。発生符号量は、１画像を予め定めた大きさに分割した単位毎に記憶される。発生符号量記憶装置１１は、発生符号量を記憶するための任意の記憶装置を含む。
【００２３】
発生符号量予測装置１２は、符号化済みの画像の発生符号量と、符号化途中の画像の符号化済み領域の発生符号量とに基づいて、符号化途中の画像の未符号化領域の発生符号量を推定する。
【００２４】
符号量制御装置１３は、推定された未符号化領域の発生符号量に基づいて、予め指定されたビットレートを達成するようにエンコーダ３０〜３３に対して指定する符号量制御パラメタを計算する。符号量制御装置１３は、計算した符号量制御パラメタをエンコーダ３０〜３３に対して指定する。
【００２５】
ストリーム結合装置１４は、ストリームバッファ４０〜４３のそれぞれに記憶されたビットストリームを指定の順序で結合して１つのビットストリームを生成する。ストリーム結合装置１４は、生成したビットストリームを画像符号化装置１の外部に出力する。
【００２６】
エンコーダ３０〜３３のそれぞれは、符号化対象として指定された入力画像をフレームバッファ１０から読み出して符号化する。エンコーダ３０〜３３のそれぞれは、符号量制御装置１３から指定された符号量制御パラメタに応じた符号量で入力画像を符号化する。エンコーダ３０〜３３のそれぞれは、入力画像を符号化したデータを含むビットストリームを生成する。エンコーダ３０〜３３のそれぞれは、ビットストリームをストリームバッファ４０〜４３のそれぞれに記憶する。エンコーダ３０〜３３のそれぞれは、例えば、ＭＰＥＧ−２又はＨ．２６４等の動画像符号化規格において規定されている符号化方式によって入力画像を符号化する。
【００２７】
ストリームバッファ４０〜４３のそれぞれは、エンコーダ３０〜３３のそれぞれから出力されたビットストリームを一時的に記憶する。具体的には、ストリームバッファ４０はエンコーダ３０によって生成されたビットストリームを記憶し、ストリームバッファ４１はエンコーダ３１によって生成されたビットストリームを記憶し、ストリームバッファ４２はエンコーダ３２によって生成されたビットストリームを記憶し、ストリームバッファ４３はエンコーダ３３によって生成されたビットストリームを記憶する。
【００２８】
続いて、図２を参照して、本発明の実施の形態１にかかる画像符号化装置１による画像符号化処理タイミングについて説明する。図２は、本発明の実施の形態１にかかる画像符号化装置１による画像符号化処理タイミングを示す図である。図２は、４つのエンコーダ３０〜３３が、時分割に並列して入力画像の符号化処理を行う場合について示している。
【００２９】
図２に示すように、本実施の形態１では、動画像に含まれる複数のピクチャ１〜９のそれぞれは、符号化順にエンコーダ３０〜３３のそれぞれに順番に割り当てられる。ここで、ピクチャ１〜９は、符号化順序は、ピクチャ１、ピクチャ２、・・・、ピクチャ９の順番であるものとする。また、ピクチャ９に後続するピクチャの図示及び説明は省略する。具体的には、エンコーダ３０にはピクチャ１、５及び９が割り当てられ、エンコーダ３１にはピクチャ２及び６が割り当てられ、エンコーダ３２にはピクチャ３及び７が割り当てられ、エンコーダ３３にはピクチャ４及び８が割り当てられる。エンコーダ３０〜３３のそれぞれは、割り当てられたピクチャを符号化する。言い換えると、割り当てられたピクチャとは、符号化対象として指定されたピクチャである。
【００３０】
以下、図２について具体的に説明する。時刻ｔ０で、エンコーダ３０は、フレームバッファ１０からピクチャ１を取得して、取得したピクチャ１の符号化を開始する。以降、時刻ｔ０からピクチャ入力間隔経過する毎の時刻をｔ１〜ｔ８として示す。なお、ピクチャ入力間隔は、予め任意に定められる。
【００３１】
時刻ｔ１で、エンコーダ３１は、フレームバッファ１０からピクチャ２を取得して、取得したピクチャ２の符号化を開始する。時刻ｔ２で、エンコーダ３２は、フレームバッファ１０からピクチャ３を取得して、取得したピクチャ３の符号化を開始する。時刻ｔ３で、エンコーダ３３は、フレームバッファ１０からピクチャ４を取得して、取得したピクチャ４の符号化を開始する。
【００３２】
ここで、１つのエンコーダで、１ピクチャを符号化する時間は、ピクチャ入力間隔の４倍未満の時間がかかるものとする。よって、時刻ｔ４では、時刻ｔ０から開始したエンコーダ３０によるピクチャ１の符号化は終了していることになる。
【００３３】
そのため、時刻ｔ４で、エンコーダ３０は、フレームバッファ１０からピクチャ５を取得して、取得したピクチャ５の符号化を開始する。以降も同様にして、ピクチャ入力間隔が経過する毎に、時刻５でエンコーダ３１によるピクチャ６の符号化が開始され、時刻６でエンコーダ３２によるピクチャ７の符号化が開始され、時刻７でエンコーダ３３によるピクチャ８の符号化が開始され、時刻ｔ８でエンコーダ３０によるピクチャ９の符号化が開始される。このようにして、エンコーダ３０〜３３は、ピクチャ１〜９のそれぞれを並列に符号化していく。
【００３４】
なお、エンコーダ３０〜３３に対するピクチャの割り当て順序は、図２に例示した順序に限定されない。本実施の形態１では、図２に例示したように、エンコーダ３０、３１、３２、３３の順にサイクリックにピクチャを割り当てるようにしているが、これ以外の順序で、エンコーダ３０〜３３にピクチャを割り当てるようにしてもよい。
【００３５】
また、上述したように、エンコーダ３０〜３３のそれぞれに符号化対象のピクチャを割り当てて、エンコーダ３０〜３３のそれぞれが割り当てられたピクチャを符号化する構成は、どのように実現しても良い。一例としては、画像符号化装置１に入力画像を符号化順に入力するようにして、フレームバッファ１０に入力順に入力画像がキューイングされるようにする。そして、エンコーダ３０〜３３のそれぞれが順番に、フレームバッファ１０から入力画像を取り出すようにする。
【００３６】
続いて、図３を参照して、図２の時刻ｔにおけるピクチャの符号化処理状況について説明する。図３は、図２の時刻ｔにおけるピクチャの符号化処理状況を示す図である。時刻ｔは、エンコーダ３０によるピクチャ５の符号化の終了後、エンコーダ３０によるピクチャ９の符号化の開始前の時刻である。
【００３７】
図３は、図２の時刻ｔにおけるピクチャ５〜９のそれぞれの符号化処理状況を示している。図３において、ピクチャ中のハッチング領域は、符号化済み領域を示し、ピクチャ中のハッチングをしていない無地の領域は、未符号化領域を示す。このように、符号化途中のある瞬間では、符号化途中のピクチャ５〜８のそれぞれにおいて、符号化済み領域及び未符号化領域の大きさは、それぞれ異なる。
【００３８】
続いて、図４を参照して、ピクチャの構成について説明する。図４は、ピクチャの構成を示す図である。
【００３９】
図４に示すように、１枚のピクチャは、符号化が行われる際に、複数のマクロブロックに分割されて、マクロブロック単位で符号化されていく。なお、動画像符号化規格のＨ．２６４においては、上下に隣接する２つのマクロブロックを組にしたマクロブロックペア単位で、ピクチャが符号化されることもある。よって、マクロブロックペア単位で符号化していくようにしてもよい。
【００４０】
ここで、本実施の形態１では、マクロブロックの水平方向１列分毎の発生符号量が発生符号量記憶装置１１に記憶されていくものとする。以下、マクロブロックの水平方向１列分の単位を「マクロブロックライン」と言う。つまり、エンコーダ３０〜３３のそれぞれは、マクロブロックラインを符号化する毎に、そのマクロブロックラインにおける発生符号量を発生符号量記憶装置１１に記憶する。エンコーダ３０〜３３のそれぞれは、例えば、マクロブロックを符号化する毎に、符号化によって発生した１マクロブロック当たりの符号量を累積加算していき、１マクロブロックライン当たりの発生符号量を算出する。
【００４１】
また、マクロブロックペアの水平方向１列分毎の発生符号量が発生符号量記憶装置１１に記憶されていくようにしてもよい。以下、マクロブロックペアの水平方向１列分の単位を「マクロブロックペアライン」と言う。この場合、エンコーダ３０〜３３のそれぞれは、マクロブロックペアラインを符号化する毎に、そのマクロブロックペアラインにおける発生符号量を発生符号量記憶装置１１に記憶する。エンコーダ３０〜３３のそれぞれは、例えば、マクロブロックペアを符号化する毎に、符号化によって発生した１マクロブロックペア当たりの符号量を累積加算していき、１マクロブロックペアライン当たりの発生符号量を算出する。なお、本実施の形態では、図４に示すように、１枚のピクチャにマクロブロックがＮラインある場合について例示する。ここで、Ｎは、任意の正整数である。
【００４２】
続いて、図５を参照して、１ピクチャ内の発生符号量の分布の一例について説明する。図５は、本発明の実施の形態１にかかる１ピクチャ内の発生符号量の分布の一例を模式的に示した図である。
【００４３】
一般的に、１ピクチャ内における画素値は、一様ではなく、単調な変化をしているわけでもない。よって、符号化済みのピクチャ内における符号量も、一様ではなく、単調な変化をしない場合がある。図５に例示するように、１ピクチャ内で、符号化による発生符号量が、前半のマクロブロックラインと後半のマクロブロックラインとで大きく異なってしまうものも存在する。このような画像では、例えば、第iマクロブロックラインまで符号化が済んでおり、第ｉマクロブロックラインまでの発生符号量が分かっていたとしても、それ以降に符号化される第ｉ＋１マクロブロックライン〜第Ｎマクロブロックラインにおける発生符号量を、第ｉマクロブロックラインまでの符号化済み領域の発生符号量のみから予測することは困難である。ここで、ｉは、Ｎ以下の正整数である。
【００４４】
続いて、図６を参照して、本発明の実施の形態１にかかる未符号化領域の符号量推定方法について説明する。図６は、本発明の実施の形態１にかかる未符号化領域の符号量推定方法を説明するための図である。
【００４５】
一般的に、動画像を構成する画像が、時間的に近い画像であれば相関が高く、画像内の発生符号量分布も類似していることが知られている。そこで、本実施の形態１にかかる発生符号量予測装置１２は、符号化途中のピクチャの未符号化領域の発生符号量を、符号化途中のピクチャの符号化済み領域における発生符号量と、直前に符号化が終了した符号化済みピクチャの発生符号量から推定する。図２を参照して説明すると、発生符号量予測装置１２は、例えば、ピクチャ５を符号化しているときは、直前の符号化済みピクチャ１の符号発生量から、ピクチャ５の未符号化領域の符号量を推定する。以下、符号化途中のピクチャを「符号化途中ピクチャ」と言い、符号化済みのピクチャを「符号化済みピクチャ」と言う。
【００４６】
例えば、図６に例示するように、符号化途中ピクチャのａで示す範囲まで符号化が進んでいるものとする。図６に示すｂは、符号化途中ピクチャ全体の垂直方向の長さＮから、符号化済み領域の垂直方向の長さａを差し引いた長さである。つまり、Ｎ＝ａ＋ｂが成立する。ここで、ａはＮ以下の正整数であり、ｂはＮ以下の正整数である。よって、符号化途中ピクチャのａで示す範囲は、符号化済み領域であり、符号化途中ピクチャのｂで示す範囲は、未符号化領域である。言い換えると、符号化途中ピクチャのａで示す範囲に含まれるマクロブロックラインは、符号化されており、符号化途中ピクチャのｂで示す範囲に含まれるマクロブロックラインは、符号化されていない。また、Ｎは１ピクチャ中のマクロブロックライン数であるため、ａは、符号化済み領域に含まれるマクロブロックライン数となり、ｂは、未符号化領域に含まれるマクロブロックライン数となる。
【００４７】
このときに、符号化途中ピクチャの符号化済み領域の発生符号量がＳａである場合、符号化途中の未符号化領域の発生符号量Ｓｂを次式（１）によって推定する。ここで、Ｓ'ａは、符号化済みピクチャのaで示す範囲の発生符号量であり、Ｓ'ｂは、符号化済みピクチャのｂで示す範囲の発生符号量である。つまり、Ｓ'ａは、符号化済みピクチャのうち、符号化途中ピクチャの符号化済み領域に対応する領域の発生符号量であり、Ｓ'ｂは、符号化済みピクチャのうち、符号化途中ピクチャの未符号化領域に対応する領域の発生符号量である。ここでは、符号化済み領域と、符号化済み領域に対応する領域は、ピクチャ中の同一位置における同一面積の領域となり、未符号化領域と、未符号化領域に対応する領域も、ピクチャ中の同一位置における同一面積の領域となる。
【００４８】
【数１】
0005706759.tif 000002
【００４９】
上述したように、時間的に近いピクチャ同士であれば、ピクチャ内の発生符号量分布は、相互に類似している。また、ここでは、符号化済みピクチャとして、直前に符号化が終了した符号化済みピクチャを使用している。つまり、この符号化済みピクチャと符号化途中ピクチャとは、時間的に近いピクチャ同士となる。よって、符号化途中ピクチャの符号化済み領域の発生符号量Ｓａと、符号化途中ピクチャの未符号化領域の発生符号量Ｓｂとの比率は、符号化済みピクチャのうち、符号化途中ピクチャの符号化済み領域に対応する領域の発生符号量Ｓ'ａと、符号化済みピクチャのうち、符号化途中ピクチャの未符号化領域に対応する領域の発生符号量Ｓ'ｂとの比率と類似することになる。そのため、式（１）によって、Ｓａ及びＳｂの比率が、Ｓ'ａ及びＳ'ｂの比率と同じとなるように、ＳａからＳｂを算出することで、符号化済みピクチャの未符号化領域の発生符号量を高い精度で推定することができる。以下、Ｓｂを「推定符号量」とも言う。
【００５０】
ここで、本実施の形態１では、発生符号量の推定に使用する符号化済みピクチャとして、直前に符号化が終了した符号化済みピクチャを使用する場合について例示するが、これに限られない。上述したように、符号化途中ピクチャと時間的に近接した符号化済みピクチャであれば、符号化途中ピクチャとの相関は高い。そのため、直前に符号化が終了した符号化済みピクチャ以外の符号化途中ピクチャと時間的に近接した符号化済みピクチャを使用するようにしてもよい。
【００５１】
例えば、符号化途中ピクチャに時間的に近接した符号化済みピクチャとして、符号化途中ピクチャより所定数前に符号化が開始されたピクチャまでの範囲に含まれる符号化済みピクチャのいずれかを使用するようにしてもよい。また、ＭＰＥＧ−２又はＨ．２６４等の動画像符号化規格のように、ピクチャの符号化順序と、ピクチャの再生順序とが必ずしも一致しない場合もある。そのような場合、ピクチャの再生順序が分かるのであれば、それに基づいて使用する符号化済みピクチャを決定するようにしてもよい。例えば、符号化途中ピクチャと時間的に近接した符号化済みピクチャとして、符号化途中ピクチャより所定数前又は後に再生されるピクチャまでの範囲に含まれる符号化済みピクチャのいずれかを使用するようにしてもよい。なお、そのような動画像符号化規格であっても、符号化順序と再生順序とは大きくことなることはないため、どちらの順序に基づいて、使用する符号化済みピクチャを決定するようにしてもよい。
【００５２】
また、符号化済みピクチャとして、符号化途中ピクチャと同じピクチャタイプの符号化済みピクチャで、時間的に近接した符号化済みピクチャを使用してもよい。ここで、例えば、ＭＰＥＧ−２又はＨ．２６４等の動画像符号化規格では、ピクチャタイプによって予測符号化方式が異なる。Ｉピクチャに対しては、フレーム内予測（イントラ予測）が使用され、Ｐピクチャに対しては、順方向動き補償フレーム間予測が使用され、Ｂピクチャでは、順方向、逆方向、又は双方向動き補償フレーム間予測が使用される。つまり、同じピクチャタイプのピクチャ同士は、発生符号量の特性が近くなる。したがって、符号化途中ピクチャと同じピクチャタイプの符号化済みピクチャを使用することで、未符号化領域の発生符号量の推定精度を向上することができる。
【００５３】
ここで、動画像データの符号化開始直後には、符号化済みピクチャが存在しない。また、シーンチェンジによって、符号化済みピクチャと符号化途中ピクチャとの間で、シーンの性質が変化した場合には、符号化途中ピクチャと時間的に近接した符号化済みピクチャであっても、符号化途中ピクチャと発生符号量分布が類似していない可能性が高い。したがって、それらの場合、発生符号量予測装置１２は、符号化済みピクチャを使用せずに、符号化途中ピクチャの符号化済み領域と、符号化途中ピクチャの未符号化領域との比率に応じた比例計算によって、符号化途中ピクチャの未符号化領域の発生符号量Ｓｂを推定するようにしてもよい。つまり、符号化途中ピクチャの未符号化領域の発生符号量を次式（２）によって推定する。
【００５４】
【数２】
0005706759.tif 000003
【００５５】
符号量制御装置１３は、以上に説明した方法によって推定された未符号化領域の推定符号量と、未符号化領域に割り当て可能な目標符号量との差分に基づいて、符号量制御パラメタを決定する。なお、図３を参照して説明したように、エンコーダ３０〜３３のそれぞれで符号化の進行状況は異なるため、エンコーダ３０〜３３のそれぞれに対して、別々の符号量制御パラメタが決定されることになる。そして、符号量制御装置１３は、決定した符号量制御パラメタをエンコーダ３０〜３３のそれぞれに与える。エンコーダ３０〜３３のそれぞれは、符号量制御装置１３から与えられた符号量制御パラメタに基づいて、符号化途中ピクチャの未符号化領域を符号化する。符号量制御パラメタは、例えば、量子化ステップである。例えば、推定符号量が目標符号量よりも大きい場合、量子化ステップを大きくして発生する符号量を抑制する。逆に、推定符号量が目標符号量よりも小さい場合、量子化ステップを小さくして発生する符号量が多くなるようにする。
【００５６】
なお、ピクチャの符号化開始時には、まだピクチャの符号化済み領域が存在しないため、符号量制御装置１３は、符号量制御パラメタをどのように決定するようにしてもよい。一例としては、ピクチャの目標符号量に応じて、適切と考えられる符号量制御パラメタを予め定めておく。具体的には、ピクチャがとり得る目標符号量のそれぞれから、適切な符号量制御パラメタを導き出すことができる情報を画像符号化装置１が有する任意の記憶装置に予め用意しておく。この情報は、例えば、目標符号量からそれに適した符号量制御パラメタを得ることができるテーブル又は関数等としてよい。そして、符号量制御装置１３が、この情報を参照して、ピクチャの目標符号量から符号量制御パラメタを決定できるようにする。
【００５７】
また、ピクチャの目標符号量は、予め定められたビットレートを達成するように予め決定しておく。ピクチャの目標符号量は、ビットレートに基づいて、ピクチャタイプ毎に異なる重み付けをして決定するようにしてもよい。具体的には、Ｉピクチャ、Ｐピクチャ、Ｂピクチャの順に符号化における圧縮率が高くなっていく。そのため、例えば、目標符号量が、Ｂピクチャ、Ｐピクチャ、Ｉピクチャの順に高くなっていくように重み付けをする。符号化途中ピクチャの目標符号量は、例えば、画像符号化装置１が有する任意の記憶装置に予め格納しておき、符号量制御装置１３が参照可能としておく。
【００５８】
続いて、図７を参照して、本発明の実施の形態１にかかる画像符号化装置１の処理について説明する。図７は、本発明の実施の形態１にかかる画像符号化装置１の処理を示すフローチャートである。ここでは、エンコーダ３０に対する符号量制御パラメタの最適化を例に挙げて説明するが、エンコーダ３１〜３３のそれぞれに対しても、並列して同様の処理が行われる。
【００５９】
エンコーダ３０は、ピクチャに含まれるマクロブロックラインを符号化する（Ｓ１）。エンコーダ３０は、符号化したデータを順次、ストリームバッファ４０に格納してく。これによって、ストリームバッファ４０にビットストリームが形成されていく。エンコーダ３０は、符号化したマクロブロックラインの発生符号量を発生符号量記憶装置１１に格納する。エンコーダ３０は、ピクチャに含まれる全てのマクロブロックラインを符号化したか否かを判定する（Ｓ２）。
【００６０】
全てのマクロブロックラインを符号化した場合（Ｓ２：ＹＥＳ）、エンコーダ３０は、そのピクチャの符号化を終了する。
【００６１】
全てのマクロブロックラインを符号化していない場合（Ｓ２：ＮＯ）、上述した式（１）によって、発生符号量Ｓ'ａ及びＳ'ｂの比率に基づいて、発生符号量Ｓａから未符号化領域の発生符号量Ｓｂを推定する（Ｓ３）。
【００６２】
ここで、発生符号量記憶装置１１には、符号化途中ピクチャの符号化済み領域に含まれるマクロブロックラインのそれぞれにおける発生符号量と、符号化済みピクチャに含まれるマクロブロックラインのそれぞれにおける発生符号量とが格納されていることになる。そのため、発生符号量予測装置１２は、発生符号量記憶装置１１に格納されたマクロブロックライン毎の発生符号量に基づいて、各発生符号量Ｓａ、Ｓ'ａ、及びＳ'ｂを算出する。
【００６３】
具体的には、発生符号量予測装置１２は、符号化途中ピクチャの符号化済み領域のマクロブロックラインの発生符号量の総和を、符号化途中ピクチャの符号化済み領域の発生符号量Ｓａとして算出する。発生符号量予測装置１２は、符号化済みピクチャのうち、符号化途中ピクチャの符号化済み領域に対応する領域のマクロブロックラインの発生符号量の総和を、その符号化済み領域に対応する領域の発生符号量Ｓ'ａとして算出する。発生符号量予測装置１２は、符号化済みピクチャのうち、符号化途中ピクチャの未符号化領域に対応する領域のマクロブロックラインの発生符号量の総和を、その未符号化領域に対応する領域の発生符号量Ｓ'ｂとして算出する。
【００６４】
発生符号量予測装置１２は、推定した未符号化領域の発生符号量Ｓｂを符号量制御装置１３に出力する。
【００６５】
符号量制御装置１３は、発生符号量予測装置１２から出力された、符号化途中ピクチャの未符号化領域の推定符号量Ｓｂを、符号化途中ピクチャの未符号化領域の目標符号量と比較する（Ｓ４）。符号量制御装置１３は、例えば、未符号化領域の目標符号量を、符号化途中ピクチャの目標符号量から、符号化途中ピクチャの符号化済み領域の発生符号量を減算することによって算出する。なお、符号量制御装置１３は、符号化途中ピクチャの符号化済み領域の発生符号量を、発生符号量予測装置１２と同様に発生符号量記憶装置１１から取得するようにしてもよく、発生符号量予測装置１２から推定符号量Ｓｂとともに取得するようにしてもよい。
【００６６】
未符号化領域の推定符号量が、未符号化領域の目標符号量よりも大きい場合（Ｓ４：大きい）、符号量制御装置１３は、エンコーダ３０による符号化によって発生する符号量を低減させるように符号量制御パラメタを変更する（Ｓ５）。つまり、量子化ステップを大きくする。符号量制御装置１３は、変更後の符号量制御パラメタをエンコーダ２０に出力する。
【００６７】
未符号化領域の推定符号量が、未符号化領域の目標符号量よりも小さい場合（Ｓ４：小さい）、符号量制御装置１３は、エンコーダ３０による符号化によって発生する符号量を増加させるように符号量制御パラメタを変更する（Ｓ６）。つまり、量子化ステップを小さくする。符号量制御装置１３は、変更後の符号量制御パラメタをエンコーダ２０に出力する。
【００６８】
未符号化領域の推定符号量が、未符号化領域の目標符号量と等しい場合（Ｓ４：等しい）、符号量制御パラメタは、変更しない。
【００６９】
エンコーダ３０は、符号量制御装置１３から出力された符号量制御パラメタに基づいて、次のマクロブロックラインを符号化する（Ｓ１）。以降も同様に、ステップＳ１〜Ｓ６の処理を繰り返すことによって、符号化制御パラメタを最適化しながら、ピクチャ５の符号化を行うことができる。
【００７０】
以上に説明したように、本実施の形態１にかかる符号化処理では、相関の高いピクチャの符号化結果を利用しているため、そのピクチャの符号量の発生分布に応じて、精度の高い符号量推定が可能となる。特に、図５に例示したように、符号化による発生符号量が、ピクチャ内の前半と後半とで大きく異なってしまうピクチャであっても、精度の高い符号量推定が可能となる。
【００７１】
以上に説明したように、本実施の形態１では、符号化中フレームに時間的に近接する符号化済みフレームにおける、符号化中フレームに含まれる符号化済み領域及び未符号化領域に対応する領域のそれぞれの符号量の比率に基づいて、符号化済み領域の符号量から未符号化領域の符号量を推定するようにしている。
【００７２】
これによれば、符号化中フレームと相関の高い符号化済みフレームの符号量分布を参考にして、未符号化領域の符号量を高い精度で推定することが可能となる。したがって、高い精度で推定された未符号化領域の符号量に基づいて、適切な符号量制御パラメタを決定することができるため、符号化したときにおけるフレームの画質の劣化を抑制することができる。
【００７３】
発明の実施の形態２．
続いて、図８を参照して、本発明の実施の形態２にかかる画像符号化装置２の構成について説明する。図８は、本発明の実施の形態２にかかる画像符号化装置２の構成図である。なお、実施の形態１と同様の構成要素については、同一の符号を付して、説明を省略する。
【００７４】
画像符号化装置２は、フレームバッファ１０、発生符号量記憶装置１１、符号量制御装置１３、ストリーム結合装置１４、事前解析装置１５、解析結果記憶装置１６、発生符号量予測装置１７、エンコーダ３０〜３３、及びストリームバッファ４０〜４３を有する。本実施の形態２において、画像符号化装置２に入力される入力画像は、動画データを構成するフレームであってもよく、静止画像データを構成する１枚のフレームであってもよい。
【００７５】
事前解析装置１５は、画像符号化装置２の外部から入力画像が入力される。事前解析装置１５は、入力画像を解析して、１画像を予め定めた大きさに分割した単位毎の特徴量を算出する。事前解析装置１５は、算出した特徴量を事前解析結果として解析結果記憶装置１６に記憶する。事前解析装置１５は、事前解析後の入力画像をフレームバッファ１０に記憶する。
【００７６】
解析結果記憶装置１６は、入力画像の事前解析結果が一時的に記憶される。事前解析結果としての特徴量は、１画像を予め定めた大きさに分割した単位毎に記憶される。解析結果記憶装置１６は、特徴量を記憶するための任意の記憶装置によって構成される。
【００７７】
発生符号量予測装置１７は、符号化途中の画像の符号化済み領域の発生符号量と、符号化途中の画像の特徴量とに基づいて、符号化途中の画像の未符号化領域の発生符号量を推定する。
【００７８】
続いて、図９を参照して、本発明の実施の形態２にかかる未符号化領域の符号量推定方法について説明する。図９は、本発明の実施の形態２にかかる未符号化領域の符号量推定方法を説明するための図である。
【００７９】
一般的に、画像内の特定の特徴量と、その画像内の発生符号量とは相関があり、画像内の特定の特徴量分布と、その画像内の発生符号量分布とが類似していることが知られている。そこで、本実施の形態２にかかる発生符号量予測装置１７は、符号化途中ピクチャの未符号化領域の発生符号量を、符号化途中ピクチャの符号化済み領域における発生符号量と、符号化途中のピクチャの特徴量から推定する。
【００８０】
例えば、図９に例示するように、符号化途中ピクチャのａで示す範囲まで符号化が進んでいるものとする。つまり、図９では、図６の右図と同様に、符号化途中ピクチャのａで示す範囲は、符号化済み領域であり、符号化途中ピクチャのｂで示す範囲は、未符号化領域である。このときに、符号化途中ピクチャの符号化済み領域の発生符号量がＳａである場合、符号化途中ピクチャの未符号化領域の発生符号量Ｓｂを次式（３）によって推定する。ここで、Ｃａは、符号化途中ピクチャの符号化済み領域の特徴量であり、Ｃｂは、符号化途中ピクチャの未符号化領域の特徴量である。
【００８１】
【数３】
0005706759.tif 000004
【００８２】
上述したように、ピクチャ内の特定の特徴量分布と、そのピクチャ内の発生符号量分布とは、相互に類似している。よって、符号化途中ピクチャの符号化済み領域の発生符号量Ｓａと、符号化途中ピクチャの未符号化領域の発生符号量Ｓｂとの比率は、符号化途中ピクチャの符号化済み領域の発生符号量Ｃａと、符号化途中ピクチャの未符号化の発生符号量Ｃｂとの比率と類似することになる。そのため、式（３）によって、Ｓａ及びＳｂの比率が、Ｃａ及びＣｂの比率と同じとなるように、ＳａからＳｂを算出することで、符号化済みピクチャの未符号化領域の発生符号量を高い精度で推定することができる。
【００８３】
ここで、事前解析装置１５は、特徴量として、例えば、ピクチャ内隣接画素間差分絶対値の総和、ピクチャ間差分絶対値の総和、及びピクチャ内画素分散等の発生符号量に相関のある統計量を算出する。ここで、ピクチャ内隣接画素間差分絶対値とは、ピクチャ内において隣接する画素間の画素値の差分値の絶対値のことである。ピクチャ間差分絶対値とは、符号化途中ピクチャと、符号化途中ピクチャの直前に入力されたピクチャとの同一位置における画素値の差分値の絶対値のことである。なお、事前解析装置１５は、直前に入力されたピクチャに限られず、フレームバッファ１０に格納済みの過去に入力されたピクチャを参照することによって、今回に入力されたピクチャとのピクチャ間差分絶対値を算出するようにしてもよい。ピクチャ内画素分散値とは、ピクチャ内における画素値の分散値である。事前解析装置１５は、マクロブロックライン毎に特徴量を算出して解析結果記憶装置１６に格納していく。
【００８４】
なお、特徴量として、ピクチャ内隣接画素間差分絶対値の総和、ピクチャ間差分絶対値の総和、及びピクチャ内画素分散値のうち、いずれか１つの統計量を使用するようにしてもよく、いずれか２つ以上の統計量を使用するようにしてもよい。いずれか２つ以上の統計量を使用する場合、統計量のそれぞれに予め任意に定めた重みを乗じてから、それらを加算した値を特徴量として使用するようにしてもよい。
【００８５】
ここで、符号化途中ピクチャがＩピクチャのように、フレーム内予測（イントラ予測）によって符号化される場合、発生符号量は、ピクチャ内隣接画素間差分絶対値の総和、あるいはピクチャ内画素分散値に応じて大きくなる。そのため、この場合は、特徴量として、ピクチャ内隣接画素間差分絶対値の総和、及び、ピクチャ内画素分散値のうち、少なくとも１つを使用するようにするとよい。
【００８６】
また、符号化途中ピクチャがＰピクチャ又はＢピクチャのように、動き補償フレーム間予測によって符号化される場合、発生符号量は、ピクチャ間差分絶対値の総和に応じて大きくなる。そのため、この場合は、特徴量として、ピクチャ間差分絶対値の総和を使用するようにするとよい。
【００８７】
つまり、上述した異なる種類の統計量を全て算出するようにして、算出した統計量の中から、ピクチャタイプに応じて選択的に統計量を特徴量として使用するようにしてもよい。
【００８８】
続いて、図１０を参照して、本発明の実施の形態２にかかる画像符号化装置２の処理について説明する。図１０は、本発明の実施の形態２にかかる画像符号化装置２の処理を示すフローチャートである。ここでは、エンコーダ３０に対する符号量制御パラメタの最適化を例に挙げて説明するが、エンコーダ３１〜３３のそれぞれに対しても、並列して同様の処理が行われる。
【００８９】
事前解析装置１５は、入力画像として入力されたピクチャの特徴量をマクロブロックライン毎に算出する（Ｓ１１）。事前解析装置１５は、算出したマクロブロックライン毎の特徴量を解析結果記憶装置１６に格納する。なお、ステップＳ１２、Ｓ１３については、実施の形態１におけるステップＳ１、Ｓ２と同様であるため、説明を省略する。
【００９０】
全てのマクロブロックラインを符号化していない場合（Ｓ１３：ＮＯ）、上述した式（３）によって、特徴量Ｃａ及びＣｂの比率に基づいて、符号化済み領域の発生符号量Ｓａから未符号化領域の発生符号量Ｓｂを推定する（Ｓ１４）。
【００９１】
ここで、解析結果記憶装置１６には、符号化途中ピクチャに含まれるマクロブロックラインのそれぞれにおける特徴量が格納されていることになる。そのため、発生符号量予測装置１７は、解析結果記憶装置１６に格納されたマクロブロックライン毎の特徴量に基づいて、各特徴量Ｃａ及びＣｂを算出する。
【００９２】
具体的には、発生符号量予測装置１７は、符号化途中ピクチャの符号化済み領域のマクロブロックラインの特徴量の総和を、符号化途中ピクチャの符号化済み領域の特徴量Ｃａとして算出する。発生符号量予測装置１７は、符号化途中ピクチャの未符号化領域のマクロブロックラインの特徴量の総和を、符号化途中ピクチャの未符号化領域の特徴量Ｃｂとして算出する。なお、発生符号量予測装置１７は、実施の形態１にかかる発生符号量予測装置１２と同様に、符号化途中ピクチャの符号化済み領域の発生符号量Ｓａとして、符号化途中ピクチャの符号化済み領域のマクロブロックラインの発生符号量の総和を算出する。
【００９３】
発生符号量予測装置１７は、推定した未符号化領域の発生符号量Ｓｂを示す推定符号量情報を符号量制御装置１３に出力する。以降、ステップＳ１５〜Ｓ１７の処理については、実施の形態１におけるステップＳ４〜Ｓ６と同様であるため、説明を省略する。
【００９４】
以上に説明したように、本実施の形態２では、符号化中フレームに含まれる符号化済み領域の特徴量と、符号化中フレームに含まれる未符号化領域の特徴量との比率に基づいて、符号化済み領域の符号量から未符号化領域の符号量を推定するようにしている。
【００９５】
これによれば、符号化中フレームの符号量分布と相関の高い符号化中フレームの特徴量分布を参考にして、未符号化領域の符号量を高い精度で推定することが可能となる。したがって、高い精度で推定された未符号化領域の符号量に基づいて、符号量制御パラメタを決定することができるため、符号化したときにおけるフレームの画質の劣化を抑制することができる。
【００９６】
なお、上述した本実施の形態２では、発生符号量予測装置１７が、符号化途中ピクチャの特徴量に基づいて、符号化途中ピクチャの未符号化領域の発生符号量を推定する場合について例示したが、これに限られない。発生符号量予測装置１７は、符号化途中ピクチャに時間的に近接する符号化済みピクチャの特徴量に基づいて、符号化途中ピクチャの未符号化領域の発生符号量を推定するようにしてもよい。具体的は、発生符号量予測装置１７は、符号化途中ピクチャの符号化済み領域の発生符号量と、符号化途中ピクチャの未符号化領域の発生符号量との比率が、符号化済みピクチャのうち、符号化途中ピクチャの符号化済み領域に対応する領域の特徴量と、符号化済みピクチャのうち、符号化途中ピクチャの未符号化領域に対応する領域の特徴量との比率と同じとなるように、符号化済み領域の発生符号量から未符号化領域の発生符号量を算出するようにしてもよい。
【００９７】
なぜなら、一般的に、符号化途中ピクチャに時間的に近接する符号化済みピクチャであれば、符号化途中ピクチャと相関が高く、符号化途中ピクチャと特徴量分布も類似しているからである。そのため、符号化途中ピクチャに時間的に近接する符号化済みピクチャの特徴量を使用しても、符号化途中ピクチャの未符号化領域の発生符号量を高い精度で推定することができる。
【００９８】
発明の実施の形態３．
続いて、図１１を参照して、本発明の実施の形態３にかかる画像符号化装置３の構成について説明する。図１１は、本発明の実施の形態３にかかる画像符号化装置３の構成図である。なお、実施の形態１及び実施の形態２と同様の構成要素については、同一の符号を付して、説明を省略する。
【００９９】
画像符号化装置３は、フレームバッファ１０、発生符号量記憶装置１１、符号量制御装置１３、ストリーム結合装置１４、事前解析装置１５、解析結果記憶装置１６、発生符号量予測装置１８、エンコーダ３０〜３３、及びストリームバッファ４０〜４３を有する。
【０１００】
発生符号量予測装置１８は、通常時には、符号化済みの画像の発生符号量と、符号化途中の画像の符号化済み領域の発生符号量とに基づいて、符号化途中の画像の未符号化領域の発生符号量を推定する。つまり、発生符号量予測装置１８は、通常時には、実施の形態１と同様に式（１）を使用して符号化途中の画像の未符号化領域の発生符号量を推定する。
【０１０１】
発生符号量予測装置１８は、シーンチェンジによって、符号化済みの画像と符号化途中の画像との間で、シーンの性質が変化した場合には、符号化途中の画像の符号化済み領域の発生符号量と、符号化途中の画像の特徴量とに基づいて、符号化途中の画像の未符号化領域の発生符号量を推定する。つまり、発生符号量予測装置１８は、シーンの性質が変化した場合には、実施の形態２と同様に式（３）を使用して符号化途中の画像の未符号化領域の発生符号量を推定する。上述したように、シーンの性質が変化した場合には、符号化途中ピクチャと時間的に近接した符号化済みピクチャであっても、その符号化済みピクチャの発生符号量分布と、符号化途中ピクチャの発生符号量分布とが類似していない可能性が高いからである。
【０１０２】
続いて、図１２を参照して、本発明の実施の形態３にかかる画像符号化装置３の処理について説明する。図１２は、本発明の実施の形態３にかかる画像符号化装置３の処理を示すフローチャートである。ここでは、エンコーダ３０における符号量制御パラメタの最適化を例に挙げて説明する。
【０１０３】
なお、ステップＳ２１〜２３については、実施の形態２にかかるステップＳ１１〜１３と同様であるため、説明を省略する。
【０１０４】
全てのマクロブロックラインを符号化していない場合（Ｓ２３：ＮＯ）、発生符号量予測装置１８は、符号化済みピクチャと符号化途中ピクチャとの間で、シーンの性質が変化したか否かを判定する（Ｓ２４）。なお、シーンの性質が変化したか否かは、符号化済みピクチャと符号化途中ピクチャとの間の画素値の差分値に基づいて判定する。
【０１０５】
例えば、事前解析装置１５が、符号化済みピクチャと符号化途中ピクチャとの間におけるピクチャ間差分絶対値の総和を算出して解析結果記憶装置１６に格納するようにする。発生符号量予測装置１８は、解析結果記憶装置１６に格納されたピクチャ間差分絶対値の総和を取得する。そして、発生符号量予測装置１８は、ピクチャ全体におけるピクチャ間差分絶対値の総和が、予め任意に定めた閾値を超えた場合に、シーンの性質が変化したと判定し、ピクチャ全体におけるピクチャ間差分絶対値の総和が、予め任意に定めた閾値を超えていない場合に、シーンの性質が変化していないと判定する。
【０１０６】
シーンの性質が変化したと判定した場合（Ｓ２４：Ｙｅｓ）、発生符号量予測装置１８は、実施の形態２におけるステップＳ１４と同様に、符号化途中ピクチャの特徴量に基づいて、符号化途中ピクチャの未符号化領域の推定符号量を推定する（Ｓ２５）。
【０１０７】
シーンの性質が変化していないと判定した場合（Ｓ２４：Ｎｏ）、発生符号量予測装置１８は、実施の形態１にかかるステップＳ３と同様に、符号化済みピクチャの発生符号量に基づいて、符号化途中ピクチャの未符号化領域の推定符号量を推定する（Ｓ２６）。
【０１０８】
発生符号量予測装置１８は、推定した未符号化領域の発生符号量Ｓｂを示す推定符号量情報を符号量制御装置１３に出力する。以降、ステップＳ２７〜Ｓ２９の処理については、実施の形態１におけるステップＳ４〜Ｓ６と同様であるため、説明を省略する。
【０１０９】
以上に説明したように、本実施の形態３では、符号化済みフレームと符号化中フレームとの間に、所定の変化がある場合、符号化中フレームに含まれる符号化済み領域の特徴量と、符号化中フレームに含まれる未符号化領域の特徴量との比率に基づいて、符号化済み領域の符号量から未符号化領域の符号量を推定するようにしている。また、本実施の形態３では、符号化済みフレームと符号化中フレームとの間に、所定の変化がない場合は、符号化中フレームに時間的に近接する符号化済みフレームにおける、符号化中フレームに含まれる符号化済み領域及び未符号化領域に対応する領域のそれぞれの符号量の比率に基づいて、符号化済み領域の符号量から未符号化領域の符号量を推定するようにしている。
【０１１０】
これによれば、符号化済みフレームと符号化中フレームとの間に、シーンチェンジ等の所定の変化があり、符号化済みフレームと符号化中フレームとの相関が高くないと考えられる場合には、符号化中フレームの符号量分布と相関の高い符号化中フレームの特徴量分布を参考にして、未符号化領域の符号量を高い精度で推定することが可能となる。また、符号化済みフレームと符号化中フレームとの間に、シーンチェンジ等の所定の変化がなく、符号化済みフレームと符号化中フレームとの相関が高いと考えられる場合には、符号化中フレームと相関の高い符号化済みフレームの符号量分布を参考にして、未符号化領域の符号量を高い精度で推定することが可能となる。
【０１１１】
したがって、シーンの性質に変化のあるなしに関わらず、高い精度で推定された未符号化領域の符号量に基づいて、適切な符号量制御パラメタを決定することができるため、符号化したときにおけるフレームの画質の劣化を抑制することができる。
【０１１２】
なお、上述した本実施の形態３では、シーンチェンジした場合に、符号化途中ピクチャの特徴量のみを使用するようにしているが、これに限られない。例えば、シーンチェンジした場合に、次式（４）で示すように、符号化途中ピクチャの特徴量と、符号化済みピクチャの発生符号量との平均値を使用して、未符号化領域の発生符号量Ｓｂを算出するようにもよい。
【０１１３】
【数４】
0005706759.tif 000005
【０１１４】
また、シーンチェンジした場合に、次式（５）で示すように、符号化途中ピクチャの特徴量と、符号化済みピクチャの符号量とのそれぞれに重み付けをした加重平均値を使用して、未符号化領域の発生符号量Ｓｂを算出するようにもよい。ここで、Ｗは、０以上１以下の予め定められた任意の値である。
【０１１５】
【数５】
0005706759.tif 000006
【０１１６】
発明の実施の形態４．
続いて、図１３を参照して、本発明の実施の形態４にかかる画像符号化装置４の構成について説明する。図１３は、本発明の実施の形態４にかかる画像符号化装置４の構成図である。なお、実施の形態１〜３と同様の構成要素については、同一の符号を付して、説明を省略する。
【０１１７】
画像符号化装置４は、フレームバッファ１０、発生符号量記憶装置１１、符号量制御装置１３、ストリーム結合装置１４、事前解析装置１９、解析結果記憶装置２０、発生符号量予測装置２１、エンコーダ３０〜３３、及びストリームバッファ４０〜４３を有する。
【０１１８】
事前解析装置１９は、画像符号化装置４の外部から入力画像が入力される。事前解析装置１９は、入力画像を解析して、１画像を予め定めた大きさに分割した単位毎に動き量を算出する。動き量は、例えば、動きベクトルである。事前解析装置１９は、算出した動き量を事前解析結果として解析結果記憶装置２０に記憶する。事前解析装置１９は、事前解析後の入力画像をフレームバッファ１０に記憶する。ここで、事前解析装置１９は、直前に入力された画像に限られず、フレームバッファ１０に格納済みの過去に入力された画像を参照することによって、今回に入力された画像における動き量を算出するようにしてもよい。
【０１１９】
解析結果記憶装置２０は、入力画像の事前解析結果が一時的に記憶される。事前解析結果としての動き量は、１画面を予め定めた大きさに分割した単位毎に記憶される。
【０１２０】
発生符号量予測装置２１は、符号化済みの画像の発生符号量と、符号化途中の画像の符号化済み領域の発生符号量と、符号化途中の画像の動き量とに基づいて、符号化途中の画像の未符号化領域の発生符号量を推定する。
【０１２１】
続いて、図１４Ａ、Ｂを参照して、本発明の実施の形態４にかかる動きがある場合における未符号化領域の符号量推定方法について説明する。図１４Ａ、Ｂは、本発明の実施の形態４にかかる動きがある場合における未符号化領域の符号量推定方法を説明するための図である。
【０１２２】
本実施の形態４では、符号化途中ピクチャの未符号化領域に動きがある場合、事前解析装置１９において検出した符号化途中ピクチャの未符号化領域の動きに応じて補正した位置における符号化済みピクチャの発生符号量を利用して、符号化途中ピクチャの未符号化領域の発生符号量を推定する。
【０１２３】
事前解析装置１９は、図１４Ａに示すように、ピクチャのマクロブロックライン毎の垂直方向の動き量を算出する。事前解析装置１９は、算出した動き量をマクロブロックライン毎に解析結果記憶装置２０に格納する。発生符号量予測装置２１は、符号化途中ピクチャの未符号化領域の発生符号量を推定するときに、解析結果記憶装置２０に格納された動き量に基づいて、未符号化領域の動き量を算出する。ここで、図１４Ａでは、図６と同様に、１枚のピクチャにマクロブロックラインがＮラインある場合について例示している。また、図１４では、図６の右図と同様に、符号化途中ピクチャのａで示す範囲は、符号化済み領域であり、符号化途中ピクチャのｂで示す範囲は、未符号化領域である。
【０１２４】
発生符号量予測装置２１は、例えば、図１４Ａに示すように、符号化途中ピクチャの未符号化領域に含まれるマクロブロックラインの動き量の平均値を、符号化途中ピクチャの未符号化領域の動き量として算出する。なお、未符号化領域の動き量の算出方法は、これに限られない。例えば、符号化途中ピクチャの未符号化領域に含まれるマクロブロックラインの動き量の総和を、未符号化領域の動き量として算出してもよい。例えば、符号化途中ピクチャの未符号化領域に含まれる全てのマクロブロックラインではなく、その中から任意に選択した２つ以上のマクロブロックの平均値又は総和を、未符号化領域の動き量として算出してもよい。例えば、符号化途中ピクチャの未符号化領域に含まれる全てのマクロブロックラインの中間に位置するマクロブロックラインの動き量を、未符号化領域の動き量として算出してもよい。
【０１２５】
図１４Ａに示すように、未符号化領域に垂直下方向の動きがある場合、図１４Ｂに示すように、符号化途中ピクチャの未符号化領域における画像は、符号化済みピクチャにおいて、ピクチャ中の同じ位置に存在しないことになる。つまり、符号化済みピクチャのうち、符号化途中ピクチャの未符号化領域に対応する領域は、符号化途中ピクチャの未符号化領域よりも、垂直上方向にずれた位置に存在することになる。なお、厳密には、符号化途中ピクチャが、符号化済みピクチャよりも後に表示されるピクチャである場合に、このような関係となる。
【０１２６】
符号化途中ピクチャの符号化済み領域と、符号化済みピクチャのうち、符号化途中ピクチャの符号化済み領域に対応する領域との間も、同様のことが言える。符号化途中ピクチャの未符号化領域と、それに対応する領域のそれぞれは、符号化途中ピクチャの符号化済み領域と、それに対応する領域のそれぞれと隣接するからである。この場合、図１４Ｂに示すように、符号化途中ピクチャの符号化済み領域における画像は、符号化済みピクチャ内に全てが収まっていなかったことになる。
【０１２７】
ここで、図１４Ｂにおいて、符号化済みピクチャのａ'で示す範囲は、符号化済みピクチャのうち、符号化途中ピクチャの符号化済み領域であるａで示す範囲に対応する領域であり、符号化済みピクチャのｂ'で示す範囲は、符号化済みピクチャのうち、符号化途中ピクチャの未符号化領域であるｂで示す範囲に対応する領域である。そして、ａ'は、ａよりも短くなり、ｂ'は、ｂと同じ長さとなる。つまり、未符号化領域と、未符号化領域に対応する領域は、ピクチャ中の異なる位置における同一面積の領域となるが、符号化済み領域と、符号化済み領域に対応する領域とは、ピクチャ中の異なる位置における異なる面積の領域となる。
【０１２８】
そこで、発生符号量予測装置２１は、符号化途中ピクチャの未符号化領域に動きがあると判定した場合は、符号化済みピクチャの発生符号量を補正して、符号化途中ピクチャの未符号化領域の発生符号量を推定する。
【０１２９】
具体的には、符号化途中ピクチャの符号化済み領域の発生符号量がＳａである場合、符号化途中ピクチャの未符号化領域の発生符号量Ｓｂを次式（６）によって推定する。ここで、Ｓ'ａは、符号化済みピクチャのａ'で示す範囲の発生符号量であり、Ｓ'ｂは、符号化済みピクチャのｂ'で示す範囲の発生符号量である。
【０１３０】
【数６】
0005706759.tif 000007
【０１３１】
まず、このように、符号化途中ピクチャのｂで示す範囲が、符号化済みピクチャではｂ'で示す範囲に存在していたと考えられる場合、符号化済みピクチャのｂ'で示す範囲の発生符号量を、符号化途中ピクチャの未符号化領域であるｂで示す範囲に対応する領域の発生符号量として使用する。つまり、符号化途中ピクチャの未符号化領域に対応する領域の位置として、未符号化領域の動き量に応じて補正された位置が決定される。符号化途中ピクチャの符号化済み領域に対応する位置についても同様である。
【０１３２】
しかし、上述したように、符号化途中ピクチャのａで示す範囲は、符号化済みピクチャではａ'で示す範囲までしか収まっていない。そのため、符号化済みピクチャのａ'で示す範囲当たりの発生符号量Ｓ'ａを、ａで示す範囲当たりの発生符号量に補正して、推定符号量Ｓｂを算出するようにしている。
【０１３３】
なお、上述した式（６）は、符号化途中ピクチャのａで示す範囲当たりの発生符号量Ｓａを、ａ'で示す範囲当たりの発生符号量に補正して、推定符号量Ｓｂを算出する次式（７）と等価となる。
【０１３４】
【数７】
0005706759.tif 000008
【０１３５】
よって、符号化途中ピクチャの未符号化領域に動きがある場合における未符号化領域の推定符号量Ｓｂは、式（６）及び式（７）のいずれの式によって推定してもよい。つまり、符号化途中ピクチャの未符号化領域に動きがある場合、上述した式（６）又は式（７）のように、発生符号量Ｓａ及び発生符号量Ｓ'ａのいずれか一方の発生符号量を、他方の発生符号量が算出された面積と同一面積当たりの発生符号量となるように補正して、未符号化領域の発生符号量Ｓｂを推定する。
【０１３６】
このように、事前解析結果を利用することで、符号化済みピクチャと符号化途中ピクチャとの間に動きがある場合であっても、適切な領域における発生符号量を使用して、未符号化領域の発生符号量を推定することができる。また、事前解析結果を利用することで、符号化済みピクチャと符号化途中ピクチャとの間に動きがある場合であっても、比較対象となる発生符号量を同一面積当たりの発生符号量に補正して、未符号化領域の発生符号量を推定することができる。そのため、本実施の形態４によれば、動きがある場合であっても、精度の低下を抑制しつつ発生符号量を推定することが可能となる。
【０１３７】
続いて、図１５を参照して、本発明の実施の形態４にかかる画像符号化装置４の処理について説明する。図１５は、本発明の実施の形態４にかかる画像符号化装置４の処理を示すフローチャートである。ここでは、エンコーダ３０における符号量制御パラメタの最適化を例に挙げて説明する。
【０１３８】
事前解析装置１９は、入力画像として入力されたピクチャの動き量をマクロブロックライン毎に算出する（Ｓ３１）。なお、ステップＳ３２、３３については、実施の形態１におけるステップＳ１、Ｓ２と同様であるため、説明を省略する。
【０１３９】
全てのマクロブロックラインを符号化していない場合（Ｓ３３：ＮＯ）、発生符号量予測装置２１は、符号化途中ピクチャの未符号化領域に動きがあるか否かを判定する（Ｓ３４）。ここで、解析結果記憶装置２０には、符号化途中ピクチャに含まれるマクロブロックラインのそれぞれにおける動き量が格納されていることになる。そのため、発生符号量予測装置２１は、解析結果記憶装置２０に格納されたマクロブロックライン毎の動き量に基づいて、符号化途中ピクチャの未符号化領域の動き量を算出する。具体的には、発生符号量予測装置２１は、符号化途中ピクチャの未符号化領域のマクロブロックラインの動き量の平均値を、符号化途中ピクチャの未符号化領域の動き量として算出する。発生符号量予測装置２１は、算出した未符号化領域の動き量が動きを示している場合、未符号化領域に動きがあると判定する。
【０１４０】
未符号化領域に動きがないと判定した場合（Ｓ３４：Ｎｏ）、発生符号量予測装置２１は、実施の形態１にかかるステップＳ３と同様に、符号化済みピクチャの発生符号量に基づいて、符号化途中ピクチャの未符号化領域の推定符号量を推定する（Ｓ３５）。
【０１４１】
未符号化領域に動きがあると判定した場合（Ｓ３４：Ｙｅｓ）、発生符号量予測装置２１は、符号化途中ピクチャの未符号化領域の動き量に応じて、符号化済みピクチャのうち、符号化途中ピクチャの符号化済み領域及び未符号化領域のそれぞれに対応する領域の位置を補正する。そして、発生符号量予測装置２１は、上述した式（６）又は（７）によって、発生符号量Ｓ'ａ及び発生符号量Ｓａが同一面積当たりの発生符号量となるように補正した上で、発生符号量Ｓ'ａ及びＳ'ｂの比率に基づいて、発生符号量Ｓａから未符号化領域の発生符号量Ｓｂを推定する（Ｓ３６）。
【０１４２】
ここで、未符号化領域に動きがある場合において、符号化済みピクチャのうち、符号化途中ピクチャの未符号化領域に対応する領域の動き量に応じた位置を特定する方法は、どのような方法であってもよい。一例としては、符号化途中ピクチャの未符号化領域の動き量に基づいて、未符号化領域とそれに対応するべき領域とが何マクロブロックライン分ずれているかを導き出すことができる情報を画像符号化装置４が有する記憶装置（図示せず）に予め用意しておく。この情報は、例えば、動き量からマクロブロックライン数を得ることができるテーブル又は関数等としてよい。そして、発生符号量予測装置２１が、この情報を参照して、未符号化領域の動き量から、未符号化領域に対応する領域の動き量に応じた位置を特定できるようにする。なお、発生符号量については、実施の形態１と同様に、対象とする領域のマクロブロックラインの発生符号量の総和によって算出することができる。
【０１４３】
発生符号量予測装置２１は、推定した未符号化領域の発生符号量Ｓｂを示す推定符号量情報を符号量制御装置１３に出力する。以降、ステップＳ３７〜Ｓ３９の処理については、実施の形態１におけるステップＳ４〜Ｓ６と同様であるため、説明を省略する。
【０１４４】
以上に説明したように、本実施の形態４では、符号化中フレームの動き量に基づいて、符号化中フレームに動きがあると判定した場合、符号化済み領域及び未符号化領域のそれぞれに対応する領域の位置を、符号化中フレームにおける動き量に応じて補正するようにしている。
【０１４５】
これによれば、符号化中フレームと、符号化中フレームと相関の高い符号化済みフレームとの間に動きがある場合であっても、符号化済みフレームの符号量分布の適切な位置を参考にして、未符号化領域の符号量を高い精度で推定することが可能となる。したがって、高い精度で推定された未符号化領域の符号量に基づいて、適切な符号量制御パラメタを決定することができるため、符号化したときにおけるフレームの画質の劣化を抑制することができる。
【０１４６】
なお、上述した本実施の形態４では、未符号化領域に垂直下方向に動きがある場合について例示したが、図１６Ａに例示するように、未符号化領域に垂直上方向に動きがある場合についても、同様に、符号化済みピクチャの発生符号量を補正して、符号化途中ピクチャの未符号化領域の発生符号量を推定するようにしてもよい。図１６Ａに示すように、未符号化領域に垂直上方向の動きがある場合、図１６Ｂに示すように、符号化途中ピクチャのｂで示す範囲が、符号化済みピクチャではｂ'で示す範囲までしか収まっていないことになる。ここで、Ｎ、ａ、ｂ、ａ'、及びｂ'については、図１４Ａ及び図１４Ｂと同様であるため、説明を省略する。ただし、図１６Ｂでは、ａ'は、ａと同じ長さとなり、ｂ'は、ｂよりも短くなる。
【０１４７】
このような場合、符号化途中ピクチャの未符号化領域の発生符号量Ｓｂを次式（８）によって推定する。Ｓａ、Ｓ'ａ、及びＳ'ｂについては、式（６）及び（７）と同様であるため、説明を省略する。
【０１４８】
【数８】
0005706759.tif 000009
【０１４９】
このように、符号化済みピクチャのｂ'で示す範囲当たりの発生符号量Ｓ'ｂを、ｂで示す範囲当たりの発生符号量に補正して、推定符号量Ｓｂを算出するようにすることもできる。
【０１５０】
つまり、実施の形態４にかかる、動きがある場合における未符号化領域の符号量推定方法は、符号化途中ピクチャの符号化済み領域の発生符号量と、符号化途中ピクチャの符号化済み領域に対応する領域の発生符号量とが同一面積当たりの発生符号量となるように、いずれかの発生符号量を補正するものに限られない。符号化途中ピクチャの未符号化領域の発生符号量と、符号化途中ピクチャの未符号化領域に対応する領域の発生符号量とが同一面積当たりの発生符号量となるように、符号化途中ピクチャの未符号化領域に対応する領域の発生符号量を補正するようにしてもよい。
【０１５１】
また、これらの補正は、上述した実施の形態４のように、完全な同一面積当たりの発生符号量に補正するものに限られず、符号量制御に影響を与えないと考えられる程度に略同一面積当たりの発生符号量に補正するようにしてもよい。一例としては、それぞれの面積の差が、いずれかの面積の数パーセント以内となる程度に略同一面積当たりの発生符号量に補正するようにしてもよい。
【０１５２】
また、上述した本実施の形態４では、符号化途中ピクチャの未符号化領域の動き量を算出して使用するようにしているが、これに限られない。例えば、同様にして、符号化途中ピクチャ全体の動き量、又は、符号化途中ピクチャの符号化済みピクチャの動き量を算出して使用するようにしてもよい。
【０１５３】
なお、本実施の形態４は、実施の形態３と組み合わせて実施するようにしてもよい。例えば、発生符号量予測装置２１は、シーンの性質が変化したと判定した場合に（Ｓ２４：Ｎｏ）、未符号化部分に動きがあるか否かを判定するようにし（Ｓ３４）、判定結果に応じて上述の処理を実行するようにする（Ｓ３５、Ｓ３６）。この場合、事前解析装置１９は、特徴量とともに動き量も算出するようにする。
【０１５４】
発明の実施の形態５．
続いて、図１７を参照して、本発明の実施の形態５にかかる画像符号化装置５の構成について説明する。図１７は、本発明の実施の形態５にかかる画像符号化装置５の構成図である。なお、実施の形態１〜４と同様の構成要素については、同一の符号を付し、説明を省略する。
【０１５５】
画像符号化装置５は、フレームバッファ１０、発生符号量記憶装置１１、ストリーム結合装置１４、事前解析装置１９、解析結果記憶装置２０、発生符号量予測装置２２、バッファ占有量予測装置２３、符号量制御装置２４、エンコーダ３０〜３３、及びストリームバッファ４０〜４３を有する。
【０１５６】
発生符号量予測装置２２は、実施の形態３にかかる発生符号量予測装置１８と同様にして、符号化途中ピクチャの未符号化領域の発生符号量を推定するが、さらに符号化途中ピクチャの符号化済み領域の発生符号量と、符号化途中ピクチャの符号化済み領域及び未符号化領域のそれぞれの発生符号量及び推定符号量とをバッファ占有量予測装置２３に出力する。ここで、発生符号量予測装置２２は、バッファ占有量の予測に必要な発生符号量を発生符号量記憶装置１１から取得してバッファ占有量予測装置２３に出力する。
【０１５７】
バッファ占有量予測装置２３は、発生符号量予測装置２２から出力された発生符号量及び推定符号量に基づいて、デコーダ側の仮想バッファのバッファ占有量の推移を予測する。ここで、デコーダ側の仮想バッファとは、例えば、ＭＰＥＧ−２及びＨ．２６４等の動画像符号化規格において規定される仮想デコーダ・モデルにおけるバッファである。なお、バッファ占有量予測装置２３は、直接、発生符号量記憶装置１１から発生符号量を取得するようにしてもよい。
【０１５８】
符号量制御装置２４は、発生符号量予測装置２２によって推定された未符号化領域の推定符号量と、未符号化領域に割り当て可能な目標符号量との差分に加えて、さらにバッファ占有量予測装置２３によって予測されたデコーダ側の仮想バッファのバッファ占有量の推移に基づいて、符号量制御パラメタを決定する。
【０１５９】
続いて、図１８を参照して、本発明の実施の形態５にかかるバッファ占有量の推定方法について説明する。図１８は、本発明の実施の形態５にかかるバッファ占有量の推定方法によって推定されたデコーダ側の仮想バッファのバッファ占有量を示す図である。なお、図１８では、図２におけるピクチャ５の符号化終了時点において、デコーダ側の仮想バッファのバッファ占有量を推定する場合について例示している。
【０１６０】
バッファ占有量予測装置２３は、図２のピクチャ５の符号化終了時点で、符号化途中ピクチャであるピクチャ６〜９のそれぞれの符号化終了時点における、デコーダ側の仮想バッファのバッファ占有量を次式（９）〜（１２）によって推定する。ここで、Ｂ（ｘ）は、ピクチャｘの符号化終了時点におけるデコーダ側の仮想バッファのバッファ占有量である。言い換えると、Ｂ（ｘ）は、デコーダ側において仮想バッファからピクチャｘを引き抜く前におけるバッファ占有量である。Ｓ（ｘ）は、ピクチャｘの発生符号量である。Ｓａ（ｘ）は、ピクチャｘの符号化済み領域の発生符号量であり、Ｓｂ（ｘ）は、ピクチャｘの未符号化領域の発生符号量である。Ｒｔは、予め定められたビットレートＲと、ピクチャ符号化間隔Δｔとを乗じた値である。
【０１６１】
【数９】
0005706759.tif 000010
【０１６２】
図２におけるピクチャ５の符号化終了時点では、図３に示したように、ピクチャ６〜８のそれぞれは符号化途中である。そのため、上述した式（９）〜（１２）のように、ピクチャ６〜８のそれぞれの未符号化領域の推定符号量Ｓｂ（６）、Ｓｂ（７）、Ｓｂ（８）と、ピクチャ５〜８のそれぞれの符号化済み領域の発生符号量Ｓ（５）、Ｓａ（６）、Ｓａ（７）、Ｓａ（８）とに基づいて、符号化途中ピクチャ６〜８、及び、次に符号化を開始するピクチャ９のそれぞれの符号化終了時点におけるバッファ占有量Ｂ（６）〜Ｂ（９）の推移を推定する。
【０１６３】
さらに、式（９）〜（１２）は、次式（１３）として表すことができる。式（１３）は、あるピクチャｎの符号化終了時点において、そのピクチャｎ以降に符号化が開始された符号化途中ピクチャ、又は、次に符号化を開始するピクチャであるピクチャｉの符号化終了時点におけるデコーダ側の仮想バッファのバッファ占有量を算出する式となる。なお、式（１３）に上述した式（９）のケースを当てはめた場合は、(Ｓａ（５）＋Ｓｂ（５）)＝Ｓ（５）となる。ピクチャ５は、符号化が終了しているため、Ｓａ（５）＝Ｓ（５）となり、Ｓｂ（５）＝０となるからである。また、Ｂ（１）は、仮想バッファサイズの大きさまでの値で任意の値に設定する。例えば、仮想バッファサイズから適当なマージンを差し引いた値にする。
【０１６４】
【数１０】
0005706759.tif 000011
【０１６５】
符号量制御装置２４は、バッファ占有量予測装置２３によって推定されたバッファ占有量に基づいて、仮想バッファが破綻しないように符号量制御を行う。例えば、推定されたバッファ占有量が大きく、オーバーフローが発生する可能性がある場合は、発生符号量を増加させるように制御する。逆に、推定されたバッファ占有量が小さく、アンダーフローが発生する可能性がある場合は、発生符号量を低減するように制御する。発生符号量の制御は、上述したように、量子化パラメタを調整することによって行う。
【０１６６】
符号量制御装置２４は、オーバーフローが発生する可能性がある否かを、例えば、Ｂ（ｉ）が、予め定められた仮想バッファのバッファサイズより大きいか否か判定する。つまり、符号量制御装置２４は、Ｂ（ｉ）がバッファサイズより大きい場合に、オーバーフローが発生する可能性があると判定する。また、オーバーフローが発生する可能性がある否かは、Ｂ（ｉ）とバッファサイズとの差分が予め定めた閾値よりも小さいか否かによって判定するようにしてもよい。つまり、Ｂ（ｉ）とバッファサイズとの差分が予め定めた閾値よりも小さい場合に、オーバーフローが発生する可能性があると判定する。
【０１６７】
また、符号量制御装置２４は、アンダーフローが発生する可能性がある否かを、例えば、仮想バッファからピクチャを引き抜いた後におけるバッファ占有量が、０未満となるか否かによって判定する。つまり、符号量制御装置２４は、仮想バッファからピクチャを引き抜いた後のバッファ占有量が、バッファサイズより小さい場合に、アンダーフローが発生する可能性があると判定する。また、アンダーフローが発生する可能性がある否かは、仮想バッファからピクチャ引き抜いた後のバッファ占有量が予め定めた閾値よりも小さいか否かによって判定するようにしてもよい。つまり、仮想バッファからピクチャ引き抜いた後のバッファ占有量が予め定めた閾値よりも小さい場合に、アンダーフローが発生する可能性があると判定する。
【０１６８】
ここで、仮想バッファからのピクチャ引き抜き後のバッファ占有量は、Ｂ（ｉ）−（Ｓａ（ｉ）＋Ｓｂ（ｉ））となる。つまり、仮想バッファからのピクチャ引き抜き後のバッファ占有量は、次式（１４）によって表すことができる。
【０１６９】
【数１１】
0005706759.tif 000012
【０１７０】
よって、符号量制御装置２４は、例えば、未符号化領域の推定符号量が、未符号化領域の目標符号量よりも大きい場合であっても、オーバーフローが発生する可能性があるときは、発生符号量を低減させないように制御する。また、符号量制御装置２４は、例えば、未符号化領域の推定符号量が、未符号化領域の目標符号量よりも小さい場合であっても、アンダーフローが発生する可能性があるときは、発生符号量を増加させないように制御するようにしてもよい。
【０１７１】
なお、本実施の形態５にかかる画像符号化装置５におけるその他の符号化における処理内容については、図１２を参照して説明した実施の形態３にかかる画像符号化装置３の処理と同様となるため、説明を省略する。
【０１７２】
以上に説明したように、本実施の形態５では、バッファの占有量の推移において、バッファから符号化中フレームを引き抜いたときのバッファの占有量を、符号化中フレームの符号化済み領域の符号量と、発生符号量予測装置２２によってその符号化済み領域の符号量から推定された未符号化領域の符号量とに基づいて算出した符号化中フレームの符号量によって推定するようにしている。
【０１７３】
これによれば、発生符号量が確定している符号化済み領域の発生符号量と、発生符号量予測装置２２によって高い精度で推定された未符号化領域の推定符号量とに基づいて、ピクチャの発生符号量を高い精度で算出することができる。よって、仮想デコーダにおけるバッファの占有量の推移を高い精度で推定することができる。そのため、推定されたバッファ占有量の推移に基づいて、仮想デコーダにおけるバッファが破綻しないように、より正確に符号量制御を行うことができる。
【０１７４】
つまり、ＭＰＥＧ−２及びＨ．２６４等の動画像符号化の規格に定められた仮想デコーダのバッファの制約を考慮して、規格に対応したビットストリームを生成することができる。言い換えると、規格の制約を順守しつつ、適切な符号量制御が可能となる。
【０１７５】
なお、上述した本実施の形態５では、発生符号量予測装置２２が、実施の形態３にかかる発生符号量予測装置１８と同様にして、符号化途中ピクチャの未符号化領域の発生符号量を推定する場合について例示したが、これに限られない。例えば、発生符号量予測装置２２が、実施の形態１にかかる発生符号量予測装置１２と同様に、符号化済みピクチャの発生符号量と、符号化途中ピクチャの符号化済み領域の発生符号量とに基づいて、符号化途中ピクチャの未符号化領域の発生符号量を推定するものであってもよい。また、発生符号量予測装置２２が、実施の形態２にかかる発生符号量予測装置１７と同様に、符号化途中ピクチャの符号化済み領域の発生符号量と、符号化途中ピクチャの特徴量とに基づいて、符号化途中ピクチャの未符号化領域の発生符号量を推定するものであってもよい。また、発生符号量予測装置２２が、実施の形態４にかかる発生符号量予測装置２１と同様に、符号化済みピクチャの発生符号量と、符号化途中ピクチャの符号化済み領域の発生符号量と、符号化途中ピクチャの動き量とに基づいて、符号化途中ピクチャの未符号化領域の発生符号量を推定するものであってもよい。
【０１７６】
発明の実施の形態６．
続いて、図１９を参照して、本発明の実施の形態６にかかる画像符号化装置６の構成について説明する。図１９は、本発明の実施の形態６にかかる画像符号化装置６の構成図である。なお、実施の形態１〜５と同様の構成要素については、同一の符号を付して、説明を省略する。
【０１７７】
画像符号化装置６は、フレームバッファ１０、発生符号量記憶装置１１、事前解析装置１９、解析結果記憶装置２０、発生符号量予測装置２２、バッファ占有量予測装置２３、符号量制御装置２４、初期遅延量計算装置２５、ストリーム修正位置記憶装置２６、ストリーム結合装置２７、エンコーダ３０〜３３、及びストリームバッファ４０〜４３を有する。
【０１７８】
初期遅延量計算装置２５は、デコーダ側の仮想バッファにおけるピクチャの初期遅延量の確定後に、確定した正しいピクチャの初期遅延量を計算する。初期遅延量計算装置２５は、計算した正しい初期遅延量をストリーム結合装置２７に出力する。
【０１７９】
ストリーム修正位置記憶装置２６は、ストリームバッファ４０〜４３上において、初期遅延量データの記録が開始されている位置を示す初期遅延量データ開始位置データと、初期遅延量データがとり得る最大のビット量を示す初期遅延量データビット量とが格納されている。ストリーム修正位置記憶装置２６は、初期遅延量データ開始位置データ及び初期遅延量データビット量を記憶するための任意の記憶装置を含む。
【０１８０】
ストリーム結合装置２７は、実施の形態１〜５のそれぞれにおけるストリーム結合装置１４と同様に、ストリームバッファ４０〜４３のそれぞれに記憶されたビットストリームを結合して１つのビットストリームを生成するが、さらにビットストリーム中の初期遅延量データを、初期遅延量計算装置２５から出力された正しい初期遅延量に置き換える。ストリーム結合装置２７は、ビットストリームを結合するための作業用の任意の記憶装置を含むようにしてもよい。
【０１８１】
続いて、図２０及び図２１を参照して、ＭＰＥＧ−２及びＨ．２６４等の動画符号化規格においてビットストリームを生成する際における問題点について説明する。図２０は、ＭＰＥＧ−２等の動画符号化規格における１ピクチャのビットストリームの構成を示す図である。図２１は、図２に示す場合において、ピクチャ５の符号化終了時点で推定された仮想バッファのバッファ占有量の推移と、ピクチャ８の符号化終了によって確定した実際の仮想バッファのバッファ占有量の推移とを示す図である。
【０１８２】
図２０に示すように、ＭＰＥＧ−２では、１ピクチャのビットストリームには、ピクチャヘッダと、マクロブロック符号領域とが含まれる。ピクチャヘッダには、初期遅延量データが格納される初期遅延データ領域が含まれている。初期遅延量データは、仮想デコーダ・モデルにおけるピクチャの初期遅延量を示す。マクロブロック符号領域は、符号化されたマクロブロックのデータが格納される。つまり、マクロブロック符号領域には、ピクチャを符号化したデータが格納される。Ｈ．２６４でも同様に、補助的な付加情報として初期遅延量データを含むデータ領域が、マクロブロック符号領域の前に配置される。なお以下の説明では、マクロブロック符号領域の前に配置されており、Ｈ．２６４で定義されているピクチャパラメタセットや補助的な付加情報等のように、ピクチャ層に関する情報が符号化されたデータを含むデータ領域を、ピクチャヘッダと呼ぶことにする。
【０１８３】
このように、ＭＰＥＧ−２及びＨ．２６４等の動画符号化規格では、初期遅延量データがピクチャヘッダに含まれている。また、このような動画符号化規格では、初期遅延量データは、予め定められたビット数で表現される固定長のデータか、あるいは、初期遅延量を表現可能な最小限のビット数で表現される可変長のデータとなる。初期遅延量データが可変長のデータとして表現される場合、初期遅延量データ領域は、初期遅延量データに応じたサイズとなる。したがって、初期遅延量データ領域が含まれるピクチャヘッダも、初期遅延量データに応じたサイズとなる。
【０１８４】
ここで、規格では、ピクチャヘッダは、１バイト単位でアライメントされる。つまり、ピクチャヘッダのビット量は、８ビット（１バイト）の倍数となる。例えば、上述したピクチャ層に関する情報のような、ピクチャヘッダに含まれるデータが８７ビットで表現可能な場合、ピクチャヘッダにおける残りの１ビットは、スタッフィングビットで埋められる。つまり、ピクチャヘッダのうち、スタッフィングビットを除いたデータが、ピクチャの復号及び再生等に利用される有効なデータとなる。以下、ピクチャヘッダのうち、有効なデータについて「ピクチャヘッダデータ」と呼ぶことにする。もちろん、ピクチャヘッダのサイズと、ピクチャヘッダデータのサイズが等しくなる場合もある。この場合は、ピクチャヘッダにスタッフィングビットは含まれない。なお、初期遅延量データ領域の開始位置は、８ビット（１バイト）単位の位置とは限らない。言い換えると、初期遅延量データ領域の開始位置は、アライメント境界になるとは限らない。
【０１８５】
ここで、エンコーダによってビットストリームを生成するときに、ビットストリーム中のデータを出力順に生成していくことで、ビットストリームを生成する処理を単純にすることができる。具体的には、まず、ピクチャヘッダを作成して、ピクチャヘッダに続けて、マクロブロックを符号化したデータを、マクロブロックを符号化する毎につなげていく。このように最初にピクチャヘッダを作成しておけば、後は符号化したマクロブロックをつなげていくのみで、ビットストリームを生成することができる。
【０１８６】
しかし、図２に示す時刻ｔのような、エンコーダ３０でのピクチャ５の符号化終了し、ピクチャ９の符号化を開始する前の時点では、ピクチャ９の符号化終了時点の仮想バッファのバッファ占有量が確定していない。言い換えると、デコーダ側において仮想バッファからピクチャ９を引き抜いてデコードする前のデコーダ側の仮想バッファのバッファ占有量が確定していない。よって、この時点では、確定したピクチャ９の初期遅延量を、ピクチャヘッダに格納することはできない。ここで、ピクチャ９の符号化終了時における仮想バッファのバッファ占有量は、ピクチャ８の符号化終了時点で確定する。具体的には、図２１に示すように、ピクチャ８の符号化終了時点には、ピクチャ８の符号化終了時点におけるバッファ占有量Ｂ（８）が分かり、ピクチャ８の発生符号量Ｓ（８）も確定している。そのため、後述するように、予め定められたビットレートによって、確定したピクチャ９の符号化終了時における仮想バッファのバッファ占有量を算出することができるからである。
【０１８７】
そこで、ピクチャ５の符号化が終了し、ピクチャ９の符号化を開始する前の時点では、ピクチャ９の初期遅延量を推定してピクチャ９のピクチャヘッダに格納しておき、ピクチャ８の符号化が終了した時点で、ピクチャ９のピクチャヘッダに格納された推定初期遅延量を、確定した正しい初期遅延量に置き換える方法も考えられる。
【０１８８】
しかし、図２１に示すように、推定した初期遅延量と、正しい初期遅延量とは、必ずしも同じ値となるとは限らない。つまり、推定した初期遅延量を示す初期遅延量データと、正しい初期遅延量を示す初期遅延量データとで、初期遅延量データのサイズが異なってしまう場合がある。この場合、上述した方法では、ピクチャヘッダのサイズが変わってしまうため、それに合わせてビットストリームにおけるピクチャヘッダ及びマクロブロック符号領域の配置を再構成して、ビットストリームのサイズを変更する必要がでてしまうという問題がある。そのため、複数のエンコーダで並列にビットストリームを生成した場合に、それらのビットストリームを単純に結合するのみで１つのビットストリームを生成することができなくなってしまう。つまり、ビットストリームを生成する処理が複雑になってしまうという問題がある。
【０１８９】
そこで、本実施の形態６では、初期遅延量データ領域を、初期遅延量データがとり得る最大値の初期遅延量データビット量で確保しておく。つまり、ピクチャヘッダを、ピクチャヘッダがとり得る最大サイズとしておく。そして、正しい初期遅延量が確定した後に、正しい初期遅延量を示す初期遅延量データで置き換えるようにする。このときに、必要に応じてスタッフィングビットをピクチャヘッダに追加的に含めるようにすることで、初期遅延量データの置き換え前後で、ピクチャヘッダのサイズを同一サイズに維持するようにする。以下、エンコーダ３０において生成されるピクチャ９のビットストリームを例に挙げて説明するが、エンコーダ３０〜３３のそれぞれにおいて生成される他のピクチャのビットストリームについても同様の処理が行われる。
【０１９０】
図２１を参照して説明すると、エンコーダ３０は、ピクチャ９の符号化開始時には、ピクチャ９のピクチャヘッダの初期遅延量データ領域を、初期遅延量データがとり得る最大のサイズで確保しておく。つまり、エンコーダ３０は、ストリームバッファ４０にピクチャヘッダを格納する際に、初期遅延量データがとり得る最大のサイズの仮の初期遅延量データを格納する。仮の初期遅延量データとしては、例えば、スタッフィングビットで埋められたデータを使用する。エンコーダ３０は、ピクチャヘッダに続けてフレームを符号化したデータを、フレームの符号化に応じて順次、ストリームバッファ４０に格納していく。
【０１９１】
その後、ピクチャ８の符号化が終了したとき、ピクチャ９の符号化終了時点のデコーダ側の仮想バッファのバッファ占有量が確定する。そのため、ピクチャ８の符号化が終了したときに、初期遅延量計算装置２５は、ピクチャ９の正しい初期遅延量を計算する。
【０１９２】
なお、このときのピクチャ９の初期遅延量Ｄ（９）は、次式（１５）によって算出する。また、式（１６）中のピクチャ９の符号化終了時点におけるバッファ占有量Ｂ（９）は、次式（１６）によって算出する。ここで、Ｒは、予め定められたビットレートであり、Ｓ（ｘ）は、ピクチャｘの発生符号量であり、Ｒｔは、ビットレートＲと、ピクチャ符号化終了間隔Δｔとを乗じた値である。なお、初期遅延量計算装置２５は、ピクチャ８の発生符号量Ｓ（８）を発生符号量記憶装置１１から取得する。
【０１９３】
【数１２】
0005706759.tif 000013
【０１９４】
さらに、式（１５）は、次式（１７）で表すことができ、式（１６）は、次式（１８）で表すことができる。ｉは、ピクチャ番号である。例えば、Ｄ（ｉ）は、ピクチャｉの初期遅延量を示す。なお、Ｂ（ｉ−１）は、ピクチャｉ−２の符号化が終了したときに算出されていることになるため、それを使用すればよい。また、Ｂ（１）は、仮想バッファサイズの大きさまでの値で任意の値に設定する。例えば、仮想バッファサイズから適当なマージンを差し引いた値にする。
【０１９５】
【数１３】
0005706759.tif 000014
【０１９６】
初期遅延量計算装置２５は、計算したピクチャ９の正しい初期遅延量を、ストリーム結合装置２７に出力する。
【０１９７】
一方、ストリーム修正位置記憶装置２６は、発生符号量記憶装置１１に格納された発生符号量に基づいて、ストリームバッファ４０におけるピクチャ９の初期遅延量データ開始位置を算出する。ここで、ストリームバッファ４０〜４３のそれぞれは、ビットストリームが生成順に循環的に記憶されていくバッファであるものとする。この場合、ピクチャ９の１つ前に符号化されるピクチャ５の発生符号量が分かれば、ストリームバッファ４０におけるピクチャ９のピクチャヘッダの開始位置が分かる。その理由は、ピクチャ５の発生符号量が分かれば、ピクチャ５のビットストリームのマクロブロック符号領域のサイズが分かり、それにピクチャヘッダのサイズを加算することによってピクチャ５のビットストリームのサイズが分かるからである。つまり、ピクチャ９のピクチャヘッダの開始位置となる、ピクチャ５のビットストリームの終端位置が分かるからである。なお、ピクチャヘッダのサイズは、ストリーム修正位置記憶装置２６に予め記憶しておけばよい。
【０１９８】
このようにして、ストリーム修正位置記憶装置２６は、発生符号量記憶装置１１に格納されたピクチャ５の発生符号量を参照することで、ピクチャ９のピクチャヘッダの開始位置を算出する。そして、ストリーム修正位置記憶装置２６は、算出したピクチャ９のピクチャヘッダの開始位置を基準として、ピクチャ９の初期遅延量データ開始位置を算出する。ストリーム修正位置記憶装置２６は、算出したピクチャ９の初期遅延量データ開始位置を示す初期遅延量データ開始位置データを記憶する。なお、初期遅延量データ開始位置は、初期遅延量データ開始位置のピクチャヘッダ先頭からの相対的な位置を、ストリーム修正位置記憶装置２６に予め記憶しておくことによって算出可能とする。また、初期遅延量データビット量についても、初期遅延量データがとり得る最大値として固定的に予め決まっているため、ストリーム修正位置記憶装置２６に予め記憶しておけばよい。
【０１９９】
そして、ストリーム結合装置２７は、ストリーム結合時に、ストリーム修正位置記憶装置２６に記憶された、ピクチャ９の初期遅延量データ開始位置データ及び初期遅延量データビット量を取得する。ストリーム結合装置２７は、初期遅延量データ開始位置データが示すピクチャ９の初期遅延量データ開始位置から、初期遅延量データビット量分の領域のデータを、ピクチャ９の初期遅延量データ領域として特定する。ストリーム結合装置２７は、特定した領域におけるピクチャ９の初期遅延量データを、初期遅延量計算装置２５から出力されたピクチャ９の正しい初期遅延量を示す初期遅延量データに置き換える。
【０２００】
ここで、ストリーム結合装置２７は、正しい初期遅延量データの先頭が、初期遅延量データ開始位置に位置するように、初期遅延量データ開始位置から正しい初期遅延量データを配置する。このとき、置き換え後の初期遅延量データのサイズが、置き換え前の初期遅延量データのサイズよりも小さくなる場合、単純に初期遅延量データのみを置き換えるようにすると、初期遅延量データと、初期遅延量データに後続するデータとの間で隙間が発生してしまう。よって、この場合、データ間の隙間の発生を防止するために、ストリーム結合装置２７は、後続するデータを初期遅延量データの直後に続くように移動する。
【０２０１】
しかし、そのようにすると、ピクチャヘッダデータの終端が、前方に移動することになる。そのため、ストリーム結合装置２７は、ピクチャヘッダにおいて、新たなピクチャヘッダデータの終端以降に、移動前のデータの一部が残らないようにするため、新たなピクチャヘッダデータの終端から、少なくともデータの移動量に相当するビット数分のビットをスタッフィングビットに置き換える。つまり、置き換え後の初期遅延量データのサイズが置き換え前の初期遅延量データよりも小さくなる場合は、置き換え後の初期遅延量データの終端から、置き換え前のピクチャヘッダデータの終端までのデータも置き換える必要がある。
【０２０２】
なお、ストリーム結合装置２７は、アライメント単位で、仮の初期遅延量データを、正しい初期遅延量データに置き換える。ここで、置き換え前後で初期遅延量データのサイズが変わらない場合、データを置き換える範囲は、アライメント単位のサイズであり、かつ初期遅延量データを含む範囲であれば、どのような範囲としてもよい。
【０２０３】
例えば、初期遅延量データのサイズが１６ビット（２バイト）であり、初期遅延量データ領域の開始位置がアライメント境界に位置する場合、最小限のサイズで初期遅延量データを置き換えるのであれば、１６ビット（２バイト）の初期遅延量データのみを置き換えればよい。また、初期遅延量データのサイズが１６ビット（２バイト）であるが、初期遅延量データ領域の開始位置がアライメント境界に位置しない場合は、最小限のサイズで初期遅延量データを置き換えるのであれば、初期遅延量データを含む２４ビット（３バイト）のデータを置き換えればよい。この場合、初期遅延量データが３つのアライメントに跨ることになるからである。さらに、この場合は、初期遅延量データを除いた合計８ビット（１バイト）分のデータは、置き換え前と同一のデータとすればよい。
【０２０４】
また、これらの場合で、最小限のサイズ以外のサイズで初期遅延量データを置き換えるのであれば、例えば、初期遅延量データの開始位置から、ピクチャヘッダデータの終端までが含まれる範囲を置き換え対象としてもよく、ピクチャヘッダのうち、ピクチャヘッダデータ全体を置き換え対象としてもよく、ピクチャヘッダ全体を置き換え対象としてもよい。なお、ピクチャヘッダデータ全体又はピクチャヘッダ全体を置き換え対象とする場合、例えば、ストリーム修正位置記憶装置２６に、初期遅延量データ開始位置に代えて、ピクチャヘッダ開始位置を示すデータを記憶することで、ストリーム結合装置２７が置き換え対象となる領域を特定するようにする。
【０２０５】
なお、上述したように、置き換え後に初期遅延量データのサイズが小さくなる場合は、置き換え前のピクチャヘッダデータの終端までデータを置き換える必要がある。そのため、この場合、データを置き換える範囲は、アライメント単位のサイズであり、初期遅延量データの先頭から、置き換え前のピクチャヘッダデータの終端までのデータを含む範囲であれば、どのようなサイズとしてもよい。
【０２０６】
ここで、置き換え後に初期遅延量データのサイズが小さくなる場合も、そうでない場合も、置き換え前のピクチャヘッダデータの終端以降の範囲は、スタッフィングビットで埋められたままとなる。ただし、これは、ピクチャヘッダのサイズと、ピクチャヘッダデータのサイズとが等しくない場合に限る。また、置き換え後に初期遅延量データのサイズが小さくなる場合は、上述したように、置き換え前のピクチャヘッダデータが残らないようにスタッフィングビットへの置き換えが行われる。したがって、ピクチャヘッダのうち、スタッフィングビットで埋められた範囲を除いた範囲のピクチャヘッダデータを、正しい初期遅延量データを含むデータとして取得することができる。
【０２０７】
なお、本実施の形態６にかかる画像符号化装置６におけるその他の符号化における処理内容については、図１２を参照して説明した実施の形態３にかかる画像符号化装置３の処理と同様となるため、説明を省略する。
【０２０８】
以上に説明したように、本実施の形態６によれば、エンコーダ３０〜３３のそれぞれは、フレームを符号化してストリームデータを生成するときに、初期遅延量データがとり得る最大のサイズの仮初期遅延量データを含めたピクチャヘッダをストリームバッファ４０〜４３のそれぞれに格納してから、当該フレームの符号化に応じて、当該フレームの符号化データを、ストリームバッファ４０〜４３のそれぞれに格納していくようにしている。そして、ストリーム結合装置２７は、フレームの初期遅延量の確定後に、仮初期遅延量データを、確定した初期遅延量を示す初期遅延量データに置き換えるときに、前記置き換え後の初期遅延量データのサイズが前記置き換え前の仮初期遅延量データのサイズよりも減少する場合、減少するサイズ分のデータに代えてスタッフィングビットをヘッダデータに含めることで、前記初期遅延量データの置き換え前後でヘッダデータのサイズを同一とするようにしている。
【０２０９】
これによれば、確定した正しい初期遅延量データに置き換えても、ピクチャヘッダのサイズが変わらないようにすることができる。そのため、ビットストリームにおけるピクチャヘッダ及びマクロブロック符号領域の配置を再構成して、ビットストリームのサイズを変更する必要がなく、ビットストリームを生成する処理を単純にすることができる。つまり、複数のエンコーダで並列にビットストリームを生成した場合に、それらのビットストリームを単純に結合するのみで１つのビットストリームを生成することができる。
【０２１０】
なお、上述した実施の形態６では、仮の初期遅延量データとして、スタッフィングビットで埋められたデータを使用する場合について例示したが、これに限られない。例えば、推定した初期遅延量データを含む、初期遅延量データがとり得る最大のサイズのデータを、仮の初期遅延量データとしてもよい。なお、このときに、推定した初期遅延量データのサイズが、仮の初期遅延量データのサイズに満たない場合は、足りない分をスタッフィングビットで埋め合わせるようにすればよい。
【０２１１】
なお、上述した本実施の形態６では、実施の形態５の構成に対して、さらに、初期遅延量計算装置２５及びストリーム修正位置記憶装置２６を有し、ストリーム結合装置１４に代えてストリーム結合装置２７を有する場合について例示したが、これに限られない。実施の形態１〜５のいずれか又はそれらのうちの任意の２つ以上の実施の形態の組み合わせに対して、同様に適用するようにしてもよい。
【０２１２】
発明の実施の形態７．
続いて、図２２を参照して、本発明の実施の形態７にかかる画像符号化装置７の構成について説明する。図２２は、本発明の実施の形態７にかかる画像符号化装置７の構成図である。なお、実施の形態１〜６と同様の構成要素については、同一の符号を付して、説明を省略する。
【０２１３】
本実施の形態７では、画像符号化装置７が、トランスコーダである場合について例示する。つまり、本実施の形態７では、画像符号化装置７に入力される入力画像が、符号化済みの画像である場合について例示する。入力画像は、例えば、ＭＰＥＧ−２及びＨ．２６４等の動画符号化規格に従って、符号化されている。本実施の形態７では、事前解析結果として、トランスコードにおけるデコードにおいて取得される情報を利用する。
【０２１４】
画像符号化装置７は、フレームバッファ１０、発生符号量記憶装置１１、発生符号量予測装置２２、バッファ占有量予測装置２３、符号量制御装置２４、初期遅延量計算装置２５、ストリーム修正位置記憶装置２６、ストリーム結合装置２７、デコーダ２８、デコード情報記憶装置２９、エンコーダ３０〜３３、及びストリームバッファ４０〜４３を有する。
【０２１５】
デコーダ２８は、入力画像を復号化する。デコーダ２８は、入力画像の復号化前に、入力画像の復号化単位毎の符号量を、特徴量としてデコード情報記憶装置２９に格納する。ここで、復号化単位とは、例えば、マクロブロックライン、又は、マクロブロックペアラインである。また、入力画像がＭＰＥＧ−２及びＨ．２６４等の動画符号化規格に従って符号化されている場合、入力画像には、マクロブロック毎の動き量を示す情報が含まれている。この情報は、例えば、復号処理において補償フレーム間予測に使用される動きベクトルである。デコーダ２８は、その情報に基づいて、１画像を予め定めた大きさに分割した単位毎に動き量を算出してデコード情報記憶装置２９に格納する。具体的には、例えば、マクロブロックライン単位、又は、マクロブロックペアライン単位毎の動き量が格納される。
【０２１６】
デコード情報記憶装置２９は、入力画像の特徴量が事前解析結果として一時的に記憶される。また、デコード情報記憶装置２９は、入力画像の動き量が一時的に記憶される。デコード情報記憶装置２９は、特徴量及び動き量を記憶するための任意の記憶装置を含む。
【０２１７】
したがって、発生符号量予測装置２２がデコード情報記憶装置２９に格納された特徴量を使用して、符号化途中ピクチャの未符号化領域の発生符号量を推定することになる。なお、本実施の形態７にかかる画像符号化装置７におけるその他の符号化における処理内容については、図１２を参照して説明した実施の形態３にかかる画像符号化装置３の処理と同様となるため、説明を省略する。
【０２１８】
なお、ここでは、実施の形態６の構成に対して、事前解析装置１９及び解析結果記憶装置２０に代えて、デコーダ２８及びデコード情報記憶装置２９を有する場合について例示したが、これに限られない。実施の形態２〜５のいずれか又はそれらのうちの任意の２つ以上の実施の形態の組み合わせに対して、同様に適用するようにしてもよい。
【０２１９】
そのときに、例えば、実施の形態２及び３のように、符号量推定において動き量を使用しなくてもよいものに適用する場合は、デコーダ２８において、動き量を検出しないようにしてもよく、実施の形態４のように、符号量推定において特徴量を使用しなくてもよいものに適用する場合は、デコーダ２８において、特徴量を検出しないようにしてもよい。例えば、実施の形態４に適用した場合、発生符号量予測装置２１は、デコード情報記憶装置２９に格納された動き量を使用して、符号化途中ピクチャの未符号化領域の発生符号量を推定することになる。
【０２２０】
以上に説明したように本実施の形態７では、複数のフレームからなる動画像データを再符号化する際に、復号前のフレームの符号量を、符号量推定に使用されるフレームの特徴量として検出するようにしている。また、復号処理により算出されるフレームの動き量を、符号量推定に使用されるフレームの動き量として検出するようにしている。
【０２２１】
これによれば、動画像データを再符号化する際に取得される情報を、未符号化領域の発生符号量の推定に利用する特徴量及び動き量としているため、別途それらを検出する処理が不要となり、処理を簡略化することができる。
【０２２２】
発明の他の実施の形態．
上述した各実施の形態では、一例として、４つのエンコーダを有するようにして、４並列でピクチャを符号化する場合について説明したが、これに限らない。例えば、２つのエンコーダを有するようにして２並列でピクチャを符号化するようにしてもよく、３つのエンコーダを有するようにして３並列でピクチャを符号化するようにしてもよい。また、４つ以上のエンコーダを有するようにして、４つ以上のピクチャを並列に符号化するようにしてもよい。
【０２２３】
上述した各実施の形態では、推定符号量の算出及びそれに応じた符号量制御パラメタの更新を、マクロブロックライン又はマクロブロックペアラインを符号化する毎に実施する場合について例示したが、これに限られない。推定符号量の算出及び符号量制御パラメタの更新をするタイミングは、マクロブロックを符号化する毎としてもよく、複数のマクロブロックからなるマクロブロックグループを符号化する毎としてもよい。また、複数のマクロブロックラインからなるマクロブロックライングループを符号化する毎としてもよい。ピクチャを分割した単位のそれぞれで符号化の進行速度がほぼ同じとなるのであれば、ピクチャを任意に等分割した単位を符号化する毎としてもよい。また、これらのようなピクチャを符号化する区切りに限られず、任意のタイミングとしてもよい。
【０２２４】
事前解析結果や符号化済み画像の発生符号量を記憶する単位は、符号化処理単位と一致していなくてもよい。つまり、マクロブロックライン単位や、マクロブロックペアライン単位に記憶しなくてもよい。例えば、これらの単位よりも画面の分割数が少なく、分割された領域が大きくなっていいてもよい。この場合、処理単位に応じて比例配分とする。
【０２２５】
例えば、図２３に示すように、符号化済みピクチャの発生符号量が、それぞれｘ、ｙ、ｚで示す３つの領域毎に記憶するようにしてもよい。この場合に、ｘで示す範囲の発生符号量がＳｘであり、ｙで示す範囲の発生符号量がＳｙであり、ｚで示す範囲の発生符号量がｚである場合、次式（１９）及び（２０）によって、ａで示す範囲の発生符号量Ｓ'ａ及びｂで示す範囲の発生符号量Ｓ'ｂを計算する。つまり、式（１９）によって算出されたＳ'ａ及び式（２０）によって算出されたＳ'ｂのそれぞれは、式（１）におけるＳ'ａ及びＳ'ｂとして使用される。
【０２２６】
【数１４】
0005706759.tif 000015
【０２２７】
これによれば、１つの符号化済みピクチャに対して、発生符号量のデータを３つ記憶するのみで済む。つまり、発生符号量のデータをマクロブロックライン毎又はマクロブロックペアライン毎に記憶する必要がなくなる。よって、記憶するデータ量を少なくできるため、記憶装置の規模を小さくでき、画像符号化装置全体の規模を小さくできる。
【０２２８】
これは、事前解析結果である特徴量についても同様に適用してもよい。また、特徴量について適用することによって、画像のスケーリングが行われてしまい、事前解析したときの画像サイズと、符号化するときの画像サイズが異なってしまった場合に対応することができる。つまり、特徴量を算出した後に、画像のアップスケーリングが行われて、その後、その画像の符号化を行う場合であっても、符号化途中ピクチャの符号化済み領域及び未符号化領域のそれぞれに対応する領域における発生符号量を正確に算出することができる。
【０２２９】
また、図２４に示すように、式（１）において、ａで示す範囲を符号化途中ピクチャの符号化済み領域全体のうちの一部の領域とし、ｂで示す範囲を符号化途中ピクチャの未符号化領域全体のうちの一部の領域としてもよい。この場合、推定符号量Ｓｂと比較する目標符号量は、未符号化領域に割り当て可能な目標符号量のうち、ｂで示す範囲当たりの符号量と比較する。つまり、符号化中フレームに含まれる未符号化領域と言った場合、符号化中フレームに含まれる未符号化領域全体のうちの一部の領域も含まれ、符号化中フレームに含まれる符号化済み領域と言った場合、符号化中フレームに含まれる符号化済み領域全体のうちの一部の領域も含まれる。
【０２３０】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【０２３１】
１、２、３、４、５、６、７    画像符号化装置
１０        フレームバッファ
１１        発生符号量記憶装置
１２、１７、１８、２１、２２    発生符号量予測装置
１３、２４    符号量制御装置
１４、２７    ストリーム結合装置
１５、１９    事前解析装置
１６、２０    解析結果記憶装置
２３        バッファ占有量予測装置
２５        初期遅延量計算装置
２６        ストリーム修正位置記憶装置
２８        デコーダ
２９        デコード情報記憶装置
３０、３１、３２、３３    エンコーダ
４０、４１、４２、４３    ストリームバッファ
【図１】
0005706759.tif 000016
【図２】
0005706759.tif 000017
【図３】
0005706759.tif 000018
【図４】
0005706759.tif 000019
【図５】
0005706759.tif 000020
【図６】
0005706759.tif 000021
【図７】
0005706759.tif 000022
【図８】
0005706759.tif 000023
【図９】
0005706759.tif 000024
【図１０】
0005706759.tif 000025
【図１１】
0005706759.tif 000026
【図１２】
0005706759.tif 000027
【図１３】
0005706759.tif 000028
【図１４Ａ】
0005706759.tif 000029
【図１４Ｂ】
0005706759.tif 000030
【図１５】
0005706759.tif 000031
【図１６Ａ】
0005706759.tif 000032
【図１６Ｂ】
0005706759.tif 000033
【図１７】
0005706759.tif 000034
【図１８】
0005706759.tif 000035
【図１９】
0005706759.tif 000036
【図２０】
0005706759.tif 000037
【図２１】
0005706759.tif 000038
【図２２】
0005706759.tif 000039
【図２３】
0005706759.tif 000040
【図２４】
0005706759.tif 000041