(57)【要約】【課題】例えばパイプライン処理方式を用いた復号装置で、あるブロックのフレーム間予測処理の開始後に、先行ブロックに対するエラーが検出された場合のパイプラインリセットを不要とする。【解決の手段】フレーム内予測手段とフレーム間予測手段とを備える動画像復号装置において、先行ブロックにエラーが検出されたとき、復帰位置に達するまでの後続のブロックに対して、時間的に間に合う限りは、制御手段がフレーム間予測によるエラーコンシールメントを実行させ、時間的に間に合わないブロックに対してはフレーム内予測によるエラーコンシールメントを実行させる。【選択図】図１
2008061045.tif 000002
【特許請求の範囲】
【請求項１】
画像をブロックに分割して予測画像を生成し、動画像データの復号を行う装置であって、
処理対象ブロックに対するフレーム内予測画像を生成するフレーム内予測手段と、
処理対象ブロックに対するフレーム間予測画像を生成するフレーム間予測手段と、
１つのブロックに対するフレーム間予測処理の開始後に、該１つのブロックに時間的に先行するブロックに対するエラーが検出されたとき、該１つのブロックに対してエラーコンシールメント処理としてのフレーム内予測処理を前記フレーム内予測手段に実行させる制御手段とを備えることを特徴とする動画像復号装置。
【請求項２】
前記動画像データが、ストリームデータであるとき、
前記制御手段が、前記１つのブロックに続くブロックのうちで、該ストリームデータ内のスタートコードの直前の位置のブロックまで、前記エラーコンシールメント処理としてのフレーム間予測処理またはフレーム内予測処理を、それぞれフレーム間予測手段またはフレーム内予測手段に実行させることを特徴とする請求項１記載の動画像復号装置。
【請求項３】
前記制御手段が、前記エラーコンシールメント処理としてのフレーム間予測処理が所定の期間内に納まらないブロックに対して、フレーム内予測手段にフレーム内予測処理を実行させることを特徴とする請求項１または２記載の動画像復号装置。
【請求項４】
前記動画像復号装置が、３段、または２段のパイプライン制御方式の装置であり、
前記フレーム間予測手段が、パイプラインの第１、および第２ステージ、または第１ステージのみを用いて、フレーム間予測画像を生成することを特徴とする請求項１記載の動画像復号装置。
【請求項５】
画像をブロックに分割して予測画像を生成し、動画像の復号を行う方法であって、
１つのブロックに対するフレーム間予測処理の開始後に、該１つのブロックに時間的に先行するブロックに対するエラーが検出されたとき、該１つのブロックに対してエラーコンシールメント処理としてのフレーム内予測処理を実行することを特徴とする動画像復号方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、原画像と、フレーム間予測、フレーム内予測により生成された予測画像との差分をとり、その差分を符号化して復号装置側に伝送する動画像復号装置、および復号方法に関する。
【背景技術】
【０００２】
ＭＰＥＧ（ムービング・ピクチャー・エキスパーツ・グループ）などの動画像符号化方式がデジタル放送、インターネット通信、携帯電話通信などの様々な分野で広範に用いられている。このような動画像符号化方式における復号装置側では、符号化装置側から送られてきたビットストリームデータを復号して出力することになるが、例えばビットストリームデータが無線通信伝送路によって伝送される場合に、通信状態の悪化などの要因によってビットストリームデータにエラーが生じ、エラーを含むデータが復号装置に入力される可能性がある。
【０００３】
このようなエラーが復号装置側で検出されたとき、エラー修復のための最も確実な方法は、その部分の符号化データの再送を符号化装置側に要求することであるが、実際には通信速度の維持などの色々の観点から、データ再送要求はあまり現実的な方法ではない。
【０００４】
その結果、復号装置側でエラーが検出された場合に、そのエラーの影響ができるだけ少なくなるような処理を復号装置側で行う必要がある。２００３年にＩＴＵ−Ｔ（国際電気通信連合−電気通信標準化部門）によって制定されたＨ．２６４動画像圧縮符号化方式では、このような伝送エラーに対する対策の１つとして冗長スライスが用いられ、エラーが生じた場合にその内容を用いてエラーの生じたマクロブロックに対する復号画像の修復を行うことができる。
【０００５】
そのような方法を用いることができない場合には、できるだけエラーの影響を少なくするために復号装置側でエラーコンシールメント処理を行うことがあり、様々なエラーコンシールメントの手法が提案されている。このようなエラーコンシールメント処理について、動画像復号装置の従来例を用いて説明する。
【０００６】
図１６は動画像復号装置の従来例の構成ブロック図である。同図において復号装置は、入力ストリームデータに対する復号処理を行う可変長復号処理部１００、フレーム内予測画像を生成するフレーム内予測部１０１、フレーム間予測画像の生成を行うフレーム間予測処理部１０２、可変長復号処理部１００の出力に対する逆量子化部１０３と逆変換部１０４、フレーム内予測部１０１とフレーム間予測処理部１０２の出力を選択するためのスイッチ１０５、スイッチ１０５の選択結果と逆変換部１０４の出力を加算する加算部１０６、加算部１０６の出力に対してブロック復号処理におけるブロック境界において生ずるブロック歪を除去して、復号画像を出力するデブロッキングフィルタ処理部１０７、復号画像を格納してフレーム間予測処理部１０２に与えるフレームメモリ１０８を備え、フレーム間予測処理部１０２は、動きベクトルを検出するベクトル再生部１０９、およびフレーム間予測画像生成部１１０を備えている。
【０００７】
ＭＰＥＧなどの動画像予測方式の適用対象となる画像のサイズは大きくなる傾向があり、図１６で説明したような復号装置もサイズの大きい画像データを処理するための高い処理能力を必要とするようになっている。このような場合、復号装置の構成として各機能ブロックがある同一時刻に異なる画像ブロックに対する処理を行うことによって、各機能ブロックの処理速度を上げることなく、システム全体の処理能力を向上させるような処理方式、例えばパイプライン処理方式が用いられる。
【０００８】
図１７は、図１６の従来例におけるマクロブロック（ＭＢ）単位のパイプライン処理による復号動作例のタイミングチャートである。同図の最初のステージでは、識別子ｎ＋１のマクロブロックに対するフレーム間予測処理の一部として、ベクトル再生部１０９によるベクトル再生処理が行われ、また同一のステージにおいて先行するマクロブロック、すなわち識別子ｎのマクロブロックに対する、フレーム間予測画像生成部１１０によるフレーム間予測画生成処理が行われる。
【０００９】
次のステージにおいて、識別子ｎ＋１のマクロブロックに対するフレーム間予測画生成処理が行われ、また識別子ｎのマクロブロックに対する逆量子化部１０３と逆変換部１０４による逆量子化・逆変換処理が行われる。
【００１０】
さらに次のステージにおいては、識別子ｎ＋１のマクロブロックに対する逆量子化・逆変換処理が行われ、これによってｎ＋１のマクロブロックに対する３段パイプラインによるフレーム間予測処理が終了する。同一のステージにおいて識別子ｎ＋３のマクロブロックに対するベクトル再生処理が行われ、以後同様の動作が行われる。
【００１１】
識別子ｎ＋２のマクロブロックに対しては、例えば可変長復号処理部１００によるフレーム内／フレーム間の判定結果に対応して、フレーム内予測部１０１によるフレーム内予測が選択され、このマクロブロックに対するフレーム内予測画生成処理と、逆量子化・逆変換処理は１つのステージにおいて終了する。
【００１２】
このようにフレーム間予測に対する処理は、例えば３段のパイプラインを必要とする。すなわちフレーム間予測において使用される画像データは、現在復号処理中の画像よりも以前のすでに復号された画像データであり、フレーム内予測、逆変換、および逆量子化などの処理において使用される情報に比べてその量がはるかに大きく、図１６のフレームメモリ１０８に蓄積され、このフレームメモリ１０８からデータを取得するためなどに時間を要することになる。また図１７では、マクロブロック内でのフレーム間予測におけるデータ処理単位と、フレーム内予測、逆量子化、および逆変換におけるデータ処理単位とが異なることがあるため、マクロブロック内でのブロック並べ替えの必要性に対応して、パイプラインでの処理ステージを、例えばフレーム間予測画生成と、逆量子化・逆変換処理とでは別のステージとしている。
【００１３】
図１７において、例えば識別子ｎのマクロブロックに対する逆量子化部１０３、または逆変換部１０４の処理においてエラーが検出されたものとする。一般に動画像予測方式では多くの場合可変長符号方式が用いられ、ある時点でデコードエラーが検出された場合、エラーの生じたビット以降のビットが正しく転送されていたとしても、以後の画像データを正しくデコードできる可能性は非常に低い。このためストリームの内部に設けられ、例えばピクチャーの境界やスライスの境界のように、その位置からデコードを行うことによって正しいデコード結果が得られるものと考えられるストリーム内の復帰位置までの区間に対しては、ストリームデータをそのまま復号処理に使用することなく、その区間に対応するマクロブロックをすべてエラーコンシールメントの対象とする処理が一般的に行われる。
【００１４】
このエラーコンシールメント処理の例として、ここではフレーム間予測を用いたエラーコンシールメントと、フレーム内予測を用いたエラーコンシールメントのいずれかを用いるものとする。フレーム間予測によるエラーコンシールメントでは、ビットストリームに含まれる動きベクトル情報に相当する情報を何らかの方法によって決定し、決定されたベクトル情報を用いて表示順で近接する画像の一部を切り出し、場合によってはこれにフィルタを掛けてエラーコンシールメント対象マクロブロックに対する補填画像とする処理が行われる。簡単な実装例としては、ベクトルの絶対値を“０”として、補填画像を切り出す画像として直前にデコードされた画像を用いることができる。
【００１５】
これに対してフレーム内予測によるエラーコンシールメントでは、エラーコンシールメント対象のマクロブロック周辺ですでにデコード済みの正しい画像データを用いて、予め定義されているフレーム内予測画像生成方法、またはそれに近い方法を用いて補填画像を生成することになる。しかしながら一般的にフレーム間予測を用いるエラーコンシールメント処理のほうが、フレーム内予測を用いるよりも品質の高いエラーコンシールメント結果が得られることが知られている。
【００１６】
図１８は、従来例における、エラーコンシールメント処理に先立つパイプラインリセット例の説明図である。図１７で説明したように、フレーム間予測が選択されている識別子ｎ＋１のマクロブロックに先行する、識別子ｎのマクロブロックに対してエラーが検出されたものとする。ｎ＋１のマクロブロックに対しては、図１７で説明したように既にフレーム間予測方式が適用されており、識別子ｎのマクロブロックに対するエラーが検出されたことによって、図１７の最初のステージにおける識別子ｎ＋１のマクロブロックに対するベクトル再生処理、次のステージにおけるフレーム間予測画生成処理の結果は信用できないものとなり、識別子ｎ＋１のマクロブロックに対してフレーム間予測処理を適用するためには、一旦パイプラインをリセットし、このマクロブロックに対するベクトル再生処理から処理をやりなおす必要があり、結果的には２ステージ後でなければエラーコンシールメントとしてのフレーム間予測処理を完了することができず、パイプラインのリセットによって処理時間が長くなるとともに、パイプラインリセットのための制御機構も新たに必要となるという問題点があった。
【００１７】
このような画像復号装置におけるエラーコンシールメントに関する従来技術としての特許文献１には、動きベクトルを蓄積するメモリを備えることなく、エラーマクロブロックに対応する位置の補償領域の画像データを前フレームから読み出し、エラーマクロブロックの損失した画像をより自然な画像によって補間することができるエラー画像補間方法が開示されている。
【００１８】
また同じく従来技術としての特許文献２には、エラーマクロブロックの左、上、右上、左上の順序で、インターマクロブロックである隣接ブロックを探し、すべてがイントラマクロブロックである場合には１つ前にデコードされたフレームを参照フレームとする参照フレーム決定方法が開示されている。
【００１９】
【特許文献１】特開２００１−３０９３８８  「画像復号装置におけるエラー画像補間方法」
【特許文献２】特開２００５−２５２５４９  「エラーコンシールメントの参照フレーム決定方法および復号器」
【発明の開示】
【発明が解決しようとする課題】
【００２０】
以上に述べた従来技術には、あるマクロブロックに対するエラーが検出された直後に、エラーコンシールメント処理としてのフレーム間予測処理を場合に、パイプラインリセットを行う必要があり、全体の処理時間の延長を招くとともに、パイプラインリセットとフレーム間予測処理のやり直しのために新たな制御機構が必要になるという問題点がある。
【課題を解決するための手段】
【００２１】
本発明の動画像復号装置は、画像をブロックに分割して予測画像を生成し、動画像データの復号を行う装置であって、処理対象ブロックに対するフレーム内予測画像を生成するフレーム内予測手段と、処理対象ブロックに対するフレーム間予測画像を生成するフレーム間予測手段と、１つのブロックに対するフレーム間予測処理の開始後に、該１つのブロックに時間的に先行するブロックに対するエラーが検出されたとき、該１つのブロックに対してエラーコンシールメント処理としてのフレーム内予測処理を前記フレーム内予測手段に実行させる制御手段とを備えることを特徴とする。
【発明の効果】
【００２２】
本発明によれば、エラーが検出されたブロックの直後にあり、すでにフレーム間予測処理の開始されたブロックに対して、エラーコンシールメント処理としてフレーム内予測処理を実行させることによって、パイプラインのリセットや、フレーム間予測のやり直しのための制御機構が不必要となり、また全体的な処理時間の延長を避けることが可能となる。
【発明を実施するための最良の形態】
【００２３】
本発明は、例えばＨ．２６４動画像圧縮符号化方式を用いて、符号化装置から送られた符号化データを復号装置側で復号するに当たり、エラーが検出された場合に復号装置側で行われるべきエラーコンシールメント処理に関連するものである。復号装置側で入力されるストリームの内部の連続するフレームを順次復号化する方式としては各種の方式が考えられるが、ここでは復号化処理を効率的に実行するために、従来例の図１７の説明におけると同様にパイプライン方式の処理が行われるものとして発明の実施例を説明するが、本発明はパイプライン方式の復号装置に限定されるものではない。
【００２４】
図１は、本発明の動画像復号装置の原理構成ブロック図である。動画像復号装置１は、画像をブロックに分割して予測画像を生成し、動画像の復号を行う装置であり、少なくとも処理対象ブロックに対するフレーム内予測画像を生成するフレーム内予測手段２と、処理対象ブロックに対するフレーム間予測画像を生成するフレーム間予測手段３と、１つのブロックに対するフレーム間予測処理の開始後に、該１つのブロックに時間的に先行するブロックに対するエラーが検出されたとき、その１つのブロックに対してエラーコンシールメント処理としてのフレーム内予測処理を実行させる制御手段４とを備える。
【００２５】
発明の実施の形態においては、可変長復号処理の結果が逆量子化、逆変換されてフレーム内予測画像、またはフレーム間予測画像と加算されて基本的な復号画像として出力されることになるが、フレーム間予測が適用されるべきブロックに時間的に先行するブロックに対してエラーが検出されたときには、フレーム間予測が実行されるべきブロックに対するエラーコンシールメント処理としてのフレーム間予測を行うために、例えばパイプラインリセットを行う方法をとるのではなく、エラーコンシールメント処理とし、フレーム間予測に代わってフレーム内予測が適用されることになる。
【００２６】
図２は、本発明の第１の実施例における動画像復号装置の全体構成ブロック図である。この第１の実施例では、３段のパイプライン制御によってフレーム画像の復号が行われるものとする。図２においては、従来例の図１６と比較して、このパイプライン制御、およびエラーコンシールメント処理の制御のための制御部１０が追加されている点が基本的に異なっている。
【００２７】
図３は、第１の実施例における制御部１０の構成ブロック図である。同図において制御部１０は、逆量子化部１５、または逆変換部１６から送られるエラー通知信号に対応して、その内容を保持するエラー情報保持部２５、３段のパイプラインのステージ１、ステージ２、およびステージ３をそれぞれ制御するパイプラインステージ１制御部２６、パイプラインステージ２制御部２７、パイプラインステージ３制御部２８を備えている。
【００２８】
パイプラインステージ１はベクトル再生処理に対応し、パイプラインステージ１制御部２６からはベクトル再生起動信号がベクトル再生部２１に与えられる。ステージ２はフレーム間予測画像生成処理に対応し、パイプラインステージ２制御部２７からフレーム間予測画生成起動信号がフレーム間予測画像生成部２２に与えられる。またステージ３はフレーム内予測を含み、フレーム内予測、またはフレーム間予測の予測結果と、逆変換部１６の変換結果を加算器１７によって加算する処理に相当し、パイプラインステージ３制御部２８からフレーム内予測起動信号がフレーム内予測部１４に与えられるとともに、加算部１７への入力信号を選択するスイッチ１８に対する加算部入力選択制御信号が与えられる。
【００２９】
なお図示しないが、図２の可変長復号処理部１１から、入力ストリーム内で現在処理対象のマクロブロックがフレーム間予測の適用されたマクロブロックか、フレーム内予測の適用されたマクロブロックのいずれであるかを判定した結果の信号が、例えばパイプラインステージ１制御部２６に与えられ、その情報はパイプラインステージ２制御部２７、パイプラインステージ３制御部２８にも伝達されるものとする。
【００３０】
図３の制御部による処理について図４から図６のフローチャートを用いて説明する。図４は、パイプラインステージ１制御部２６による処理のフローチャートである。同図において、ステップＳ１でこのマクロブロック、すなわち現在処理対象となっているマクロブロックより前のマクロブロックにエラーがあったか否かが判定され、エラーがあった場合にはステップＳ２でエラーコンシールメント動作としてのベクトル再生部の起動が行われる。ステップＳ１でエラーがなかったと判定されると、ステップＳ３でこのマクロブロックに対する予測方式がフレーム間予測であるか否かが判定され、フレーム間予測でない場合にはなんらの処理を行うことなくステージ１の処理を終了し、フレーム間予測である場合にはステップＳ４で通常動作としてのベクトル再生部の起動が行われる。なおステップＳ２で行われるエラーコンシールメント動作としてのフレーム間予測処理では、前述のように、例えば動きベクトルの値を“０”として、直前にデコードした画像のデータが用いられることになる。
【００３１】
図５は、パイプラインステージ２制御部２７による処理のフローチャートである。ステージ２では、まずステップＳ６で現在処理対象のマクロブロックがパイプラインのステージ１でエラーコンシールメント動作の対象として処理されたか否かが判定され、対象とされた場合にはステップＳ７でフレーム間予測画像生成部の起動が行われる。エラーコンシールメント動作の対象となっていなかった場合には、ステップＳ８でそのマクロブロックがフレーム間予測の対象であるか否かが判定され、その対象でない、すなわちフレーム内予測の対象である場合にはなんらの処理を行うことなくステージ２を終了し、フレーム間予測の対象である場合にはステップＳ７の処理に移行する。
【００３２】
図６は、パイプラインステージ３制御部２８による処理のフローチャートである。ステージ３では、まずステップＳ１０で処理対象マクロブロックがステージ１でエラーコンシールメント動作の対象となったか否かが判定され、その対象となった場合にはステップＳ１１で加算部１７がフレーム間予測処理部１３側に接続され、ステップＳ１２で逆量子化・逆変換処理が行われることになる。
【００３３】
ステップＳ１０で、処理対象マクロブロックがステージ１でエラーコンシールメント動作の対象となっていない場合には、ステップＳ１３でそのマクロブロックに対する予測方式がフレーム間予測であるか否かが判定され、フレーム間予測である場合にはステップＳ１１以降の処理が行われる。フレーム間予測でない場合には、ステップＳ１４で加算部１７がフレーム内予測部１４側に接続され、ステップＳ１５で現在処理対象のマクロブロックより前のマクロブロックにエラーがあったか否かが判定され、エラーがあった場合にはステップＳ１６でエラーコンシールメント動作としてのフレーム内予測部の起動が行われ、エラーがなかった場合にはステップＳ１７で通常動作としてのフレーム内予測部の起動が行われる。
【００３４】
図７は、ストリーム内でエラーが検出された場合に、エラーコンシールメント対象となるマクロブロックの説明図である。ストリームの内部には、その位置からデコードを行うことによって正しいデコードが可能となる位置としてのスタートコードが埋め込まれており、一般的にこのスタートコード、すなわち復帰位置までのマクロブロックが、エラーが検出されたマクロブロックの次のマクロブロックから始まるエラーコンシールメント処理の対象となる。このスタートコードは、例えばピクチャの境界やスライスの境界などに設けられる。
【００３５】
図８、図９は、第１の実施例における画像データ復号処理例のタイムチャートである。図８はエラーが検出されない正常動作のタイムチャート、また図９はエラーが検出され、エラーコンシールメント処理が復帰位置まで行われる場合のタイムチャートである。
【００３６】
これらのタイムチャートにおいて、フレーム間予測のマクロブロックに対してはパイプラインの３段、すなわち３ステージかかって処理が行われるのに対して、フレーム内予測のマクロブロックに対しては、図６で説明したように３段パイプラインの最後のステージとしてのステージ３だけを用いて処理が行われる。
【００３７】
図８において、まず最初のステージで識別子ｎのマクロブロックに対しては、フレーム間予測画像生成部２２が起動されてフレーム間予測画が生成され、また識別子ｎ＋１のマクロブロックに対してはベクトル再生処理起動指示に応じてベクトル再生処理が行われる。ここで識別子ｎとｎ＋１のマクロブロックに対してはフレーム間予測が適用される。
【００３８】
次のステージにおいて、識別子ｎ＋１のマクロブロックに対しては、フレーム間予測画像生成部起動指示が行われてフレーム間予測画の生成が行われ、識別子ｎのマクロブロックに対しては逆量子化・逆変換処理が行われる。この時、図２の加算部１７はフレーム間予測処理部１３によって生成されたフレーム間予測画像を選択する。
【００３９】
次のステージにおいては識別子ｎ＋１のマクロブロックに対して逆量子化・逆変換処理が行われる。この時、加算部１７はフレーム間予測画像を選択する。次の２つのステージにおいては、識別子ｎ＋２とｎ＋３のマクロブロックに対してフレーム内予測画生成と逆量子化・逆変換処理が行われる。これはこの２つのマクロブロックに対してはフレーム内予測が適用されるためである。この時加算部１７は、当然フレーム内予測部１４の出力するフレーム内予測画像を選択する。
【００４０】
ただしこの２つのステージにおいては、次の識別子ｎ＋４、ｎ＋５の２つのマクロブロックに対してフレーム間予測が適用されるために、フレーム間予測のための３段パイプラインのステージ１の処理が開始される。すなわち識別子ｎ＋２のマクロブロックに対するフレーム内予測画生成などの処理と同時に、識別子ｎ＋４のマクロブロックに対するベクトル再生処理が行われる。また次のステージではこのマクロブロックに対するフレーム間予測画生成と、次のｎ＋５のマクロブロックに対するベクトル再生処理が行われる。
【００４１】
以下同様の処理が、マクロブロックに対してフレーム間予測が適用されるか、フレーム内予測が適用されるかに対応して続行される。なお図８では、マクロブロックの復号処理には無関係であるが、識別子ｎ＋６とｎ＋７のマクロブロックの間が、図７で説明したように復帰位置となっている。
【００４２】
図９では、図の最初から２番目のステージにおいて、識別子ｎのマクロブロックに対する逆量子化・逆変換処理においてエラーが検出されたものとする。前述のようにエラーコンシールメント処理としては、フレーム内予測によるよりもフレーム間予測による方が品質の高いコンシールメント結果を得ることができるため、このステージ以降、復帰位置に達するまでのマクロブロック、すなわち識別子ｎ＋６までのマクロブロックに対しては、時間的に許される限りフレーム間予測を行うための３段のパイプライン処理が行われる。
【００４３】
すなわち次のステージにおいて、識別子ｎ＋３のマクロブロックに対してベクトル再生処理が行われる。ここで識別子ｎ＋１のマクロブロックは図８で説明したようにフレーム間予測が行われるべきマクロブロックであるが、このマクロブロックに対して再びフレーム間予測処理を行うことは、図１８で説明したように処理時間の延長を招く。このマクロブロックに対しては、このステージでフレーム内予測画生成と、逆量子化・逆変換処理とが行われる。フレーム内予測によるエラーコンシールメントでは、左、上、左上に隣接するマクロブロックの画素情報を用いる。これらの情報はデコード済み画像に比べて小さいデータ量であるために、フレームメモリのような大容量ではあるがデータ取得に時間を要するメモリを必要とせず、例えばフレーム内予測部内部に蓄積することが可能である。このためフレーム間予測部は、フレーム内予測によるエラーコンシールメント指示直後から内部に蓄積された隣接マクロブロックの画素からフレーム内予測を行うことが可能であるため、フレーム間予測によるエラーコンシールメントのようにパイプラインリセットと、これに伴う処理時間の延長は発生しない。
【００４４】
次のステージでは、識別子ｎ＋３のマクロブロックに対するフレーム間予測画生成、ｎ＋４のマクロブロックに対するベクトル再生処理が行われ、ｎ＋２のマクロブロックに対しては、図８で説明したように、本来適用されるべきフレーム内予測を用いてエラーコンシールメント処理が行われる。
【００４５】
以下同様にして、識別子ｎ＋６のマクロブロックまでに対しては、フレーム間予測を用いたエラーコンシールメント処理が行われる。図８で説明したようにｎ＋３、ｎ＋６のマクロブロックは本来フレーム内予測が適用されるマクロブロックであるが、復帰位置、すなわち識別子ｎ＋６のマクロブロックまでは、エラーコンシールメント処理としてコンシールメント効果の大きいフレーム間予測によるエラーコンシールメントが行われる。このようにして、エラー検出後には、例えばビットストリームデータをそのまま用いたフレーム間予測を行うよりも高品質なエラーコンシールメント結果としての復号画像を得ることができる。
【００４６】
次に第２の実施例について説明する。第２の実施例では、パイプラインの段数を２段とし、フレーム間予測におけるベクトル再生処理とフレーム間予測画像生成処理とを１つのステージ内で実行するものとする。
【００４７】
図１０は、第２の実施例における動画像復号装置の全体構成ブロック図である。第２の実施例では、ベクトル再生処理とフレーム間予測画像生成処理とを１つのステージ内で行うために、図２のベクトル再生部２１とフレーム間予測画像生成部２２とによって構成されるフレーム間予測処理部１３に代わって、フレーム間予測部３１が設けられている点が基本的に異なっており、これに対応して制御部３０の構成も図２の制御部１０とは異なるものとなる。
【００４８】
図１１は、図１０の制御部３０の構成ブロック図である。同図において制御部３０は、エラー情報保持部３２、パイプラインステージ１制御部３３、パイプラインステージ２制御部３４によって構成されている。エラー情報保持部３２は、図３におけると同様に逆量子化部１５、および逆変換部１６からのエラー通知信号を受け取り、その内容によってパイプラインステージ１制御部３３とパイプラインステージ２制御部３４を制御する。パイプラインステージ１制御部は、図１０のフレーム間予測部３１に対するフレーム間予測起動信号を出力し、パイプラインステージ２制御部３４は、フレーム内予測部１４に対してフレーム内予測起動信号を出力し、また加算部１７への入力を選択する制御信号をスイッチ１８に出力する。なお可変長復号処理部１１からのフレーム内／フレーム間予測の判別信号は、例えばパイプラインステージ１制御部３３に与えられ、パイプラインステージ２制御部３４に伝達されるものとする。
【００４９】
図１２、図１３は、第２の実施例におけるパイプライン制御処理のフローチャートである。図１２は、パイプラインステージ１制御部３３による処理のフローチャートであり、そのステージではまずステップＳ２１で現在処理対象のマクロブロックの前のブロックにエラーが検出されたか否かが判定され、検出されていた場合にはステップＳ２２でエラーコンシールメント動作としてフレーム間予測部の起動が行われる。これに対してエラーが検出されていない場合には、ステップＳ２３でそのマクロブロックがフレーム間予測の適用対象であるか否かが判定され、その適用対象でない場合にはなんらの処理を行うことなくステージ１の処理を終了する。フレーム間予測の対象である場合には、ステップＳ２４で通常動作としてのフレーム間予測部の起動が行われる。
【００５０】
図１３は、パイプラインステージ２制御部３４による処理例のフローチャートである。第２の実施例においては、第１の実施例におけるステージ１とステージ２の処理が実質的にステージ１のみで行われ、第１の実施例におけるステージ３の処理が第２の実施例におけるステージ２の処理に相当する。したがって図１３のステップＳ３０からステップＳ３７までの処理は、図６のステップＳ１０からステップＳ１７までの処理と実質的に同じであり、その詳細な説明を省略する。
【００５１】
図１４、図１５は、第２の実施例における動画像復号処理のタイムチャートである。図８、図９と、同様に図１４はエラーが検出されない場合の正常動作のタイムチャートであり、図１５はエラーが検出され、エラーコンシールメント処理が行われる場合のタイムチャートである。
【００５２】
図１４の最初のステージでは、識別子ｎのマクロブロックに対してフレーム間予測部起動指示が行われ、フレーム間予測画生成処理が行われる。次のステージでは、識別子ｎのマクロブロックに対する逆量子化・逆変換処理が行われるとともに、ｎ＋１のマクロブロックに対するフレーム間予測画生成処理が行われる。この時、加算部１７はフレーム間予測画像を選択する。以下同様の処理が各マクロブロックに対して行われるが、その処理は図８と比較して、フレーム間予測のための処理が２つのステージだけで行われる点だけが異なっているのみであり、その詳細な説明を省略する。
【００５３】
図１５においては、図９におけると同様に識別子ｎのマクロブロックに対する逆量子化・逆変換処理においてエラーが検出され、以後、識別子ｎ＋６のマクロブロックに至るまでエラーコンシールメント処理が行われる。図９ではフレーム間予測のためのパイプライン処理が３つのステージにかけて行われるために、識別子ｎ＋１のマクロブロックだけでなく、ｎ＋２のマクロブロックに対しても、フレーム間予測でのエラーコンシールメント処理は時間的に間に合わず、識別子ｎ＋３のマクロブロックからフレーム間予測でのエラーコンシールメント処理が行われるが、図１５では識別子ｎのマクロブロックに対してエラーが検出されたステージの次のステージで、識別子ｎ＋２のマクロブロックに対するフレーム間予測画生成処理が可能となり、フレーム内予測でのエラーコンシールメント処理の対象となるマクロブロックは識別子ｎ＋１のマクロブロックのみとなる。
【００５４】
以上の説明では、フレーム間予測処理の対象となっているマクロブロックに対してエラーが検出された場合を例として、２つの実施例におけるタイムチャートなどを説明したが、フレーム内予測処理の対象となったマクロブロックに対してエラーが検出された場合にも本発明を適用することは当然可能であり、エラー検出以後、ストリーム内の復帰位置までのマクロブロックがすべてエラーコンシールメント対象となり、時間的にフレーム間予測が間に合うマクロブロックに対してはフレーム間予測によるエラーコンシールメント処理が行われ、時間的に間に合わないマクロブロックに対してはフレーム内予測処理によるエラーコンシールメント処理が行われる。
【００５５】
また以上の説明では、Ｈ．２６４方式を動画像圧縮符号化方式の１つの例として実施例を説明したが、画像符号化方式はＨ．２６４だけに限定されず、今後標準化される方式も含め、すべの符号化方式に対して本発明を適用することが可能である。Ｈ．２６４方式と同じビットレートでの画質が同等とされている方式であり、マイクロソフト社の圧縮方式がＳＭＰＴＥ（米国映画テレビ技術者協会）によって規格化（ＳＭＰＴＥ−４２１Ｍ）されたＶＣ−１方式に対しても当然適用可能である。
【図面の簡単な説明】
【００５６】
【図１】本発明の動画像復号装置の原理構成ブロック図である。
【図２】第１の実施例における動画像復号装置の全体構成ブロック図である。
【図３】図２における制御部の構成ブロック図である。
【図４】第１の実施例におけるパイプラインステージ１の処理フローチャートである。
【図５】第１の実施例におけるパイプラインステージ２の処理フローチャートである。
【図６】第１の実施例におけるパイプラインステージ３の処理フローチャートである。
【図７】ストリーム内での復帰位置までのエラーコンシールメント対象マクロブロックの説明図である。
【図８】第１の実施例における通常復号動作例のタイムチャートである。
【図９】第１の実施例におけるエラー検出時の復号動作例のタイムチャートである。
【図１０】第２の実施例における動画像復号装置の全体構成ブロック図である。
【図１１】図１０の制御部の構成ブロック図である。
【図１２】第２の実施例におけるパイプラインステージ１の処理フローチャートである。
【図１３】第２の実施例におけるパイプラインステージ２の処理フローチャートである。
【図１４】第２の実施例における通常復号動作例のタイムチャートである。
【図１５】第２の実施例におけるエラー検出時の復号動作例のタイムチャートである。
【図１６】動画像復号装置の従来例の構成ブロック図である。
【図１７】パイプライン制御復号動作の従来例のタイムチャートである。
【図１８】従来例におけるパイプラインリセットの説明図である。
【符号の説明】
【００５７】
１      動画像復号装置
２      フレーム内予測手段
３      フレーム間予測手段
４      制御手段
１０、３０      制御部
１１      可変長復号処理部
１２      フレームメモリ
１３      フレーム間予測処理部
１４      フレーム内予測部
１５      逆量子化部
１６      逆変換部
１７      加算部
１８      スイッチ
１９      デブロッキングフィルタ処理部
２１      ベクトル再生部
２２      フレーム間予測画像生成部
２５、３２      エラー情報保持部
２６、３３      パイプラインステージ１制御部
２７、３４      パイプラインステージ２制御部
２８      パイプラインステージ３制御部
３１      フレーム間予測部
【図１】
2008061045.tif 000003
【図２】
2008061045.tif 000004
【図３】
2008061045.tif 000005
【図４】
2008061045.tif 000006
【図５】
2008061045.tif 000007
【図６】
2008061045.tif 000008
【図７】
2008061045.tif 000009
【図８】
2008061045.tif 000010
【図９】
2008061045.tif 000011
【図１０】
2008061045.tif 000012
【図１１】
2008061045.tif 000013
【図１２】
2008061045.tif 000014
【図１３】
2008061045.tif 000015
【図１４】
2008061045.tif 000016
【図１５】
2008061045.tif 000017
【図１６】
2008061045.tif 000018
【図１７】
2008061045.tif 000019
【図１８】
2008061045.tif 000020