(57)【特許請求の範囲】
【請求項１】
ピクチャー間予測を用いた符号化を行う動画像符号化装置であって、
入力画像データと予測画像データとの差分値を量子化する量子化手段と、
前記量子化手段によって量子化された差分値のエントロピー符号化を行う符号化手段と、
前記符号化手段によって発生した符号量に基づいて、デコーダのバッファを仮想した仮想バッファの占有量を更新するとともに、前記仮想バッファの占有量に応じて前記量子化手段を制御する占有量制御手段と、
前記符号化手段によって第１のピクチャーを符号化した際に前記仮想バッファの占有量が所定の量を下回った場合、前記第１のピクチャーをコピーピクチャーに置き換えるとともに、前記第１のピクチャーに対応する参照画像を前記ピクチャー間予測のために参照している後続ピクチャーのうち、前記量子化手段によって量子化を開始、または完了している第２のピクチャーを前記コピーピクチャーに置き換えるコピーピクチャー生成手段とを有することを特徴とする動画像符号化装置。
【請求項２】
前記コピーピクチャー生成手段は、前記仮想バッファがアンダーフローした場合に、前記第１のピクチャーを前記コピーピクチャーに置き換えることを特徴とする請求項１に記載の動画像符号化装置。
【請求項３】
前記占有量制御手段は、前記第１のピクチャーとしてイントラピクチャーを前記コピーピクチャーに置き換えたときに、次のイントラピクチャーを量子化するまで後続ピクチャーの発生符号量を抑えるように前記量子化手段を制御することを特徴とする請求項１に記載の動画像符号化装置。
【請求項４】
前記符号化手段は、前記コピーピクチャーに置き換えられた前記第２のピクチャーに対して、前記エントロピー符号化を行わないようにすることを特徴とする請求項１に記載の動画像符号化装置。
【請求項５】
ピクチャー間予測を用いた符号化を行う動画像符号化方法であって、
入力画像データと予測画像データとの差分値を量子化する量子化工程と、
前記量子化工程において量子化した差分値のエントロピー符号化を行う符号化工程と、
前記符号化工程において発生した符号量に基づいて、デコーダのバッファを仮想した仮想バッファの占有量を更新するとともに、前記仮想バッファの占有量に応じて前記量子化工程における処理を制御する占有量制御工程と、
前記符号化工程において第１のピクチャーを符号化した際に前記仮想バッファの占有量が所定の量を下回った場合、前記第１のピクチャーをコピーピクチャーに置き換えるとともに、前記第１のピクチャーに対応する参照画像を前記ピクチャー間予測のために参照している後続ピクチャーのうち、前記量子化工程において量子化を開始、または完了している第２のピクチャーを前記コピーピクチャーに置き換えるコピーピクチャー生成工程とを有することを特徴とする動画像符号化方法。
【請求項６】
前記コピーピクチャー生成工程においては、前記仮想バッファがアンダーフローした場合に、前記第１のピクチャーを前記コピーピクチャーに置き換えることを特徴とする請求項５に記載の動画像符号化方法。
【請求項７】
前記占有量制御工程においては、前記第１のピクチャーとしてイントラピクチャーを前記コピーピクチャーに置き換えたときに、次のイントラピクチャーを量子化するまで後続ピクチャーの発生符号量を抑えるように前記量子化工程における処理を制御することを特徴とする請求項５に記載の動画像符号化方法。
【請求項８】
前記符号化工程においては、前記コピーピクチャーに置き換えられた前記第２のピクチャーに対して、前記エントロピー符号化を行わないようにすることを特徴とする請求項５に記載の動画像符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は動画像符号化装置及び動画像符号化方法に関し、特に、Ｈ．２６４等の符号化方式で動画像データを符号化するために用いて好適な技術に関する。
【背景技術】
【０００２】
近年、記録媒体としてディスク媒体やハードディスク、メモリを用いて、ＨＤ（High Definition）画像の記録を行うビデオカメラが製品化され始めた。これらのビデオカメラは、小型で持ち運びも容易であり、かつ高画質の映像で記録できるため、今後ますます普及していくと予想される。このような機器では、ＨＤ画像を効率的に記録するため、記録時にはＭＰＥＧ４  Ｐａｒｔ−１０：ＡＶＣ（ＩＳＯ／ＩＥＣ  １４４９６−１０、別名Ｈ．２６４）方式を用いて圧縮符号化されたビデオストリームを記録媒体に記録する。
【０００３】
なお、Ｈ．２６４方式の圧縮手順の概要については標準規格書（ＩＳＯ／ＩＥＣ  １４４９６−１０）に詳しく開示されている。また、Ｈ．２６４方式を用いて圧縮符号化を行う画像処理装置も開示されている（例えば、特許文献１参照。）。
【０００４】
Ｈ．２６４方式では、圧縮符号化を行う際に、仮想的なＶＢＶ（Video Buffering Verifier）バッファ（以下、仮想バッファと称す）を想定して目標符号量を調整している。ここで仮想バッファとは、エントロピー符号化における発生符号量と出力された符号量とに基づいて定義されるものである。
【０００５】
また、Ｈ．２６４方式では、エントロピー符号化の方法として２種類の方法を選択できる。１つは、ハフマン符号をベースとしたＣＡＶＬＣ（Context-based Adaptive Variable Length Coding）方式である。そして、もう１つは、算術符号化を用いたＣＡＢＡＣ（Context-based Adaptive Binary Arithmetic Coding）方式である。特にＣＡＢＡＣ方式では、符号化効率を重視するため演算量が多く、符号化処理に多くの時間がかかる。
【０００６】
Ｈ．２６４方式は、１９２０×１０８０（画素）のＨＤ画像を符号化するために用いられることが多いため、処理画素数は７２０×４８０（画素）のＳＤ（Standard Definition）画像に対して６倍の画素数を処理することになる。そのため、動作周波数を上げずにＨＤ画像をリアルタイムに符号化するためには、マルチコア化が要求されている。そこで、量子化処理及びエントロピー符号化処理は、ピクチャー単位に同期して処理を行うことが望ましいが、エントロピー符号化処理は処理の性質上マルチコア化が難しい。このため、エントロピー符号化処理は、量子化処理とは非同期で行うことが考えられる。
【０００７】
この場合、過去のピクチャーのエントロピー符号化と、現在のピクチャーの量子化とが並行して行われることがある。このため、特にＣＡＢＡＣ方式においては、過去のピクチャーのＣＡＢＡＣ処理が終了した時には、既に後続のピクチャーの量子化を開始、又は、完了していることがしばしば起こり得る。
【０００８】
そのような場合において、過去のピクチャーが、想定していた符号量よりも実際に発生した符号量の方が多くなり、仮想バッファがアンダーフローすることがある。仮想バッファがアンダーフローしたことを検知するのは、過去のピクチャーのＣＡＢＡＣ終了時点であるから、既に符号化は完了している状態である。そこで、Ｈ．２６４方式では、仮想バッファがアンダーフローした場合に、アンダーフローしたピクチャーをコピーピクチャーに置き換える処理を行う。
【０００９】
図７（ａ）は、仮想バッファがアンダーフローしたときの一例を示す概念図であり、図７（ｂ）は、コピーピクチャーに置き換えたときの仮想バッファの占有量を示す概念図である。図７（ａ）、（ｂ）を参照しながら、符号化処理を行っていたピクチャーをコピーピクチャーに置き換える処理が発生した場合の占有量の遷移について説明する。
占有量が仮想バッファのサイズの下限位置を下回ると、仮想バッファはアンダーフローとなる。図７（ａ）に示すように、仮想バッファがアンダーフローした場合に、その時の符号化対象ピクチャー（アンダーフローしたピクチャー）をコピーピクチャーに置き換える処理を行う。これにより、図７（ｂ）に示すような占有量の遷移となり、ストリーム破綻とバッファの破綻とを防ぐことができる。
【００１０】
図８は、量子化処理とエントロピー符号化処理とが非同期で動作する場合における、各処理のタイミングを示す概念図である。図８を参照しながら、量子化処理及びエントロピー符号化処理の処理タイミングについて説明する。
図８において、各ピクチャーがフレーム又はフィールド単位で入力されると、ピクチャー毎に量子化、エントロピー符号化の順に処理を行う。ところが、量子化処理及びエントロピー符号化処理の処理タイミングは非同期である。このため、第１のピクチャー６０１のエントロピー符号化処理を行っている間に、後続のピクチャーである第２のピクチャー６０２、第３のピクチャー６０３及び第４のピクチャー６０４の量子化処理が行われることがある。
【００１１】
【特許文献１】特開２００６−２１７１８０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
前述したように、仮想バッファがアンダーフローして、符号化処理を行っていたピクチャーをコピーピクチャーに置き換えた場合、当該ピクチャーのエントロピー符号化中に、後続のピクチャーの量子化が開始されている。したがって、仮想バッファがアンダーフローしたときに符号化が行われていたピクチャーが、ピクチャー間予測によって参照される参照ピクチャーであった場合に、以下のような問題がある。すなわち、参照ピクチャーがコピーピクチャーに置き換わっているため、既に量子化されている後続ピクチャーが誤った動き補償を行ってしまう。これにより、復号化を行うとエラーが生じ、画像が劣化して表示されてしまうという問題点があった。また、仮想バッファがアンダーフローした時点で後続ピクチャーの量子化を既に行っている。このため、置き換えられたコピーピクチャーを新たな参照ピクチャーとして後続ピクチャーの量子化をやり直すことは、動画像のリアルタイム符号化を継続する上では困難であった。
【００１３】
本発明は、誤った動き補償を行うことを回避し、画像が劣化して表示されることを防止することを目的としている。
さらに本発明は、仮想バッファがアンダーフローした場合であっても、後続ピクチャーの量子化をやり直すことなく、動画像のリアルタイム符号化を継続することを目的とする。
【課題を解決するための手段】
【００１４】
本発明の動画像符号化装置は、ピクチャー間予測を用いた符号化を行う動画像符号化装置であって、入力画像データと予測画像データとの差分値を量子化する量子化手段と、前記量子化手段によって量子化された差分値のエントロピー符号化を行う符号化手段と、前記符号化手段によって発生した符号量に基づいて、デコーダのバッファを仮想した仮想バッファの占有量を更新するとともに、前記仮想バッファの占有量に応じて前記量子化手段を制御する占有量制御手段と、前記符号化手段によって第１のピクチャーを符号化した際に前記仮想バッファの占有量が所定の量を下回った場合、前記第１のピクチャーをコピーピクチャーに置き換えるとともに、前記第１のピクチャーに対応する参照画像を前記ピクチャー間予測のために参照している後続ピクチャーのうち、前記量子化手段によって量子化を開始、または完了している第２のピクチャーを前記コピーピクチャーに置き換えるコピーピクチャー生成手段とを有することを特徴とする。
【００１５】
本発明の動画像符号化方法は、ピクチャー間予測を用いた符号化を行う動画像符号化方法であって、入力画像データと予測画像データとの差分値を量子化する量子化工程と、前記量子化工程において量子化した差分値のエントロピー符号化を行う符号化工程と、前記符号化工程において発生した符号量に基づいて、デコーダのバッファを仮想した仮想バッファの占有量を更新するとともに、前記仮想バッファの占有量に応じて前記量子化工程における処理を制御する占有量制御工程と、前記符号化工程において第１のピクチャーを符号化した際に前記仮想バッファの占有量が所定の量を下回った場合、前記第１のピクチャーをコピーピクチャーに置き換えるとともに、前記第１のピクチャーに対応する参照画像を前記ピクチャー間予測のために参照している後続ピクチャーのうち、前記量子化工程において量子化を開始、または完了している第２のピクチャーを前記コピーピクチャーに置き換えるコピーピクチャー生成工程とを有することを特徴とする。
【発明の効果】
【００１６】
本発明によれば、仮想バッファの占有量が所定の量を下回った場合、そのとき符号化されたピクチャーをコピーピクチャーに置き換える。さらに、当該ピクチャーを参照している後続ピクチャーのうち、量子化を開始、又は完了している後続ピクチャーもコピーピクチャーに置き換えるようにした。これにより、誤った動き補償を行うことを防止することができ、画像が劣化して表示されることを防止することができる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照しながら、本発明の実施形態を詳細に説明する。
（第１の実施形態）
図１は、本実施形態に係る動画像符号化装置の構成例を示すブロック図である。図１を参照しながら本実施形態の動画像符号化装置１００によるＨ．２６４規格に基づく符号化処理について説明する。なお、本実施形態ではＨ．２６４方式を例に説明するが、同様の符号化を行う他の符号化方式でも適用可能である。
【００１８】
符号化部４００は、符号化の単位ブロックであるマクロブロックごとに入力画像データを符号化して、符号化ストリームを出力する。符号化方式としては、ピクチャー内予測（イントラ予測と称す）及びピクチャー間予測（インター予測と称す）のうち、何れか一方を用いて行う。
【００１９】
減算器４０１は、入力画像データの画素値と予測に用いられる参照画素値（予測画像データ）との差分値を算出して、直交変換部４０２に出力する。直交変換部４０２は、減算器４０１から入力された差分値を、例えば離散コサイン係数に変換し、量子化部４０３に出力する。量子化部４０３は、占有量制御部４１５から指示された目標符号量に基づいて量子化パラメータを設定して、直交変換部４０２から入力された離散コサイン係数を量子化する。
【００２０】
逆量子化部４０４及び逆直交変換部４０５は、量子化部４０３による量子化の結果を逆量子化、逆直交変換してデコードする。これにより、再生機器において算出される差分値と同等の差分値を局所的に求めることができる。加算器４０６は、逆量子化部４０４及び逆直交変換部４０５で算出された差分値と参照画素値とを加算する。これにより、局所的な復号画像を示す画素値を得ることができる。そして、加算器４０６によって得られた画素値は、イントラ予測部４０７へ出力されるとともに、ループフィルタ４０８を介してフレームメモリ４０９に記憶される。ループフィルタ４０８は、局所的な復号画像におけるマクロブロック境界部のノイズを取り除くために利用される。
【００２１】
符号化にイントラ予測を用いる場合、イントラ予測部４０７は、加算器４０６から入力された画素値に基づいて、Ｈ．２６４規格によって隣接するマクロブロックとの対比に用いるための所定の参照画素値を生成する。そして、スイッチ４１２がイントラ予測部４０７側に選択されると、イントラ予測部４０７から出力された参照画素値が減算器４０１に入力される。このように、入力画像に含まれる隣接するマクロブロックの画素値と参照画素値との差分値を算出することにより、後述する符号化が実行される。
【００２２】
また、符号化にインター予測を用いる場合、動き検出部４１０は、フレームメモリ４０９に記憶されている先行するフレーム又はフィールドの局所的な復号画像（参照画像）を参照する。そして、参照画像の画素値に基づいて、後続するフレーム又はフィールドの各マクロブロックの動きベクトルを算出する。そして、スイッチ４１２が動き補償部４１１側（インター予測側）に選択されると、動き補償部４１１は、動き検出部４１０で算出された動きベクトルで表される範囲の画素値を参照画素値として減算器４０１に出力する。減算器４０１は、後続するフレーム又はフィールドにおけるマクロブロックの画素値と参照画素値との差分値を算出することにより、後述する符号化が実行される。
【００２３】
エントロピー符号化部４１３は、量子化部４０３による量子化結果及び動き検出部４１０により算出された動きベクトルをエントロピー符号化し、符号化ストリームとして多重化部４１４に出力する。また、エントロピー符号化部４１３は、ハフマン符号をベースとしたＣＡＶＬＣ方式及び算術符号化を用いたＣＡＢＡＣ方式の両方の方式を用いることができる。
【００２４】
占有量制御部４１５は、エントロピー符号化部４１３により発生した符号量に基づいて仮想バッファの占有量を更新する。そして、仮想バッファの占有量に基づき、次のピクチャーの目標符号量を量子化部４０３へ指示する。なお、仮想バッファとは、デコーダのバッファを仮想したものであって、占有量制御部４１５において、仮想バッファの占有量がエントロピー符号化における発生符号量と出力された符号量とに基づいて定義されるものである。
【００２５】
図７（ａ）のように、占有量が仮想バッファのサイズの下限位置を下回ると、仮想バッファはアンダーフローとなる。コピーピクチャー生成部４１６は、仮想バッファがアンダーフローした場合に、そのときエントロピー符号化されていたピクチャーを、その直前に符号化したピクチャーと同一のコピーピクチャーに置き換える。なお、コピーピクチャーとは、他のピクチャーと同じであることを示す情報のみを有するピクチャーである。
【００２６】
さらに、本実施形態では、コピーピクチャー生成部４１６が、仮想バッファのアンダーフローによってコピーピクチャーに置き換えられたピクチャーをピクチャー間予測のために参照している一つ又は複数の後続ピクチャーもコピーピクチャーに置き換える。そして、多重化部４１４は、置き換えの対象となったピクチャーに替えて、コピーピクチャー生成部４１６で生成されたコピーピクチャーを符号化ストリーム中に多重化する。なお、コピーピクチャーに置き換えた場合、占有量制御部４１５は仮想バッファの占有量をコピーピクチャーの発生符号量に基づいて更新する。
【００２７】
多重化部４１４は、さらに、エントロピー符号化部４１３でエントロピー符号化されたストリーム（映像ストリーム）に、不図示の音声符号化部で生成された音声ストリームを多重化し、記録に適した符号化ストリームとして記録装置等に出力する。
【００２８】
図６は、本実施形態におけるコピーピクチャー置き換え処理の手順の一例を示すフローチャートである。図６を参照しながら、仮想バッファがアンダーフローした場合のコピーピクチャー置き換え処理について説明する。
【００２９】
まず、ステップＳ１０１において、占有量制御部４１５は、占有量が低下して仮想バッファがアンダーフローしたか否かを判断する。この判断の結果、アンダーフローした場合は、ステップＳ１０２に進む。一方、ステップＳ１０１の判断の結果、アンダーフローしていない場合は、コピーピクチャー置き換え処理を終了する。
【００３０】
次に、ステップＳ１０２において、コピーピクチャー生成部４１６は、アンダーフローしたピクチャーをコピーピクチャーに置き換える。そして、ステップＳ１０３において、占有量制御部４１５は、ステップＳ１０２、Ｓ１０５またはＳ１０６で対象としているピクチャーの次に量子化を行うもしくは行った後続ピクチャーを参照する。
【００３１】
次に、ステップＳ１０４において、占有量制御部４１５は、ステップＳ１０３で参照した後続ピクチャーが既に量子化されている（量子化中も含む）ものであるか否かを判断する。この判断の結果、既に量子化されている（量子化中も含む）ものである場合は、ステップＳ１０５に進む。一方、ステップＳ１０４の判断の結果、後続ピクチャーの量子化をまだ行っていない場合は、コピーピクチャー置き換え処理を終了する。
【００３２】
次に、ステップＳ１０５において、占有量制御部４１５は、ステップＳ１０３で参照した後続ピクチャーにおいて、動きベクトル検出時に参照する参照ピクチャーに対応する符号化ピクチャー（元画像）がコピーピクチャーに置き換えられているか否かを判断する。この判断の結果、コピーピクチャーに置き換えられている場合は、ステップＳ１０６に進む。一方、ステップＳ１０５の判断の結果、コピーピクチャーに置き換えられていない場合は、ステップＳ１０３に戻る。
【００３３】
参照ピクチャーに対応する符号化ピクチャー（元画像）がコピーピクチャーに置き換えられている場合、そのまま符号化してしまうと、符号化時に参照したピクチャーと同じものが復号時に得られないため、デコードエラーや画像劣化につながる。そこで、ステップＳ１０６において、コピーピクチャー生成部４１６は、ステップＳ１０３で参照した後続ピクチャーをコピーピクチャーに置き換える。なお、後続ピクチャーをコピーピクチャーに置き換えたため、エントロピー符号化部４１３は、既に量子化されている後続ピクチャーについてはエントロピー符号化を行わないようにする。そして、ステップＳ１０３に戻る。
【００３４】
図２〜図４は、本実施形態において、仮想バッファがアンダーフローした時のピクチャーの参照関係とコピーピクチャー置き換え処理との関係をピクチャータイプ毎に示す概念図である。図２〜図４を参照しながら、各ピクチャータイプのコピーピクチャー置き換え処理について説明する。
【００３５】
図２（ａ）、（ｂ）は、Intra（Ｉ）ピクチャー２１１のエントロピー符号化で、仮想バッファがアンダーフローした場合のコピーピクチャー置き換え処理を示している。同様に、図３（ａ）、（ｂ）は、Predictive（Ｐ）ピクチャー２２１の場合を示し、図４（ａ）、（ｂ）は、Bi-directional predictive（Ｂ）ピクチャー２３１の場合を示している。
【００３６】
図２（ａ）では、表示順で入力される入力ピクチャーを、符号化順に並べ替えた上で、符号化対象ピクチャーを量子化、及び、エントロピー符号化する様子を表わしている。図２（ａ）は、符号化対象ピクチャーが、Ｉピクチャー２１１、Ｂピクチャー２１２、Ｂピクチャー２１３、Ｐピクチャー２１４、Ｂピクチャー２１５、の順で量子化処理される例である。一方、エントロピー符号化処理は、量子化後のＩピクチャー２１１、量子化後のＢピクチャー２１２、の順で、量子化処理とは非同期、かつ、不定期の処理間隔で実行される。
【００３７】
Ｉピクチャー２１１でアンダーフローを生じた場合、それが確定されるのは、エントロピー符号化処理の終了時点である。よって、図２（ａ）に示す例では、Ｉピクチャー２１１のアンダーフローが確定するまでの期間中、すなわちＩピクチャー２１１のエントロピー符号化中に既に量子化を開始、または完了している後続ピクチャーが存在する。既に量子化を開始、または完了している後続ピクチャーとは、Ｂピクチャー２１２、Ｂピクチャー２１３、及びＰピクチャー２１４の３枚のピクチャーである。
【００３８】
ピクチャーの参照関係においては、後続ピクチャーである３枚のピクチャー（Ｂピクチャー２１２、Ｂピクチャー２１３、及びＰピクチャー２１４）は全て、アンダーフローを起こしたＩピクチャー２１１を参照している。そのため、図２（ｂ）のように、第１のピクチャーであるＩピクチャー２１１がコピーピクチャーに置き換えられると、コピーピクチャー生成部４１６によって、Ｉピクチャー２１１を参照している３枚のピクチャーもコピーピクチャーに置き換えられる。すなわち、第２のピクチャーとして後続ピクチャーであるＢピクチャー２１２、Ｂピクチャー２１３、及びＰピクチャー２１４もコピーピクチャーに置き換えられる。なお、Ｂピクチャー２１５は、コピーピクチャーとなったＰピクチャー２１４を参照することが可能であるが、次のＩ又はＰピクチャーのみを参照するようにしても良い。
【００３９】
図３（ａ）では、表示順で入力される入力ピクチャーを、符号化順に並べ替えた上で、符号化対象ピクチャーを量子化、及び、エントロピー符号化する様子を表わしている。図３（ａ）は、符号化対象ピクチャーが、Ｐピクチャー２２１、Ｂピクチャー２２２、Ｂピクチャー２２３、Ｐピクチャー２２４、Ｂピクチャー２２５、の順で量子化処理される例である。一方、エントロピー符号化処理は、量子化後のＰピクチャー２２１、量子化後のＢピクチャー２２２、の順で、量子化処理とは非同期、かつ、不定期の処理間隔で実行される。
【００４０】
Ｐピクチャー２２１でアンダーフローを生じた場合、それが確定されるのは、エントロピー符号化処理の終了時点である。よって、図３（ａ）に示す例では、Ｐピクチャー２２１のアンダーフローが確定するまでの期間中、すなわちＰピクチャー２２１のエントロピー符号化中に既に量子化を開始、または完了している後続ピクチャーが存在する。既に量子化を開始、または完了している後続ピクチャーとは、Ｂピクチャー２２２、Ｂピクチャー２２３、及びＰピクチャー２２４の３枚のピクチャーである。
【００４１】
ピクチャーの参照関係においては、後続ピクチャーである３枚のピクチャー（Ｂピクチャー２２２、Ｂピクチャー２２３、及びＰピクチャー２２４）は全て、アンダーフローを起こしたＰピクチャー２２１を参照している。そのため、図３（ｂ）のように、第１のピクチャーであるＰピクチャー２２１がコピーピクチャーに置き換えられると、コピーピクチャー生成部４１６によって、Ｐピクチャー２２１を参照している３枚のピクチャーもコピーピクチャーに置き換えられる。すなわち、第２のピクチャーとして後続ピクチャーであるＢピクチャー２２２、Ｂピクチャー２２３、及びＰピクチャー２２４もコピーピクチャーに置き換えられる。なお、Ｂピクチャー２２５は、コピーピクチャーとなったＰピクチャー２２４を参照することが可能であるが、次のＩ又はＰピクチャーのみを参照するようにしても良い。
【００４２】
図４（ａ）では、表示順で入力される入力ピクチャーを、符号化順に並べ替えた上で、符号化対象ピクチャーを量子化、及び、エントロピー符号化する様子を表わしている。図４（ａ）は、符号化対象ピクチャーが、Ｂピクチャー２３１、Ｂピクチャー２３２、Ｐピクチャー２３３、Ｂピクチャー２３４、Ｂピクチャー２３５、の順で量子化処理される例である。一方、エントロピー符号化処理は、量子化後のＢピクチャー２３１、量子化後のＢピクチャー２３２、の順で、量子化処理とは非同期、かつ、不定期の処理間隔で実行される。
【００４３】
Ｂピクチャー２３１でアンダーフローを生じた場合、それが確定されるのは、エントロピー符号化処理の終了時点である。よって、図４（ａ）に示す例では、Ｂピクチャー２３１のアンダーフローが確定するまでの期間中、すなわちＢピクチャー２３１のエントロピー符号化中に既に量子化を開始、または完了している後続ピクチャーが存在する。既に量子化を開始、または完了している後続ピクチャーとは、Ｂピクチャー２３２、Ｐピクチャー２３３、及びＢピクチャー２３４の３枚のピクチャーである。
【００４４】
ところが、ピクチャーの参照関係においては、後続ピクチャーである３枚のピクチャー（Ｂピクチャー２３２、Ｐピクチャー２３３、及びＢピクチャー２３４）は、何れもアンダーフローを起こしたＢピクチャー２３１を参照していない。そのため、図４（ｂ）のように、コピーピクチャー生成部４１６は、Ｂピクチャー２３１をコピーピクチャーに置き換えるだけで、後続ピクチャーである３枚のピクチャーは何れもコピーピクチャーに置き換えない。
【００４５】
以上のように本実施形態においては、コピーピクチャー生成部４１６は、仮想バッファがアンダーフローしたときの符号化対象ピクチャーをコピーピクチャーに置き換える。さらに、コピーピクチャーに置き換えられた符号化対象ピクチャーを参照している後続ピクチャーのうち、量子化部４０３での量子化が開始、または完了している一つ又は複数の後続ピクチャーもコピーピクチャーに置き換えるようにした。これにより、誤った動き補償を行うことを防止することができ、画像が劣化して表示されることを防止することができる。さらに、仮想バッファがアンダーフローした場合であっても、後続ピクチャーの量子化をやり直すことなく、動画像のリアルタイム符号化を継続することができる。この結果、ユーザに対して好適な映像を提供することができる。
【００４６】
（第２の実施形態）
第２の実施形態として、イントラピクチャー（Ｉピクチャー）のエントロピー符号化で仮想バッファがアンダーフローした場合に、発生符号量を抑える処理について説明する。なお、本実施形態の動画像符号化装置の構成は、第１の実施形態と同様であるため、説明は省略する。
【００４７】
本実施形態では、Ｉピクチャーのエントロピー符号化で仮想バッファがアンダーフローした場合に、占有量制御部４１５は次のＩピクチャーで再度仮想バッファがアンダーフローしないように後続ピクチャーの発生符号量を抑えるように量子化部４０３を制御する。具体的には、占有量制御部４１５は、仮想バッファがアンダーフローした場合に、量子化部４０３における量子化パラメータを強制変更して、量子化ステップサイズを大きくする。
【００４８】
図５（ａ）、（ｂ）は、仮想バッファの占有量の推移を示す図であり、１つ目のＩピクチャーが、仮想バッファがアンダーフローしたためコピーピクチャーに置き換えられていることを示している。さらに、図５（ａ）は、後続ピクチャーの発生符号量を抑える制御を行っていない場合の仮想バッファの占有量を示す概念図である。一方、図５（ｂ）は、本実施形態において、後続ピクチャーの発生符号量を抑える制御を行った場合の仮想バッファの占有量を示す概念図である。なお、図５（ａ）、（ｂ）において、縦方向が仮想バッファの占有量を示しており、横方向は各ピクチャーが多重化部４１４に出力される時間を示している。占有量が仮想バッファのサイズの上限位置及び下限位置の中間にあるときは正常であるが、下限位置を下回ると仮想バッファはアンダーフローとなる。
【００４９】
図５（ｂ）に示すように、仮想バッファがアンダーフローした以降の各ピクチャーの発生符号量を抑えることにより、仮想バッファの占有量が増加し、次のＩピクチャーが出力される段階で、アンダーフローが起こらないようにすることができる。これにより、Ｉピクチャーが連続してコピーピクチャーに置き換わることがなくなり、画像が劣化して表示されることを防止することができる。
【００５０】
一方、第１の実施形態では、Ｉピクチャーがコピーピクチャーに置き換わった場合に、そのＩピクチャーを参照する量子化済みもしくは量子化中のＰピクチャーやＢピクチャーをコピーピクチャーに置き換えた。そこで、本実施形態では、そのようなＰピクチャーやＢピクチャーをコピーピクチャーに置き換えるとともに、まだ量子化が行われていない後続ピクチャーの発生符号量を抑えるように量子化部４０３を制御してもよい。
【００５１】
例えば、図２（ａ）において、仮想バッファがアンダーフローした段階でＢピクチャー２１５はまだ量子化処理を行っていない。そこで、Ｂピクチャー２１５から次のＩピクチャーまでの発生符号量を抑えるように量子化部４０３を制御することにより、Ｉピクチャーが連続してコピーピクチャーに置き換わることがなくなり、さらに画像が劣化して表示されることを防止することができる。
【００５２】
（本発明に係る他の実施形態）
前述した本発明の実施の形態における動画像符号化装置を構成する各ユニットは、コンピュータのＲＡＭやＲＯＭなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【００５３】
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施の形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【００５４】
なお、本発明は、前述した動画像符号化方法における各工程を実行するソフトウェアのプログラム（実施の形態では図６に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接、あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【００５５】
したがって、本発明の実施形態に係る機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００５６】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【００５７】
プログラムを供給するための記録媒体としては種々の記録媒体を使用することができる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ）などがある。
【００５８】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページ（website）に接続する。そして、前記ホームページから本発明の実施形態に係るコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【００５９】
また、本発明の実施形態に係るプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の実施形態に係る機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００６０】
また、本発明の実施形態に係るプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件を満足したユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００６１】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施の形態の機能が実現される他、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行うことによっても前述した実施の形態の機能が実現され得る。
【００６２】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によっても前述した実施の形態の機能が実現される。
【図面の簡単な説明】
【００６３】
【図１】本発明の第１の実施形態に係る動画像符号化装置の構成例を示すブロック図である。
【図２】（ａ）、（ｂ）は、本発明の第１の実施形態において、Ｉピクチャーのエントロピー符号化で仮想バッファがアンダーフローした場合のコピーピクチャー置き換え処理の一例を示す図である。
【図３】（ａ）、（ｂ）は、本発明の第１の実施形態において、Ｐピクチャーのエントロピー符号化で仮想バッファがアンダーフローした場合のコピーピクチャー置き換え処理の一例を示す図である。
【図４】（ａ）、（ｂ）は、本発明の第１の実施形態において、Ｂピクチャーのエントロピー符号化で仮想バッファがアンダーフローした場合のコピーピクチャー置き換え処理の一例を示す図である。
【図５】（ａ）、（ｂ）は、本発明の第２の実施形態において、仮想バッファの占有量の一例を示す概念図である。
【図６】本発明の第１の実施形態におけるコピーピクチャー置き換え処理の手順の一例を示すフローチャートである。
【図７】（ａ）は仮想バッファがアンダーフローしたときの一例を示す概念図であり、（ｂ）は、コピーピクチャーに置き換えたときの仮想バッファの占有量の一例を示す概念図である。
【図８】量子化処理とエントロピー符号化処理とが非同期で動作する場合における、各処理のタイミングを示す概念図である。
【符号の説明】
【００６４】
１００  動画像符号化装置
４００  符号化部
４０１  減算器
４０２  直交変換部
４０３  量子化部
４０４  逆量子化部
４０５  逆直交変換部
４０６  加算器
４０７  イントラ予測部
４０８  ループフィルタ
４０９  フレームメモリ
４１０  動き検出部
４１１  動き補償部
４１２  スイッチ
４１３  エントロピー符号化部
４１４  多重化部
４１５  占有量制御部
４１６  コピーピクチャー生成部
【図１】
0005078852.tif 000002
【図２】
0005078852.tif 000003
【図３】
0005078852.tif 000004
【図４】
0005078852.tif 000005
【図５】
0005078852.tif 000006
【図６】
0005078852.tif 000007
【図７】
0005078852.tif 000008
【図８】
0005078852.tif 000009