(57)【要約】【課題】フレームバッファ全体が小容量であっても、従来と変わらない画像処理を可能にする。【解決手段】画像処理装置は、フレームバッファ１とＴＭＰバッファ３と、動き補償復号部２と、転送部４とから構成されている。動き補償復号部２は、フレームバッファ１に格納された参照画像データに基づいて復号画像データを生成し、ＴＭＰバッファ３へ順次、格納する。転送部４は、このフレームバッファ１に格納されている参照画像データのうち、動き補償復号部２による復号画像データの生成が完了し、かつ、シフト方向に延在した帯状の領域に、動きベクトル探索範囲Ｖpが含まれない領域に対して、ＴＭＰバッファ３に保存されている復号画像データを随時、上書きして格納するように転送する。【選択図】図２
2006217166.tif 000002
【特許請求の範囲】
【請求項１】
動き補償フレーム間予測符号化方式を用いて、圧縮された動画データを復号化する画像処理装置において、
前記圧縮された動画データとしての参照画像データが格納されている第１のバッファと、
前記参照画像データを前記第１のバッファから読み出し、前記参照画像データを分割することによって得られる複数のマクロブロックに与えられている動きベクトルの最大値に応じて決定される動きベクトル探索範囲を、処理サイクル毎に所定のシフト方向へ順次シフトさせながら、前記動きベクトル探索範囲内に存在する画素値を参照して、復号画像データを生成する復号部と、
前記復号部が生成した前記復号画像データを格納する第２のバッファと、
前記復号部による前記復号画像データの生成が完了し、かつ、前記シフト方向に延在した所定の帯状領域に、前記動きベクトル探索範囲が含まれない前記参照画像データと同一の位置情報を有する前記復号画像データを、前記処理サイクル毎に前記第２のバッファから読み出して、前記第１のバッファに転送するとともに、前記第１のバッファに格納されている前記参照画像データを前記転送された復号画像データに更新する転送部と
を有することを特徴とする画像処理装置。
【請求項２】
前記転送部は、前記第１のバッファに格納されている前記参照画像データのうち、前記動きベクトル探索範囲の少なくとも一部が含まれる前記所定の帯状領域を前記処理サイクル毎に読み出して、第２のバッファへ転送するとともに、前記第２のバッファに格納されている前記参照画像データを前記転送された参照画像データに更新し、
前記復号部は、前記第１のバッファに格納されている前記参照画像データを探索する前記動きベクトル探索範囲内と、前記第２のバッファに格納されている前記転送された参照画像データを探索する前記動きベクトル探索範囲内に存在する画素値を参照して、前記復号画像データを生成するとともに、前記第１のバッファへ格納することを特徴とする請求項１に記載された画像処理装置。
【請求項３】
復号画像データを格納する第３のバッファをさらに有し、
前記復号部は、前記第１のバッファに格納されている前記参照画像データの前記動きベクトル探索範囲と、前記第２のバッファに格納されている前記復号画像データの前記動きベクトル探索範囲とを参照して、新たな復号画像データを生成し、前記第３のバッファに格納することを特徴とする請求項１または２に記載された画像処理装置。
【請求項４】
動き補償フレーム間予測符号化方式を用いて、圧縮された動画データとしての参照画像データが格納されているとともに、前記参照画像データの復号化後の画像として読み出されるバッファを有し、前記バッファより読み出された前記参照画像データを分割することによって得られる複数のマクロブロックのそれぞれを処理サイクル毎に所定のシフト方向へシフトさせながら、前記参照画像データの復号化をマクロブロック単位で行う画像処理方法において、
前記参照画像データを前記第１のバッファから読み出し、前記参照画像データを分割することによって得られる複数のマクロブロックに与えられている動きベクトルの最大値に応じて決定される動きベクトル探索範囲を、処理サイクル毎に所定のシフト方向へ順次シフトさせながら、前記動きベクトル探索範囲内に存在する画素値を参照して、復号画像データを生成し、第２のバッファへ格納する第１のステップと、
前記第２のステップは、前記復号画像データの生成が完了し、かつ、前記シフト方向に延在した所定の帯状領域に、前記動きベクトル探索範囲が含まれない前記参照画像データと同一の位置情報を有する前記復号画像データを、前記処理サイクル毎に前記第２のバッファから読み出して、前記第１のバッファに転送するとともに、前記第１のバッファに格納されている前記参照画像データを前記転送された復号画像データに更新する第２のステップと
を特徴とする画像処理方法。
【請求項５】
第２のステップは、前記第１のバッファに格納されている前記参照画像データのうち、前記動きベクトル探索範囲の少なくとも一部が含まれる前記所定の帯状領域を前記処理サイクル毎に読み出して、第２のバッファへ転送するとともに、前記第２のバッファに格納されている前記参照画像データを前記転送された参照画像データに更新し、
第１のステップは、前記第１のバッファに格納されている前記参照画像データを探索する前記動きベクトル探索範囲内と、前記第２のバッファに格納されている前記転送された参照画像データを探索する前記動きベクトル探索範囲内に存在する画素値を参照して、前記復号画像データを生成するとともに、前記第１のバッファへ格納することを特徴とする請求項４に記載された画像処理方法。
【請求項６】
復号画像データを格納する第３のバッファをさらに有し、
前記第１のバッファに格納されている前記参照画像データの前記動きベクトル探索範囲と、前記第２のバッファに格納されている前記復号画像データの前記動きベクトル探索範囲とを参照して、新たな復号画像データを生成し、前記第３のバッファに格納することを特徴とするた画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および画像処理方法に係り、特に、動き補償フレーム間予測符号化における復号用バッファの更新制御に関する。
【背景技術】
【０００２】
動画像データの圧縮技術におけるＭＰＥＧ（Motion Picture Experts Group）符号化方式の主な構成技術の一つとして、動きベクトルを用いた動き補償フレーム間予測符号化がある。動きベクトルとは、対象の画像が水平および垂直に移動し、次のフレームでどれだけ移動したかを示す移動量である。動き補償フレーム間予測符号化は、各フレーム間におけるこの動きベクトルの差分を符号化する技術であり、主に圧縮率向上を図る上で効果がある。
【０００３】
例えば、特許文献１には、動画像データのうち、随時更新する必要のない背景の画像データをフレームメモリに記憶させ、この画像データを動画像データ全体の基準値として、動画像データの動き補償フレーム間予測符号化を行っている。これにより、画像データ全体の予測効率を向上させ、効率的な動画像の符号化および復号化を実現している。
【特許文献１】特開２００３−４０２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、動き補償フレーム間予測符号化方式によって圧縮された画像を復号化するために、メモリバッファとして、参照フレームバッファと、復号対象フレームバッファとを必要とする。参照フレームバッファには、復号元である参照画像データが格納され、復号対象フレームバッファには、復号後の画像データが一時的に格納されている。これらのフレームバッファは、それぞれ独立して設けられているため、復号化する画像データ量が大きい場合、ともに大きい容量を必要とする。
【０００５】
本発明は、かかる事情に鑑みてなされたものであり、その目的は、メモリバッファのサイズに関する要求を緩和し、メモリバッファ全体が小さな容量であっても、従来と変わらない効率的な画像処理を可能にすることである。
【課題を解決するための手段】
【０００６】
かかる課題を解決するために、第１の発明は、動き補償フレーム間予測符号化方式を用いて、圧縮された動画データを復号化する画像処理装置を提供する。この画像処理装置は、圧縮された動画データとしての参照画像データが格納されている第１のバッファと、参照画像データを第１のバッファから読み出し、参照画像データを分割することによって得られる複数のマクロブロックに与えられている動きベクトルの最大値に応じて決定される動きベクトル探索範囲を、処理サイクル毎に所定のシフト方向へ順次シフトさせながら、動きベクトル探索範囲内に存在する画素値を参照して、復号画像データを生成する復号部と、復号部が生成した復号画像データを格納する第２のバッファと、復号部による復号画像データの生成が完了し、かつ、シフト方向に延在した所定の帯状領域に、動きベクトル探索範囲が含まれない参照画像データと同一の位置情報を有する復号画像データを、処理サイクル毎に第２のバッファから読み出して、第１のバッファに転送するとともに、第１のバッファに格納されている参照画像データを転送された復号画像データに更新する転送部とを有する。
【０００７】
ここで、第１の発明において、転送部は、第１のバッファに格納されている参照画像データのうち、動きベクトル探索範囲の少なくとも一部が含まれる所定の帯状領域を処理サイクル毎に読み出して、第２のバッファへ転送するとともに、第２のバッファに格納されている参照画像データを転送された参照画像データに更新し、復号部は、第１のバッファに格納されている参照画像データを探索する動きベクトル探索範囲内と、第２のバッファに格納されている転送された参照画像データを探索する動きベクトル探索範囲内に存在する画素値を参照して、復号画像データを生成するとともに、第１のバッファへ格納することが好ましい。
【０００８】
また、第１の発明において、復号画像データを格納する第３のバッファをさらに有し、復号部は、第１のバッファに格納されている参照画像データの動きベクトル探索範囲と、第２のバッファに格納されている復号画像データの動きベクトル探索範囲とを参照して、新たな復号画像データを生成し、第３のバッファに格納することが好ましい。
【０００９】
第２の発明は、動き補償フレーム間予測符号化方式を用いて、圧縮された動画データとしての参照画像データが格納されているとともに、参照画像データの復号化後の画像として読み出されるバッファを有し、バッファより読み出された参照画像データを分割することによって得られる複数のマクロブロックのそれぞれを処理サイクル毎に所定のシフト方向へシフトさせながら、参照画像データの復号化をマクロブロック単位で行う画像処理方法を提供する。この画像処理方法は、参照画像データを第１のバッファから読み出し、参照画像データを分割することによって得られる複数のマクロブロックに与えられている動きベクトルの最大値に応じて決定される動きベクトル探索範囲を、処理サイクル毎に所定のシフト方向へ順次シフトさせながら、動きベクトル探索範囲内に存在する画素値を参照して、復号画像データを生成し、第２のバッファへ格納する第１のステップと、第２のステップは、復号画像データの生成が完了し、かつ、シフト方向に延在した所定の帯状領域に、動きベクトル探索範囲が含まれない参照画像データと同一の位置情報を有する復号画像データを、処理サイクル毎に第２のバッファから読み出して、第１のバッファに転送するとともに、第１のバッファに格納されている参照画像データを転送された復号画像データに更新する第２のステップとを特徴とする。
【００１０】
ここで、第２の発明において、第２のステップは、第１のバッファに格納されている参照画像データのうち、動きベクトル探索範囲の少なくとも一部が含まれる所定の帯状領域を処理サイクル毎に読み出して、第２のバッファへ転送するとともに、第２のバッファに格納されている参照画像データを転送された参照画像データに更新し、第１のステップは、第１のバッファに格納されている参照画像データを探索する動きベクトル探索範囲内と、第２のバッファに格納されている転送された参照画像データを探索する動きベクトル探索範囲内に存在する画素値を参照して、復号画像データを生成するとともに、第１のバッファへ格納することが好ましい。
【００１１】
また、第２の発明において、復号画像データを格納する第３のバッファをさらに有し、第１のバッファに格納されている参照画像データの動きベクトル探索範囲と、第２のバッファに格納されている復号画像データの動きベクトル探索範囲とを参照して、新たな復号画像データを生成し、第３のバッファに格納することが好ましい。
【発明の効果】
【００１２】
本発明によれば、参照画像データのうち、動きベクトル探索範囲から外れ、復号化に必要としなくなった領域に復号画像データが格納される。これによって、参照画像の復号過程で算出されるフレーム全体の値を第２のバッファに保持する必要がないので、メモリバッファ全体の容量に関する要求が緩和することができる。
【発明を実施するための最良の形態】
【００１３】
（第１の実施形態）
図１は、本実施形態に係る画像処理装置の概略図である。この画像処理装置は、動き補償フレーム間予測符号化方式を用いて、圧縮された動画データを復号化する。また、この画像処理装置は、Ｉピクチャ（Intra-coded picture）フレームまたは、Ｐピクチャ（Predictive-coded picture）フレームである参照画像データから、復号画像データであるＰピクチャフレームを生成する。
【００１４】
ここで、「Ｉピクチャフレーム」とは、他のピクチャの情報を利用せず、静止画を圧縮対象としたＪＰＥＧ（Joint Photographic Experts Group）のように、それ自身のピクチャのみで符号化されるフレームである。Ｉピクチャフレームの圧縮率は一般的に低いが、他のピクチャフレームとは独立して復号化が可能である。また、「Ｐピクチャフレーム」とは、過去のＩピクチャフレームまたは、Ｐピクチャフレームを参照して、時間軸上で前向き動き予測符号化されるフレームである。Ｐピクチャフレームは、Ｉピクチャフレームより圧縮率は高いが、その復号化には過去のＩピクチャフレームが必要である。
【００１５】
画像処理装置は、フレームバッファ１と、動き補償復号部２と、ＴＭＰバッファ３と、転送部４と、制御部５と、イントラ復号部６と、動画像生成部７とを有する。制御部５は、フレームバッファ１からＴＭＰバッファ３に向かうデータパス中に設けられた動き補償復号部２と、ＴＭＰバッファ３からフレームバッファ１に向かうデータパス中に設けられた転送部４との動作を制御する。
【００１６】
フレームバッファ１には、イントラ復号部６より復号化されたＩピクチャフレームおよび、Ｐピクチャフレームの少なくとも一方である参照画像データが格納されている。また、フレームバッファ１には、後述する復号処理によって、Ｐピクチャフレームである復号画像データが上書きして格納され、この復号画像データが動画像生成部７に読み出される。動き補償復号部２は、制御部５の指示に従い、フレームバッファ１に格納された参照画像フレームに基づいて、復号画像データを生成する。ＴＭＰバッファ３には、この生成された復号画像データが、一時的に格納される。そして、転送部４は、同じく制御部５の指示に従い、ＴＭＰバッファ３に格納された復号画像データの一部をフレームバッファ１にある参照画像データを上書きするように転送する。
【００１７】
イントラ復号部６は、所定の記憶装置に格納されているデータを復号化し、Ｉピクチャフレームである参照画像データを生成する。生成された参照画像データは、フレームバッファ１へ格納される。この参照画像データは、上記画像処理を行うための元となる画像データである。また、動画像生成部７は、フレームバッファ１に格納されている参照画像データおよび復号画像データを読み出し、動画像を生成する。最終的に生成された動画像は、例えば、ディスプレイなどの表示装置などに表示される。
【００１８】
つぎに、制御部５の制御下における、動き補償復号部２および転送部４のより具体的な制御について説明する。図２は、本実施形態に係るフレームバッファ１とＴＭＰバッファ３との対応関係を示す図である。
【００１９】
なお、後述する全ての本実施形態おいて、動き補償復号部２が行う復号化は、参照画像データを分割することによって得られる複数のマクロブロック単位で行われる。復号対象マクロブロックＢpの所定のシフト方向は、フレームによって規定される二次元的な画像平面上のフレームにおいて、左から右へ水平にシフトする方向である。ある水平ライン上の最右端のマクロブロックにおける復号化が完了すると、次の処理サイクルでは、１マクロブロック分だけ下に変位した最左端のマクロブロックの復号化が行われる。処理サイクルの移行にしたがい、最左上から最右下までの全ての処理が終了すると参照画像データの復号化が完了する。
【００２０】
まず、動き補償復号部２は、フレームバッファ１に格納されている参照画像データを読み出す。この参照画像データ全体を分割することによって得られる複数のマクロブロックに与えられている動きベクトルの最大値に応じて、動きベクトル探索範囲Ｖpが決定される。動き補償復号部２は、この復号対象マクロブロックＢpを中心とした動きベクトル探索範囲Ｖpに存在する画素値を参照する。この参照後、復号対象マクロブロックＢpにおける復号画像データが順次生成される。動き補償復号部２によって生成された復号画像データは、ＴＭＰバッファ３へ格納される。
【００２１】
上記復号化処理を続けていくと、フレームバッファ１において、動き補償復号部２による復号画像データの生成が完了し、かつ、シフト方向に延在した所定の帯状領域に、動きベクトル探索範囲Ｖpが含まれない参照画像データが存在する。転送部４は、この参照画像データと同一の位置情報を有する復号画像データをＴＭＰバッファ３から転送するとともに、この参照画像データを転送された復号画像データに更新する。
【００２２】
転送部４の具体的な動作を、図２を用いて説明する。斜線でハッチングされた領域は、動きベクトル探索範囲Ｖpであり、フレームバッファ１に格納されている参照画像データを参照する。また、グレーに塗られた領域は、動きベクトル探索範囲Ｖp内に囲まれた参照画像データによって生成された復号画像データであり、ＴＭＰバッファ３に格納されている。この復号画像データは、復号化される際にフレームバッファ１における参照画像データの位置情報と対応している。
【００２３】
処理サイクルの移行によって、復号対象マクロブロックＢpが１マクロブロック分だけ下に変位されると、動きベクトル探索範囲Ｖpも同様に１マクロブロック分だけ下に変位される。すると、動きベクトル探索範囲Ｖpの上辺のさらに上方に、今後の処理サイクルにおいても利用されない（参照されない）参照画像データの領域が発生する。転送部４は、発生したこの参照画像データの領域に対して、ＴＭＰバッファ３に格納された復号画像データを転送する。
【００２４】
転送される復号画像データの領域は、動きベクトル探索範囲Ｖpの位置をＴＭＰバッファ３に反映させた際に、シフト方向（本実施形態における横方向）に、この動きベクトル探索範囲Ｖpが含まれていない領域である。本実施形態の場合、点線で囲われたベクトル探索範囲Ｖpの上辺のさらに上方に存在する帯状領域が、転送される復号画像データとなる。これらの領域に格納された復号画像データは、転送部４によって、フレームバッファ１へ転送され、同一の位置情報を有する参照画像データを更新する。なお、転送された復号画像データは、以降の処理サイクルにおいても必要とされないので、ＴＭＰバッファ３から消去される。
【００２５】
本実施形態では、フレームバッファ１に格納されている参照画像データのうち、復号化処理に必要のない領域に、ＴＭＰバッファ３に格納されている復号画像データを格納している。これにより、参照画像の復号過程で算出されるフレーム全体のデータをＴＭＰバッファ３に保持する必要がないので、バッファ全体の容量に関する要求が緩和することができる。
【００２６】
（第２の実施形態）
図３は、本実施形態に係る画像処理装置の概略図である。画像処理装置は、ＩピクチャフレームおよびＰピクチャフレームの少なくとも一方である参照画像データから、Ｐピクチャフレームである復号画像データを生成する。
【００２７】
本実施形態における画像処理装置の構成は、第１の実施形態と比べて、構成はほぼ同一であるが、動き補償復号部２および転送部４の動作が異なっている。つまり、本実施形態は、第１の実施例の変形例にあり、後述されていない部分についての構成および動作については、第１の実施形態と同様である。
【００２８】
つぎに、制御部５の制御下における、動き補償復号部２および転送部４のより具体的な制御について説明する。図４は、本実施形態に係るフレームバッファ１と、ＴＭＰバッファ３との対応関係を示す図である。
【００２９】
まず、転送部４は、フレームバッファ１に格納されている参照画像データを読み出す。そして、この参照画像データを分割することによって得られる複数のマクロブロックに与えられている動きベクトルの最大値に応じて、動きベクトル探索範囲Ｖpを決定する。そして、転送部４は、この動きベクトル探索範囲Ｖpに応じて、フレームバッファ１に保存されている参照画像データの一部をＴＭＰバッファ３へ随時、上書きして格納するように転送する。
【００３０】
つぎに、動き補償復号部２は、第１のバッファに格納されている参照画像データを探索する動きベクトル探索範囲内と、第２のバッファに格納されている参照画像データを探索する動きベクトル探索範囲内に存在する画素値を参照する。そして、この画素値に基づいて、復号対象マクロブロックＢpの復号画像データが生成され、フレームバッファ１に格納される。なお、本実施形態において、動き補償復号部２が、参照する動きベクトル探索範囲Ｖpは、２つの探索範囲によって構成されている。１つは、フレームバッファ１に格納されている参照画像データのうち、復号対象マクロブロックＢpの下辺より、下方に存在する動きベクトル探索範囲Ｖp1である。もう１つは、フレームバッファ１に格納されている参照画像データのうち、復号対象マクロブロックＢpの下辺より、上方に存在する動きベクトル探索範囲Ｖp2である。
【００３１】
転送部４の具体的な動作を、図４を用いて説明する。斜線でハッチングされた領域は、その中央にある復号対象マクロブロックＢpを復号化するために必要となる動きベクトル探索範囲Ｖp1，Ｖp2である。また、グレーに塗られた領域は、動きベクトル探索範囲Ｖp内に囲まれた参照画像データによって生成された復号画像データである。
【００３２】
転送される参照画像データの領域は、動きベクトル探索範囲Ｖpの少なくとも一部が含まれる所定の帯状領域である。本実施形態の場合、動き補償復号部２の本来の動作（第１の実施形態の動作）による動きベクトル探索範囲Ｖpをフレームバッファ１に反映させた際に、シフト方向に、この動きベクトル探索範囲Ｖp2が含まれる領域である。本実施形態の場合、所定の処理サイクルにおいて、点線で示されたベクトル探索範囲Ｖp2の上下幅を持つ帯状領域が、転送される参照画像データである。
【００３３】
なお、復号化処理の処理サイクルにおいて、第１の実施形態と同様に、復号対象マクロブロックＢpが１マクロブロック分だけ下に変位されると、当然動きベクトル探索範囲Ｖp1，Ｖp2も同様に１マクロブロック分だけ下に変位される。このとき、ＴＭＰバッファ３に格納されている参照画像データのうち、上方にある１マイクロブロック分の帯状領域が消去される。そして、消去された領域と同サイズの参照画像データがフレームバッファ１から転送され、ＴＭＰバッファ３に格納される。
【００３４】
本実施形態によれば、第１の実施形態と同様、参照画像データの復号過程で算出されるフレーム全体のデータをＴＭＰバッファ３に保持する必要がないので、バッファ全体のサイズに関する要求が緩和することができる。
【００３５】
なお、本実施形態では、動きベクトル探索範囲として、フレームバッファ１における復号対象マクロブロックＢpの下辺より、下方に存在する動きベクトル探索範囲Ｖp1と、ＴＭＰバッファ３における復号対象マクロブロックＢpの下辺より、上方に存在する動きベクトル探索範囲Ｖp2を挙げた。しかしながら、本発明における動きベクトル探索範囲の領域は、これに限定されず、動き補償復号部２による参照する動きベクトル探索範囲が、フレームバッファに格納されている参照画像データと、ＴＭＰバッファ３に一時的に保存されている参照画像データとから構成されていれば良い。
【００３６】
例えば、図５に示すように、参照する動きベクトル探索範囲の１つは、フレームバッファ１に格納されている参照画像データのうち、復号対象マクロブロックＢpの下辺および右辺より、右下方向に存在する動きベクトル探索範囲Ｖp1'である。また、もう１つは、ＴＭＰバッファ３に格納されている参照画像データのうち、復号対象マクロブロックＢpの上辺および左辺より、左上方向に存在する動きベクトル探索範囲Ｖp2'である。つまり、図５は、形態的には第２の実施形態と相違するものの、動きベクトル探索範囲から得られるデータは、第２の実施形態と同一であり、第２の実施形態と同様の効果を奏する。
【００３７】
（第３の実施形態）
図６は、本実施形態に係る画像処理装置の概略図である。この画像処理装置は、ＩピクチャフレームおよびＰピクチャフレームの少なくとも一方である参照画像データに基づいて、Ｐピクチャフレームである復号画像データ（以下、第１の復号画像データと呼ぶ）を生成する。さらに、この画像処理装置は、この参照画像データとこの復号画像データとから、Ｂピクチャ（Bidirectionally predictive-coded）フレームである新たな復号画像データ（以下、第２の復号画像データと呼ぶ）を生成する。
【００３８】
ここで、「Ｂピクチャフレーム」とは、時間的に前後に位置するＩピクチャフレームまたはＰピクチャフレームを用いて前方向・後方向・両方向の画面から予測符号化を行うことによって複数生成されるの復号画像データである。
【００３９】
本実施形態は、上記２つの復号画像データを格納するために、第１の実施形態と比べて、画像処理装置の構成は、特に第１のフレームバッファ１ａと、第２のフレームバッファ１ｂとを有する点が異なっている。第１のフレームバッファ１ａは、第１の実施形態と同様に、参照画像データが格納されており、後述する処理サイクルにて、第１の復号画像データが、上書きして格納される。また、第２のフレームバッファ１ｂは、動き補償復号部２が、第１のフレームバッファ１ａに格納されている参照画像データと、ＴＭＰバッファ３に格納されている第１の復号画像データとに基づいて生成された第２の復号画像データが格納され、動画像生成部７によって読み出される。
【００４０】
つぎに、制御部５の制御下における、動き補償復号部２および転送部４の具体的な制御について説明する。図７は、第１および第２のフレームバッファ１ａ，１ｂとＴＭＰバッファ３との対応関係を示す図である。
【００４１】
まず、動き補償復号部２は、第１のフレームバッファ１ａに格納されている参照画像データを読み出す。そして、この参照画像データを分割することによって得られる複数のマクロブロックに与えられている動きベクトルの最大値に応じて、動きベクトル探索範囲Ｖpを決定する。動き補償復号部２は、復号対象マクロブロックＢpを中心とした動きベクトル探索範囲Ｖpに存在する画素値を参照して、復号対象マクロブロックＢpにおける第１の復号画像データを生成する。動き補償復号部２が生成した復号画像データは、ＴＭＰバッファ３へ一時的に格納される。
【００４２】
さらに、動き補償復号部２は、第１のフレームバッファ１ａに格納されている参照画像データと、ＴＭＰバッファ３に格納されている第１の復号画像データとに基づいて、第２の復号画像データを生成する。動き補償復号部２が参照する動きベクトル探索範囲Ｖbは、第１のフレームバッファ１ａおよびＴＭＰバッファ３において、復号対象ブロックＢpのシフト方向と反対の辺（図中では左辺）に、隣接するように設定されている。これにより、第１の復号画像データの生成とともに、第２の復号画像データが順次生成され、この生成された第２の復号画像データは第２のフレームバッファ１ｂに順次格納される。そして、転送部４は、この動きベクトル探索範囲Ｖpに応じて、フレームバッファ１に保存されている参照画像データの一部をＴＭＰバッファ３へ転送する。
【００４３】
転送部４の具体的な動作を、図７を用いて説明する。斜線でハッチングされた領域は、その中央にある復号対象マクロブロックＢpを復号化するために必要となる動きベクトル探索範囲Ｖpであり、フレームバッファ１に格納されている参照画像データを参照する。また、グレーに塗られた領域は、動きベクトル探索範囲Ｖp内に囲まれた参照画像データによって生成された第１の復号画像データであり、生成されたデータはＴＭＰバッファ３に格納されている。また、点状に塗られた領域は、動きベクトル探索範囲Ｖb内に囲まれた第１の復号画像データによって新たに生成された第２の復号画像データである。これら復号画像データは、復号化される際にフレームバッファ１における参照画像データの位置情報と対応している。
【００４４】
処理サイクルの移行によって、復号対象マクロブロックＢpが１マクロブロック分だけ下に変位されると、動きベクトル探索範囲Ｖpも同様に１マクロブロック分だけ下に変位される。すると、動きベクトル探索範囲Ｖpの上辺のさらに上方に、今後の処理サイクルにおいても利用されない（参照されない）参照画像データの領域が発生する。転送部４は、発生したこの参照画像データの領域に対して、ＴＭＰバッファ３に格納された復号画像データを転送する。
【００４５】
転送される復号画像データの領域は、第１の実施形態と同様、動きベクトル探索範囲Ｖpの位置をＴＭＰバッファ３に反映させた際に、シフト方向に、この動きベクトル探索範囲Ｖpが含まれていない領域である。本実施形態の場合、点線で囲われたベクトル探索範囲Ｖpの上辺のさらに上方に存在する帯状領域が、転送される復号画像データとなる。これらの領域に格納された復号画像データは、転送部４によって、フレームバッファ１へ転送され、同一の位置情報を有する参照画像データを更新する。なお、転送された復号画像データは、以降の処理サイクルにおいても必要とされないので、ＴＭＰバッファ３から消去される。
【００４６】
本実施形態によれば、第１の実施形態と同様に、このような格納を繰り返すことで、参照画像の復号過程で算出されるフレーム全体の値をＴＭＰバッファ３に保持する必要がないので、バッファ全体の容量に関する要求が緩和することができる。また、Ｂピクチャフレームの生成を行うことで、復号された動画像データの画質の向上を図ることができる。
【００４７】
なお、本実施形態において、Ｂピクチャフレーム用である第２のフレームバッファ１ｂは１つであったが、Ｂピクチャフレームは、そもそもＩピクチャフレームおよびＰピクチャフレームとの間に複数存在する。したがって、本発明は、これに限定されるものではなく、第２のフレームバッファが複数存在した場合でも、本発明を適用することができる。
【図面の簡単な説明】
【００４８】
【図１】第１の実施形態に係る画像処理装置の概略図
【図２】第１の実施形態に係るフレームバッファとＴＭＰバッファとの対応関係を示す図
【図３】第２の実施形態に係る画像処理装置の概略図
【図４】第２の実施形態に係るフレームバッファとＴＭＰバッファとの対応関係を示す図
【図５】第２の実施形態の変形例に係るフレームバッファとＴＭＰバッファとの対応係を示す図
【図６】第３の実施形態に係る画像処理装置の概略図
【図７】第３の実施形態に係る第１および第２のフレームバッファとＴＭＰバッファとの対応関係を示す図
【符号の説明】
【００４９】
１  フレームバッファ
１ａ  第１のフレームバッファ
１ｂ  第２のフレームバッファ
２  動き補償復号部
３  ＴＭＰバッファ
４  転送部
５  制御部
６  イントラ復号部
７  動画像生成部
【図１】
2006217166.tif 000003
【図２】
2006217166.tif 000004
【図３】
2006217166.tif 000005
【図４】
2006217166.tif 000006
【図５】
2006217166.tif 000007
【図６】
2006217166.tif 000008
【図７】
2006217166.tif 000009