(57)【要約】【課題】  ＭＰＥＧビデオ復号化方法及びＭＰＥＧビデオ復号化器を提供する。【解決手段】  復号化された動きベクトルの値により動き補償を行うか否かを決定する段階と、復号化されたＤＣＴ係数の各値によりＩＤＣＴを行うか否かを決定する段階と、前記決定結果により復号映像を生成する段階と、を含むＭＰＥＧビデオ復号化方法。これにより、ＭＰＥＧビデオ復号化時に要求されるメモリ容量を節約でき、処理速度を顕著に高めうる。【選択図】  図９
2004312689.tif 000002
【特許請求の範囲】
【請求項１】
ＭＰＥＧビデオ復号化方法において、
ａ）復号化された動きベクトルの値により動き補償を行うか否かを決定する段階と、
ｂ）復号化されたＤＣＴ係数の各値によりＩＤＣＴを行うか否かを決定する段階と、
ｃ）前記決定結果により復号映像を生成する段階と、を含むことを特徴とするＭＰＥＧビデオ復号化方法。
【請求項２】
前記ａ）段階は、
ａ１）前記復号化された動きベクトルの値が０であるか否かを判断する段階と、
ａ２）前記復号化された動きベクトルの値が０である場合には動き補償を行わないと決定し、前記復号化された動きベクトルの値がいずれも０でない場合には動き補償を行うと決定する段階と、を含むことを特徴とする請求項１に記載のＭＰＥＧビデオ復号化方法。
【請求項３】
前記ｂ）段階は、
ｂ１）前記復号化された各ＤＣＴ係数の値が０であるか否かを判断する段階と、
ｂ２）前記復号化された各ＤＣＴ係数の値が０である場合にはＩＤＣＴを行わないことと決定し、前記復号化されたＤＣＴ係数の値がいずれも０でない場合にはＩＤＣＴを行うことと決定する段階と、を含むことを特徴とする請求項１に記載のＭＰＥＧビデオ復号化方法。
【請求項４】
ＭＰＥＧビデオ復号化方法において、
ａ）マクロブロック単位の予測映像を生成する段階と、
ｂ）マクロブロック単位の差分映像を生成する段階と、
ｃ）前記生成されたマクロブロック単位の予測映像と前記マクロブロック単位の差分映像とを合わせてマクロブロック単位の復号映像を生成する段階と、
ｄ）前記生成されたマクロブロック単位の復号映像をフレームバッファに記録する段階と、
ｅ）前記ａ）ないしｄ）段階を循環的に反復して前記フレームバッファを満たす段階と、を含むことを特徴とするＭＰＥＧビデオ復号化方法。
【請求項５】
ＭＰＥＧビデオ復号化方法において、
ａ）復号化された動きベクトルの値によりマクロブロック単位予測映像を生成する段階と、
ｂ）前記生成された予測映像をマクロブロックバッファに記録する段階と、
ｃ）復号化された各ＤＣＴ係数の値によりマクロブロック単位差分映像を生成する段階と、
ｄ）前記生成された差分映像をマクロブロックバッファに加える段階と、
ｅ）前記マクロブロックバッファにより生成されたマクロブロック単位復号映像をフレームバッファに記録する段階と、を含むことを特徴とするＭＰＥＧビデオ復号化方法。
【請求項６】
前記ａ）段階は、
ａ１）復号化された動きベクトルの値が０である場合には動き補償を行わずに以前映像を予測映像にもたらす段階と、
ａ２）復号化された動きベクトルの値が０でない場合には動き補償を行って予測映像を生成する段階と、を含むことを特徴とする請求項５に記載のＭＰＥＧビデオ復号化方法。
【請求項７】
前記ｃ）段階は、
ｃ１）復号化された各ＤＣＴ係数の値が０である場合には差分映像を生成しない段階と、
ｃ２）復号化された各ＤＣＴ係数の値がいずれも０でない場合には差分映像を生成する段階と、を含み、
前記ｃ１）段階により差分映像が生成されない場合には前記ｄ）段階を行わずに飛ばすことを特徴とする請求項５に記載のＭＰＥＧビデオ復号化方法。
【請求項８】
ＭＰＥＧビデオ復号化器において、
復号化された動きベクトルの値により動き補償を行うか否かを決定する動きベクトル判断部と、
復号化された各ＤＣＴ係数の値によりＩＤＣＴを行うか否かを決定するＤＣＴ係数判断部と、を含み、
前記動きベクトル判断部及び前記ＤＣＴ係数判断部の決定結果により受信されたＭＰＥＧビデオストリームを復号化することを特徴とするＭＰＥＧビデオ復号化器。
【請求項９】
前記動きベクトル判断部は、
前記復号化された動きベクトルの値が０である場合には動き補償を行わないことと決定し、前記復号化された動きベクトルの値が０でない場合には動き補償を行うことと決定することを特徴とする請求項８に記載のＭＰＥＧビデオ復号化器。
【請求項１０】
前記ＤＣＴ係数判断部は、
前記復号化された各ＤＣＴ係数の値が０である場合にはＩＤＣＴを行わないことと決定し、前記復号化された各ＤＣＴ係数の値がいずれも０でない場合にはＩＤＣＴを行うことと決定することを特徴とする請求項８に記載のＭＰＥＧビデオ復号化方法。
【請求項１１】
ＭＰＥＧビデオ復号化器において、
マクロブロック単位の予測映像を生成する予測映像計算部と、
マクロブロック単位の差分映像を生成する差分映像計算部と、
前記予測映像計算部により生成されたマクロブロック単位の予測映像が記録された後に前記差分映像計算部により生成されたマクロブロック単位の差分映像が加えられるマクロブロックバッファと、を含み、
前記マクロブロックバッファで一つのマクロブロック単位の復号映像が生成される度に前記生成された一つのマクロブロック単位復号映像が記録されるフレームバッファを含むことを特徴とするＭＰＥＧビデオ復号化器。
【請求項１２】
ＭＰＥＧビデオ復号化器において、
復号化された動きベクトルの値によりマクロブロック単位予測映像を生成する予測映像計算部と、
復号化された各ＤＣＴ係数の値によりマクロブロック単位差分映像を生成する差分映像計算部と、
前記生成された予測映像と前記生成された差分映像とが合わせられるマクロブロックバッファと、
前記マクロブロックバッファにより生成されたマクロブロック単位復号映像が記録されるフレームバッファと、を含むことを特徴とするＭＰＥＧビデオ復号化器。
【請求項１３】
前記予測映像計算部は、
復号化された動きベクトルの値が０であるか否かを判断する動きベクトル判断部と、
前記動きベクトル判断部の結果により動き補償を行う動き補償部と、を含むことを特徴とする請求項１２に記載のＭＰＥＧビデオ復号化器。
【請求項１４】
前記差分映像計算部は、
復号化された各ＤＣＴ係数の値が０であるか否かを判断するＤＣＴ係数判断部と、
前記ＤＣＴ係数判断部の結果により行われる逆離散余弦変換部と、を含むことを特徴とする請求項１２に記載のＭＰＥＧビデオ復号化器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＭＰＥＧビデオ復号化方法及びＭＰＥＧビデオ復号化器に関する。
【背景技術】
【０００２】
携帯電話やＰＤＡ（Ｐｅｒｓｏｎａｌ Ｄｉｇｉｔａｌ Ａｓｓｉｓｔａｎｔ）のような携帯装置における動映像再生のための多くの技術的な努力が進められている。例えば、低電力が要求される携帯装置は帯域幅、電力消費、メモリ、コスト等に制約条件を有する。したがって、高速でメモリが効率的な動映像デコーダが必要になる。
【０００３】
現在、多様な動映像圧縮標準があるが、移動無線環境ではＨ．２６３及びＭＰＥＧ−４シンプルプロファイルが最も適した標準として認められている。このうち、ＭＰＥＧ−４にはチャンネルで発生するエラーに対する耐性及び制限された帯域幅に適用可能な機能が含まれており、ストリーミングビデオプロファイルも定義されている。ＭＰＥＧ−４は高い圧縮率を有する一方、高圧縮率はエンコーダやデコーダで高い計算量を要求する。結果的にＭＰＥＧ−４の複雑な構造はソフトウェア具現及びリアルタイム動作を難しくする要因となる。
【０００４】
図１はＭＰＥＧビデオの映像データ構造の階層を表す。ＭＰＥＧビデオの映像データはシーケンス層、ＧＯＰ（Ｇｒｏｕｐ Ｏｆ Ｐｉｃｔｕｒｅ）層、ピクチュア層、スライス層、マクロブロック層、ブロック層の６つの階層構造で構成されるが、図１には一つの画面を表すピクチュア層以下の階層が図示されている。
【０００５】
ピクチュア層１１０は任意の長さのスライス１１１よりなる一枚の画面であって、スライス層１２０は任意の数のマクロブロックの帯である。マクロブロック１３０は４個の輝度信号Ｙブロック及び２個の色差信号Ｃｂ、Ｃｒブロックにより６個の８×８画素よりなるブロックよりなり、ブロック層１４０の各ブロックは８×８画素単位のデータブロックをいうが、ブロック層１４０は必要なＤＣＴ（Ｄｉｓｃｒｅｔｅ Ｃｏｓｉｎｅ Ｔｒａｎｓｆｏｒｍ）係数を含む。
【０００６】
マクロブロック層には動きベクトル情報が入っているが、このような動きベクトル情報は動きベクトルの差分、すなわち、該当マクロブロックと一つ前のマクロブロックとの動きベクトルの差を符号化した値であり、ブロック層にはＤＣＴ変換係数情報が入っている。
【０００７】
ＭＰＥＧ−４ビデオ復号化器を説明する前に符号化方法を簡単に説明する。
まず、入力したビデオ客体平面（Ｖｉｄｅｏ Ｏｂｊｅｃｔ Ｐｌａｎｅ：ＶＯＰ）を基本処理単位であるマクロブロックに分割する。ＶＯＰはＭＰＥＧ−４で取扱う映像データの基本単位である。マクロブロックの各ブロックに対してＤＣＴ変換を実施した後に量子化し、量子化されたＤＣＴ係数及び量子化幅を可変長符号化する。これがイントラ符号化である。一方、符号化対象マクロブロックを含むＶＯＰに対して時間的に隣接した別途のＶＯＰからブロックマッチングをはじめとする動き検出方法により、対象マクロブロックに対して誤差が最も少ない予測マクロブロックを検出する。誤差が最も少ない予測マクロブロックにより動きを表した信号が動きベクトルである。予測マクロブロックを生成するために参照する映像を参照ＶＯＰと呼ぶ。検出された動きベクトルに基づいて参照ＶＯＰを動き補償して予測マクロブロックを得る。符号化対象マクロブロックとこれに対応する予測マクロブロックとの差分を求め、この差分信号に対してＤＣＴを実施した後でＤＣＴ変換係数を量子化する。量子化されたＤＣＴ係数を動きベクトル及び量子化幅と共に可変長符号化する。これをインター符号化と呼ぶ。
【０００８】
受信側では圧縮符号化されたＶＯＰデータを可変長復号化した後でテクスチャー復号化部で量子化されたＤＣＴ係数を逆量子化／逆離散余弦変換（Ｉｎｖｅｒｓｅ Ｄｉｓｃｒｅｔｅ Ｃｏｓｉｎｅ Ｔｒａｎｓｆｏｒｍａｔｉｏｎ：ＩＤＣＴ）して差分信号を復元し、動きベクトルに基づいて予測マクロブロックを得て差分信号と加算することによって映像を再生する。
【０００９】
図２は、従来技術によるＭＰＥＧ−４ビデオ復号化器の構成を図示する。
前記復号化器２００は大きく受信されたＭＰＥＧ−４ビデオビットストリームをデマルチプレクスするデマルチプレクサ２１０とテクスチャー復号を行う部分２２０と再構成されたＶＯＰを保存するＶＯＰ保存部２３０と動き補償を行う部分２４０とよりなる。
【００１０】
前記テクスチャー復号を行う部分は可変長復号化部２２１と、逆スキャン部２２２と、逆量子化部２２３と、逆離散余弦変換部２２４とを含み、動き補償を行う部分は動き復号化部２４１と、ＶＯＰメモリ２４２と動き補償部２４３とを含む。
【００１１】
ここでは一般的なインターフレームの再生の場合について説明する。イントラフレームはインターフレームで動き補償を除外すればよい。
伝えられるビットストリームをシンタックスパーシングしてヘッダを除外した映像データが抽出されれば、可変長復号化部２２１はハフマン復号化を通じてＤＣＴ係数を作り、逆スキャン部２２２は逆スキャンを通じて映像と同じ順序のデータを作る。
【００１２】
逆量子化部２２３は逆スキャンされたデータを逆量子化し、逆離散余弦変換部２２４はＩＤＣＴを行って差分映像を作る。この時、マクロブロック単位の復号を反復して一枚のＶＯＰを作り、このように再構成された差分映像ＶＯＰはＶＯＰメモリ２４２に保存される。このようにテクスチャー復号化により一枚の差分映像ＶＯＰが完成されれば、動き復号を行う。
【００１３】
動き復号化部２４１は動きベクトルを復号化して予測映像を作り、動き補償部２４３はＶＯＰメモリ２４２に保存された差分映像と動き復号化部２４１により作られた予測映像とを合わせて復号映像を作る。
【００１４】
図３は図１に示された従来技術によるＭＰＥＧ−４復号化器での復号化過程（３００）を表す。
まず、マクロブロックのヘッダを復号化し（Ｓ３０１）、現在マクロブロックに関する情報を得る。
次に動きベクトルを復号化し（Ｓ３０２）、復号化された動きベクトルを動きベクトルメモリに保存する（Ｓ３０３）。
そして、ＤＣＴ係数を復号化する（Ｓ３０４）。
そして、復号化されたＤＣＴ係数を逆スキャンした（Ｓ３０５）後、逆量子化（Ｓ３０６）及びＩＤＣＴ（Ｓ３０７）を通じて差分映像を作る。このような過程により一つのマクロブロックが作られれば、このように作られた差分映像のマクロブロックをフレームバッファに記録する（Ｓ３０８）。
【００１５】
そして、一フレームに属するマクロブロックを全部復号化したか否かを判断する（Ｓ３０９）。
判断結果、全部復号化されていなければ、一フレームが生成されるまで反復する。
そして、判断結果、全部復号化されたならば、すなわち、一つのフレームが完成されたならば動き補償を行う（Ｓ３１０）。動き補償は動きベクトルメモリを参照して以前映像のデータに動きベクトルを加えることによって予測映像を作ることである。
それから前記のように動き補償された予測映像をフレームバッファに合わせる（Ｓ３１１）。このようにしてフレームバッファに記録された差分映像のフレームと予測映像のフレームとが合わせられて一枚の復号映像フレームが作られる。
【００１６】
図４は従来技術によるＭＰＥＧ−４ビデオ復号化方法で復号化された映像を生成する単位フレームを説明する。
すなわち、従来技術では一枚の予測映像ＶＯＰ ４１０と一枚の差分映像ＶＯＰ ４２０とを合せて復号映像ＶＯＰ ４３０を生成する。
予測映像のマクロブロック１ないし１６を作って一枚の予測映像ＶＯＰ ４１０を完成し、差分映像のマクロブロック１’ないし１６’を作って一枚の差分映像ＶＯＰ４２０を完成し、次の予測映像ＶＯＰ ４１０の各マクロブロックと差分映像ＶＯＰ４２０の各マクロブロックとをそれぞれ合わせて復号映像ＶＯＰの各マクロブロックを作る。すなわち、予測映像ＶＯＰ ４１０のマクロブロック１と差分映像ＶＯＰ４２０のマクロブロック１’とを合せて復号映像ＶＯＰのマクロブロック１”を作り、予測映像ＶＯＰ ４１０のマクロブロック２と差分映像ＶＯＰ ４２０のマクロブロック２’とを合わせて復号映像ＶＯＰのマクロブロック２”を作る方法によりあらゆるマクロブロックを作って復号映像ＶＯＰを生成する。
【００１７】
前記のような従来技術による復号化方法によれば、復号映像は現在フレームメモリに保存され、次のフレームが復号されるまでだけ保存され、現在フレームメモリには常に新しく復号化した映像を満たす。したがって、現在復号化される映像が以前映像と同じ映像であっても再度動き補償を通じて同じ値を重複計算して現在映像を作らねばならないために、演算処理において非常に非効率的である。
【００１８】
また、従来技術による復号化方法によれば、ＩＤＣＴを先に行って差分映像を先に復号映像フレームに保存し、動き補償を行う。そのようになれば、動きベクトルが０であるブロックでも、一応、以前映像から予測映像を作って予測映像をブロック保存することが要求される。動きベクトルが０であるブロックの場合には、以前映像と予測映像とは同一なので予測映像を再保存することはメモリの無駄遣いになる。
【００１９】
また、従来技術による復号化方法によれば、テクスチャー復号と動き補償とが区分されて順次に行われる。したがって、可変長復号化過程で発生する動きベクトルをメモリに保存しておいて動き補償過程で参照する。このような場合、動き補償を行うためにはＶＯＰ内のブロック数に該当する動きベクトルメモリが必要である。
【００２０】
また、高圧縮率である場合、情報量の減少によりＩＤＣＴ及び動き補償を回避できる場合が発生するが、従来技術によるデコーダの場合、このような場合を十分に利用できず、差分映像と動き補償された映像との和で構成されて映像大きさのメモリが要求される。
【発明の開示】
【発明が解決しようとする課題】
【００２１】
本発明は前記のような課題を解決してＭＰＥＧビデオ復号化時にメモリの容量を節約して処理速度を高めうるＭＰＥＧビデオ復号化方法及びＭＰＥＧビデオ復号化器を提供することを目的とする。
【課題を解決するための手段】
【００２２】
前記のような課題を解決するための本発明の一つの特徴は、ＭＰＥＧビデオ復号化方法において、ａ）復号化された動きベクトルの値により動き補償を行うか否かを決定する段階と、ｂ）復号化されたＤＣＴ係数の各値によりＩＤＣＴを行うか否かを決定する段階と、ｃ）前記決定結果により復号映像を生成する段階と、を含むことである。
【００２３】
本発明の他の特徴は、ＭＰＥＧビデオ復号化方法において、ａ）マクロブロック単位の予測映像を生成する段階と、ｂ）マクロブロック単位の差分映像を生成する段階と、ｃ）前記生成されたマクロブロック単位の予測映像と前記マクロブロック単位の差分映像とを合わせてマクロブロック単位の復号映像を生成する段階と、ｄ）前記生成されたマクロブロック単位の復号映像をフレームバッファに記録する段階と、ｅ）前記ａ）ないしｄ）段階を循環的に反復して前記フレームバッファを満たす段階と、を含むことである。
【００２４】
本発明のさらに他の特徴は、ＭＰＥＧビデオ復号化方法において、ａ）復号化された動きベクトルの値によりマクロブロック単位予測映像を生成する段階と、ｂ）前記生成された予測映像をマクロブロックバッファに記録する段階と、ｃ）復号化された各ＤＣＴ係数の値によりマクロブロック単位差分映像を生成する段階と、ｄ）前記生成された差分映像をマクロブロックバッファに加える段階と、ｅ）前記マクロブロックバッファにより生成されたマクロブロック単位復号映像をフレームバッファに記録する段階と、を含むことである。
【００２５】
本発明のさらに他の特徴は、ＭＰＥＧビデオ復号化器において、復号化された動きベクトルの値により動き補償を行うか否かを決定する動きベクトル判断部と、復号化された各ＤＣＴ係数の値によりＩＤＣＴを行うか否かを決定するＤＣＴ係数判断部と、を含み、前記動きベクトル判断部及び前記ＤＣＴ係数判断部の決定結果により受信されたＭＰＥＧビデオストリームを復号化することである。
【００２６】
本発明のさらに他の特徴は、ＭＰＥＧビデオ復号化器において、マクロブロック単位の予測映像を生成する予測映像計算部と、マクロブロック単位の差分映像を生成する差分映像計算部と、前記予測映像計算部により生成されたマクロブロック単位の予測映像が記録された後に前記差分映像計算部により生成されたマクロブロック単位の差分映像が加えられるマクロブロックバッファと、を含み、前記マクロブロックバッファで一つのマクロブロック単位の復号映像が生成される度に前記生成された一つのマクロブロック単位復号映像が記録されるフレームバッファを含むことである。
【００２７】
本発明のさらに他の特徴は、ＭＰＥＧビデオ復号化器において、復号化された動きベクトルの値によりマクロブロック単位予測映像を生成する予測映像計算部と、復号化された各ＤＣＴ係数の値によりマクロブロック単位差分映像を生成する差分映像計算部と、前記生成された予測映像と前記生成された差分映像とが合わせられるマクロブロックバッファと、前記マクロブロックバッファにより生成されたマクロブロック単位復号映像が記録されるフレームバッファと、を含むことである。
【発明の効果】
【００２８】
本発明によれば、ＭＰＥＧビデオ復号化時にマクロブロック単位で復号映像を生成することによって要求されるメモリ容量を節約できる。
【００２９】
また、動きベクトルの値が０である場合には動き補償を行わせず、各ＤＣＴ係数の値がいずれも０である場合にはＩＤＣＴを行わせないことにより処理速度を顕著に速められる。
【発明を実施するための最良の形態】
【００３０】
以下、添付した図面を参照して本発明を詳細に説明する。
まず、図５を参照して本発明によるＭＰＥＧ−４ビデオ復号化方法で復号化された映像を生成するために処理する単位データを説明する。
本発明はＭＰＥＧ−４ビデオ復号化にかかるメモリ容量を節約するためにＶＯＰ単位でデータを処理するのではなく、マクロブロック単位でデータを処理する。すなわち、まず予測映像のマクロブロックを生成してマクロブロックバッファに記録してから差分映像のマクロブロックを生成した後、この差分映像のマクロブロックをマクロブロックに加える。そして、このように加えられたマクロブロックバッファの値をフレームバッファに記録する。例えば、図５に示されたように、予測映像のマクロブロック５１０をマクロブロックバッファに記録し、その次の差分映像のマクロブロック５２０をマクロブロックバッファ５３０に加えて復号映像を作った後、作られた復号映像をフレームバッファ５４０の一部５４１に記録することである。その後、次の復号映像のマクロブロックを作ってフレームバッファ５４０の一部５４２に記録する。そして、次の復号映像のマクロブロックを作ってフレームバッファ５４０の一部５４２に記録するように、その次のマクロブロックを作って５４３に記録する。
【００３１】
また、予測映像のマクロブロックや差分映像のマクロブロックを生成する時も無条件に全部生成するのではなく所定の判断をした後、その判断結果によって行う。具体的には、予測映像マクロブロックを生成する時には、あらゆる動きベクトルにより動き補償を行うのではなく、動きベクトルの値が０であるか否かを判断して動きベクトルの値が０でない場合にのみ動き補償を行い、動きベクトル値が０である場合には動き補償を行わない。差分映像マクロブロックを生成する時にもいずれも差分映像を行うのではなく、各ＤＣＴ係数の値が０であるか否かを判断してＤＣＴ係数の値が０でない場合には差分映像を作り、ＤＣＴ係数の値がいずれも０である場合には差分映像を作る過程を省略して以前映像の差分映像をそのまま利用することが本発明の基本原理である。
【００３２】
図６は本発明によるＭＰＥＧ−４ビデオ復号化器６００構成の一例を表す。
前記ＭＰＥＧ−４ビデオ復号化器６００は予測映像計算部６２０及び差分映像計算部６３０を含むマクロブロック単位処理部６１０と、マクロブロックバッファ６４０と、フレームバッファ６５０とを含む。
【００３３】
予測映像計算部６２０は動きベクトルを復号化し、所定の判断を行って動き補償を行い、差分映像計算部６３０はＤＣＴ係数を復号化し、所定の判断を行って差分映像を生成する。
【００３４】
マクロブロックバッファ６４０は予測映像計算部により生成された予測映像のマクロブロックと差分映像計算部により生成された差分映像のマクロブロックとを合わせて復号化された映像のマクロブロックを生成する。
フレームバッファ６５０はマクロブロックバッファ６４０から生成されたマクロブロックを一つずつ伝送されて一枚のフレームに保存する。
【００３５】
図６に示された予測映像計算部６２０の具体的な構成が図７に図示されている。
前記予測映像計算部６２０は動きベクトル復号化部６２１と動きベクトル判断部６２２と動き補償部６２３とを含む。
【００３６】
動きベクトル復号化部６２１は可変長復号化方法により動きベクトルを復号化し、動きベクトル判断部６２２は動きベクトル復号化部６２１により復号化された動きベクトルが０であるか否かを判断する。動きベクトルが０であるか否かによって動き補償遂行如何が決定されるが、動きベクトルが０である場合には動き補償を行わずに単に以前フレームの該当マクロブロックを以後の復号段階で使用し、動きベクトルが０でない場合には動き補償を行うように指示する。
【００３７】
動き補償部６２３は以前フレームの該当マクロブロックに対して前記復号化された動きベクトルを参照して動き補償を行う。
動きベクトルが０である場合には単に以前フレームの該当マクロブロックがマクロブロックバッファ６４０に記録され、動きベクトルが０でない場合には前記動き補償されたマクロブロックがマクロブロックバッファ６４０に記録される。
前記予測映像計算部６２０によりマクロブロックバッファ６４０にはマクロブロック予測映像値が記録される。
【００３８】
図６に示された差分映像計算部６３０の具体的な構成が図８に図示されている。
前記差分映像計算部６３０はＤＣＴ係数復号化部６３１と、ＤＣＴ係数判断部６３２と、逆量子化部６３３と、逆離散余弦変換部６３４とを含む。
【００３９】
ＤＣＴ係数復号化部６３１は可変長復号化方法によりＤＣＴ係数を復号化し、ＤＣＴ係数判断部６３２は前記ＤＣＴ係数復号化部６３１により復号された各ＤＣＴ係数の値が０であるか否かを判断する。ＤＣＴ係数の数が０であるか否かによってそれ以後の逆量子化及びＩＤＣＴ如何が決定されるが、ＤＣＴ係数の値がいずれも０である場合にはＩＤＣＴを行わず、したがって差分映像を生成せず、ＤＣＴ係数の値が０でない場合にはＩＤＣＴを行うように指示する。
【００４０】
逆量子化部６３３は量子化されたＤＣＴ係数を逆量子化し、逆離散余弦変換部６３４は逆量子化されたＤＣＴ係数をＩＤＣＴする。
前記差分映像計算部６３０により一マクロブロックの差分映像が生成されるが、前記のようにＤＣＴ係数の値がいずれも０であって差分映像が生成されない場合にはマクロブロックバッファ６４０に差分映像値を加える演算は遂行されず、ＤＣＴ係数の値が０でなくて差分映像が生成される場合に生成された差分映像はマクロブロックバッファ６４０に加えられる。
【００４１】
このようにマクロブロックバッファに復号映像のマクロブロックが満たされれば、このマクロブロックはフレームバッファ６５０に満たされる。その後、次のマクロブロックを処理する。
【００４２】
図９は本発明によるＭＰＥＧ−４ビデオ復号化器での復号化過程を説明する。
まず、マクロブロックヘッダを復号化する（Ｓ９０１）。
次に動きベクトルを復号化する（Ｓ９０２）。このような動きベクトル復号化及び後述されるＤＣＴ係数復号化はいずれも可変長復号化により行われる。
【００４３】
次に前記復号化された動きベクトルが０であるか否かを判断する（Ｓ９０３）。
動きベクトルが０である場合には（Ｓ９０３で「はい」）、Ｓ９０６段階に進む。すなわち、動きベクトルが０である場合には（Ｓ９０３で「はい」）、以前映像フレームのマクロブロック値と現在映像のマクロブロックの予測映像とに動き差がないということを意味するので、動き補償を行わずに以前映像で該当マクロブロックをもたらしてマクロブロックバッファに記録する。すなわち、現在映像と以前映像とが同一であれば以前フレームメモリに保存されている情報をそのまま活用するということであり、またこのような以前フレームメモリ値の活用のために差分映像より動き補償を先に行う。
【００４４】
そして、動きベクトルが０でない場合には（Ｓ９０３で「いいえ」）、以前映像の該当マクロブロックに対して前記復号化された動きベクトルを参照して動き補償を行う（Ｓ９０４）。
そして前記動き補償されたマクロブロックをマクロブロックバッファに記録する（Ｓ９０５）。
その後、ＤＣＴ係数を復号化する（Ｓ９０６）。
【００４５】
前記復号化された各ＤＣＴ係数の値が０であるか否かを判断して（Ｓ９０７）、判断結果、０である場合には（Ｓ９０７で「はい」）、以前映像との差分値がないということを意味するので、テクスチャー復号を行う必要なく、すなわちＩＤＣＴを行わずにＳ９１１段階に進む。
【００４６】
各ＤＣＴ係数の値が０でない場合には（Ｓ９０７で「いいえ」）、逆量子化（Ｓ９０８）を行い、ＩＤＣＴ（Ｓ９０９）を行って差分映像を生成する。
そして、このように生成された差分映像をマクロブロックバッファに加えた後（Ｓ９１０）、前記マクロブロックバッファに満たされたマクロブロックをフレームバッファに記録する（Ｓ９１１）。
【００４７】
そして、一フレームに属するマクロブロックを全部復号化したか否かを判断して（Ｓ９１２）、全部復号化された場合には（Ｓ９１２で「はい」）、終了し、全部復号化されていない場合には（Ｓ９１２で「いいえ」）、次のマクロブロックを処理するためにＳ９０１段階に進む。
本発明はこのようにマクロブロック単位で動き補償及びテクスチャー復号を行うので、ＶＯＰ内のブロック数に該当する動きベクトルメモリが要らなくなる。
【００４８】
さらに、図１０Ａないし図１０Ｃを参照して本発明による復号化方法の性能に対するシミュレーション結果を説明する。
性能改善のためにマイクロソフトレファレンスソースを変形して具現する時、実際環境はウィンドウ２０００運営体制のインテルペンティアムIII ８６６ＭＨｚ ＰＣを使用し、テスト映像はＡＫＩＹＯ（ＱＣＩＦ）、ＦＯＲＥＭＡＮ（ＣＩＦ）、ＭＯＢＩＬＥ（ＣＩＦ）を使用した。圧縮はＩフレームとＰフレームとの比を１：３０とし、両方向予測はしなかった。動き補償はＯＢＭＣを除いて全部適用した。
【００４９】
量子化の場合、Ｈ．２６３量子化方法を適用し、量子化パラメータＱＰが５、１２、２０である場合について９個の映像に対して性能を測定した。
図１０Ａは差分映像が符号化されていないブロック数の比率を表し、図１０Ｂは動き補償が要らないブロック数の比率を表す。
【００５０】
このように３個のテスト映像（ＡＫＩＹＯ、ＦＯＲＥＭＡＮ、ＭＯＢＩＬＥ）それぞれに量子化パラメータ５、１２、２０を適用した９種類の映像について既存アルゴリズムと変更されたアルゴリズム間の性能比較を図１０Ｃに表す。
【００５１】
図１０Ｃを参照すれば、３個のテスト映像ＡＫＩＹＯ、ＦＯＲＥＭＡＮ、ＭＯＢＩＬＥいずれでも本発明による復号化方法ＯＰＴＩＭＩＺＥＤが既存方法ＭＳＲＥＦＥＲＥＮＣＥより速度面で優れたことが分かり、特に、ＡＫＩＹＯ、ＦＯＲＥＭＡＮではいかなる量子化パラメータを記録しても速度が２倍以上速いことが分かる。
【産業上の利用可能性】
【００５２】
本発明は携帯電話やＰＤＡのような低電力が要求される携帯装置に適用できる。
【図面の簡単な説明】
【００５３】
【図１】ＭＰＥＧビデオの映像データ構造の階層を説明するための図面である。
【図２】従来技術によるＭＰＥＧ−４ビデオ復号化器の構成を図示するブロック図である。
【図３】図１に示された従来技術によるＭＰＥＧ−４復号化器での復号化過程を示すフローチャートである。
【図４】従来技術によるＭＰＥＧ−４ビデオ復号化方法で復号化された映像を生成する単位フレームを説明するための図面である。
【図５】本発明によるＭＰＥＧ−４ビデオ復号化方法で復号化された映像を生成するために処理する単位データを説明するための図面である。
【図６】本発明によるＭＰＥＧ−４ビデオ復号化器構成の一例を示すブロック図である。
【図７】図６に示された予測映像計算部の具体的な構成を示すブロック図である。
【図８】図６に示された差分映像計算部の具体的な構成を示すブロック図である。
【図９】本発明によるＭＰＥＧ−４ビデオ復号化器で復号化過程を示すフローチャートである。
【図１０Ａ】ＤＣＴ係数の数が０であるブロック数の比率を示す表である。
【図１０Ｂ】動きベクトルが０であるブロック数の比率を示す表である。
【図１０Ｃ】既存アルゴリズムと本発明によるアルゴリズム間の性能比較を示す表である。
【００５４】
５１０    予測映像のマクロブロック
５２０    差分映像のマクロブロック
５３０    マクロブロックバッファ
５４０    フレームバッファ
６００    ＭＰＥＧ−４ビデオ復号化器
６１０    マクロブロック単位処理部
６２０    予測映像計算部
６２１    動きベクトル復号化部
６２２    動きベクトル判断部
６２３    動き補償部
６３０    差分映像計算部
６３１    ＤＣＴ係数復号化部
６３２    ＤＣＴ係数判断部
６３３    逆量子化部
６３４    逆離散余弦変換部
６４０    マクロブロックバッファ
６５０    フレームバッファ
【図１】
2004312689.tif 000003
【図２】
2004312689.tif 000004
【図３】
2004312689.tif 000005
【図４】
2004312689.tif 000006
【図５】
2004312689.tif 000007
【図６】
2004312689.tif 000008
【図７】
2004312689.tif 000009
【図８】
2004312689.tif 000010
【図９】
2004312689.tif 000011
【図１０Ａ】
2004312689.tif 000012
【図１０Ｂ】
2004312689.tif 000013
【図１０Ｃ】
2004312689.tif 000014