(57)【要約】【課題】効率よくデブロッキングフィルタを適用する。【解決手段】画像処理装置１は、第１のマクロブロックを含む第１の領域のマクロブロックの画素値を記憶するバッファメモリ１６と、バッファメモリ１６から第１の領域の画素値を読み出し、第１のマクロブロックについてデブロッキングフィルタを適用した結果を、バッファメモリ１６に記憶するデブロッキングフィルタ回路１７と、バッファメモリ１６から、第１のマクロブロックの次に処理される第２のマクロブロックを含む第２の領域に含まれないマクロブロックの画素値を、フレームメモリ１９に転送するとともに、フレームメモリ１９から第２の領域に含まれ第１の領域に含まれないマクロブロックの画素値を、バッファメモリ１６に記憶するデブロッキングフィルタ用画素転送回路１８とを備える。【選択図】図１
2007180723.tif 000002
【特許請求の範囲】
【請求項１】
画像にデブロッキングフィルタを適用する画像処理装置において、
第１のマクロブロックを含む第１の領域のマクロブロックの画素値を記憶するバッファメモリと、
前記バッファメモリから前記第１の領域の画素値を読み出し、前記第１のマクロブロックについてデブロッキングフィルタを適用した結果を、前記バッファメモリに記憶するデブロッキングフィルタ回路と、
前記バッファメモリから、第１のマクロブロックの次に処理される第２のマクロブロックを含む第２の領域に含まれないマクロブロックの画素値を、フレームメモリに転送するとともに、前記フレームメモリから前記第２の領域に含まれ前記第１の領域に含まれないマクロブロックの画素値を、前記バッファメモリに記憶するデブロッキングフィルタ用画素転送回路
とを備えることを特徴とする画像処理装置。
【請求項２】
輝度成分の画素値についてデブロッキングフィルタを適用する場合、前記マクロブロックは、１６画素×１６画素の大きさであることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
色差成分の画素値についてデブロッキングフィルタを適用する場合、前記マクロブロックは、８画素×８画素の大きさであることを特徴とする請求項１に記載の画像処理装置。
【請求項４】
画像にデブロッキングフィルタを適用する画像処理装置において、
マクロブロックの画素値を算出するフレーム間予測適用回路と、
前記フレーム間予測適用回路の出力する前記マクロブロックの画素値を記憶するバッファメモリと、
前記マクロブロックの画素値を前記バッファメモリから読み出して、前記マクロブロックにデブロッキングフィルタを適用した結果を前記バッファメモリに出力するデブロッキングフィルタ回路と、
前記デブロッキングフィルタが適用された結果を、前記バッファメモリからフレームメモリに転送するデブロッキングフィルタ用画素転送回路
とを備えることを特徴とする画像処理装置。
【請求項５】
画像にデブロッキングフィルタを適用する画像処理方法において、
第１のマクロブロックの画素値が算出され、バッファメモリに記憶されるステップと、
前記バッファメモリから、前記第１のマクロブロックを含む第１の領域の画素値が読み出され、前記第１のマクロブロックについてデブロッキングフィルタが適用された結果が、前記バッファメモリに記憶されるステップと、
前記バッファメモリから、第１のマクロブロックの次に処理される第２のマクロブロックを含む第２の領域に含まれないマクロブロックの画素値を、フレームメモリに記憶するとともに、前記フレームメモリから前記第２の領域に含まれ前記第１の領域に含まれないマクロブロックの画素値を、前記バッファメモリに記憶するステップ
を備えることを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像にデブロッキングフィルタを適用する画像処理装置及び画像処理方法に関する。
【背景技術】
【０００２】
動画像符号化方式として、現在ＤＶＤで採用されているＭＰＥＧ−２（Moving Picture Experts Group phase 2）、低画質、高圧縮率の映像の配信を可能にするＭＰＥＧ−４（Moving Picture Experts Group phase 4）がある（例えば、特許文献１及び特許文献２参照。）。
【０００３】
これらの動画像符号化形式に加え、ＶＣ−１と呼ばれる規格が、ＳＭＰＴＥ（Society of Motion Picture and Television Engineers：全米映画テレビジョン技術者協会）に提案されている（例えば、特許文献３及び非特許文献１参照。）。このＶＣ−１においては、動き補償とＤＣＴ（Discrete Cosine Transform）をベースにする点においてはＭＰＥＧ−２と同様である。一方、ＶＣ−１では、ＤＣＴのブロックサイズにおいて「４×４」に加えて「４×８」、「８×４」及び「８×８」の合計４種類のブロックサイズが選択できる点が異なる。これにより、ＶＣ−１によって復号された画像は、周期的に変化する粒状感を残し、フィルムの質感を表現できるメリットがある。
【０００４】
ＶＣ−１方式の画像処理装置は、復号画像ブロックノイズを低減するデブロッキングフィルタを備えている。ＶＣ−１において、デブロッキングフィルタは、画像処理装置における復号手順の最終段階である予測画像を生成する段階で用いられる。従って、デブロッキングフィルタは、規定通りの手順で正確に処理することを要する。
【０００５】
このために、従来の画像処理装置においては、一枚の画像について、
（１）デブロッキングフィルタの手前までの復号手順を経て、一枚の画像を得る
（２）（１）で得られた一枚の画像のブロック間の境界に対して、デブロッキングフィルタを適用する
の各手順が定義されている。
【０００６】
この様に、従来の画像処理装置は、復号画像である一枚のピクチャ全体を復号し終えてから、最後にピクチャ全体にデブロッキングフィルタを適用していた。
【特許文献１】特開２００５−９４２１２号公報
【特許文献２】米国特許第６６７１４１８号明細書
【特許文献３】米国特許出願公開第２００５／００８４０１２号明細書
【非特許文献１】SMPTE Draft Standard for Television, SMPTE 421M, 2005-08-23
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記手順でデブロッキングフィルタを適用する場合、画像の各画素データの読み書きが頻繁に発生してしまう問題がある。
【０００８】
デブロッキングフィルタにおいては、各画素について輝度成分Ｙ、色差成分Ｃｂ及び色差成分Ｃｒの３種類の画素値について処理しなければならない。デブロッキングフィルタを適用するときに、フレームメモリの読み出し及び書き込みが頻発するため、処理が遅延する問題があった。
【０００９】
そこで本発明の目的は、効率よくデブロッキングフィルタが適用された復号画像を出力する画像処理装置及び画像処理方法を提供することである。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明の第１の特徴は、画像にデブロッキングフィルタを適用する画像処理装置に関する。本発明の第１の特徴に係る画像処理装置は、第１のマクロブロックを含む第１の領域のマクロブロックの画素値を記憶するバッファメモリと、バッファメモリから第１の領域の画素値を読み出し、第１のマクロブロックについてデブロッキングフィルタを適用した結果を、バッファメモリに記憶するデブロッキングフィルタ回路と、バッファメモリから、第１のマクロブロックの次に処理される第２のマクロブロックを含む第２の領域に含まれないマクロブロックの画素値を、フレームメモリに転送するとともに、フレームメモリから第２の領域に含まれ第１の領域に含まれないマクロブロックの画素値を、バッファメモリに記憶するデブロッキングフィルタ用画素転送回路とを備える。
【００１１】
本発明の第２の特徴は、画像にデブロッキングフィルタを適用する画像処理装置に関する。本発明の第２の特徴に係る画像処理装置は、マクロブロックの画素値を算出してバッファメモリに記憶するフレーム間予測適用回路と、画素値をバッファメモリから読み出して、マクロブロックにデブロッキングフィルタを適用した結果をバッファメモリに出力するデブロッキングフィルタ回路と、デブロッキングフィルタが適用された結果を、バッファメモリからフレームメモリに転送するデブロッキングフィルタ用画素転送回路とを備える。
【発明の効果】
【００１２】
本発明によれば、効率よくデブロッキングフィルタが適用された復号画像を出力する画像処理装置及び画像処理方法を提供することができる。
【発明を実施するための最良の形態】
【００１３】
次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
【００１４】
（最良の実施の形態）
本発明の最良の実施の形態においては、一つの画像データについて、左上から右下にラスタスキャン順でマクロブロック単位にデブロッキングフィルタを適用する場合について説明する。具体的には、画像データの一番上の行の各マクロブロックについて、左から右にスキャンしながらデブロッキングフィルタが適用され、その後、２番目の行の各マクロブロックについて、左から右にスキャンしながらデブロッキングフィルタが適用される。
【００１５】
（画像処理装置）
図１を参照して、本発明の最良の実施の形態に係る画像処理装置１を説明する。本発明の最良の実施の形態に係る画像処理装置１は、ビットストリームＤ０１が入力されると、入力されたビットストリームを復号して復号画像Ｄ０２を出力する。ここで出力される復号画像Ｄ０２は、動画像データであっても良いし、静止画像であっても良い。
【００１６】
本発明の最良の実施の形態に係る画像処理装置１は、可変長符号復号回路１１、逆量子化逆直交変換回路１２、予測画素転送回路１３、フレーム間予測画素補間回路１４、フレーム間予測適用回路１５、バッファメモリ１６、デブロッキングフィルタ回路１７、デブロッキングフィルタ用画素転送回路１８、フレームメモリ１９を備えている。
【００１７】
可変長符号復号回路１１は、ビットストリームＤ０１の可変長符号を復号して、量子化変換係数及び動きベクトル、その他の後段で必要となるパラメータ群の値を求める回路である。可変長符号復号回路１１から出力された量子化変化係数は、逆量子化逆直交変換回路１２に入力される。一方、可変長符号復号回路１１から出力された動きベクトルは、予測画素転送回路１３に入力される。
【００１８】
逆量子化逆直交変換回路１２は、可変長符号復号回路１１から入力された量子化変換係数に、量子化パラメータを乗じて変換係数を取得する回路である。更に逆量子化逆直交変換回路１２は、取得した変換係数を逆変換して画素値又はフレーム間予測残差を取得する回路である。逆量子化逆直交変換回路１２から出力されたデータは、フレーム間予測適用回路１５に入力される。
【００１９】
予測画素転送回路１３は、可変長符号復号回路１１から入力された動きベクトルの情報を入力として、フレーム間予測に使うための参照画像に必要な領域をフレームメモリ１９から転送する回路である。予測画素転送回路１３によって取得されたデータは、フレーム間予測画素補間回路１４に入力される。
【００２０】
フレーム間予測画素補間回路１４は、動きベクトルが整数画素未満の単位の座標を参照しているときに、参照画像を補間して中点となる画素値を求めて参照画像を出力する回路である。フレーム間予測画素補間回路１４から出力されたデータは、フレーム間予測適用回路１５に入力される。
【００２１】
フレーム間予測適用回路１５は、フレーム間予測画素補間回路１４によって求められた参照画像と、逆量子化逆直交変換回路１２によって求められたフレーム間予測残差とを加えて、画素値を得る回路である。フレーム間予測適用回路１５は、各画素について、輝度成分Ｙ、色差成分Ｃｂ及び色差成分Ｃｒの３種類の画素値を算出して、バッファメモリ１６に出力する。
【００２２】
バッファメモリ１６は、デブロッキングフィルタ回路１７における処理で必要な画素値が記憶される。バッファメモリ１６には、フレーム間予測適用回路１５によって算出された画素値とともに、デブロッキングフィルタ用画素転送回路１８によってフレームメモリ１９から転送された画素値が記憶される。更に、デブロッキングフィルタ回路１７によってデブロッキングフィルタが適用された結果の画素値も、バッファメモリ１６に記憶される。バッファメモリ１６は１つでもよいし、記憶すべき画素の位置に応じた複数のメモリに分割されていてもよい。
【００２３】
デブロッキングフィルタ回路１７は、バッファメモリ１６から、所定のマクロブロックのデブロッキングフィルタに必要な領域の画素値を読み出し、この所定のマクロブロックについてデブロッキングフィルタを適用した結果を、バッファメモリ１６に記憶する。本発明の最良の実施の形態において、デブロッキングフィルタ回路１７は、マクロブロック単位にデブロッキングフィルタを適用する。ここでマクロブロックは、輝度成分Ｙの場合は１６画素×１６画素、色差成分Ｃｂ及び色差成分Ｃｒの場合は８画素×８画素と定義される。フレーム間予測適用回路１５によってマクロブロックの画素値が算出されると、デブロッキングフィルタ回路１７によってデブロッキングフィルタが適用される。デブロッキングフィルタ回路１７は、入力された画素値から注目するマクロブロックについてデブロッキングフィルタを適用した後の画素値を算出し、算出された画素値をバッファメモリ１６に記憶する。
【００２４】
フレーム間予測適用回路１５による画素値の算出と、デブロッキングフィルタ回路１７によるデブロッキングフィルタの適用は、パイプライン方式で並列に処理されても良い。具体的には、デブロッキングフィルタ回路１７によって所定のマクロブロックに対してデブロッキングフィルタが適用されると同時に、フレーム間予測適用回路１５によってその次のマクロブロックに対して画素値が算出されても良い。
【００２５】
デブロッキングフィルタ用画素転送回路１８は、バッファメモリ１６から、デブロッキングフィルタ回路１７によって参照されないマクロブロックの画素値をフレームメモリ１９に転送する。例えば、バッファメモリ１６に第１のマクロブロックにデブロッキングフィルタを適用するための入力となる第１の領域の画素値が記憶されている場合について説明する。第１のマクロブロックの次に処理される第２のマクロブロックについてデブロッキングフィルタを適用する場合、デブロッキングフィルタ用画素転送回路１８は、バッファメモリから、第２のマクロブロックにデブロッキングフィルタを適用するための入力となる第２の領域に含まないマクロブロックの画素値をフレームメモリに転送する。このとき、バッファメモリ１６から転送された画素値が削除される。或いは、バッファメモリ１６から転送された画素値が記憶されていた領域に新たな画素値が記憶される様に、バッファメモリ１６は制御される。更に、デブロッキングフィルタ用画素転送回路１８は、フレームメモリ１９から第２の領域に含まれ第１の領域に含まれないマクロブロックの画素値をバッファメモリ１６に記憶する。このとき、デブロッキングフィルタ用画素転送回路１８によって転送された画素が記憶されていた領域に、第２の領域に含まれ第１の領域に含まれないマクロブロックの画素値が記憶されても良いし、他の解放されている領域に記憶されても良い。
【００２６】
フレームメモリ１９は、デブロッキングフィルタ用画素転送回路１８によって、デブロッキングフィルタが適用された後の画素値が格納される。フレームメモリ１９に記憶された数値は、予測画素転送回路１３及びデブロッキングフィルタ用画素転送回路１８によって読み出される。
【００２７】
（画像処理方法）
次に、図２を参照して本発明の最良の実施の形態に係る画像処理方法について、デブロッキングフィルタを適用する場合の処理を説明する。
【００２８】
まず、ステップＳ１０１において、変数ｉが初期化される。ここで、変数ｉは、復号画像の左上を０としてラスタスキャン順に割り当てられたマクロブロック番号を示す。ただし、復号画像の外側にはマクロブロックは存在しないが、復号画像の縦方向の範囲を超えた下方にもマクロブロックが存在するかのようにマクロブロック番号は割り当てる。  
次に、ステップＳ１０２において、変数ｉで特定されるマクロブロックＭＢｉについて、デブロッキングフィルタ回路１７により、デブロッキングフィルタが適用される。更に、ステップＳ１０３において、変数ｉがインクリメントされる。  
ステップＳ１０４において、変数ｉが定数ｍｂＣｏｕｎｔであるか否かが判定される。ここで、ｍｂＣｏｕｎｔは、復号画像においてデブロッキングフィルタを適用するマクロブロックの数である。具体的にｍｂＣｏｕｎｔは、横方向のマクロブロック数と、縦方向のマクロブロック数＋１とを乗算した数で示される。ステップＳ１０２におけるフィルタリング処理は、変数ｉが０からｍｂＣｏｕｎｔ−１までのｍｂＣｏｕｎｔの回数だけ繰り返される。
【００２９】
図２に示した処理は、復号画像について、輝度成分、色差成分Ｃｂ及び色差成分Ｃｒについてそれぞれ実行される。
【００３０】
本発明の最良の実施の形態に係る画像処理方法について、図２に示すフローチャートを参照して説明したが、この処理に限らない。処理順序及びループの終了条件等は、適宜変更されても良い。
【００３１】
（デブロッキングフィルタ）
図３乃至図１１を参照して、本発明の最良の実施の形態に係るデブロッキングフィルタを適用する処理について説明する。
【００３２】
デブロッキングフィルタは、図３に示すように、一枚の画像のブロック間の境界に対して適用される。図３に示す二つの四角は、隣接する二つのブロックＢ００１及びＢ００２を示している。ブロックＢ００１及びＢ００２の内部の○は一つの画素を示している。実線の○で示された画素Ｐ１０２ａ及びＰ１０２ｂは、ブロックＢ００１及びＢ００２の境界に位置するブロックである。点線の○で示された画素Ｐ１０１ａ及びＰ１０１ｂは、境界に位置する画素Ｐ１０２ａ及びＰ１０２ｂのデブロッキングフィルタ処理に用いられる画素である。境界の画素Ｐ１０２ａ及びＰ１０２ｂに対してデブロッキングフィルタを適用する場合、画素Ｐ１０１ａ、Ｐ１０１ｂ、Ｐ１０２ａ及びＰ１０２ｂが入力される。
【００３３】
次に、図４及び図５を参照して、所定のマクロブロックについてデブロッキングフィルタを適用する場合に必要となる領域について説明する。
【００３４】
図４は、輝度成分の画素値についてデブロッキングフィルタを適用する処理を説明する図である。図４に示す実線で示されたマクロブロックＢ１０１の輝度成分についてデブロッキングフィルタを適用する場合、図４に示された領域の画素値がバッファメモリ１６に記憶される。点線で示された領域は、処理対象のマクロブロックの周辺画素となる。
【００３５】
図４に示した領域のうち、現在処理するマクロブロックＢ１０１と、一つ前に処理されたマクロブロックＢ１０３と、表示位置がマクロブロックＢ１０１の上に位置するマクロブロックＢ１０２と、表示位置がマクロブロックＢ１０３の上に位置するマクロブロックＢ１０４が、マクロブロックＢ１０１にデブロッキングフィルタを適用するときに、デブロッキングフィルタ回路１７に入力される。マクロブロックＢ１０２及びマクロブロックＢ１０４は、マクロブロックＢ１０１及びマクロブロックＢ１０３に対してスキャンする方向に直交する方向に隣接したマクロブロックであって、既にデブロッキングフィルタ処理されたマクロブロックである。ただし、マクロブロックＢ１０１乃至Ｂ１０４のいずれかが復号画像の外側に相当するときは、その領域の内容はそれぞれ任意でよい。
【００３６】
マクロブロックＢ１５１は、現在処理しているマクロブロックの次に処理するマクロブロックである。マクロブロックＢ１５３は、現在処理しているマクロブロックＢ１０１の二つ前に処理されたマクロブロックである。マクロブロックＢ１５２は、表示位置がマクロブロックＢ１５１の上に位置するマクロブロックである。マクロブロックＢ１５４は、表示位置がマクロブロックＢ１５３の上に位置するマクロブロックである。マクロブロックＢ１５２及びマクロブロックＢ１５４は、マクロブロックＢ１５１及びマクロブロックＢ１５３に対してスキャンする方向に直交する方向に隣接し、既にデブロッキングフィルタ処理されたマクロブロックである。ただし、マクロブロックＢ１５１乃至Ｂ１５４のいずれか復号画像の外側に相当するときは、その領域の内容はそれぞれ任意でよい。
【００３７】
マクロブロックＢ１０１乃至Ｂ１０４及びＢ１５１乃至Ｂ１５４は、それぞれ個々のマクロブロックが相異なる複数のバッファメモリに記憶されてもよいし、全てが単一のバッファメモリに記憶されてもよい。
【００３８】
次に、図４に示した領域の画素値に対する処理を説明する。まず、マクロブロックＢ１５１に対する画素値がフレーム間予測適用回路１５によってバッファメモリ１６に書き込まれる。更にこの処理に続いて或いは並列に、デブロッキングフィルタ回路１７が動作して、現在注目しているマクロブロックＢ１０１とその周辺画素がデブロッキングフィルタ回路１７によって処理される。この処理に続いて或いは並列に、マクロブロックＢ１５３及びＢ１５４の画素が、デブロッキングフィルタ用画素転送回路１８によって、バッファメモリ１６からフレームメモリ１９へ転送される。これに続いて、マクロブロックＢ１５４の画素値が格納されていたバッファメモリ上の領域が、マクロブロックＢ１５２の右側のマクロブロックの画素値に置き換えられる。このとき、デブロッキングフィルタ用画素転送回路１８は、マクロブロックＢ１５２の右側のマクロブロックの画素値を、フレームメモリ１９からバッファメモリへと転送する。この様にバッファメモリ１６に記憶される画素値が入れ替わると、デブロッキングフィルタ回路１７によって、マクロブロックＢ１５１の画素値に対してデブロッキングフィルタが適用される。
【００３９】
図５は、一つの色差成分Ｃｂの画素値についてデブロッキングフィルタを適用する処理を説明する図である。図５に示すマクロブロックＢ２０１の色差成分Ｃｂについてデブロッキングフィルタを適用する場合、図５に示された領域の画素値がバッファメモリ１６に記憶される。点線で示された領域は、処理対象のマクロブロックの周辺画素となる。
【００４０】
マクロブロックＢ２０１乃至マクロブロックＢ２０４及びマクロブロックＢ２５１乃至マクロブロックＢ２５４は、図４を参照して説明したマクロブロックＢ１０１乃至マクロブロックＢ１０４及びマクロブロックＢ１５１乃至マクロブロックＢ１５４に相当する。
【００４１】
領域Ｂ２５５は、４画素を高さとし、復号画像の横方向の画素数を幅とする矩形の大きさを持つ。具体的には、現在注目しているマクロブロックＢ２０１を境に列の異なる領域Ｂ２５５ａ及び領域Ｂ２５５ｂを有する。領域Ｂ２５５ａは、マクロブロックＢ２０３の上部に隣接する４画素の高さと、マクロブロックＢ２０３の右端と復号画像の左端の幅を持つ矩形である。領域Ｂ２５５ｂは、マクロブロックＢ２０１の上部に隣接するマクロブロックＢ２０２の上部に隣接する４画素の高さと、マクロブロックＢ２０１の左端と復号画像の右端の幅を持つ矩形である。ただし、領域Ｂ２５５ａ及びＢ２５５ｂのいずれかが復号画像の外側に相当するときは、その領域の内容はそれぞれ任意でよい。また、領域Ｂ２５５はマクロブロックＢ２０１乃至マクロブロックＢ２０４及びマクロブロックＢ２５１乃至Ｂ２５４とは相異なるバッファメモリに記憶されてもよいし、いずれかと同一のバッファメモリに記憶されてもよい。
【００４２】
色差成分Ｃｂの画素値についてデブロッキングフィルタを適用する場合、バッファメモリ１６には、図５に示す領域の画素値が記憶される。図４を参照した同様の動作で、マクロブロックＢ２０１の色差成分Ｃｂについても処理される。又、もう一方の色差成分Ｃｒについても、図５と同様の構成の画素値がバッファメモリ１６に記憶され、色差成分Ｃｂと同様の処理が繰り返される。
【００４３】
（デブロッキングフィルタの適用順序）
次に、図６乃至図９を参照して、本発明の最良の実施の形態に係るデブロッキングフィルタ回路１７がデブロッキングフィルタを適用する順序を説明する。
【００４４】
図６及び図７は、プログレッシブピクチャ又はインタレースフィールドピクチャの一つのマクロブロックについてデブロッキングフィルタを適用する順序を説明する図である。一方、図８及び図９は、インタレースフレームピクチャの一つのマクロブロックについてデブロッキングフィルタを適用する順序を説明する図である。
【００４５】
図６を参照して、プログレッシブピクチャ又はインタレースフィールドピクチャの一つのマクロブロックの輝度成分Ｙの画素値についてデブロッキングフィルタを適用する順序を説明する。
【００４６】
図６において、最小の正方形一つが８画素×８画素のブロックを表している。最小の正方形を４つ含む実線の正方形は、現在注目しているマクロブロック一つに相当する。このマクロブロックは、１６画素×１６画素の大きさを有する。点線部は周辺マクロブロックを表す。楕円一つは２画素のブロック境界４つをまとめて表しており、これらの書く楕円部分に対応する画素値がデブロッキングフィルタの適用対象となる。デブロッキングフィルタは、８タップの入力なので、楕円部分が示す境界部の２画素に相当する画素値に加えて、その外側にある両側３画素の計６画素に対応する画素値も、デブロッキングフィルタ回路１７に入力される。楕円（１）乃至楕円（３２）までに対して、この数字の順番でデブロッキングフィルタが適用され、その結果がバッファメモリ１６に書き戻される。ここで、楕円（１）乃至楕円（３２）はそれぞれ必要に応じてデブロッキングフィルタ処理の適否を個別に設定されても良い。
【００４７】
図７を参照して、プログレッシブピクチャ又はインタレースフィールドピクチャの一つのマクロブロックの色差成分Ｃｂの画素値についてデブロッキングフィルタを適用する順序を説明する。図７の表記は図６と同様である。楕円（１）乃至楕円（８）までに対してこの数字の順番でデブロッキングフィルタが適用され、その結果がバッファメモリ１６に書き戻される。ここで、楕円（１）乃至楕円（８）は、それぞれ必要に応じてデブロッキングフィルタ処理の適否が個別に設定されても良い。
【００４８】
色差成分Ｃｒの画素値についても、色差成分Ｃｂの画素値と同様に処理される。
【００４９】
図８を参照して、インタレースフレームピクチャの一つのマクロブロックの輝度成分Ｙの画素値についてデブロッキングフィルタを適用する順序を説明する。
【００５０】
図８において、番号１乃至１６が付された一つの円は、水平方向２画素のブロック境界４つ、トップフィールドとボトムフィールドを合わせた計８つをまとめて表している。デブロッキングフィルタは８タップの入力なので、円部分が示すトップフィールドとボトムフィールドの境界２画素ずつ計４画素に対応する画素値に加えて、その外側にある両側３画素ずつ計両側８画素に対応する画素値も、デブロッキングフィルタ回路１７に入力される。又、番号１７乃至２４が付された一つの楕円は、垂直方向２画素のブロック境界４つ、トップフィールドとボトムフィールドを合わせた計８つをまとめて表している。これらの点以外は図６と同じである。円又は楕円（１）乃至（２４）までに対してこの数字の順番でデブロッキングフィルタが適用され、その結果がバッファメモリ１６に書き戻される。ここで、円又は楕円（１）乃至（２４）は、それぞれ必要に応じてデブロッキングフィルタ処理の適否が個別に設定されても良い。
【００５１】
図９を参照して、インタレースフレームピクチャの一つのマクロブロックの色差成分Ｃｂの画素値についてデブロッキングフィルタを適用する順序を説明する。図９の表記は図８と同様である。但し、一点鎖線部（５）及び（６）の画素は縦４画素×横８画素の領域を表している。
【００５２】
この場合、デブロッキングフィルタ回路１７は、まず円又は楕円（１）乃至楕円（４）までに対してこの数字の順番でデブロッキングフィルタが適用され、その結果がバッファメモリ１６に書き戻される。次に一点鎖線部（５）を格納しているバッファメモリ領域を一点鎖線部（６）の内容で置き換える。最後に楕円（７）及び楕円（８）に順にデブロッキングフィルタが適用され、その結果がバッファメモリ１６に書き戻される。但し、円（１）乃至円（４）、楕円（７）及び楕円（８）は、それぞれ必要に応じてフィルタ処理の適否が個別に設定されても良い。これをもう一つの色差成分Ｃｒに対しても繰り返す。
【００５３】
（従来のデブロッキングフィルタの適用順序との比較）
従来のデブロッキングフィルタの適用順序を、図１０及び図１１を参照して説明する。
【００５４】
図１０は、プログレッシブピクチャ又はインタレースフィールドピクチャの適用順序を説明する図である。図１０は、デブロッキングフィルタを適用する前の一枚の画像を示している。この場合、下記のような手順が必要になる。
【００５５】
（１）８画素×８画素単位のブロック間の横方向境界Ｌ１０１ａ、Ｌ１０１ｂ、・・・・Ｌ１０１ｊを対象に、画像一枚全体についてデブロッキングフィルタ処理
（２）４画素×４画素単位のサブブロック間の横方向境界Ｌ１０２ａ、Ｌ１０２ｂ、・・・・Ｌ１０２ｋを対象に、画像一枚全体についてデブロッキングフィルタ処理
（３）８画素×８画素単位のブロック間の縦方向境界Ｌ１０３ａ、Ｌ１０３ｂ、・・・Ｌ１０３ｓを対象に、画像一枚全体についてデブロッキングフィルタ処理
（４）４画素×４画素単位のサブブロック間の縦方向境界Ｌ１０４ａ、Ｌ１０４ｂ、・・・Ｌ１０４ｔを対象に、画像一枚全体についてデブロッキングフィルタ処理
【００５６】
図１０に示した画像について、輝度成分について１６画素×１６画素のマクロブロックを、一つの色差成分について８画素×８画素のマクロブロックを基準に処理することになる。横幅がｗマクロブロックで高さがｈマクロブロックの大きさを持つ画像については、上記手順それぞれにおいて、バッファメモリ１６に対して、下記のような画素値の読み出し及び書き出しが発生する。  
（１）読み込みが（ｗ×ｈ×３８４−ｗ×１９２）画素分
書き出しが（ｗ×ｈ×３８４／４ −ｗ×６４）画素分
（２）読み込みが（ｗ×ｈ×３８４）画素分
書き出しが（ｗ×ｈ×３８４／４ ）画素分
（３）読み込みが（ｗ×ｈ×３８４−ｈ×１９２）画素分
書き出しが（ｗ×ｈ×３８４／４ −ｈ×６４）画素分
（４）読み込みが（ｗ×ｈ×３８４）画素分
書き出しが（ｗ×ｈ×３８４／４）画素分
これらを合計して、（ｗ×ｈ×３８４×５−（ｗ＋ｈ）×２５６）画素分のバッファメモリ１６へのアクセスが発生する。
【００５７】
図１１は、インタレースフレームピクチャの適用順序を説明する図である。図１１は、デブロッキングフィルタを適用する前の一枚の画像を示している。この場合、下記の様な手順が必要になる。
【００５８】
（１）８画素×８画素単位のブロック間と、４画素×４画素単位のサブブロック間とを合わせた横方向境界Ｌ２０１ａ、Ｌ２０１ｂ、・・・・Ｌ２０１ｋを対象に、トップフィールド及びボトムフィールドについてそれぞれ独立に、上から下に向かって画像一枚全体についてデブロッキングフィルタ処理
（２）８画素×８画素単位のブロック間と、４画素×４画素単位のサブブロック間とを合わせた縦方向境界Ｌ２０２ａ、Ｌ２０２ｂ、・・・Ｌ２０２ｔを対象に、トップフィールド及びボトムフィールドについてそれぞれ独立に、左から右に向かって画像一枚全体についてデブロッキングフィルタ処理
【００５９】
図１１に示した画像について、輝度成分について１６画素×１６画素のマクロブロックを、一つの色差成分について８画素×８画素のマクロブロックを基準に処理することになる。横幅がｗマクロブロックで高さがｈマクロブロックの大きさを持つ画像については、バッファメモリ１６に対して、下記のような画素値の読み出し及び書き出しが発生する。  
（１）１フィールドの読み出しが（ｗ×ｈ×１９２）画素分
１フィールドの書き出しが（ｗ×ｈ×１９２ −ｗ×１９２）画素分
（２）１フィールドの読み出しが（ｗ×ｈ×１９２）画素分
１フィールドの書き出しが（ｗ×ｈ×１９２／２ −ｈ×３２）画素分
この処理がトップフィールドとボトムフィールドの２フィールド必要なので、これらを合計して、（ｗ×ｈ×３８４×３．５ −ｗ×３８４−ｈ×６４）画素分のバッファメモリ１６へのアクセスが発生する。
【００６０】
これに対して、本願発明の最良の実施の形態に係る画像処理装置１について説明する。１マクロブロックの処理につき、バッファメモリ１６からフレームメモリ１９への転送量が輝度成分ＹについてマクロブロックＢ１５３及びＢ１５４と、これにそれぞれ対応する色差成分Ｃｂ及びＣｒのマクロブロックＢ２５３及びＢ２５４の計２マクロブロック分で７６８画素分発生する。逆にフレームメモリ１９からバッファメモリ１６への転送が輝度成分ＹについてマクロブロックＢ１５２と、これに対応する色差成分Ｃｂ及びＣｒのマクロブロックＢ２５２の計３８４画素ある。以上より、１画面がｗマクロブロック×ｈマクロブロックの画像では、合計で（ｗ×ｈ×３８４×３）画素分の転送が発生する。これは上述した従来の手法に比べて、プログレッシブピクチャ、インタレースフィールドピクチャ及びインタレースフレームピクチャいずれの場合に対しても削減できている。
【００６１】
この様に、本発明の最良の実施の形態に係る画像処理装置１においては、デブロッキングフィルタ処理についての画素値の転送量を削減することができる。
【００６２】
又、本発明の最良の実施の形態に係る画像処理装置１においては、マクロブロック単位にデブロッキングフィルタを適用する。従って、所定のマクロブロックについてデブロッキングフィルタの手前までの復号処理が完了すると、その所定のマクロブロックについてデブロッキングフィルタを適用することができる。これにより、画像全体についてデブロッキングフィルタの手前まで復号した後にデブロッキングフィルタを適用する従来の方法に比べて、本発明の最良の実施の形態に係る画像処理装置１は、復号処理に要する時間を短縮することができる。
【００６３】
この様に本発明の最良の実施の形態に係る画像処理装置１によれば、効率よくデブロッキングフィルタが適用された復号画像を出力することができる。
【００６４】
（変形例）
次に、図１２及び図１３を参照して、本発明の最良の実施の形態の変形例に係る画像処理装置におけるデブロッキングフィルタの適用方法について説明する。本発明の最良の実施の形態の変形例においては、本発明の最良の実施の形態に比べて、バッファメモリ１６の容量を大きく持つことで、バッファメモリ１６とフレームメモリとのデータの転送を削減する方法である。
【００６５】
図１２を参照して、輝度成分の画素値についてデブロッキングフィルタを適用する場合にバッファメモリ１６に記憶される画素値について説明する。図１２に示した領域は、本発明の最良の実施の形態で参照した図４と比べてマクロブロックＢ３８１ａ乃至マクロブロックＢ３８１ｎと、マクロブロックＢ３８２ａ乃至マクロブロックＢ３８２ｎとを有している点が異なる。図１２に示したマクロブロックＢ３０１乃至マクロブロックＢ３０４と、マクロブロックＢ３５１乃至マクロブロックＢ３５４は、それぞれ、図４に示したマクロブロックＢ１０１乃至マクロブロックＢ１０４と、マクロブロックＢ１５１乃至マクロブロックＢ１５４に相当する。マクロブロックＢ３８１ａ乃至マクロブロックＢ３８１ｎは、現在注目しているマクロブロックＢ３０１の左側に向かって画像の左端までのマクロブロックのうち、現在注目しているマクロブロックＢ３０１の前に処理されたマクロブロックＢ３０３と、マクロブロックＢ３０３の前に処理されたマクロブロックＢ３５３とを除くマクロブロック群である。同様に、マクロブロックＢ３８２ａ乃至マクロブロックＢ３８２ｎは、現在注目しているマクロブロックＢ３０１の上のマクロブロックＢ３０２の右側に向かって画像の右端までのマクロブロックのうち、現在注目しているマクロブロックのＢ３０１の上のマクロブロックＢ３０２と、マクロブロックＢ３０２の次に処理されたマクロブロックＢ３５２を除くマクロブロック群である。バッファメモリ１６は、図１２に示す領域の画素値を同時に格納できる容量を備える。
【００６６】
次に、動作を説明する。まず、マクロブロックＢ３５１の画素値をフレーム間予測適用回路１５が書き込む。これに続いてデブロッキングフィルタ回路１７が動作して現在注目しているマクロブロックＢ３０１とその周辺のマクロブロックＢ３０２乃至マクロブロックＢ３０４の画素値を処理する。これに続いて又は並列に、マクロブロックＢ３５４の画素値を、デブロッキングフィルタ用画素転送回路１８がバッファメモリ１６からフレームメモリ１９へと転送する。マクロブロックＢ３０１、Ｂ３５４及びマクロブロックＢ３０１乃至マクロブロックＢ３０４が相異なるバッファメモリ上に記憶されていれば、これらを並列に動作して処理を高速にできる。これでマクロブロックＢ３０１に関するデブロッキングフィルタの一連の処理は終了し、次に注目するべきマクロブロックはマクロブロックＢ３５１となる。
【００６７】
図１３を参照して、一つの色差成分の画素値についてデブロッキングフィルタを適用する場合にバッファメモリ１６に記憶される画素値について説明する。図１３に示した領域は、本発明の最良の実施の形態で参照した図５と比べてマクロブロックＢ４８１ａ乃至マクロブロックＢ４８１ｎと、マクロブロックＢ４８２ａ乃至マクロブロックＢ４８２ｎとを有している点が異なる。図１３に示したマクロブロックＢ４０１乃至マクロブロックＢ４０４と、マクロブロックＢ４５１乃至マクロブロックＢ４５５は、それぞれ、図５に示したマクロブロックＢ２０１乃至マクロブロックＢ２０４と、マクロブロックＢ２５１乃至マクロブロックＢ２５５に相当する。マクロブロックＢ４８１ａ乃至マクロブロックＢ４８１ｎは、現在注目しているマクロブロックＢ４０１の左側に向かって画像の左端までのマクロブロックのうち、現在注目しているマクロブロックＢ４０１の前に処理されたマクロブロックＢ４０３と、マクロブロックＢ４０３の前に処理されたマクロブロックＢ４５３とを除くマクロブロック群である。同様に、マクロブロックＢ４８２ａ乃至マクロブロックＢ４８２ｎは、現在注目しているマクロブロックＢ４０１の上のマクロブロックＢ４０２の右側に向かって画像の右端までのマクロブロックのうち、現在注目しているマクロブロックのＢ４０１の上のマクロブロックＢ４０２と、マクロブロックＢ４０２の次に処理されたマクロブロックＢ４５２を除くマクロブロック群である。バッファメモリ１６は、図１３に示す領域の画素値を同時に格納できる容量を備える。
【００６８】
次に、動作を説明する。まず、マクロブロックＢ４５１の画素値をフレーム間予測適用回路１５が書き込む。これに続いて又は並列にデブロッキングフィルタ回路１７が動作して現在注目しているマクロブロックＢ４０１とその周辺のマクロブロックＢ４０２乃至マクロブロックＢ４０４の画素値を処理する。これに続いて又は並列に、マクロブロックＢ４５４の画素値を、デブロッキングフィルタ用画素転送回路１８がバッファメモリ１６からフレームメモリ１９へと転送する。マクロブロックＢ４５１、Ｂ４５４及びマクロブロックＢ４０１乃至マクロブロックＢ４０４が相異なるバッファメモリ上に記憶されていれば、これらを並列に動作して処理を高速にできる。これでマクロブロックＢ４０１に関するデブロッキングフィルタの一連の処理は終了し、次に注目するべきマクロブロックはマクロブロックＢ４５１となる。又、領域Ｂ４５５ａ及び領域Ｂ４５５ｂは、図５の説明と同様に使用される。
【００６９】
本発明最良の実施の形態の変形例によれば、１マクロブロックの処理あたり、バッファメモリ１６からフレームメモリ１９への転送量は、マクロブロックＢ３５４及びＢ４５４の３８４画素のみである。これより、１画面がｗマクロブロック×ｈマクロブロックの画像では、合計で（ｗ×ｈ×３８４）画素分の転送が発生する。これは従来の手法に比べて、プログレッシブピクチャ、インタレースフィールドピクチャ及びインタレースフレームピクチャいずれの場合に対しても削減できている。
【００７０】
又、本発明の最良の実施の形態の変形例によれば、本発明の最良の実施の形態に比べて、バッファメモリ１６の容量を多く持つことにより、バッファメモリ１６とフレームメモリ１９とのデータ転送を削減することができる。
【００７１】
この様に本発明の最良の実施の形態の変形例に係る画像処理装置１によれば、効率よくデブロッキングフィルタが適用された復号画像を出力することができる。
【００７２】
（その他の実施の形態）
上記のように、本発明の最良の実施の形態とその変形例１によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなる。
【００７３】
本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。従って、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
【図面の簡単な説明】
【００７４】
【図１】図１は、本発明の最良の実施の形態に係る画像処理装置の構成図である。
【図２】図２は、本発明の最良の実施の形態に係る画像処理方法のフローチャートである。
【図３】図３は、本発明の最良の実施の形態に係る画像処理装置において、境界の二つの画素についてデブロッキングする場合の入力画素を説明する図である。
【図４】図４は、本発明の最良の実施の形態に係る画像処理装置において、輝度成分の画素値についてデブロッキングフィルタを適用するときにバッファメモリに記憶される画素値の領域を説明する図である。
【図５】図５は、本発明の最良の実施の形態に係る画像処理装置において、色差成分の画素値についてデブロッキングフィルタを適用するときにバッファメモリに記憶される画素値の領域を説明する図である。
【図６】図６は、本発明の最良の実施の形態に係る画像処理装置において、プログレッシブピクチャ又はインタレースフィールドピクチャの一つのマクロブロックの輝度成分Ｙの画素値についてデブロッキングフィルタを適用する順序を説明する図である。
【図７】図７は、本発明の最良の実施の形態に係る画像処理装置において、プログレッシブピクチャ又はインタレースフィールドピクチャの一つのマクロブロックの色差成分Ｃｂの画素値についてデブロッキングフィルタを適用する順序を説明する図である。
【図８】図８は、本発明の最良の実施の形態に係る画像処理装置において、インタレースフレームピクチャの一つのマクロブロックの輝度成分Ｙの画素値についてデブロッキングフィルタを適用する順序を説明する図である。
【図９】図９は、本発明の最良の実施の形態に係る画像処理装置において、インタレースフレームピクチャの一つのマクロブロックの色差成分Ｃｂの画素値についてデブロッキングフィルタを適用する順序を説明する図である。
【図１０】図１０は、従来の画像処理装置において、プログレッシブピクチャ又はインタレースフィールドピクチャにデブロッキングフィルタを適用する順序を説明する図である。
【図１１】図１１は、従来の画像処理装置において、インタレースフレームピクチャにデブロッキングフィルタを適用する順序を説明する図である。
【図１２】図１２は、本発明の最良の実施の形態の変形例に係る画像処理装置において、輝度成分の画素値についてデブロッキングフィルタを適用するときにバッファメモリに記憶される画素値の領域を説明する図である。
【図１３】図１３は、本発明の最良の実施の形態の変形例に係る画像処理装置において、色差成分の画素値についてデブロッキングフィルタを適用するときにバッファメモリに記憶される画素値の領域を説明する図である。
【符号の説明】
【００７５】
１…画像処理装置
１１…可変長符号復号回路
１２…逆量子化逆直交変換回路
１３…予測画素転送回路
１４…フレーム間予測画素補間回路
１５…フレーム間予測適用回路
１６…バッファメモリ
１７…デブロッキングフィルタ回路
１８…デブロッキングフィルタ用画素転送回路
１９…フレームメモリ
【図１】
2007180723.tif 000003
【図２】
2007180723.tif 000004
【図３】
2007180723.tif 000005
【図４】
2007180723.tif 000006
【図５】
2007180723.tif 000007
【図６】
2007180723.tif 000008
【図７】
2007180723.tif 000009
【図８】
2007180723.tif 000010
【図９】
2007180723.tif 000011
【図１０】
2007180723.tif 000012
【図１１】
2007180723.tif 000013
【図１２】
2007180723.tif 000014
【図１３】
2007180723.tif 000015