(57)【特許請求の範囲】
【請求項１】
フレーム単位で入力される動画像信号をフレーム内予測のみを用いて圧縮符号化するイントラフレームとフレーム間予測を用いて圧縮符号化するインターフレームとを周期的に選択して用いつつ圧縮符号化して圧縮動画像符号列を出力する圧縮符号化手段と、
仮想的に入力される圧縮動画像符号列のビットレートによって定められたビット数の符号を出力してバッファ占有量を計数する仮想バッファ手段と、
前記バッファ占有量を用いて前記圧縮符号化手段における符号化パラメータを決定すると共に、前記仮想バッファのバッファ量がしきい値を超えた場合に、前記圧縮符号化手段が圧縮符号化を行うフレーム間隔を
フレーム間隔＝初期フレーム間隔＋（バッファ容量−しきい値）／ビットレート
に従って変更し、該変更したフレーム間隔が予め定められた最大フレーム間隔以上の場合にフレーム間隔を最大フレーム間隔に設定し、さらに前記イントラフレームとその直後のフレームのフレーム間隔をその直前のフレームのフレーム間隔と同一にする制御を行うレート制御手段とを有することを特徴とする動画像符号化装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は動画像符号化装置、特にインターネット／イントラネット動画像放送システム、テレビ電話、テレビ会議システム、携帯情報端末、デジタルビデオディスクシステムのように、動画像信号を伝送、蓄積する装置／システムに係り、動画像を少ない情報量に圧縮符号化する装置に関する。
【０００２】
【従来の技術】
画像信号を伝送、蓄積するために少ない情報量に圧縮符号化する技術として、離散コサイン変換符号化、サブバンド符号化、ウエーブレット符号化、ピラミッド符号化、可変長符号化等の方式やこれらを組み合わせた方式など様々な方式が開発されている。また、画像信号の圧縮符号化の国際標準方式として、静止画符号化ではＩＳＯ・ＪＰＥＧ、動画像符号化ではＩＳＯ・ＭＰＥＧ１、ＭＰＥＧ２、ＩＴＵ−Ｔ・Ｈ．２６１，Ｈ．２６２、Ｈ．２６３が規定されている。
【０００３】
これらはいずれもコサイン変換符号化を用いた方式であり、文献１：安田浩編著、”マルチメディア符号化の国際標準”、丸善、（平成３年６月）、等に詳細が述べられている。
【０００４】
圧縮された動画像信号を伝送ビットレートが規定された伝送路や記録容量が決められている蓄積媒体に伝送／記録する場合には、動画像符号化装置において圧縮動画像符号列が指定されたビットレートになるように符号化パラメータを制御するレート制御と呼ばれる処理を行う。
【０００５】
以下、従来用いられていたレート制御の例について説明する。この例では、仮想的なバッファを用いて、ステップサイズや次に符号化するフレーム等を決定する。仮想バッファが満杯になると、次に符号化する画像までの間隔を長くするとともにステップサイズを大きくする。
【０００６】
フレーム内符号化（イントラ）で符号化される最初のフレーム（ピクチャ、ＶＯＰともいう）はステップサイズ（ＱＰ）＝１６で符号化する。最初のフレームを符号化した後、バッファ量を次式（１）の値に設定する。
【０００７】
【数１】
0003779066.tif 000002
後続のフレームでは、ステップサイズを画面の左端の各マクロブロック（マクロブロックラインの先頭のマクロブロック）で次式（２）を用いて決定する。
【０００８】
【数２】
0003779066.tif 000003
式（２）の第１項および第２項はフレーム内の全マクロブロック固定であり、第３項はマクロブロック単位にステップサイズを修正するためのパラメータである。
【０００９】
各フレーム符号化終了後に仮想バッファのバッファ量 (buffer＿content)を次式（３）のように更新する。
【００１０】
【数３】
0003779066.tif 000004
さらに、目標フレームレートと１フレーム当たりの目標ビット数を次式（４）に従って更新する。
【００１１】
【数４】
0003779066.tif 000005
このような従来のレート制御では、式（３）のように次に符号化するフレームまでの間隔(frame＿incr) はバッファ量 (buffer＿content)が指定された値（上の例では３Ｒ／ＦＲ）以下になるまで増加させながら決定する。このため、そのフレームの発生符号量が多いほど、次に符号化するフレームまでのフレーム間隔が大きくなる。
【００１２】
イントラ符号化を行うフレームや、大きな動きやシーンチェンジのあるフレームでは、このフレーム間隔が大きくなり過ぎてしまう。フレーム間隔が大きくなり過ぎると、符号化画像の視覚的品質が劣化するだけでなく、動き補償の効率も低下するため、符号化効率が低下して画質が劣化してしまう。
【００１３】
【発明が解決しようとする課題】
上述したように、従来の動画像符号化装置で用いられていたレート制御方法では、発生符号量の多いフレームの直後はフレーム間隔が大きくなり過ぎてしまうために、動き補償の効率低下、符号化画像の主観品質の低下を招くという問題点があった。
【００１４】
本発明は、発生符号量の多いフレームの直後でもフレーム間隔が大きくなり過ぎてしまうことがなく、動き補償の効率向上、符号化画像の主観品質の向上を図ることができる動画像符号化装置を提供することを目的とする。
【００１５】
【発明を解決するための手段】
上記の課題を解決するため、本発明に係る動画像符号化装置は、フレーム単位で入力される動画像信号を圧縮符号化して圧縮動画像符号列を出力する圧縮符号化手段と、圧縮動画像符号列のビットレートが指定された値になるように圧縮符号化手段における符号化パラメータを決定するレート制御手段と、符号化に先立って指定されたビットレート、画像サイズ、フレームレート等の符号化パラメータで圧縮符号化が可能か否か判定して判定結果を出力する手段を有することを特徴とする。
【００１６】
このように符号化に先立って指定したビットレート、画像サイズ、目標フレームレート等の符号化パラメータで動画像の圧縮符号化を行うことが可能か否かを判定するため、符号化により得られた動画像符号列が指定されたビットレートを大幅に上回ったり、発生符号量の多いフレームの後で符号化フレームの間隔が大きくなり過ぎるという問題が解決される。
【００１７】
また、符号化に先立って指定されたビットレート、画像サイズ、フレームレート等の符号化パラメータで圧縮符号化が可能か否か判定して判定結果を出力すると共に、圧縮符号化が不可能と判定された場合には符号化が可能となるように符号化パラメータを修正し、該修正した符号化パラメータを圧縮符号化手段に供給することを特徴とする。
【００１８】
このように指定した画像サイズ、目標フレームレート等が不適切な値であった場合に、これらを自動的に修正することにより、不適切な値を指定してしまった場合、あるいは、適切な値がわからない場合にも、指定したビットレートに適した符号化パラメータを用いて符号化を行うことができ、不適切な符号化パラメータを用いて符号化を行うことによる画質劣化が防止される。
【００１９】
また、レート制御手段は、圧縮動画像符号列を入力して符号化パラメータに含まれるビットレートに従って定められたビット数の符号を出力する仮想バッファを有し、圧縮符号化手段におけるステップサイズと該圧縮符号化手段が圧縮符号化を行うフレームの間隔を該仮想バッファの占有量を用いて決定することを特徴とする。
【００２０】
この場合、圧縮符号化手段が圧縮符号化を行うフレームの間隔の最大値および最小値の少なくとも一方を指定された符号化パラメータを基に決定することが望ましい。
【００２１】
本発明に係る他の動画像符号化装置は、フレーム単位で入力される動画像信号をフレーム内予測のみを用いて圧縮符号化するイントラフレームとフレーム間予測を用いて圧縮符号化するインターフレームとを周期的に選択して用いつつ圧縮符号化して圧縮動画像符号列を出力する圧縮符号化手段と、仮想的に圧縮動画像符号列を入力し、該圧縮動画像符号列のビットレートによって定められたビット数の符号を出力してバッファ占有量を計数する仮想バッファ手段と、このバッファ占有量を用いて圧縮符号化手段における符号化パラメータを決定すると共に、イントラフレームとその直後のフレームのフレーム間隔をその直前のフレームのフレーム間隔と同一にする制御を行うレート制御手段とを有することを特徴とする。
【００２２】
さらに、本発明に係る別の動画像符号化装置は、フレーム単位で入力される動画像信号をフレーム内予測のみを用いて圧縮符号化するイントラフレームとフレーム間予測を用いて圧縮符号化するインターフレームとを周期的に選択して用いつつ圧縮符号化して圧縮動画像符号列を出力する圧縮符号化手段と、仮想的に圧縮動画像符号列を入力し、該圧縮動画像符号列のビットレートによって定められたビット数の符号を出力してバッファ占有量を計数する仮想バッファ手段と、このバッファ占有量を用いて圧縮符号化手段におけるステップサイズ、圧縮符号化を行うフレームの時間間隔を含む符号化パラメータを決定すると共に、少なくとも前記イントラフレームとインターフレームのそれぞれに割り当てる発生符号量、前記仮想バッファ手段のバッファ量、およびフレーム間隔を少なくとも既に符号化したイントラフレームとインターフレームの発生符号量の比率およびフレーム間隔から決定するレート制御手段とを有することを特徴とする。
【００２３】
このように、次に符号化するフレームまでの時間間隔の最大値を指定したビットレート、画像サイズ等によって決定するため、従来の動画像符号化装置のようにフレーム間隔が大きくなり過ぎて動き補償の効率が低下したり、符号化画像の主観品質が低下するなどの問題が回避され、さらにランダムアクセスなどのために周期的にイントラフレームを用いて圧縮符号化を行う場合に、イントラフレームとそれ以外のフレームのフレーム間隔が等しくなるようにフレーム間隔、割り当て符号量、目標フレームレート等を制御する処理を行うことにより、イントラフレームの後に大きなフレームスキップを生じ、イントラフレームとそれ以外のフレームでフレーム間隔が不均衡になるという問題も解決される。
【００２４】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。
図１は、本発明の一実施形態に係る動画像符号化装置の第１の実施形態を示すブロック図である。本実施形態の動画像符号化装置は、動き補償適応予測と直交符号化の一種である離散コサイン変換（ＤＣＴ）符号化を用いた動画像圧縮符号化装置の例である。動き補償適応予測・離散コサイン変換符号化方式については前述の文献１等に詳しいので、動作の概略のみを説明し、従来方式との差異を詳細に説明する。
【００２５】
図１において、フレーム単位で入力される符号化対象の入力動画像信号１３１は、まずマクロブロック等の小領域単位で動き補償適応予測が行われる。すなわち、動き補償適応予測器１０１において、入力動画像信号１３１とフレームメモリ１０２中に蓄えられている既に符号化／局部復号化が行われた画像信号との間の動きベクトルが検出され、この動きベクトルに基づいて動き補償予測により予測信号１３２が作成される。動き補償予測器１０１においては、動き補償予測符号化と、入力動画像信号１３１をそのまま符号化するフレーム内符号化（予測信号＝０）のうち、符号化に用いて好適な方の予測モードが選択され、この予測モードに対応する予測信号１３２が出力される。
【００２６】
予測信号１３２は減算器１０３に入力され、入力動画像信号１３１から予測信号１３２が減算されることによって予測残差信号１３３が出力される。予測残差信号１３３は、離散コサイン変換器１０４において一定の大きさのブロック単位で離散コサイン変換（ＤＣＴ）され、ＤＣＴ係数が生成される。このＤＣＴ係数は量子化器１０５で量子化される。
【００２７】
量子化器１０５からの量子化されたＤＣＴ係数データは二分岐され、一方は第１の可変長符号化器１０６で可変長符号化され、他方は逆量子化器１０７で逆量子化された後、逆離散コサイン変換器１０８で逆離散コサイン変換（逆ＤＣＴ）される。逆離散コサイン変換器１０８からの出力は加算器１０９において予測信号１３２と加算され、局部復号信号が生成される。この局部復号信号は、フレームメモリ１０２に記憶される。
【００２８】
一方、動き補償適応予測器１０１において決定された予測モードおよび動きベクトル情報１３５は、第２の可変長符号化器１０１で可変長符号化される。この際、動きベクトルは隣接の既に符号化された動きベクトルから予測動きベクトルを求め、その予測動きベクトルとの差分を取って可変長符号化する。
【００２９】
第１、第２の可変長符号化器１０６、１１０から出力される可変長符号（圧縮符号）は、多重化器１１１において多重化され、出力符号列２０１となる。
【００３０】
量子化器１０５における量子化ステップサイズ（ＱＰ）、および次のフレームを符号化するまでの時間間隔は、指定符号化パラメータ判定器１１９から送られたビットレート、画像サイズ、目標フレームレート等の符号化パラメータを示す情報２１２を基にレート制御器１１８で決定される。
【００３１】
指定符号化パラメータ判定器１１９では、ビットレート、画像サイズ、目標フレームレート等の符号化パラメータを指定する情報２１０を入力し、これらの符号化パラメータが適正な値か否かを判定する。符号化パラメータが適正な値と判定された場合には、指定された情報２１０をそのまま情報２１２としてレート制御器１１８に出力し、適正な値でないと判定された場合には、その旨を示す情報２１１を出力すると共に、必要に応じて符号化パラメータを指定する情報２１０を修正し、修正後の符号化パラメータを示す情報２１２としてレート制御器１１８に出力する。
【００３２】
図２は、この指定符号化パラメータ判定器１１９での判定に用いるデータの一例を示した図である。図の横軸がビットレート、縦軸が目標フレームレートを示し、指定したビットレートに対して符号化に好適な目標フレームレートが画像サイズ毎に定められている。
【００３３】
以下、この判定の手順の例を説明する。
［例１］ビットレートと画像サイズを指定し、目標フレームレートを自動的に設定する例
指定されたビットレートがＢＲ１、画像サイズがＱＣＩＦ（１７６×１４４画素）の場合、図２のデータはフレームレートをＦＲ１にするのが適正であることを示している。このため、目標フレームレートがＦＲ１であることを示す信号２１２を他の指定情報と合わせてレート制御器に出力する。
【００３４】
［例２］ビットレートのみ指定し画像サイズと目標フレームレートを自動的に設定する例
指定されたビットレートがＢＲ２の場合、適正な画像サイズとフレームレートは、画像サイズがＣＩＦ（３５２×２８８画素）でフレームレートがＦＲ２、ないしは、画像サイズがＱＣＩＦ（１７６×１４４画素）でフレームレートがＦＲ３である。この場合、この２組の画像サイズ、フレームレートを示す信号２１１を出力して再度パラメータ指定を行うようにしてもよいし、どちらか一方の組を選択して選択された画像サイズ、フレームレートを示す信号２１２を出力して符号化を行うようにしてもよい。
【００３５】
［例３］ビットレート、画像サイズ、目標フレームレートを指定する例
入力されたビットレート、画像サイズ、目標フレームレートと図２のデータを照合し、符号化に適正な指定か判定を行う。例えば、指定されたビットレートがＦＲ１、画像サイズがＱＣＩＦの場合、適正なフレームレートはＦＲ１と考えられる。もし指定された目標フレームレートがこれから大幅に外れた値であった場合には、符号化に適さないと判定された旨を示す信号２１１を出力する。あるいは、信号２１１を出力すると共に、目標フレームレートをＦＲ１に修正して符号化を行っても良い。
【００３６】
上記の例において、指定されたビットレートがＦＲ３のように対応する画像サイズ、目標フレームレートが無く、この動画像符号化装置では符号化不可能、ないしは、無理に符号化を行っても十分な品質が得られないと判断される値であった場合には、その旨を示す信号２１１を出力してもよい。
【００３７】
レート制御器１１８では、判定器１１９で決定されたビットレート、画像サイズ、フレームレート等を示す信号２１１をもとに符号化を行う。
【００３８】
図３は、レート制御の動作を説明するための図である。同図のように、圧縮符号列２１０を入力とし、符号化ビットレートに従って定められた単位時間当たり一定の符号量（ビット数）の符号を出力する仮想的なバッファを用い、仮想バッファが蓄積する符号量（バッファ量）に応じてステップサイズ（ＱＰ）を決定する。発生符号量が大きく、仮想バッファのバッファ量が多くなった場合はＱＰを大きくし、発生符号量が少なくなるようにする。逆に発生符号量が少なく、バッファ量が少なくなった場合にはＱＰを小さくし、発生符号量が多くなるようにする。
【００３９】
次に、本実施形態におけるレート制御の具体的な処理手順についてフローチャートを用いて説明する。
図４のフローチャートを用いて、第１のレート制御処理を説明する。前述のように、符号化に先立って指定符号化パラメータ判定器１１９において指定されたビットレート、画像サイズ、フレームレート等の符号化パラメータが適正か否かを判定し、必要に応じて修正する処理を行う（ステップ３０１）。ここで決定された符号化パラメータを基に、各フレームの符号化処理を行っていく。
【００４０】
まず、現在のバッファ量を基に次式に従ってステップサイズ（ＱＰ）を決定する（ステップ３０２）。
ＱＰ＝現バッファ量×（ＱＰ最大値−ＱＰ最小値＋１））／バッファサイズ＋ＱＰ最小値）
次に、このステップサイズＱＰに従って１フレーム符号化を行う（ステップ３０３）。この１フレーム符号化の終了後、次式に従ってバッファ容量を更新する（ステップ３０４）。
バッファ量＝前フレームバッファ量＋現フレーム発生符号量−ビットレート×フレーム間隔
以下、上述したステップ３０２〜３０４の処理を繰り返して動画像符号化を行ってゆく。
【００４１】
この例では、ステップサイズのみをバッファ容量に従ってフレーム毎に変化させ、フレーム間隔は判定器１１９で決定された値を用いる例を示したが、フレーム間隔も各符号化フレーム毎に変化させるようにしても良い。
【００４２】
図５に示すフローチャートは、このような処理を行う第２のレート制御処理を示している。以下、第１のレート制御処理との相違点のみを説明する。
【００４３】
図５において、ステップ４０１〜４０３は図４のステップ３０１〜３０３の処理と同様である。このレート制御処理では１フレーム符号化（ステップ４０３）の終了後、バッファ容量を基に以下の手順でフレーム間隔とステップサイズを決定する。
【００４４】
まず、フレーム間隔の初期値を指定された値、あるいは判定器１１９で決定された値に設定する（ステップ４０４）。次に、この初期フレーム間隔に従って、バッファ容量を更新する（ステップ４０５）。更新されたバッファ容量を予め定められたしきい値を比較し（ステップ４０６）、バッファ容量がしきい値を越えた場合にはフレーム間隔を次式に従って変更する（ステップ４０７）。
フレーム間隔＝初期フレーム間隔＋（バッファ容量―しきい値）／ビットレート
変更されたフレーム間隔と予め定められた最大フレーム間隔を比較し（ステップ４０８）、もし最大フレーム間隔以上だったならば、フレーム間隔を最大フレーム間隔に設定する（ステップ４０９）。ステップ４０７〜４０９に従って決定されたフレーム間隔を基に再度バッファ容量を計算し（ステップ４１０）、次のフレームの処理に移る。
【００４５】
ここで、最大フレーム間隔は判断器１１９で指定されたビットレート、画面サイズ、フレームレートから決定するようにしてもよい。例えば、目標フレームレートを基に以下のような計算式を用いて求めてもよい。
最大フレーム間隔＝（１／目標フレームレート）×α
αは予め定めた定数
また、図６のような指定ビットレート、画面サイズと最大フレームレートの関係を示すデータを用いて最大フレーム間隔を決定してもよい。例えば、ビットレートがＢＲ１、画像サイズがＳＱＣＩＦの場合、最大フレーム間隔はＦＩ１にする。また、ビットレートがＢＲ２の場合、画像サイズがＱＣＩＦならば最大フレーム間隔をＦＩ２に、画像サイズがＣＩＦならば最大フレーム間隔をＦＩ３にする。
【００４６】
図４および図５におけるステップサイズ決定ステップ３０２，４０２におけるステップサイズＱＰの最大値および最小値は、量子化器がとり得る最大、最小の値としてもよいが、判断器１１９で指定されたビットレート、画面サイズ、フレームレートから決定するようにしてもよい。
【００４７】
図７および図８に示すフローチャートは、本実施形態における第３および第４のレート制御処理を示している。これらのレート制御処理は、図５で説明したレート制御処理と同様に仮想バッファのバッファ量を基にステップサイズやフレーム間隔を決定するが、ランダムアクセスやエラー耐性処理のために周期的にフレーム内符号化フレーム（イントラフレーム、Ｉフレーム、Ｉピクチャ、Ｉ−ＶＯＰともいう）を用いるための処理が加わっている点が異なる。
【００４８】
図９は、イントラフレームを周期的に用いた場合に、図７や図８のレート制御処理を行わない場合の仮想バッファのバッファ量の推移とフレーム間隔を示した図で、横軸が符号化フレームの時刻、縦軸がバッファ量をそれぞれ表している。動き補償予測を行わず、フレーム内符号化のみを用いるイントラフレーム（Ｉフレーム）９０１は、それ以外のフレーム（インターフレーム）に比べ発生符号量が大きいため、イントラフレーム符号化直後はバッファ量が非常に多くなる。このため、フレームスキップを行って次に符号化を行うフレームまでのフレーム間隔を大きくとり（９０２）、バッファ量を減らす必要がある。このため、イントラフレームとインターフレームでフレーム間隔が大きく異なることになり、符号化画像の品質が低下する。図７および図８のレート制御処理では、このような現象を防ぐため、イントラフレーム符号化後に特別な処理を追加している。
【００４９】
図７のレート制御処理では、まずレート制御処理で決定した入力画像フレームの時刻（指定時刻）と、実際に入力された画像フレームの時刻（入力時刻）との間にずれがあった場合に、仮想バッファのバッファ量を修正する処理を行う（ステップ７０２）。これは、キャプチャボード等のビデオ入力回路からリアルタイムに動画像を入力しながら画像符号化処理を行う際、ビデオ入力回路の処理遅延により指定した時刻より後のフレームが入力された場合に、これを修正する処理である。
【００５０】
次に、仮想バッファのバッファ量を基にステップサイズ（ＱＰ）を決定し（ステップ７０３）、１フレーム符号化する（ステップ７０４）。
【００５１】
次に、符号化したフレームがイントラフレームかどうかを判定し（ステップ７０５）、イントラフレームならばステップ７２１〜７２２の処理、イントラフレームでなければステップ７０６〜７１０の処理をそれぞれ行う。
【００５２】
イントラフレームでなかった場合、まず指定フレームレートを基に仮のフレームレートを決定し（ステップ７０６）、仮バッファ量を計算する（ステップ７０７）。バッファ量の計算はステップ７２５に示す式に基づいて行う。次に、仮バッファ量がしきい値以下か判定し（ステップ７０８）、もししきい値以下ならばステップ７０６、７０７で求めたフレームレート、バッファ量を用いて次のフレームの処理に移る。もしバッファ量がしきい値を超えていたら、フレーム間隔を更新し（ステップ７０９）、さらにバッファ量を更新して（ステップ７１０）、次のフレームの処理に移る。
【００５３】
ステップ７０５でイントラフレームと判定された場合は、フレーム間隔を直前のフレームと同一のフレーム間隔に設定する（ステップ７２１）。これは、発生符号量が多いイントラフレームでインターフレームと同様にバッファ容量を基にフレーム間隔を計算してしまうと、フレーム間隔が非常に大きくなってしまうためである。
【００５４】
図８のレート制御処理は、図７のレート制御処理とイントラフレームの後の処理が異なる。図７のレート制御処理と同一の処理に同一の記号を付して、その差違のみを説明する。
【００５５】
イントラフレームの後ではフレーム間隔を直前のフレームと同一にし（ステップ７２１）、バッファ量を更新する（ステップ７２２）。次に、バッファ量がしきい値以下か判定し（ステップ７３１）、もししきい値以下ならば次のフレームの処理に移る。バッファ量がしきい値以上だった場合は、以下の（１）〜（２）のように、割り当てビットレートや目標フレームレートを変更する（ステップ７３２）。
【００５６】
（１）  既に符号化したイントラフレームとインターフレームの発生符号量の比率に応じて、イントラフレームとインターフレームそれぞれのバッファ量更新ステップ７２５に用いるビットレート、およびフレームスキップ判定ステップ７０８および７３１におけるしきい値を変える。
【００５７】
（２）  （１）で決定したイントラフレームとインターフレームのビットレート、フレームスキップ判定しきい値を基に、ステップ７０６で用いるインターフレームの目標フレームレートを決定する。
【００５８】
図１０は、図８のレート制御処理を行った場合のバッファ量の推移を表す図である。上記（１）の処理により、イントラフレームのフレームスキップしきい値がインターフレームに比べ大きくなり、イントラフレーム後のフレームスキップが起こりにくくなる。また、上記（２）の処理でインターフレームのフレーム間隔がイントラフレーム後のフレーム間隔と合うように目標フレームレートを変更する。このため、イントラフレームとインターフレームのフレーム間隔はほぼ同じになり、イントラフレームだけ大きなフレームスキップが生じて符号化画像の主観品質が低下する問題が解決する。
【００５９】
なお、上記（１）の処理において、イントラフレームとインターフレームに割り当てられるビットレートの比が大きくなり過ぎないように、制限を加えても良い。例えば、この比が予め定められたしきい値を越えたときは、（１）で計算した比をこのしきい値の値に修正するようにしても良い。あるいは、インターフレームへの割り当てビットレートが予め定められた値以上になるように制限をしても良い。
【００６０】
【発明の効果】
以上説明したように、本発明に係る動画像符号化装置は、レート制御手段において、符号化に先立って指定したビットレート、画像サイズ、目標フレームレート等の符号化パラメータで動画像の圧縮符号化を行うことが可能か否かを判定するため、符号化により得られた動画像符号列が指定されたビットレートを大幅に上回ったり、発生符号量の多いフレームの後で符号化フレームの間隔が大きくなり過ぎる、といった従来の動画像符号化装置の問題を解決することができる。
【００６１】
また、指定した画像サイズ、目標フレームレート等が不適切な値であった場合に、これらを自動的に修正する機能を有するため、不適切な値を指定してしまった場合、あるいは、適切な値がわからない場合にも、指定したビットレートに適した符号化パラメータを用いて符号化を行うことができ、不適切な符号化パラメータを用いて符号化を行うことによる画質劣化を防ぐことができる。
【００６２】
また、次に符号化するフレームまでの時間間隔の最大値を指定したビットレート、画像サイズ等によって決定するため、従来の動画像符号化装置のようにフレーム間隔が大きくなり過ぎて動き補償の効率が低下したり、符号化画像の主観品質が低下するなどの問題が回避される。
【００６３】
さらに、ランダムアクセスなどのために周期的にイントラフレームを用いた符号化方式において、イントラフレームとそれ以外のフレームのフレーム間隔が等しくなるようにフレーム間隔、割り当て符号量、目標フレームレート等を制御する処理を行うため、イントラフレームの後に大きなフレームスキップを生じ、イントラフレームとそれ以外のフレームでフレーム間隔が不均衡になるという問題も解決される。
【図面の簡単な説明】
【図１】  本発明の一実施形態に係る動画像符号化装置の構成を示すブロック図
【図２】  同実施形態における指定されたビットレート、画像サイズ等の適正を判定するデータの例を示す図
【図３】  同実施形態におけるレート制御の動作を説明する図
【図４】  同実施形態におけるレート制御処理の第１の例の流れを示すフローチャート
【図５】  同実施形態におけるレート制御処理の第２の例の流れを示すフローチャート
【図６】  ビットレートと最大フレーム間隔の関係を示す図
【図７】  同実施形態におけるレート制御処理の第３の例の流れを示すフローチャート
【図８】  同実施形態におけるレート制御処理の第４の例の流れを示すフローチャート
【図９】  仮想バッファのバッファ量の推移を表す図
【図１０】  第３の例のレート制御を用いたときの仮想バッファのバッファ量の推移を表す図
【符号の説明】
１０１…動き補償適応予測器
１０２…フレームメモリ
１０４…離散コサイン変換器
１０５…量子化器
１０７…逆量子化器
１０８…逆離散コサイン変換器
１１１…多重化器
１０６、１１０…可変長符号化器
１１８…レート制御器
１１９…指定符号化パラメータ適正判定器
１３１…入力画像
２０１…圧縮動画像符号列
【図１】
0003779066.tif 000006
【図２】
0003779066.tif 000007
【図３】
0003779066.tif 000008
【図４】
0003779066.tif 000009
【図５】
0003779066.tif 000010
【図６】
0003779066.tif 000011
【図７】
0003779066.tif 000012
【図８】
0003779066.tif 000013
【図９】
0003779066.tif 000014
【図１０】
0003779066.tif 000015