(57)【要約】【課題】フィルタ処理等の画像の演算処理に使用されるメモリをより小型化し、より小型かつ低廉な画像処理装置を提供する。【解決手段】水平及び垂直方向に配列された複数の画素で構成される画像を処理する画像処理装置において、画像データを水平方向及び垂直方向に画素を所定の数ずつ配置して構成される画素ブロックごとに画像処理をするフィルタ処理部２０４、フィルタ処理部２０４によって処理される画像データを保存するデブロッキング・フィルタ用バッファ２０３、デブロッキング・フィルタ用バッファ２０３に保存されている画像データを更新する読込み制御部２０１、書込み制御部２０２を設ける。そして、デブロッキング・フィルタ用バッファ２０３を、４×４ブロックが水平方向、垂直方向の少なくとも一方向に沿って配置され、かつ互いに隣接する構成を単位にして画像データを保存する。【選択図】図２
2007287031.tif 000002
【特許請求の範囲】
【請求項１】
水平及び垂直方向に配列された複数の画素で構成される画像を処理する画像処理装置であって、
前記画像の画素にかかるデータである画像データを、水平方向及び垂直方向に画素を所定の数ずつ配置して構成される画素ブロックごとに画像処理をする画像処理手段と、
前記画像処理手段によって処理される画像データを保存する画像保存手段と、
前記画像保存手段に保存されている画像データを更新する更新手段と、を備え、
前記画像保存手段は、
前記画素ブロックが水平方向、垂直方向の少なくとも一方向に沿って配置され、かつ互いに隣接する構成を単位にして画像データを保存することを特徴とする画像処理装置。
【請求項２】
前記画像保存手段は、
水平方向、垂直方向の少なくとも一方向に沿って配置され、かつ互いに隣接する２つの画素ブロックの画像データだけを保存することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記画像保存手段は、
水平方向に沿って配置された画素ブロック２行分、垂直方向に沿って配置された画素ブロック２列分の少なくとも一方に相当する画像データだけを保存することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記画像保存手段は、
水平方向及び垂直方向に沿って配置され、かつ互いに隣接する３つの画素ブロックの画像データだけを保存することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記画素ブロックが、さらに水平方向及び垂直方向にｎ個数ずつ配置されてマクロブロックを構成し、
前記画像保存手段は、
水平方向に沿ってｎ＋１個配置された画素ブロック２行分、垂直方向に沿ってｎ＋１個配置された画素ブロック２列分に相当する画像データだけを保存することを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記画像処理手段は、
前記画像保存手段に保存されている画像データの画素ブロックの水平方向及び垂直方向に沿う境界を交互に画像処理することを特徴とする請求項４または５に記載の画像処理装置。
【請求項７】
前記画像処理手段によってなされる画像処理が、画素ブロック境界のデータを平滑化するフィルタ処理であることを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記更新手段は、
前記画像処理手段によって画像処理がされた画像データの一部を外部に書出して書出された画像データのデータ量に相当するデータ量分読込むと共に、
書出された画像データの一部の前記画像保存手段におけるアドレスによって書出されなかった画像データの前記画像保存手段におけるアドレスを更新し、書出されなかった画像データの前記画像保存手段におけるアドレスに読込まれたデータを保存することによって前記画像保存手段を更新することを特徴とする請求項１から７のいずれか１項に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理方法にかかり、特にＨ．２６４といった動画像データを符号化する画像処理装置及び画像処理方法に関する。
【背景技術】
【０００２】
現在、ＭＰＥＧ１、ＭＰＥＧ２あるいはＨ．２６４といった動画像の画像データを符号化する符号化装置、符号化された動画像データを復号する復号化装置がある。このような符号化装置、復号化装置は、携帯電話や小型の携帯端末でテレビ電話機能を実現する場合に必要となる構成である。また、近年運用が開始された地上デジタル放送においてもＭＰＥＧ２が使用されていて、将来的にはさらに高精度画像向けの圧縮技術としてＨ．２６４が普及するものと思われる。
【０００３】
Ｈ．２６４を使って画像データをより圧縮するための従来技術として、例えば、特許文献１が挙げられる。特許文献１は、動画像データの圧縮の処理量が多いことに着目し、処理をソフトウェアとハードウェアに分散するものである。
【特許文献１】特開２００５−７０９３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、携帯型の端末装置において、さらなる小型化や廉価化が常に要求されている。装置を小型化、低廉化するためにはメモリの小型化が有効な手段である。しかしながら、特許文献１を含む従来技術では、多くの場合、ブロック歪みを除去するためにフィルタ処理等をするために少なくとも１画面のフレームメモリ分のデータを保存可能なメモリを使用している。
【０００５】
このため、従来技術では、メモリの大きさに制限されて携帯型の情報端末装置をより小型化、低廉化することが困難だった。
本発明は、このような点に鑑みてなされたものであり、フィルタ処理等の画像の演算処理に使用されるメモリをより小型化し、より小型かつ低廉な画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
以上の課題を解決するため、本発明の画像処理装置は、水平及び垂直方向に配列された複数の画素で構成される画像を処理する画像処理装置であって、水平及び垂直方向に配列された複数の画素で構成される画像を処理する画像処理装置であって、前記画像の画素にかかるデータである画像データを、水平方向及び垂直方向に画素を所定の数ずつ配置して構成される画素ブロックごとに画像処理をする画像処理手段と、前記画像処理手段によって処理される画像データを保存する画像保存手段と、前記画像保存手段に保存されている画像データを更新する更新手段と、を備え、前記画像保存手段が、前記画素ブロックが水平方向、垂直方向の少なくとも一方向に沿って配置され、かつ互いに隣接する構成を単位にして画像データを保存することを特徴とする。
【０００７】
このような発明によれば、画像データを画素ブロック単位で処理することができる。また、画像処理がされた後の画像データを書出す等の更新をすることができる。さらに、画像保存手段を、画素ブロックが水平方向、垂直方向の少なくとも一方向に沿って配置され、かつ互いに隣接する構成を単位にして画像データを保存するものとしたため、処理に必要な画素値を最低限保存することが可能になる。このため、フィルタ処理等の画像の演算処理に使用されるメモリをより小型化し、より小型かつ低廉な画像処理装置を提供することができる。
【０００８】
また、本発明の画像処理装置は、前記画像保存手段が、水平方向、垂直方向の少なくとも一方向に沿って配置され、かつ互いに隣接する２つの画素ブロックの画像データだけを保存することを特徴とする。
このような発明によれば、フィルタ処理等の画素ブロック境界の処理に必要最低限の画像データだけを保存してフィルタ処理等の画像の演算処理に使用されるメモリをより小型化し、より小型かつ低廉な画像処理装置を提供することができる。
【０００９】
また、本発明の画像処理装置は、前記画像保存手段が、水平方向に沿って配置された画素ブロック２行分、垂直方向に沿って配置された画素ブロック２列分の少なくとも一方に相当する画像データだけを保存することを特徴とする。
このような発明によれば、１画素ブロック分のフィルタ処理等の画素ブロック境界の処理に必要であって最低限の画像データだけを保存することができる。このため、フィルタ処理等の画像の演算処理に使用されるメモリをより小型化し、より小型かつ低廉な画像処理装置を提供することができる。
【００１０】
また、本発明の画像処理装置は、前記画像保存手段が、水平方向及び垂直方向に沿って配置され、かつ互いに隣接する３つの画素ブロックの画像データだけを保存することを特徴とする。
このような発明によれば、フィルタ処理等の画素ブロック境界の処理に必要最低限の画像データだけを保存してフィルタ処理等の画像の演算処理に使用されるメモリをより小型化し、より小型かつ低廉な画像処理装置を提供することができる。
【００１１】
また、本発明の画像処理装置は、前記画素ブロックが、さらに水平方向及び垂直方向にｎ個数ずつ配置されてマクロブロックを構成し、前記画像保存手段は、水平方向に沿ってｎ＋１個配置された画素ブロック２行分、垂直方向に沿ってｎ＋１個配置された画素ブロック２列分に相当する画像データだけを保存することを特徴とする。
このような発明によれば、フィルタ処理等の画素ブロック境界の処理に必要最低限の画像データだけを保存してフィルタ処理等の画像の演算処理に使用されるメモリをより小型化し、より小型かつ低廉な画像処理装置を提供することができる。
【００１２】
また、本発明の画像処理装置は、前記画像処理手段が、前記画像保存手段に保存されている画像データの画素ブロックの水平方向及び垂直方向に沿う境界を交互に画像処理することを特徴とする。
このような発明によれば、いったん保存された画素ブロックの画像データを、画素ブロックの水平、垂直両方向の境界について画像データを更新することなく演算処理することができる。このため、画像データの転送回数を低減し、画像処理をより効率化することができる。
【００１３】
また、本発明の画像処理装置は、前記画像処理手段によってなされる画像処理が、画素ブロック境界のデータを平滑化するフィルタ処理であることを特徴と必要とされるフィルタ処理に本発明を適用し、画像処理装置の小型、低廉化の高い効果を得ることができる。
【００１４】
また、本発明の画像処理装置は、前記更新手段が、前記画像処理手段によって画像処理がされた画像データの一部を外部に書出して書出された画像データのデータ量に相当するデータ量分読込むと共に、書出された画像データの一部の前記画像保存手段におけるアドレスによって書出されなかった画像データの前記画像保存手段におけるアドレスを更新し、書出されなかった画像データの前記画像保存手段におけるアドレスに読込まれたデータを保存することによって前記画像保存手段を更新することを特徴とする。
このような発明によれば、画像保存手段に保存されている画像データを書出し、読込み等することなく、画像データの保存場所を速やかに順次更新することができる。
【発明を実施するための最良の形態】
【００１５】
以下、図を参照して本発明に係る本発明の実施の形態１ないし４の画像処理装置を説明する。なお、実施形態１ないし４では、本実施形態の画像処理装置をＨ２６４によって画像データ（画像の画素にかかるデータ）を符号化する符号化器として構成したものとして説明する。より詳細には、画像処理装置を、符号化装置にあって水平及び垂直方向に配列された複数の画素で構成される画像を処理するデブロッキング・フィルタとして構成した例を挙げて説明する。
【００１６】
先ず、実施形態１ないし４に共通する構成について説明し、後に実施形態１ないし４の各々に特有の構成について説明する。
図１は、本実施形態に共通の画像処理装置がデブロッキング・フィルタ１に適用された符号化器を示している。図１に示した符号化器は、入力画像データを、ＤＣＴ変換を含む処理する整数トランスフォーム部１１３、量子化する量子化部１１４、量子化を制御する符号化制御部１１２、符号化するエントロピー符号化部１１１を備えている。以上の構成は、プロセッサ１０１上で動作するソフトウェアに対応する。
【００１７】
エントロピー符号化部１１１は、入力画像データと入力画像データを復号化の際に予測して生成される予測画像データとの差分を符号化するものであって、符号化器は、このために予測画像データを生成する構成を備えている。
予測画像データを生成する構成は、逆量子化部１１５、逆整数トランスフォーム部１１６、加算器１１７、デブロッキング・フィルタ１、フレームメモリ１１８、１１９、イントラ予測部１２０、インター予測部１２１、動きベクトル検出部１２２、選択器１２３を備えている。
【００１８】
図示した符号化器では、１フレーム分の入力画像データを入力し、先に符号化した１フレーム分の予測画像データとの差分をとる。そして、差分を整数トランスフォーム部１１３によってＤＣＴ変換を含む処理をし、量子化する。さらに、エントロピー符号化部１１１によって符号化し、送出する。
また、符号化器は、いったん量子化された画像データを再び逆量子化部１１５によって逆量子化した後、逆整数トランスフォーム部１１６によって逆変換し、予測画像データと加算する。デブロッキング・フィルタ１は、加算して得られた画像データをフィルタリングしてインター予測用のフレームメモリ１１９に送出する。インター予測部１２１は、フレームメモリ１１９から画像データを読込んでインター予測し、選択器１２３に送る。なお、動きベクトル検出部１２２は、インター予測画像データから動きベクトルを検出する。
【００１９】
また、加算して得られたデータは、デブロッキング・フィルタ１の手前で分岐し、フレームメモリ１１８に保存される。イントラ予測部１２０は、フレームメモリ１１８から画像データを読み出してマクロブロックごとにイントラ予測の処理をする。そして、１フレーム分のイントラ予測画像データを生成し、選択器１２３に送出する。
選択器１２３は、インター予測画像データ、イントラ予測画像データのうち、より高い圧縮率を得られるものを選択する。そして、選択された予測画像データを加算器１１７に送出すると共に、次の１フレーム分の入力画像データとの差分をとるため減算器に出力する。
【００２０】
図２は、図１に示したデブロッキング・フィルタ１の機能ブロック図である。デブロッキング・フィルタ１は、画像データを、水平方向及び垂直方向に画素を所定の数ずつ配置して構成される画素ブロックごとに保存するデブロッキング・フィルタ用バッファ２０３、デブロッキング・フィルタ用バッファ２０３に保存されている画像データに画像処理をするフィルタ処理部２０４、フィルタ処理がされた後、デブロッキング・フィルタ用バッファ２０３に保存されている画像データを更新する読込み制御部２０１、書出し制御部２０２を備えている。
【００２１】
フィルタ処理部２０４は、水平方向、垂直方向の少なくとも一方向に沿って配置され、かつ互いに隣接する画素ブロックを単位にして画像処理を行うものである。
上記した構成のうち、本実施形態では、デブロッキング・フィルタ用バッファ２０３が画像保存手段、フィルタ処理部２０４が画像処理更新手段、読込み制御部２０１及び書出し制御部２０２として機能する。
【００２２】
なお、書出し制御部２０２は、図１に記したフレームメモリ１１９に画像データを書出している。また、フレームメモリ１１９を、デブロッキング・フィルタ１に入力される前の画像データをいったん保存する構成として使用することも可能である。このように構成した場合、フレームメモリ１１９に保存された画像データがデブロッキング・フィルタ１に読込まれ、処理された後レームメモリ１１９に書き戻される。
【００２３】
（実施形態１）
次に、本発明の実施形態１について説明する。図３（ａ）、（ｂ）、（ｃ）は、実施形態１のデブロッキング・フィルタ用バッファ２０３を説明するための図である。実施形態１は、フレームメモリ１１９に保存されている１フレーム分の画像データを、図３（ａ）に示すマクロブロック（１６×１６個の画素でなるブロックとする）３０１をさらに分割して得られる画素ブロック（４×４ブロック）３０２が水平方向、垂直方向の少なくとも一方向に沿って配置され、かつ互いに隣接する構成を単位にして画像データを保存する構成を有している。
【００２４】
図３（ａ）、（ｂ）は、実施形態１のデブロッキング・フィルタ用バッファ２０３の構成を示している。実施形態１のデブロッキング・フィルタ用バッファ２０３は、水直方向に沿って配置され、かつ互いに隣接する２つの４×４ブロック３０２分の画像データだけを保存すバッファ部３０３（図３（ｂ））と、垂平方向に沿って配置され、かつ互いに隣接する２つの４×４ブロック３０２分の画像データだけを保存するバッファ部３０４を有している（図３（ｃ））。
【００２５】
フィルタ処理部２０４は、図３（ａ）及び（ｂ）に示したデブロッキング・フィルタ用バッファ２０３に保存されている画像データに対してフィルタ処理を実行する。
フィルタ処理は、隣接する画素ブロックに含まれる画素の画素値を、画素とマクロブロック境界との位置関係に対応する変換係数（強度）によって変換する処理をいう。また、フィルタ処理には、フィルタをかけるか否か（オン、オフ）の判定、フィルタオンの場合のフィルタ強度の決定、決定した強度による画像データの変換が含まれる。
【００２６】
実施形態１では、４×４ブロック３０２ａ、３０２ｂにおいて隣接して配置された２つの４×４ブロックのうち、一方の４×４ブロックに含まれる画素の画素値をｐ、他方の４×４ブロックに含まれる画素の画素値をｑとして区別する。フィルタのオンまたはオフの判定は、ブロック画素の境界にある画素値ｐ、ｑが所定の式を満たすか否かによって行われる。
【００２７】
フィルタオンと判定された場合、フィルタ処理部２０４は、処理対象となる画像データがマクロブロックの境界に位置するか否かによってフィルタ強度を決定する。フィルタの強度は、マクロブロック境界に位置する境界画素ｐ、ｑに対して最も強く、マクロブロック境界にない場合により弱くなる。
【００２８】
フィルタ処理部２０４は、以上のようにして決定したフィルタ強度にしたがって図３（ａ）に示したマクロブロック３０１ごとにフィルタのオン及びオフ、さらにフィルタ強度を判定する。そして、判定した結果にしたがって４×４ブロックに含まれる画素の画像データを変換する。
なお、フィルタ強度等の条件は、マクロブロック３０１境界と画素の位置関係によって決まる。したがって、図３（ａ）に示したマクロブロック３０１のうち、同じ行に属する４×４ブロック、同じ列に属する４×４ブロックには同様の条件でフィルタ処理がなされるものとする。
【００２９】
次に、以上述べた実施形態１の画像処理装置の動作を説明する。図４は、実施形態１のフィルタ処理の全体を説明するためのフローチャートである。デブロッキング・フィルタ１は、読込み制御部２０１を介して１フレーム分の画像データを入力する（Ｓ７０１）。フィルタ処理部２０４は、入力された画像データのうち、１マクロブロック（ＭＢ）分の画像データをフィルタリングするためのパラメータ情報２０２を取得する（Ｓ７０２）。
【００３０】
また、フィルタ処理部２０４は、取得されたパラメータ情報に基づいてデブロッキング・フィルタ用バッファ２０３のフィルタ条件を判別する。そして、判別の結果にしたがって画像データを１マクロブロックずつフィルタ処理させる。さらに、フィルタ処理が１マクロブロック分終了したか否か判断する（Ｓ７０５）。
１マクロブロック分の画像データの処理が終了した場合には（Ｓ７０５：Ｙｅｓ）、さらに、１フレーム分の画像データのフィルタ処理が終了したか否か判断する（Ｓ７０６）。１フレーム分の画像データのフィルタリングが未完であれば（Ｓ７０６：Ｎｏ）、次の１マクロブロック分の画像データを入力し、上記した処理を続行する。
【００３１】
また、ステップＳ７０６において１フレーム分の画像データのフィルタリングが終了シタと判断された場合（Ｓ７０６：Ｙｅｓ）、さらに、全フレーム分の画像データのフィルタ処理が終了したか否か判断する（Ｓ７０７）。全フレーム分の画像データのフィルタリングが未完であれば（Ｓ７０７：Ｎｏ）、次の１フレーム分の画像データを入力し、上記した処理を続行する。また、全フレーム分の画像データのフィルタリングが終了したと判断された場合（Ｓ７０７：Ｙｅｓ）、デブロッキング・フィルタ１は処理を終了する。
【００３２】
図５は、図４に示した処理をより詳細に説明するための実施形態１のフローチャートである。フィルタ処理部２０４は、先ず、マクロブロック３０１の水平方向フィルタ処理の実行を開始する（Ｓ６０１）。なお、実施形態１でいう水平方向フィルタ処理は、水平方向に配列されたマクロブロック３０１同士の境界を処理するフィルタ処理をいい、水平方向に配列された４×４ブロック分の画像データだけを保存するバッファ部３０４を使って行われる。
【００３３】
水平方向フィルタ処理では、先ず、フィルタ処理部２０４が、処理対象となる４×４ブロック３０２のフィルタのオン、またはオフを判定する（Ｓ６０２）。なお、本実施形態では、ステップ６０２が、フィルタオンの場合のフィルタ強度の判定を含むものとする。フィルタ強度等の処理条件が決定した後、読込み制御部２０１が１ブロック分（バッファ部３０４に保存できる画像データ量）の画像データをフレームメモリ１１９から読出す（バッファ部３０４に読込む）（Ｓ６０３）。フィルタ処理部２０４は、バッファ部３０４に読込まれた画像データの水平方向の境界にデブロックフィルタ処理をする（Ｓ６０４）。
【００３４】
実施形態１では、図３（ａ）に示した０，−１の位置にある４×４ブロック（４×４ブロック（０，−１））と０，０の位置にある４×４ブロック（４×４ブロック（０，０））とがバッファ部３０４に読込まれる。そして、４×４ブロック（０，−１）、４×４ブロック（０，０）に含まれる画素の値が設定されたフィルタ強度によって変換される。
フィルタ処理部２０４は、２つの４×４ブロックの画像データの境界についてのフィルタ処理が完了したか否か判断する（Ｓ６０５）。なお、バッファ部３０４は、画像データを４×４ブロックが水平方向に配列されるように保存するので、境界では垂直方向に配列された画素の画像データ同士が接する。このため、バッファ部３０３に保存されたデータをフィルタ処理部２０４で処理した場合、４×４ブロック３０２の水平方向の境界がフィルタ処理されることになる。実施形態１では、この処理の終了をブロック水平ライン終了と記す。
【００３５】
次に、書出し制御部２０２は、フィルタ処理された画像データを１つの４×４ブロック分フレームメモリ１１９に書出す（Ｓ６０６）。画像データの書出し後、読込み制御部２０１は、画像処理された１個分の４×４ブロック３０２と新たに読込まれたデータとによってバッファ部３０４を更新する。
より具体的には、バッファ部３０４の更新は次のように行われる。すなわち、書出し制御部２０２は、画像処理がされた４×４ブロック（０，−１）、４×４ブロック（０，０）の画像データのうち、一部の４×４ブロック（０，−１）を外部に書出す。読込み制御部２０１は、未処理の４×４ブロック（０，１）の画像データを読込む。４×４ブロック（０，１）の画像データのデータ量は、書出された４×４ブロック（０，−１）のデータ量に相当する。
【００３６】
また、読込み制御部２０１、書出し制御部２０２は、書出された４×４ブロック（−１，０）のバッファ部３０４におけるアドレスによって書出されなかった４×４ブロック（０，０）のアドレスを更新する。そして、書出されなかった４×４ブロック（０，０）の画像データのバッファ部３０４におけるアドレスに４×４ブロック（１，０）の画像データを保存することによってバッファ部３０４を更新する。
【００３７】
上記したように、実施形態１は、読込み制御部２０１、書出し制御部２０２がバッファ部３０４に保存されている画像データのアドレスを制御してバッファ部３０４を更新することができる。このような動作によれば、画像データをバッファ部３０４内で画像データを書出し等することなくアドレスだけを変更してバッファ部３０４を更新し、新たに読込まれた画像データを使って繰り返し同様の演算を実行することができる。なお、実施形態１は、このような構成に限定されるものでなく、例えばＦＩＦＯ（First-In First-Out）等を利用して自動的に先に保存された画像データから書出すよう構成するものであってもよい。
【００３８】
次に、フィルタ処理部２０４は、マクロブロックの水平方向に配列された４個の４×４ブロック（１行）について完了したか否か判断する（Ｓ６０７）。１行分の４×４ブロック３０２の処理が完了していると判断された場合（Ｓ６０７：Ｙｅｓ）、次の行の４×４ブロック３０２の処理をするためのフィルタＯｎ／Ｏｆｆ判定を実行する。なお、１行分の４×４ブロック３０２の処理が完了していない場合（Ｓ６０７：Ｎｏ）、１行分の４×４ブロック３０２のフィルタ処理が続行される。
【００３９】
また、４×４ブロック３０２のフィルタ処理が１行分完了する都度、フィルタ処理部２０４は、マクロブロック３０１の全行について水平方向の境界のフィルタ処理が完了したか否か繰り返し判断する（Ｓ６０８）。１マクロブロックについて全ての境界にフィルタ処理がされた場合（Ｓ６０８：Ｙｅｓ）、フィルタ処理部２０４は、垂直方向フィルタ処理を開始する（Ｓ６０９）。
【００４０】
実施形態１でいう垂直方向フィルタ処理は、垂直方向に配列された４×４ブロック３０２同士の境界をフィルタ処理する処理を指す。垂直方向フィルタ処理は、垂直方向に配列された４×４ブロック分の画像データだけを保存するバッファ部３０３を使ってなされる。
垂直方向フィルタ処理では、先ず、読込み制御部２０１が、処理対象となる４×４ブロック３０２のフィルタのオン、またはオフを判定する（Ｓ６１０）。なお、本実施形態では、ステップ６１０が、フィルタオンの場合のフィルタ強度の判定を含むものとする。フィルタ強度等の処理条件が決定した後、読込み制御部２０１が１ブロック分（バッファ部３０３に保存できる画像データ量）の画像データをフレームメモリ１１９から読出す（バッファ部３０３に読込む）（Ｓ６１１）。
【００４１】
フィルタ処理部２０４は、バッファ部３０３に読込まれた画像データにデブロックフィルタ処理をする（Ｓ６１２）。なお、ステップＳ６１１において読込まれた画像データは、先の水平方向フィルタ処理によるフィルタ処理がされている。
実施形態１では、図３（ａ）に示した−１，０の位置にある４×４ブロック（４×４ブロック（−１，０））と０，０の位置にある４×４ブロック（４×４ブロック（０，０））とがバッファ部３０３に読込まれる。そして、４×４ブロック（−１，０）、４×４ブロック（０，０）に含まれる画素の値が設定されたフィルタ強度によって変換される。
【００４２】
次に、フィルタ処理部２０４は、２つの４×４ブロックの画像データの境界についてのフィルタ処理が完了したか否か判断する（Ｓ６１３）。なお、バッファ部３０３は、画像データを４×４ブロックが垂直方向に配列されるように保存するので、境界では垂直方向に配列された画素の画像データ同士が接する。このため、バッファ部３０３に保存されたデータをフィルタ処理部２０４で処理した場合、４×４ブロック３０２の垂直方向の境界がフィルタ処理されることになる。実施形態１では、この処理の終了をブロック垂直ライン終了と記す。
【００４３】
さらに、実施形態１では、画素の値の変換後、書出し制御部２０２が、フィルタ処理された画像データを１つの４×４ブロック分フレームメモリ１１９に書出す（Ｓ６１４）。書出し後、読込み制御部２０１、書出し制御部２０２は、画像処理された１個分の４×４ブロック３０２と新たに読込まれたデータとによってバッファ部３０３を更新する。
より具体的には、バッファ部３０３の更新は次のように行われる。すなわち、書出し制御部２０２は、画像処理がされた４×４ブロック（−１，０）、４×４ブロック（０，０）の画像データのうち、一部の４×４ブロック（−１，０）を外部に書出す。そして、読込み制御部２０１が、未処理の４×４ブロック（１，０）の画像データを読込む。４×４ブロック（１，０）の画像データのデータ量は、書出された４×４ブロック（−１，０）のデータ量に相当する。
【００４４】
さらに、読込み制御部２０１、書出し制御部２０２は、書出された４×４ブロック（０，−１）のバッファ部３０３におけるアドレスによって書出されなかった４×４ブロック（０，０）のアドレスを更新する。そして、読込み制御部２０１は、書出されなかった４×４ブロック（０，０）の画像データのバッファ部３０３におけるアドレスに４×４ブロック（０，１）の画像データを保存することによってバッファ部３０３を更新する。
【００４５】
次に、フィルタ処理部２０４は、マクロブロック３０１において垂直方向に配列された４×４ブロック３０２の１列分についてフィルタ処理が完了したか否か判断する（Ｓ６１５）。１列分の４×４ブロック３０２の処理が完了していると判断された場合（Ｓ６１５：Ｙｅｓ）、次の列の４×４ブロック３０２の処理をするためのフィルタＯｎ／Ｏｆｆ判定を実行する。なお、１列分の４×４ブロック３０２の処理が完了していない場合（Ｓ６１５：Ｎｏ）、１列分の４×４ブロック３０２のフィルタ処理が続行される。
【００４６】
また、４×４ブロック３０２のフィルタ処理が１列分完了する都度、フィルタ処理部２０４は、マクロブロック３０１の全列について垂直方向の境界のフィルタ処理が完了したか否か繰り返し判断する（Ｓ６１６）。１マクロブロックについて全ての垂直方向の境界にフィルタ処理がされた場合（Ｓ６１６：Ｙｅｓ）、デブロッキング・フィルタ１における１マクロブロック分のフィルタ処理が終了する。
【００４７】
以上述べた実施形態１によれば、４×４ブロック同士の境界をフィルタ処理するため必要最低限の画像データだけを保存しておくことができる。このため、デブロッキング・フィルタ用フィルタを小型化、低廉化することができる。また、デブロッキング・フィルタ用フィルタを小型化、低廉化することによって画像処理装置全体をも小型、低廉化することができる。
【００４８】
（実施形態２）
次に、本発明の実施形態２の画像処理装置を説明する。なお、実施形態２において、実施形態１で説明したのと同様の内容については一部説明を略すものとする。
図６（ａ）、（ｂ）、（ｃ）は、実施形態２のデブロッキング・フィルタ用バッファ２０３を説明するための図である。実施形態２のデブロッキング・フィルタ用バッファ２０３は、図６（ａ）に示す４×４ブロック３０２を水平方向に沿って配置した４×４ブロック３０２の行の２行分保存するバッファ部６３（図６（ｂ））、垂直方向に沿って配置された画素ブロックの列の２列分の保存するバッファ部６４（図６（ｃ））で構成されている。
【００４９】
実施形態２では、フィルタ処理部２０４が、バッファ部６３に保存された画像データの４×４ブロック境界（水平方向）の全てをフィルタ処理する。また、バッファ部６４に保存された画像データの４×４ブロック境界（垂直方向）の全てをフィルタ処理する。なお、実施形態２におけるフィルタのオン、オフ判定、フィルタ強度等の処理は、実施形態１と同様の手法によって行われる。
【００５０】
図７は、実施形態２の画像処理装置のフィルタ処理を説明するためのフローチャートである。フィルタ処理部２０４は、先ず、水平方向フィルタ処理の実行を開始する（Ｓ７０１）。なお、実施形態２でいう水平方向フィルタ処理は、水平方向に配列された４×４ブロック３０２同士の境界を処理するフィルタ処理をいい、水平方向に配列された４×４ブロック２行分（以降行ユニットと記す）の画像データだけを保存するバッファ部６４を使って行われる。なお、実施形態２でいう１行は、４×４ブロック３０２が４個水平方向に配列されたものをいう。
【００５１】
水平方向フィルタ処理では、先ず、読込み制御部２０１が、画像データを行ユニット分だけバッファ部６４に読込む（Ｓ７０２）。そして、フィルタ処理部２０４が、処理対象となる行ユニットに対するフィルタのオン、またはオフを判定する（Ｓ７０３）。
フィルタ処理部２０４は、バッファ部６４に読込まれた画像データの水平方向に配列された４×４ブロック３０２同士の境界にデブロックフィルタ処理をする（Ｓ７０４）。実施形態２では、先ず、図６（ａ）に示した４×４ブロック（０，−１）〜４×４ブロック（３，−１）、４×４ブロック（０，０）〜４×４ブロック（３，０）がバッファ部６４に読込まれる。そして、４×４ブロック（０，−１）〜４×４ブロック（３，−１）、４×４ブロック（０，０）〜４×４ブロック（３，０）に含まれる画素の値が設定されたフィルタ強度によって変換される。
【００５２】
フィルタ処理部２０４は、２つの４×４ブロックの境界のフィルタ処理がされたか否か判断する（Ｓ７０５）。適正にフィルタ処理されていれば（Ｓ７０５：Ｙｅｓ）、マクロブロック３０１の水平方向の境界１ライン分についてフィルタ処理が完了したか否か判断する（Ｓ７０６）。この結果、フィルタ処理が完了したと判断された場合、書出し制御部２０２は、画像処理がされた４×４ブロック（０，−1）〜４×４ブロック（３，−１）、４×４ブロック（０，０）〜４×４ブロック（３，０）の画像データのうち、４×４ブロック（０，−1）〜４×４ブロック（３，−１）の画像データを外部に書出す（Ｓ７０７）。
【００５３】
また、４×４ブロック３０２のフィルタ処理が水平方向の境界１ライン分について完了する都度、フィルタ処理部２０４は、マクロブロック３０１の水平方向の境界の全ラインについてフィルタ処理が完了したか否か繰り返し判断する（Ｓ７０８）。１マクロブロックについて全ての水平方向の境界にフィルタ処理がされた場合（Ｓ７０８：Ｙｅｓ）、フィルタ処理部２０４は、垂直方向フィルタ処理を開始する（Ｓ７０９）。
【００５４】
実施形態２でいう垂直方向フィルタ処理は、マクロブロック３０１において垂直方向に配列された４×４ブロック３０２同士の境界をフィルタ処理する処理を指す。垂直方向フィルタ処理は、垂直方向に配列された４×４ブロック２列分（以降列ユニットと記す）の画像データだけを保存するバッファ部６４を使って行われる。なお、実施形態２でいう１列は、４×４ブロック３０２が４個垂直方向に配列されたものをいう。
【００５５】
垂直方向フィルタ処理では、先ず、読込み制御部２０１が、画像データを列ユニット分だけバッファ部６４に読込む（Ｓ７１０）。そして、フィルタ処理部２０４が、処理対象となる列ユニットに対するフィルタのオン、またはオフを判定する（Ｓ７１１）。なお、フィルタのオン、オフやフィルタ強度は、列ユニットに含まれる４×４ブロック３０２の全てに対して同様の条件が設定される。
【００５６】
フィルタ処理部２０４は、バッファ部６４に読込まれた画像データの垂直方向の境界にデブロックフィルタ処理をする（Ｓ７１２）。実施形態２では、先ず、図６（ａ）に示した４×４ブロック（−１，０）〜４×４ブロック（−１，３）、４×４ブロック（０，０）〜４×４ブロック（０，３）がバッファ部６４に読込まれる。そして、４×４ブロック（−１，０）〜４×４ブロック（−１，３）、４×４ブロック（０，０）〜４×４ブロック（０，３）に含まれる画素の値が設定されたフィルタ強度によって変換される。
【００５７】
フィルタ処理部２０４は、２つの４×４ブロックの境界のフィルタ処理がされたか否か判断する（Ｓ７１３）。適正にフィルタ処理されていれば（Ｓ７１３：Ｙｅｓ）、マクロブロック３０１の垂直方向に配列された４×４ブロック３０２の境界１ライン分についてフィルタ処理が完了したか否か判断する（Ｓ７１４）。この結果、フィルタ処理が完了したと判断された場合、書出し制御部２０２は、画像処理がされた４×４ブロック（−１，０）〜４×４ブロック（−１，３）、４×４ブロック（０，０）〜４×４ブロック（０，３）の画像データのうち、４×４ブロック（−１，０）〜４×４ブロック（−１，３）の画像データを外部に書出す（Ｓ７１５）。
【００５８】
また、４×４ブロック３０２のフィルタ処理が垂直方向に配列された４×４ブロック３０２の境界１ライン分について完了する都度、フィルタ処理部２０４は、マクロブロック３０１の垂直方向に配列された４×４ブロック３０２間の全境界についてフィルタ処理が完了したか否か繰り返し判断する（Ｓ７１６）。１マクロブロックについて全ての境界にフィルタ処理がされた場合（Ｓ７１６：Ｙｅｓ）、デブロッキング・フィルタ１における１マクロブロック分のフィルタ処理が完了する。
以上述べた実施形態２によれば、デブロッキング・フィルタ用フィルタを従来よりも小型化、低廉化できる上、いったん読込まれた４×４ブロック分のデータを更新することなくフィルタ処理をすることができる。
【００５９】
（実施形態３）
次に、本発明の実施形態３の画像処理装置を説明する。なお、実施形態３において、実施形態１、実施形態２で説明したのと同様の内容については一部説明を略すものとする。
図８は、実施形態３のデブロッキング・フィルタ用バッファ２０３を説明するための図である。実施形態３のデブロッキング・フィルタ用バッファ２０３は、水平方向及び垂直方向に沿って配置され、かつ互いに隣接する３つの４×４ブロック３０２の画像データだけを保存するバッファ部８０１を備えている。
また、実施形態３では、フィルタ処理部２０４が、バッファ部８０１に保存された画像データを、４×４ブロック３０２の水平方向及び垂直方向に沿う境界を交互にフィルタ処理するものである。
【００６０】
図９は、実施形態３の画像データのフィルタ処理の順序を説明するための図である。なお、図９中の−１，０や０，０等の数字は、図３（ａ）、図６（ａ）に示した４×４ブロックの位置を示す座標を示している。
書込み制御部２０１は、図９のｓｔｅｐ１に示すように４×４ブロック（−１，０）、４×４ブロック（０，０）、４×４ブロック（０，−１）の画像データを読込む。フィルタ処理部２０４は、４×４ブロック（−１，０）、４×４ブロック（０，０）、４×４ブロック（０，−１）境界をフィルタ処理する。続いて、実施形態３では、バッファ８０１に保存されている画像データを更新することなく、フィルタ処理部２０４が、４×４ブロック（−１，０）、４×４ブロック（０，０）間の境界をフィルタ処理する。（ｓｔｅｐ２）。
【００６１】
次に、書出し制御部２０２は、４×４ブロック（−１，０）、４×４ブロック（０，−１）の画像データを書出す。そして、書出されなかった４×４ブロック（０，０）のアドレスを書出された４×４ブロック（０，−１）の画像データが保存されていたアドレスによって更新する。さらに、読込み制御部２０１が、未処理の４×４ブロック（０，１）、４×４ブロック（−１，１）を書出された画像データが保存されていたアドレスに保存する。（ｓｔｅｐ３）。
【００６２】
そして、ｓｔｅｐ１、ｓｔｅｐ２と同様に、フィルタ処理部２０４が、４×４ブロック（０，０）、４×４ブロック（０，１）の水平方向の境界をフィルタ処理する（ｓｔｅｐ３）。続いて、４×４ブロック（−１，１）、４×４ブロック（０，１）の垂直方向の境界をフィルタ処理する（ｓｔｅｐ４）。ｓｔｅｐ３、ｓｔｅｐ４の間にバッファ８０１の更新がされることはない。
【００６３】
以上述べた処理をｓｔｅｐ８まで繰り返すことによってマクロブロック３０１との境界にある一行分の４×４ブロックとマクロブロックとの境界がフィルタ処理される。また、この行の４×４ブロック同士の境界もフィルタ処理できる。なお、４×４ブロックとマクロブロックとの境界は水平方向であり、４×４ブロック同士の境界は垂直方向である。
【００６４】
以上述べた処理をさらにｓｔｅｐ１６まで繰り返すことにより、実施形態３は、先に処理されたマクロブロックにおける一行分の４×４ブロック３０２と次の行の４×４ブロック３０２との境界がフィルタ処理される。また、次の行の４×４ブロック同士の境界もフィルタ処理できる。
このような実施形態３によれば、読込まれた４×４ブロック３０２を書出すことなく垂直、水平の両方向についてフィルタ処理することができる。このため、フィルタ処理のためにデータ転送する回数を低減し、処理を効率化することができる。
【００６５】
図１０は、実施形態３の画像処理装置のフィルタ処理を説明するためのフローチャートである。実施形態３では、先ず、読込み制御部２０１が、画像データをバッファ８０１の構成に対応するアドレスの４×４ブロック３個分をバッファ部８０１に読込む（Ｓ１００１）。そして、フィルタ処理部２０４が、処理対象となる４×４ブロック３０２に対するフィルタのオン、またはオフを判定する（Ｓ１００２）。
【００６６】
次に、フィルタ処理部２０４は、バッファ部８０１に読込まれた４×４ブロック３０２のうちの水平方向に配列された４×４ブロック３０２の境界のデブロックフィルタ処理を開始する（Ｓ１００３）。そして、バッファ部８０１に保存された画像データのうち水平方向に配列された４×４ブロック３０２の境界のフィルタ処理を実行し（Ｓ１００４）、フィルタ処理が終了したか否か判断する（Ｓ１００５）。
【００６７】
フィルタ処理が終了したと判断された場合（Ｓ１００５：Ｙｅｓ）、実施形態３では、バッファ部８０１に保存された画像データのうち垂直方向に配列された４×４ブロック３０２同士の境界のフィルタ処理を開始する（Ｓ１００６）。そして、バッファ部８０１に保存された画像データの境界のフィルタ処理を実行し（Ｓ１００７）、フィルタ処理が終了したか否か判断する（Ｓ１００８）。
【００６８】
水平、垂直の両方向の境界をフィルタ処理した後、書出し制御部２０２は、２つの４ｘ４ブロック３０２の画像データを外部に書き出す（S１００９）。マクロブロック３０１において水平方向に配列された一行分の４×４ブロック３０２の水平、垂直方向の境界のフィルタ処理が完了したか否か判断する（Ｓ１０１０）。一行分の４×４ブロック３０２の水平、垂直の境界のフィルタ処理が終了していない場合（Ｓ１０１０：Ｎｏ）、読込み制御部２０１が、次の４×４ブロック２個分をバッファ部８０１に読込む。
【００６９】
また、一行分の４×４ブロックの水平、垂直方向の境界のフィルタ処理が完了していれば（Ｓ１０１０：Ｙｅｓ）、フィルタ処理部２０４が、マクロブロック３０１に含まれる４×４ブロック３０２の全てについて水平、垂直方向の境界のフィルタ処理が完了したか否か判断する（Ｓ１０１１）。
マクロブロック３０１のフィルタ処理が終了していない場合（Ｓ１０１１：Ｎｏ）、読込み制御部２０１が、次の行の４×４ブロック３個分をバッファ部８０１に読込む。また、１マクロブロック分のフィルタ処理が完了した場合（Ｓ１０１１：Ｙｅｓ）、デブロッキング・フィルタ１における１マクロブロック分のフィルタ処理が終了する。
【００７０】
以上述べた実施形態３によれば、デブロッキング・フィルタ用フィルタを小型化、低廉化することができる上、いったん読込まれた画像データを更新することなく４×４ブロックの水平、垂直の両方向の境界をフィルタ処理することができる。
このため、実施形態１よりもデータ転送の回数を低減し、画像処理を効率化することができる。
【００７１】
（実施形態４）
次に、本発明の実施形態３の画像処理装置を説明する。なお、実施形態３において、実施形態１、実施形態２、実施形態４で説明したのと同様の内容については一部説明を略すものとする。
図１１は、実施形態４のデブロッキング・フィルタ用バッファ２０３を説明するための図である。実施形態４のデブロッキング・フィルタ用バッファ２０３は、マクロブロック３０１が４×４ブロック３０２が水平方向及び垂直方向に沿ってｎ個ずつ配置されている場合、垂直方向に沿ってｎ＋１個配置された４×４ブロック３０２の列２列分の画素ブロックに相当する画像データだけを保存するバッファ部１１０１を備えている。
【００７２】
また、実施形態４では、実施形態３と同様に、フィルタ処理部２０４がバッファ部１１０１に保存された画像データを、４×４ブロック３０２の水平方向及び垂直方向に沿う境界を交互にフィルタ処理するものである。
図１２は、実施形態４の画像データのフィルタ処理の順序を説明するための図である。なお、図１２中の−１，０や０，０等の数字は、図３（ａ）、図６（ａ）に示した４×４ブロックの位置を示す座標を示している。
【００７３】
書込み制御部２０１は、図１２のｓｔｅｐ１に示すように４×４ブロック（０，１）〜４×４ブロック（３，−１）、４×４ブロック（−１，０）〜４×４ブロック（３，０）の画像データを読込む。フィルタ処理部２０４は、４×４ブロック（−１，０）〜４×４ブロック（３，０）同士の境界をフィルタ処理する。続いて、実施形態４では、バッファ１１０１に保存されている画像データを更新することなく、フィルタ処理部２０４が、４×４ブロック（−１，０）〜４×４ブロック（０，０）、４×４ブロック（０，０）〜４×４ブロック（１，０）、４×４ブロック（１，０）〜４×４ブロック（２，０）、４×４ブロック（２，０）〜４×４ブロック（３，０）間の境界をフィルタ処理する。（ｓｔｅｐ２）。
【００７４】
なお、４×４ブロック（−１，０）〜４×４ブロック（３，０）同士の境界は水平方向であり、４×４ブロック（０，−１）〜４×４ブロック（３，−１）、４×４ブロック（０，０）〜４×４ブロック（３，０）間の境界は垂直方向に沿って延びている。
次に、書出し制御部２０２は、４×４ブロック（０，１）〜４×４ブロック（３，−１）の画像データを書出す。そして、書出されなかった４×４ブロック（−１，０）〜４×４ブロック（３，０）のアドレスを、書出された４×４ブロック（０，１）〜４×４ブロック（３，−１）の画像データが保存されていたアドレスによって更新する。さらに、読込み制御部２０１が、未処理の４×４ブロック（−１，１）〜４×４ブロック（３，１）を書出された画像データが保存されていたアドレスに保存する。（ｓｔｅｐ３）。
【００７５】
そして、ｓｔｅｐ１、ｓｔｅｐ２と同様に、フィルタ処理部２０４が、４×４ブロック（０，０）〜４×４ブロック（３，０）、４×４ブロック（０，−１）〜４×４ブロック（３，１）の水平方向の境界をフィルタ処理する（ｓｔｅｐ３）。続いて、４×４ブロック（−１，１）〜４×４ブロック（０，１）、４×４ブロック（０，１）〜４×４ブロック（１，１）、４×４ブロック（１，１）〜４×４ブロック（２，１）、４×４ブロック（２，１）〜４×４ブロック（３，１）間との垂直方向の境界をフィルタ処理する（ｓｔｅｐ４）。ｓｔｅｐ３、ｓｔｅｐ４の間にバッファ１１０１の更新がされることはない。
【００７６】
以上述べた処理をｓｔｅｐ８まで繰り返すことによってマクロブロック３０１全部の４×４ブロック３０２とマクロブロック３０１との境界がフィルタ処理される。また、この行の４×４ブロック同士の境界もフィルタ処理できる。
図１３は、実施形態４の画像処理装置のフィルタ処理を説明するためのフローチャートである。実施形態４では、先ず、読込み制御部２０１が、４×４ブロック３０２を１列分バッファ部１１０１に読込む（Ｓ１３０１）。フィルタ処理部２０４は、バッファ部１１０１に保存されている画像データのうち、水平方向に配列された４×４ブロック３０２同士の境界をフィルタ処理する水平方向フィルタ処理を開始する（Ｓ１３０２）。また、フィルタ処理部２０４は、１列分の４×４ブロック３０２に対するフィルタのオン、またはオフを判定する（Ｓ１３０３）。
【００７７】
次に、フィルタ処理部２０４は、バッファ部１１０１に読込まれた画像データの水平方向に配列された４×４ブロック３０２同士の境界に対するデブロックフィルタ処理を実行する（Ｓ１３０４）。そして、フィルタ処理が終了したか否か判断する（Ｓ１３０５）。フィルタ処理が終了したと判断された場合（Ｓ１３０５：Ｙｅｓ）、フィルタ処理部２０４は、一列分の４×４ブロックの全てについて水平方向に隣接する４×４ブロック３０２との境界のフィルタ処理が終了したか否か判断する（Ｓ１３０６）。
【００７８】
一列分の４×４ブロックのフィルタ処理が終了している場合（Ｓ１３０６：Ｙｅｓ）、読込み制御部２０１は、ここで、一行上に配列されているフィルタ処理済の４×４ブロック（−１，０）を読込む（Ｓ１３０７）。そして、垂直方向に配列された４×４ブロック３０２間の境界のフィルタ処理を開始する（Ｓ１３０８）。フィルタ処理部２０４は、垂直方向の境界のフィルタ処理の対象になる１列分の４×４ブロック３０２に対するフィルタのオン、またはオフを判定する（Ｓ１３０９）。
【００７９】
次に、フィルタ処理部２０４は、バッファ部１１０１に読込まれた画像データの垂直方向に配列された４×４ブロック３０２同士の境界に対するデブロックフィルタ処理を実行する（Ｓ１３１０）。フィルタ処理部２０４は、フィルタ処理が正常に終了したか否か判断する（Ｓ１３１１）。続いて、処理対象となっている列の全てのマクロブロック３０１間の境界について処理が終了したか否かを判断する（Ｓ１３１２）。
【００８０】
水平、垂直の両方向の境界をフィルタ処理した後、書出し制御部２０２は、処理が終了した４×４ブロック３０２の画像データを一列分書出す（Ｓ１３１３）。そして、マクロブロック３０１に含まれる４×４ブロック３０２の全てについて水平、垂直方向の境界のフィルタ処理が完了したか否か判断する（Ｓ１３１４）。
マクロブロック３０１のフィルタ処理が終了していない場合（Ｓ１３１４：Ｎｏ）、読込み制御部２０１が、次の列の４×４ブロック３０２をバッファ部１１０１に読込む。また、１マクロブロック分のフィルタ処理が完了した場合（Ｓ１３１４：Ｙｅｓ）、デブロッキング・フィルタ１における１マクロブロック分のフィルタ処理が終了する。
【００８１】
以上述べた実施形態４によれば、デブロッキング・フィルタ用フィルタを小型化、低廉化することができる上、いったん読込まれた画像データを更新することなく４×４ブロックの水平、垂直の両方向の境界をフィルタ処理することができる。
このため、実施形態２よりもデータ転送の回数を低減し、画像処理を効率化することができる。
【００８２】
なお、以上述べた実施形態１ないし４のデブロッキング・フィルタ１は、符号化装置に設けられるものに限定されるものではない。例えば、符号化された画像データを復号化するエントロピー復号化部９０１に設けることも可能である。図１４に本発明が適用できる復号化装置を例示する。
【図面の簡単な説明】
【００８３】
【図１】本実施形態に共通の画像処理装置をデブロッキング・フィルタに適用した符号化器を示した図である。
【図２】図１に示したデブロッキング・フィルタの機能ブロック図である。
【図３】実施形態１のデブロッキング・フィルタ用バッファを説明するための図である。
【図４】本発明の実施形態１ないし４のフィルタ処理の全体を説明するためのフローチャートである。
【図５】図４に示した処理をより詳細に説明するための実施形態１のフローチャートである。
【図６】本発明の実施形態２のデブロッキング・フィルタ用バッファを説明するための図である。
【図７】本発明の実施形態２の画像処理装置のフィルタ処理を説明するためのフローチャートである。
【図８】本発明の実施形態３のデブロッキング・フィルタ用バッファを説明するための図である。
【図９】本発明の実施形態３のデブロッキング・フィルタ用バッファにおける画像データの処理の順序を説明するための図である。
【図１０】本発明の実施形態３の画像処理装置のフィルタ処理を説明するためのフローチャートである。
【図１１】本発明の実施形態４のデブロッキング・フィルタ用バッファを説明するための図である。
【図１２】本発明の実施形態４のデブロッキング・フィルタ用バッファにおける画像データの処理の順序を説明するための図である。
【図１３】本発明の実施形態４の画像処理装置のフィルタ処理を説明するためのフローチャートである。
【図１４】本発明の画像処理装置が適用される符号化器を例示した図である。
【符号の説明】
【００８４】
１  デブロッキング・フィルタ、６３，６４，３０３，３０４，８０１，１１０１  バッファ部、１１１  エントロピー符号化部、１１２  符号化制御部、１１３  整数トランスフォーム部、１１４  量子化部、１１５  逆量子化部、１１６  逆整数トランスフォーム部、１１７  加算器、１１８，１１９  フレームメモリ、１２０  イントラ予測部、１２１  インター予測部、１２２  動きベクトル検出部、１２３  選択器、読込み制御部  ２０１、２０２  書込み制御部、２０３  デブロッキング・フィルタ用バッファ、２０４  フィルタ処理部、３０１  マクロブロック、３０２  ４×４ブロック
【図１】
2007287031.tif 000003
【図２】
2007287031.tif 000004
【図３】
2007287031.tif 000005
【図４】
2007287031.tif 000006
【図５】
2007287031.tif 000007
【図６】
2007287031.tif 000008
【図７】
2007287031.tif 000009
【図８】
2007287031.tif 000010
【図９】
2007287031.tif 000011
【図１０】
2007287031.tif 000012
【図１１】
2007287031.tif 000013
【図１２】
2007287031.tif 000014
【図１３】
2007287031.tif 000015
【図１４】
2007287031.tif 000016