(57)【特許請求の範囲】
【請求項１】
映像データを符号化処理する符号化装置において、
上記画像データの第１の符号化対象ピクチャ以降のL枚のピクチャから構成される第１のピクチャ群をピクチャ単位で符号化処理することによって算出されたピクチャ単位のディフィカルティデータと、上記第１の符号化対象ピクチャと符号化順で連続する第２の符号化対象ピクチャのピクチャからＬ枚後のピクチャを符号化処理することによって算出されたピクチャ単位のディフィカルティデータとを利用して、上記記第２の符号化対象ピクチャのディフィカルティデータと上記第２の符号化対象ピクチャ以降のＬ枚のピクチャから構成される第２のピクチャ群のディフィカルティデータとを算出するディフィカルティデータ算出手段と、
上記第２のピクチャ群を符号化処理する際に割り当てることのできるデータ量に対して、上記ディフィカルティデータ算出手段により算出された上記第２の符号化対象ピクチャのディフィカルティデータと上記第２のピクチャ群のディフィカルティデータとの比率を乗じることにより、上記第２の符号化対象ピクチャを符号化処理する際に割り当てるターゲットビット量データを算出するターゲットビット量データ算出手段と、
上記第２の符号化対象ピクチャを符号化処理する符号化手段と、
上記ターゲットビット量データ算出手段により算出された上記ターゲットビット量データとなるように符号化処理に伴う発生符号量を制御することにより、上記記符号化手段の符号化処理を制御する符号化制御手段と
を備える符号化装置。
【請求項２】
上記ターゲットビット量データ算出手段は、上記第２のピクチャ群に当てることのできる平均ビット量を示す平均ビット量データから、上記第１の符号化対象ピクチャのターゲットビット量データに従って上記第１の符号化対象ピクチャを符号化処理することによって得られる発生ビット量を減算し、上記第２の符号化対象ピクチャに割り当てることのできる平均ビット量を示す平均ビット量を、上記減算した結果に加算することにより、上記第２の符号化対象ピクチャを符号化処理する際に割り当てるターゲットビット量データを算出する
請求項１に記載の符号化装置。
【請求項３】
映像データを符号化処理する符号化方法において、
上記画像データの第１の符号化対象ピクチャ以降のL枚のピクチャから構成される第１のピクチャ群をピクチャ単位で符号化処理することによって算出されたピクチャ単位のディフィカルティデータと、上記第１の符号化対象ピクチャと符号化順で連続する第２の符号化対象ピクチャのピクチャからＬ枚後のピクチャを符号化処理することによって算出されたピクチャ単位のディフィカルティデータとを利用して、上記記第２の符号化対象ピクチャのディフィカルティデータと上記第２の符号化対象ピクチャ以降のＬ枚のピクチャから構成される第２のピクチャ群のディフィカルティデータとを算出するディフィカルティデータ算出工程と、
上記第２のピクチャ群を符号化処理する際に割り当てることのできるデータ量に対して、上記ディフィカルティデータ算出工程により算出された上記第２の符号化対象ピクチャのディフィカルティデータと上記第２のピクチャ群のディフィカルティデータとの比率を乗じることにより、上記第２の符号化対象ピクチャを符号化処理する際に割り当てるターゲットビット量データを算出するターゲットビット量データ算出工程と、
上記第２の符号化対象ピクチャを符号化処理する符号化工程と、
上記ターゲットビット量データ算出工程により算出された上記ターゲットビット量データとなるように符号化処理に伴う発生符号量を制御することにより、上記記符号化工程の符号化処理を制御する符号化制御工程と
を含む符号化方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えばディジタル・ビデオ・ディスク（ＤＶＤ）等のオーサリングシステムや、ディジタル放送（Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｂｒｏａｄｃａｓｔｉｎｇ：ＤＶＢ）ディジタルデータの伝送システム等に適用して好適な目標符号量制御方法及びその装置に関する。
【０００２】
【従来の技術】
映像や音声信号をディジタルデータに変換し、当該ディジタルデータに対して変換符号化処理を施すことにより、記録時におけるディジタルデータのデータ量を減らす技術は、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅｓ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐ）により、標準化されている。映像データはマクロブロック毎にインター若しくはイントラ符号化のための処理が施された後に、符号化処理が施される。上記インター符号化のための処理とは、現在のフレームの画像データと過去のフレームの画像データとの差分を取り、その差分に対して符号化処理を施すことである。つまり、既に過去のフレームの画像データが送られているのならば、その差だけ送れば現在のフレームの当該画像データの復元は簡単に行うことができるのである。
【０００３】
差分をとるために必要な処理が、動き検出と動き補償である。動き検出は、現在のフレームの注目マクロブロックとの画素値の差分絶対値和が最も小さいマクロブロックが、過去の参照フレームのどの位置にあるのかを検出する処理である。この検出は、現在のフレームの注目マクロブロックの位置から、Ｘ及びＹ方向に何画素分移動すれば現在のフレームの注目マクロブロックと参照フレームの画素値の差分絶対値和が最小となるのかを見ることにより実現される。通常、このＸ及びＹ方向への画素単位の移動量データを動きベクトルデータと称している。
【０００４】
動き補償は、過去の参照フレーム上において、注目マクロブロックの位置から、上記動きベクトルデータの指し示す位置を求め、その位置のマクロブロックデータを抽出する処理を言う。そして、抽出された過去の参照マクロブロックと、現在の注目マクロブロックとの差分、即ち、動き予測誤差が求められる。尚、ここで用いられる過去の参照フレームとしては、局部復号器（Ｌｏｃａｌ  Ｄｅｃｏｄｅｒ）からの出力フレームが用いられる。
【０００５】
動き予測誤差信号は、空間方向の相関性を取り除くために、例えば離散余弦変換（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ：以下単にＤＣＴと称する）に代表されるような、直交変換をあるブロック単位で施す。変換されたＤＣＴ係数は、ある量子化ステップで割算する、量子化と呼ばれる処理で微小な信号の切り捨てを行い、その商の整数値のみを、量子化インデックスと共に出力する。このようにして、量子化されたＤＣＴ係数、量子化インデックス、及び上記動きベクトルデータは、可変長符号化（Ｖａｌｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ：ＶＬＣ）されて出力される。
【０００６】
一方、イントラ符号化処理においては、上述したような動き検出や動き補償処理が施されず、画素値がそのままブロック単位に直交変換され、同様に量子化、ＶＬＣが施されて出力される。
【０００７】
以上説明したような処理により、画像データの時間方向、及び空間方向の冗長性を取り除くことによって、情報量の圧縮が実現されるのである。
【０００８】
尚、ＭＰＥＧ等において、１枚のイントラ符号化されたフレーム、即ち、Ｉ（Ｉｎｔｒａ）ピクチャと、複数の、インター符号化されたフレーム、即ち、Ｐ（Ｐｒｅｄｉｃｔｉｖｅ）ピクチャやＢ（Ｂｉｄｉｒｅｃｔｉｏｎａｌｙ  Ｐｒｅｄｉｃｔｉｖｅ）ピクチャとの組み合わせでＧＯＰ（Ｇｒｏｕｐ  ｏｆ  Ｐｉｃｔｕｒｅ）を構成する。
【０００９】
このような画像圧縮技術は、例えばＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｄｉｓｋ）等では、画像及び音声データが１枚の光ディスクに記録できるように、或いは、通信回線や衛星回線を用いた画像音声の伝送においては、回線容量の中で動画像と音声データを伝送できるように用いられているのである。
【００１０】
ところで、例えばＤＶＤをＲＯＭディスクで構成する場合などのオーサリングにおいては、圧縮符号化された画像データが、ディスクの容量内に収まる必要があるのは勿論のこと、その符号量の範囲内で、最も高い画質が実現するような符号量配分が行われる、可変レート符号化という手法がしばしば用いられる。この方法は、画像データの時間及び空間方向の相関の強さが常に変動することにより、画像圧縮にとっての難しさが時間的に変動することを利用するものである。
【００１１】
例えば、時間方向の相関性の変動について例をあげて説明する。動画像中の移動体の移動パターンは、単なる平行移動にとどまらず、例えば移動体の移動速度、移動方向、移動体の形状の変化等のように複雑な移動パターンが存在し、このような場合は、上述したような動き補償では、動き予測誤差データが増大する。また、或いは、ランダムノイズのような完全に時間方向に相関がないような動画像データにおいては、動き補償による圧縮効果が全く失われ、現フレームからのデータ量と大差ないほどの動き予測誤差データを発生する場合がある。このような画像圧縮にとっての難易度（以下、ディフィカルティと称する）の変動は、フレーム単位のみならず、ＧＯＰ単位、マクロブロック単位等でも当然存在する。
【００１２】
このように、ディフィカルティが変動するようなデータを、単位時間あたりに均一のビットレート（以下目標符号レート）で圧縮符号化しようとすると、ディフィカルティが高いような、即ち、時間空間方向の相関性が低く、圧縮効果が現れにくい映像データについては、上記ＤＣＴ係数を大きめの量子化ステップで粗く量子化して発生符号レートが目標符号レートに近づける必要があり、結果として、量子化誤差が増大し、符号伸長したときの符号化歪が顕著に現れる。一方、ディフィカルティが低いような、即ち、相関性が高いデータについては、ＤＣＴ係数は低周波数成分側に集中するから、目標符号量に近づけるためには、これを小さめの量子化ステップで細かく量子化することが可能になり、結果として、符号伸長後の歪が少なくなる。
【００１３】
そこで、ＤＶＤオーサリング等においては、このような、画像の符号化歪が時間単位で変動し、結果として画質の劣化が瞬間的に顕著になるような弊害を回避するために、予め、固定の量子化ステップで全ての画像データを圧縮符号化し、その際に発生した符号量を、ディフィカルティデータと定義して、一旦記憶し（１パス目）、次に、そのディフィカルティデータに基いて２回目に圧縮符号化するときに、難しい画像データのところには多めに符号量を割り当てるといった、いわゆる２パスエンコードを用いた、可変長符号化が用いられていた。尚、ディフィカルティデータという言葉は、ある一定の画質を実現するのに必要なデータ量に比例する量であると定義する。
【００１４】
さて、しかしながら、このような２パスエンコードは、全ての映像データを一旦エンコードし終わって始めて、実際のエンコードが始められるので、間断なく供給される画像や音声データに対して、このような制御を行うことは、殆ど不可能に近い。従って、上記制御は、通信時におけるエンコードや、無限に長いデータを間断なく、しかも実時間的にエンコードしなくてはならないような放送のような用途には適応することができなかった。
【００１５】
そこで、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）構造のメモリを通ったデータをエンコードする第１のエンコーダと、ＦＩＦＯ構造のメモリを通らない第２のエンコーダの２つ目のエンコーダを用いることが提案された。以下、この２パスエンコードを、予め全てのディフィカルティを求めておく上記２パスエンコードと区別するために、「簡易な２パスエンコード」と称する。この簡易な２パスエンコードは、最初のパスでディフィカルティを求め、次のパスで求めたディフィカルティを用いてエンコードを行う方法である。
【００１６】
提案されている簡易２パスエンコードは、２種類ある。１つは、数ＧＯＰ分のディフィカルティに基いて、各ＧＯＰの目標ビット量を決定する。ＧＯＰ単位のレートコントロールである。もう１つは、更に、上記ＧＯＰの中で各ピクチャ単位の目標ビット量を制御するピクチャ単位のレートコントロールである。
【００１７】
【発明が解決しようとする課題】
ところで、上記簡易２パスエンコードは、参照しているＫ個のＧＯＰの中でディフィカルティの情報が完結してしまうので、Ｋ個のＧＯＰの前後の絵柄の情報が全く生かされない。Ｋ個のＧＯＰの前後の絵柄の情報が全く生かされないでエンコードが行われると、問題が生じる。これについて図５Ａ〜図５Ｄを参照して説明する。
【００１８】
図５は、各レートコントロール方式によるビット量割り当てについて説明するための説明図である。図５Ａは、入力素材のディフィカルティの一例を示す説明図、図５Ｂは理想的なビット量が割り当てられた状態を示す説明図、図５Ｃは簡易２パスエンコードによるＧＯＰ単位のビット量の割り当てを示す説明図、図５Ｄは、簡易２パスエンコードによるピクチャ単位のビット量の割り当てを示す説明図である。図５においては、ディフィカルティデータを予め測定する長さ、即ち、ＦＩＦＯメモリの容量が、２ＧＯＰである場合の例を示している。
【００１９】
入力素材のディフィカルティが、図５Ａに示す通りであることを前提とする。ここで、縦軸はディフィカルティ、横軸は時間（単位は１ＧＯＰである）である。この図５Ａに示されているように、入力素材のディフィカルティは、最初の２ＧＯＰ分の期間においては徐々に上昇して最高の値となり、次の２ＧＯＰ分の期間の先頭で最も低くなり、以降、この期間内では同じ値となり、更に次の２ＧＯＰ分の期間に入ってから最高の値となり、以降、徐々に低い値となっている。尚、図５においてはピクチャタイプによるディフィカルティの差は、簡単のために無視している。
【００２０】
この図５Ａに示すようなディフィカルティの分布を有する入力素材に対しては、図５Ｂに示すように、図５Ａに示されるディフィカルティの分布に比例したビット量が与えられるべきである。つまり、難しい絵柄には多くのビット量を与え、簡単な絵柄にはビット量を少なく与えることが、画質劣化を招くことなくエンコードできるからである。参考までに、図５Ｂにおいては、平均レートを破線で示す。
【００２１】
図５Ｃは、簡易な２パスエンコードによるＧＯＰ単位のビット量の割り当てを示している。この図５Ｃに示されているビット量の割り当ては、殆ど平坦であり、図５Ａに示されるディフィカルティの分布に正確に比例していないことが分かる。これは、ＧＯＰ単位でビット量の割り当てが行われるからである。つまり、ビット量は、１つのＧＯＰ内では一定となるからである。
【００２２】
図５Ｄは、簡易な２パスエンコードによるピクチャ単位のビット量の割り当てを示している。この図５Ｄに示されているビット量の割り当ては、図５Ａに示されるディフィカルティの分布に正確に比例していることが分かる。ピクチャ単位でビット量の割り当てが行われるからである。しかしながら、図５Ｂに示されているビット量よりも少ない。これは、割り当てることのできるビット量が２ＧＯＰ単位で決まっているからである。割り当てることのできるビット量が２ＧＯＰ単位で決まっていると、難しい絵柄の続く２ＧＯＰ内では、割り当てるべきビット量が足りなくなり、簡単な絵柄の続く２ＧＯＰ内では、割り当てるべきビット量が余剰になるからである。
【００２３】
以上の説明から分かるように、簡易な２パスエンコードは、予め全てのディフィカルティを求めておく２パスエンコードと比較して、入力素材に対するビット量の割り当ての適切さの点についてはかなり劣る。
【００２４】
本発明はこのような点を考慮してなされたもので、簡易な２パスエンコードを用いても、入力素材に対するビット量の割り当てを適切とでき、復元画像の画質を劣化させない目標符号量制御方法及びその装置を提案しようとするものである。
【００２５】
【課題を解決するための手段】
本発明は、映像データを符号化処理する符号化装置において、上記画像データの第１の符号化対象ピクチャ以降のL枚のピクチャから構成される第１のピクチャ群をピクチャ単位で符号化処理することによって算出されたピクチャ単位のディフィカルティデータと、上記第１の符号化対象ピクチャと符号化順で連続する第２の符号化対象ピクチャのピクチャからＬ枚後のピクチャを符号化処理することによって算出されたピクチャ単位のディフィカルティデータとを利用して、上記記第２の符号化対象ピクチャのディフィカルティデータと上記第２の符号化対象ピクチャ以降のＬ枚のピクチャから構成される第２のピクチャ群のディフィカルティデータとを算出するディフィカルティデータ算出手段と、上記第２のピクチャ群を符号化処理する際に割り当てることのできるデータ量に対して、上記ディフィカルティデータ算出手段により算出された上記第２の符号化対象ピクチャのディフィカルティデータと上記第２のピクチャ群のディフィカルティデータとの比率を乗じることにより、上記第２の符号化対象ピクチャを符号化処理する際に割り当てるターゲットビット量データを算出するターゲットビット量データ算出手段と、上記第２の符号化対象ピクチャを符号化処理する符号化手段と、上記ターゲットビット量データ算出手段により算出された上記ターゲットビット量データとなるように符号化処理に伴う発生符号量を制御することにより、上記記符号化手段の符号化処理を制御する符号化制御手段とを備える符号化装置である。
また、本発明は、上記ターゲットビット量データ算出手段は、上記第２のピクチャ群に当てることのできる平均ビット量を示す平均ビット量データから、上記第１の符号化対象ピクチャのターゲットビット量データに従って上記第１の符号化対象ピクチャを符号化処理することによって得られる発生ビット量を減算し、上記第２の符号化対象ピクチャに割り当てることのできる平均ビット量を示す平均ビット量を、上記減算した結果に加算することにより、上記第２の符号化対象ピクチャを符号化処理する際に割り当てるターゲットビット量データを算出するものである。
また、本発明は、映像データを符号化処理する符号化方法において、上記画像データの第１の符号化対象ピクチャ以降のL枚のピクチャから構成される第１のピクチャ群をピクチャ単位で符号化処理することによって算出されたピクチャ単位のディフィカルティデータと、上記第１の符号化対象ピクチャと符号化順で連続する第２の符号化対象ピクチャのピクチャからＬ枚後のピクチャを符号化処理することによって算出されたピクチャ単位のディフィカルティデータとを利用して、上記記第２の符号化対象ピクチャのディフィカルティデータと上記第２の符号化対象ピクチャ以降のＬ枚のピクチャから構成される第２のピクチャ群のディフィカルティデータとを算出するディフィカルティデータ算出工程と、上記第２のピクチャ群を符号化処理する際に割り当てることのできるデータ量に対して、上記ディフィカルティデータ算出工程により算出された上記第２の符号化対象ピクチャのディフィカルティデータと上記第２のピクチャ群のディフィカルティデータとの比率を乗じることにより、上記第２の符号化対象ピクチャを符号化処理する際に割り当てるターゲットビット量データを算出するターゲットビット量データ算出工程と、上記第２の符号化対象ピクチャを符号化処理する符号化工程と、上記ターゲットビット量データ算出工程により算出された上記ターゲットビット量データとなるように符号化処理に伴う発生符号量を制御することにより、上記記符号化工程の符号化処理を制御する符号化制御工程とを含む符号化方法である。
上述せる本発明によれば、１枚分の画像の符号化の都度、以降のＬ枚の画像の難しさを示すディフィカルティの和に対する上記符号化する画像のディフィカルティの比率に、Ｌ枚の画像に割り当てられる平均ビット量を乗じて目標符号量を決定する。
【００２６】
【発明の実施の形態】
以下に、図１〜図４を順次参照して本発明の実施の形態について詳細に説明する。
【００２７】
先ず、図１を参照して、本発明目標符号量制御方法及びその装置の概念について説明する。図１は、本発明目標符号量制御方法及びその装置の概念を説明するための説明図である。既に説明したように、予めディフィカルティを検出しておくための第１エンコーダと、第１エンコーダで検出されたディフィカルティに基いて実際のエンコード処理を行う第２エンコーダとが用いられることを前提とする。図１Ａは、上記第１エンコーダの入力を、図１Ｂは、第１エンコーダで検出されたディフィカルティデータを、図１Ｃは、ターゲットビット量（目標符号量）データを得るための数式を、図１Ｄは、図１Ｃに示される数式により得られるターゲットビット量データを、図１Ｅは、上記第２エンコーダの出力を、図１Ｆは、第２エンコーダによりエンコードされたときの発生ビット量データを夫々示している。
【００２８】
第１エンコーダ入力は、図１Ａに示す通りである。画像データＶ１、Ｖ２、・・・・は、順次第１エンコーダに入力される。ここで、各画像データＶ１、Ｖ２、・・・・は、夫々、上述したピクチャに相当する。第１エンコーダにおいては、所定の量子化ステップサイズにより、エンコード処理が行われる。ここでいうエンコードは、既に説明したように、インター若しくはイントラ符号化のための処理と、この処理の後に行われる、ＤＣＴ、量子化、可変長符号化等の処理を意味する。
【００２９】
第１エンコーダにより画像データＶ１、Ｖ２、・・・・に対して順次エンコード処理が施されると、図１Ｂに示すように、ディフィカルティデータＤ１、Ｄ２、・・・・が得られる。１ＧＯＰが１５ピクチャで構成されている場合、図１Ｃに示されるように、ディフィカルティデータＤ１〜Ｄ１５、ディフィカルティデータＤ２〜Ｄ１６、・・・・のように、１ピクチャずつずらされ、且つ、１５ピクチャ分ずつディフィカルティデータが用いられて演算が行われる。そして、その結果、図１Ｄに示されるように、ターゲットビット量データＴ１、Ｔ２、・・・・が得られる。例えばディフィカルティデータＤ１〜Ｄ１５が用いられて演算された結果得られるターゲットビット量データは、図１Ｄに示される“Ｔ１”である。また、ディフィカルティデータＤ２〜Ｄ１６が用いられて演算された結果得られるターゲットビット量データは、図１Ｄに示される“Ｔ２”である。
【００３０】
この図１Ｄに示されるターゲットビット量データＴ１、Ｔ２、・・・・は、順次第２エンコーダに供給される。図１Ａに示される画像データＶ１、Ｖ２、・・・・は、ＦＩＦＯを介して、第２エンコーダに供給される。よって、第２エンコーダにおいては、図１Ａに示される画像データＶ１、Ｖ２、・・・・が、図１Ｄに示されるターゲットビット量データに基いてエンコードされる。この結果は、図１Ｅに示す通りであり、発生ビット量データは、図１Ｆに示される通りである。
【００３１】
発生ビット量データＳ１、Ｓ２、・・・・は、図１Ｃに示される演算で用いられる。例えば発生ビット量データＳ１は、ディフィカルティデータＤ２〜Ｄ１６を用いてターゲットビット量データＴ２を得るための演算に用いられ、発生ビット量データＳ２は、ディフィカルティデータＤ３〜Ｄ１７を用いてターゲットビット量データＴ３を得るための演算に用いられる。尚、図１Ｄに示されるターゲットビット量データＴ１を得るための演算（図１Ｃ参照）においては、発生ビット量データは用いられない。
【００３２】
ここで、図１Ｃに示される演算について説明する。図１Ｃにおいて、Ｒ１、Ｒ２、・・・・は１５ピクチャ分のシーケンスに割り当てることのできる平均のビット量を示す平均ビット量データである。但し、Ｒ１は先頭であるから、このＲ１だけは初期値となり、Ｒ２以降は、１つ前の平均ビット量データを用いる。平均ビット量データＲ１は、１秒分のビット量であるところのビットレートＢｒと、１秒分のピクチャ数であるところのピクチャレートＰｒの比にＧＯＰのピクチャ枚数であるところの１５を乗じることによって得られる。また、平均ビット量データＲ２から後の平均ビット量データは、１つ前の平均ビット量データＲ１、Ｒ２、・・・・から、１つ前に発生した発生ビット量データＳ１、Ｓ２、・・・・を減算し、この結果に、フレームあたりのビット量データＦ１６、Ｆ１７、・・・・を加算することによって得られる。このフレームあたりのビット量データＦ１６、Ｆ１７、・・・・は、新たにディフィカルティを求めているピクチャについて、平均ビット量をそのピクチャのピクチャタイプによって割り振ることにより得られる。
【００３３】
以上のようにして、平均ビット量データＲ１、Ｒ２、・・・・が順次求められる。そして、これら平均ビット量データＲ１、Ｒ２、・・・・に対し、処理対象であるところのピクチャのディフィカルティと、１５枚分のピクチャの各ディフィカルティの合計との比が乗じられる。例えば、初期値であるとことの平均ビット量データＲ１に対しては、ピクチャＶ１のディフィカルティＤ１と、ピクチャＶ１〜Ｖ１５までのディフィカルティＤ１〜Ｄ１５の合計との比が乗じられる。また、平均ビット量データＲ２に対しては、ピクチャＶ２のディフィカルティＤ２と、ピクチャＶ２〜Ｖ１６までのディフィカルティＤ２〜Ｄ１６の合計との比が乗じられる。
【００３４】
第１エンコーダのエンコード結果から、上述のような演算を行ってターゲットビット量データＴ１、Ｔ２、・・・・を得、このターゲットビット量データＴ１、Ｔ２、・・・・に基いて第２エンコードでエンコードを行うようにしているので、結果的に、リアルタイム性の重視される素材に対応することができる。以下、より具体的な例を、実施の形態として説明する。
【００３５】
〔第１の実施の形態〕
図１は、第１の実施の形態としてのエンコーダの構成を示す構成図である。
【００３６】
この図１に示すエンコーダは、入力端子１を介して供給される映像データＶｉの動き予測を行う動き予測回路２と、エンコーダコントローラ３と、動き予測回路２からエンコーダコントローラ３を介して供給される動き予測処理後の映像データをエンコードする第１エンコーダ４と、全体の制御を司るホストコンピュータ５と、上記映像データを遅延させるためのＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）メモリ６と、ＦＩＦＯメモリ６から読み出された映像データをホストコンピュータ５からのターゲットビット量データＴｊに基いてエンコードし、エンコードした映像データを、出力端子８から出力する第２エンコーダ７とで構成される。
【００３７】
ここで、上記動き予測回路２は、エンコーダコントローラ３からのピクチャタイプデータＩＢＰに基いて、入力端子１を介して供給される映像データの内、Ｂ及びＰピクチャに対し、上述した動き検出及び動き補償処理を施す。エンコーダコントローラ３は、ピクチャタイプデータＩＢＰを、動き予測回路２、ホストコンピュータ５に供給する他、Ｉピクチャはそのまま出力し、Ｂピクチャ及びＰピクチャの場合には、前の映像データとの差分をとりその差分信号を出力する。
【００３８】
また、エンコーダコントローラ３からの映像データは、上記ＦＩＦＯメモリ６により所定時間だけ遅延される。この所定時間は、第１エンコーダ４でディフィカルティデータＤｋが得られ、このディフィカルティデータＤｋを用いてホストコンピュータ５が演算を行ってターゲットビット量データＴｊを得、このターゲットビット量データＴｊを、第２エンコーダ７に供給するまでの時間に略等しい。
【００３９】
また、上記ホストコンピュータ５は、第１エンコーダ４からのディフィカルティデータＤｋと、第２エンコーダ７からの発生ビット量データＳｊとに基いて、上述した演算を行い、ターゲットビット量データＴｊを求め、このターゲットビット量データＴｊを、第２エンコーダ７に供給する。
【００４０】
この第１の実施の形態においては、Ｌピクチャ分（Ｌは任意の整数）のディフィカルティデータを用いてターゲットビット量データを求め、このターゲットビット量データに基いて１つのピクチャを符号化する。つまり、ビット量のフィード・フォワード制御が行われる。１ピクチャのターゲットビット量を示すターゲットビット量データは、Ｌピクチャ分として許容できるビット量に対し、これから符号化するピクチャのディフィカルティと、Ｌピクチャ分のディフィカルティの和との比率を乗じることで求められる。１ピクチャの符号化が終了すると、次のピクチャの符号化のために、Ｌピクチャで使用可能なビット量から、発生ビット量が減じられ、更に、そのピクチャタイプに応じた平均ビット量が加算される。尚、Ｌは例えば“１５”等である。以下、上記ホストコンピュータ５が行う演算について詳細に説明する。
【００４１】
映像シーケンス全体の中のｊ番目のピクチャのターゲットビット量データＴｊは、次の数１で表すことができる。
【００４２】
【数１】
0003767007.tif 000002
【００４３】
ここで、Ｌは、ディフィカルティデータを予め測定するピクチャの数であり、通常はフレームメモリの容量と１フレームの映像データのデータ量で決まる。Ｄｊは、ピクチャｊのディフィカルティである。Ｒｊは、ピクチャｊからＬピクチャ分のシーケンスに割り当てることのできる平均ビット量を示す平均ビット量データである。この数１から、ディフィカルティの変化の仕方によっては、ピクチャに対して平均ビット量データＲｊが示すビット量よりも多くのビット量が割り当てられる場合と、少なく割り当てられる場合とがあることが分かる。平均ビット量データＲｊの初期値であるところの平均ビット量データＲ１は、平均のビット量のＬフレーム分である。これを数２で表す。
【００４４】
【数２】
0003767007.tif 000003
【００４５】
但し、Ｂｒは１秒あたりのビット量、Ｐｒは１秒あたりのピクチャ数である。初期値としての平均ビット量データＲ１以外の平均ビット量データＲｊ＋１（但し、ｊは１、２、３、・・・・）は、数３で表される。
【００４６】
【数３】
0003767007.tif 000004
【００４７】
ここで、Ｓｊは、ピクチャｊが、図２に示した第２エンコーダ７でエンコードされたときに発生したビット量を示す発生ビット量データ、Ｆｊ＋Ｌは、第１エンコーダ４で新たにディフィカルティが求められているピクチャｊ＋Ｌについて、平均ビット量を、ピクチャｊ＋Ｌのピクチャタイプに応じて割り振ったときの、フレームあたりのビット量である。
【００４８】
次に、図３及び図４を参照して、図２に示したエンコーダのホストコンピュータの制御動作を中心に説明する。
【００４９】
ステップＳ１では、ホストコンピュータ５が、フラグＦＬＧに“０”をセットする。
【００５０】
ステップＳ２では、ホストコンピュータ５が、エンコーダコントローラ３からのピクチャタイプデータＩＢＰの受付及び記憶を開始する。
【００５１】
ステップＳ３では、ホストコンピュータ５が、変数ｉ及びｊに夫々“１”をセットする。
【００５２】
ステップＳ４では、ホストコンピュータ５が、エンコード処理が終了か否かを判断し、「ＹＥＳ」であれば終了し、「ＮＯ」であればステップＳ５に移行する。
【００５３】
ステップＳ５では、ホストコンピュータ５が、第１エンコーダ４からディフィカルティデータＤｉが供給されたか否かを判断し、「ＹＥＳ」であればステップＳ６に移行し、「ＮＯ」であれば再びステップＳ４に移行する。
【００５４】
ステップＳ６では、ホストコンピュータ５が、ディフィカルティデータＤｉを記憶する。
【００５５】
ステップＳ７では、ホストコンピュータ５が、変数ｉに“１”を加算する。
【００５６】
ステップＳ８では、ホストコンピュータ５が、変数ｉが“Ｌ”よりも大きいか否かを判断し、「ＹＥＳ」であれば図４に示すステップＳ１６に移行し、「ＮＯ」であれば再びステップＳ４に移行する。
【００５７】
ステップＳ９では、ホストコンピュータ５が、フラグＦＬＧが“０”か否かを判断し、「ＹＥＳ」であればステップＳ１０に移行し、「ＮＯ」であればステップＳ１６に移行する。ステップＳ１０〜ステップＳ１２までは、最初のピクチャを第２エンコーダ７で符号化するときに通るステップであり、ステップＳ１６〜Ｓ１９までは、２番目以降のピクチャを第２エンコーダ７で符号化するときに通るステップである。これで分かるように、上記フラグＦＬＧは、最初のピクチャと、２番目以降のピクチャとで処理経路を変えるためのものである。
【００５８】
ステップＳ１０では、ホストコンピュータ５が、１秒あたりのビット量とピクチャ数の比にＬを乗じて得られる初期値としての平均ビット量データＲｊを読み出す。この平均ビット量データＲｊは、数３に示した式により求められる。
【００５９】
ステップＳ１１では、ホストコンピュータ５が、上記平均ビット量データＲ１に、符号化するフレームのディフィカルティＤｊの値と、映像データＶｊ〜Ｖｊ＋ｌ−１の各ディフィカルティＤｊ〜Ｄｊ＋ｌ−１の合算値との比を乗じ、ターゲットビット量データＴｊを得る。
【００６０】
ステップＳ１２では、ホストコンピュータ５が、フラグＦＬＧに“１”をセットする。
【００６１】
ステップＳ１３では、ホストコンピュータ５が、ターゲットビット量データＴｊを、第２エンコーダ７に供給する。第２エンコーダ７は、上記ターゲットビット量データＴｊに基いて、ＦＩＦＯ６から供給される映像データＶｊをエンコードする。第２エンコーダ７は、エンコードによって発生した発生ビット量を示す発生ビット量データＳｊを、ホストコンピュータ５に供給する。
【００６２】
ステップＳ１４では、ホストコンピュータ５が、第２エンコーダ７から発生ビット量データＳｊが供給されたか否かを判断し、「ＹＥＳ」であればステップＳ１５に移行する。
【００６３】
ステップＳ１５では、ホストコンピュータ５が、第２エンコーダ７から供給された発生ビット量データＳｊを記憶する。
【００６４】
ステップＳ１６では、ホストコンピュータ５が、次に第２エンコーダ７で符号化するフレームの映像データについて、フレームあたりのビット量データＦｊ＋Ｌを求める。
【００６５】
ステップＳ１７では、ホストコンピュータ５が、１つ前の平均ビット量データＲｊから、１フレーム前に第２エンコーダ７で符号化により発生した発生ビット量データＳｊを減じ、この減算結果に、フレームあたりのビット量データＦｊ＋Ｌを加算し、次の平均ビット量データＲｊ＋１を求める。
【００６６】
ステップＳ１８では、ホストコンピュータ５が、変数ｊに“１”を加算する。
【００６７】
ステップＳ１９では、ホストコンピュータ５が、平均ビット量データＲｊに対し、第２エンコーダ７で符号化するフレームのディフィカルティＤｊの値と、ディフィカルティの合算値Ｄｋとの比を乗じてターゲットビット量データＴｊを得る。そしてステップＳ１３に移行する。
【００６８】
〔第１の実施の形態における効果〕
以上説明したように、本形態においては、図２に示したように、エンコーダは、動き予測回路２、エンコーダコントローラ３、第１エンコーダ４、ホストコンピュータ５、ＦＩＦＯメモリ６及び第２エンコーダ７で構成される。そして、第１エンコーダ４が予めＬピクチャ分のエンコードを行い、各ディフィカルティデータをホストコンピュータ５に与え、以降、１ピクチャずつディフィカルティデータをホストコンピュータ５に与える。ホストコンピュータ５は、既に説明したように、第１エンコーダ４からのピクチャｊのディフィカルティデータＤｊと、Ｌピクチャ分のディフィカルティデータＤｋとの比にピクチャｊからＬピクチャ分のシーケンスに対して割り当てることのできる平均ビット量を示す平均ビット量データＲｊを乗算し、ターゲットビット量データＴｊを求め、当該ターゲットビット量データＴｊを、第２エンコーダ７に供給する。これにより、第２エンコーダ７は、上記ターゲットビット量データＴｊとなるようにエンコード処理を行う。
従って、フィードフォワードの利点を生かしながら、より適切なビット量の割り当てを行うことにより、復元画像の画質を良好とできるといった効果がある。図５Ｅに示されるように、図５Ｃや図５Ｄに示される従来のビット量の割り当て結果と比較して、格段に適切なビット量の割り当てを行うことができる。この図５Ｅから分かるように、本形態によるビット量の配分は、図５Ａに示したディフィカルティの分布に比例し、しかも、最大限にビット量が配分されている。
【００６９】
〔第２の実施の形態〕
上記フレームあたりのビット量データＦｊ＋Ｌを、ピクチャタイプによらず、一律にフレームあたりの平均ビット量データとすることが考えられる。即ち、数４で表されているように、１秒あたりのビット量を、１秒あたりのピクチャ数で除することにより、１ピクチャあたりの平均ビット量を得、これを上記Ｆｊ＋Ｌとするのである。
【００７０】
【数４】
0003767007.tif 000005
【００７１】
しかしながら、通常、発生ビット量は、Ｉピクチャが最も多く、これにＰ、Ｂが続く。従って、上記ビット量データＦｊ＋Ｌを、ピクチャタイプに応じて変えた方が得策である。つまり、より適切なビット配分を実現できる。もしもビット量データＦｊ＋Ｌを一定にしてしまうと、問題が発生する。例えば、ディフィカルティを新たに求めたピクチャｊ＋ＬがＩピクチャの場合で考える。この場合、ディフィカルティの値は非常に大きくなるので、数１の分母、即ち、Ｄｋが大きくなる。しかしながら、平均ビット量データＲｊ＋１は大きくならないので、ピクチャｊ＋１のターゲットビット量データＴｊ＋１の値が小さくなってしまう。これは、数１を参考にすれば一目瞭然であろう。
【００７２】
そこで、この第２の実施の形態では、各ピクチャタイプに対し、或固定の比率でＦｊ＋Ｌを与えるようにする。即ち、Ｉ：Ｐ：Ｂピクチャの１ピクチャあたりのビット量の比率を、或固定の比率ｉ：ｐ：ｂであるものとし、各ピクチャについてビット量データＦｊ＋Ｌを、次の数５、数６、数７に示す式で示される演算により決定する。数５は、ｊがＩピクチャのとき、数６は、ｊがＰピクチャのとき、数７は、ｊがＢピクチャのときのフレームあたりのビット量を夫々求めるための式である。
【００７３】
【数５】
0003767007.tif 000006
【００７４】
【数６】
0003767007.tif 000007
【００７５】
【数７】
0003767007.tif 000008
【００７６】
ここで、Ｎは、ＧＯＰあたりのピクチャの枚数（Ｉピクチャの間隔）、ＭはＰピクチャの間隔である。ＧＯＰあたりのＰピクチャの枚数は、Ｎ／Ｍ−１、Ｂピクチャの枚数は、Ｎ（１−１／Ｍ）である。
【００７７】
〔第２の実施の形態における効果〕
第１の実施の形態に加え、本形態においては、ピクチャタイプによらず、一律にフレームあたりの平均ビットレートをＦｊとし、更に、より適切なビット量の配分を実現するために、数５〜数７に示されるように、固定の比率で各ピクチャタイプに対してフレームあたりのビット量Ｆｊ＋Ｌを決定するようにした。
よって、各ピクチャタイプ毎に決まったビット量が加算されるので、例えばＩピクチャのディフィカルティデータの値が大きいことに起因して、ターゲットビット量データＴｊの値が小さくなり、よって、発生ビット量が少なくエンコードされ、復元画像が劣化するといった不都合を回避することができる。
【００７８】
〔第３の実施の形態〕
ところで、各ピクチャタイプ毎のビット量の比率は、絵柄によってかなり変動する。よって、より理想的なビット量の配分を実現するためには、第１エンコーダ４において、これからディフィカルティを求めようとしているピクチャのピクチャタイプ別のビット量の比率を用いることが望ましい。即ち、上述したｉ：ｐ：ｂの比率を、絵柄によってダイナミックに変更するのである。より具体的には、ディフィカルティを求めようとしているＧＯＰのビット量の比率は確定していないのであるから、その１つ前のＧＯＰのピクチャタイプ別のビット量の比率を用いる。前のＧＯＰのＩピクチャ、Ｐピクチャ、Ｂピクチャの発生ビット量を夫々ＳI-picture 、ＳP-Picture 、ＳB-Picture とすると、フレームあたりのビット量Ｆｊは、ｊがＩピクチャのとき、Ｐピクチャのとき、Ｂピクチャのときで夫々数８、数９、数１０で示す式により求められる。
【００７９】
【数８】
0003767007.tif 000009
【００８０】
【数９】
0003767007.tif 000010
【００８１】
【数１０】
0003767007.tif 000011
【００８２】
〔第３の実施の形態における効果〕
第２の実施の形態に加え、本形態においては、数８〜数１０に示されるように、ｉ：ｐ：ｂの比率を、絵柄に応じて変えるようにした。
よって、より適切にビット量の配分を行うことができる。
【００８３】
〔第４の実施の形態〕
尚、上記形態においては、同一シーン内でのピクチャタイプ別の発生ビット量の相関性を利用した場合について説明した。しかしながら、シーンが変わった場合には、前後の絵柄の相関性はなくなる。そこで、シーンチェンジを検出し、その結果を積極的に利用する。この方法としては、２つの方法がある。
【００８４】
１つの方法は、シーンチェンジを検出したときに、シーンチェンジ前後の数ピクチャのビット量は、局所的に大きくなっているので、その部分をピクチャタイプ別のビット量比率の計算に入れない方法である。
もう１つの方法は、シーンチェンジの後の絵柄とその前の絵柄とは相関性がないのであるから、シーンチェンジ以降のピクチャのみについてビット量の比率を計算に用いる方法である。
上記方法のどちらを採用しても、より理想的なビット量の配分に近づけることができることは明かであろう。
【００８５】
〔変形例〕
尚、上記数３に示した式において、発生ビット量データＳｊを用いずに、略その値に近い、ターゲットビット量データＴｊを用いるようにしても良い。この場合、第２エンコーダからの発生ビット量データＳｊをホストコンピュータ５に戻さなくても良いので、ホストコンピュータ５だけでビット量の制御を行うことができるといったメリットがある。
【００８６】
【発明の効果】
上述せる本発明によれば、１枚分の画像の符号化の都度、以降のＬ枚の画像の難しさを示すディフィカルティの和に対する上記符号化する画像のディフィカルティの比率に、Ｌ枚の画像に割り当てられる平均ビット量を乗じて目標符号量を決定するので、限られた範囲内においてディフィカルティを参照して符号化を行う場合と比較して、より、適切なビット量の割り当てを実現できるので、復元時における画像の画質を向上させることができるという効果がある。
【図面の簡単な説明】
【図１】本発明目標符号量制御方法及びその装置の概念を説明するための説明図である。
【図２】一実施の形態を示すオーサリングシステムや伝送システムのエンコーダの構成図である。
【図３】図２に示したエンコーダの動作を説明するためのフローチャートである。
【図４】図２に示したエンコーダの動作を説明するためのフローチャートである。
【図５】本発明及び従来の２パスエンコードを説明するための説明図である。
〔図５Ａ〕  入力素材のディフィカルティのモデルを示す説明図である。
〔図５Ｂ〕  図５Ｂに示したディフィカルティの分布を有する入力素材に対して最も適切にビット量が与えられた場合を示す説明図である。
〔図５Ｃ〕  ＧＯＰ単位でビット量を与える簡易な２パスエンコードにより、図５Ａに示したディフィカルティの分布を有する入力素材に対してエンコード処理を施したときのビット量の分布を示す説明図である。
〔図５Ｄ〕  ピクチャ単位でビット量を与える簡易な２パスエンコードにより、図５Ａに示したディフィカルティの分布を有する入力素材に対してエンコード処理を施したときのビット量の分布を示す説明図である。
〔図５Ｅ〕  本発明目標符号量制御方法及びその装置により、図５Ａに示したディフィカルティの分布を有する入力素材に対してエンコード処理を施したときのビット量の分布を示す説明図である。
【符号の説明】
２  エンコーダコントローラ、３  動き予測回路、４  第１エンコーダ、５  ホストコンピュータ、６  ＦＩＦＯ、７  第２エンコーダ
【図１】
0003767007.tif 000012
【図２】
0003767007.tif 000013
【図３】
0003767007.tif 000014
【図４】
0003767007.tif 000015
【図５】
0003767007.tif 000016