(57)【要約】【課題】デブロックフィルタの適用に際しての処理のさらなる並列化を可能とすること。【解決手段】符号化ストリームを復号して画像を生成する復号部と、前記復号部により生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、を備える画像処理装置を提供する。【選択図】図１６
2013012815.tif 000002
【特許請求の範囲】
【請求項１】
符号化ストリームを復号して画像を生成する復号部と、
前記復号部により生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、
前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、
を備える画像処理装置。
【請求項２】
前記選択部により使用される前記入力画素値は、前記ブロック境界と直交する他の境界についてのフィルタリングによって更新されないラインに属する画素の画素値である、請求項１に記載の画像処理装置。
【請求項３】
前記選択部は、前記ブロック境界の中央部分のラインを、前記フィルタ強度の選択のために使用する、請求項２に記載の画像処理装置。
【請求項４】
各ブロックのブロックサイズは、８×８画素であり、
前記選択部は、前記中央部分の２つのラインの少なくとも１つについて計算される、ブロック歪みの強さに依存するパラメータを評価することにより、前記ブロック境界と直交する各ラインについての前記フィルタ強度を選択する、
請求項３に記載の画像処理装置。
【請求項５】
前記選択部は、前記２つのラインについて計算される前記パラメータの双方がブロック歪みが強いことを示している場合に、各ラインについて強フィルタを選択する、請求項４に記載の画像処理装置。
【請求項６】
前記選択部は、前記２つのラインのうち各ラインに近いラインについて計算される前記パラメータがブロック歪みが強いことを示している場合に、各ラインについて強フィルタを選択する、請求項４に記載の画像処理装置。
【請求項７】
前記選択部は、前記パラメータの評価のパターンをライン位置に応じて変更する、請求項４に記載の画像処理装置。
【請求項８】
前記選択部は、前記パラメータの評価のパターンを前記ブロック境界のＢＳ（Boundary  Strength）値に応じて変更する、請求項４に記載の画像処理装置。
【請求項９】
前記選択部は、
前記中央部分のラインについてブロック歪みの強さに依存するパラメータを計算し、
計算されたパラメータを用いて前記ブロック境界の非中央部分の各ラインについての前記パラメータを推定し、
推定した前記パラメータを評価することにより、前記非中央部分の各ラインについて前記フィルタ強度を選択する、
請求項３に記載の画像処理装置。
【請求項１０】
各ブロックのブロックサイズは、８×８画素であり、
前記選択部は、前記中央部分の２つのラインについて計算される前記パラメータの値を外挿することにより、前記非中央部分の各ラインについての前記パラメータを推定する、
請求項９に記載の画像処理装置。
【請求項１１】
デブロックフィルタへの前記入力画素値を用いて、前記ブロック境界にデブロックフィルタを適用するかを判定する判定部、をさらに備え、
前記フィルタリング部は、前記判定部によりデブロックフィルタを適用すると判定された場合にのみ、前記ブロック境界にデブロックフィルタを適用する、
請求項１に記載の画像処理装置。
【請求項１２】
前記判定部は、前記ブロック境界の中央部分のラインに属する画素の画素値を用いて前記判定を行い、
前記判定部による前記判定の条件は、前記ブロック境界の非中央部分のラインに属する画素の画素値が使用される場合の条件と比較して、よりデブロックフィルタが適用されにくい条件である、
請求項１１に記載の画像処理装置。
【請求項１３】
前記選択部による第１の境界についての前記フィルタ強度の選択は、前記第１の境界と直交する第２の境界についての前記フィルタリング部によるフィルタリングを待つことなく行われる、請求項１に記載の画像処理装置。
【請求項１４】
前記選択部による前記フィルタ強度の選択は、前記判定部による前記判定と並列的に行われる、請求項１１に記載の画像処理装置。
【請求項１５】
符号化ストリームを復号して画像を生成することと、
生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、
選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、
を含む画像処理方法。
【請求項１６】
符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、
前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、
前記フィルタリング部によりフィルタリングされた画像を用いて、前記符号化対象画像を符号化する符号化部と、
を備える画像処理装置。
【請求項１７】
符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、
選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、
前記フィルタ強度でフィルタリングされた画像を用いて、前記符号化対象画像を符号化することと、
を含む画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、画像処理装置及び画像処理方法に関する。
【背景技術】
【０００２】
画像符号化方式の標準仕様の１つであるＨ．２６４／ＡＶＣでは、画像の符号化の際に生じるブロック歪みに起因する画質の劣化を抑制するために、例えば４×４画素のブロックごとにブロック境界にデブロックフィルタが適用される。このデブロックフィルタのために要する処理量は多大であり、例えば、画像の復号の際の全処理量の５０％を占めることもあると言われている。
【０００３】
次世代の画像符号化方式であるＨＥＶＣ（High  Efficiency  Video  Coding）の標準化作業では、ＪＣＴＶＣ−Ａ１１９（下記非特許文献１参照）において、８×８画素以上のサイズのブロックごとにデブロックフィルタを適用することが提案されている。ＪＣＴＶＣ−Ａ１１９において提案された手法では、デブロックフィルタを適用する最小単位のブロックサイズが拡大されることで、１つのマクロブロック内で同一方向の複数のブロック境界についてのフィルタリング処理を並列的に実行することが可能となる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】K.Ugur  (Nokia),  K.R.Andersson  (LM  Ericsson),  A.Fuldseth  (Tandberg  Telecom),  “JCTVC-A119:Video  coding  technology  proposal  by  Tandberg,  Nokia,  and  Ericsson”,  Documents  of  the  first  meeting  of  the  Joint  Collaborative  Team  on  Video  Coding  (JCT-VC),  Dresden,  Germany,  15-23  April,  2010.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ＪＣＴＶＣ−Ａ１１９において提案された手法を採用したとしても、垂直方向のブロック境界についての処理と水平方向のブロック境界についての処理との間の依存関係は残される。よって、１つのマクロブロック（あるいは１つの符号化単位）内で異なる方向のブロック境界についての処理を並列化すること、及びマクロブロック間で処理を並列化することは、依然として困難である。従って、上記手法でも、デブロックフィルタの適用に際しての多大な処理量を原因とする遅延又はデータレートの低下などの課題が十分に解決されるとは言い難い。
【０００６】
そこで、本開示に係る技術は、デブロックフィルタの適用に際しての処理のさらなる並列化を可能とする、画像処理装置及び画像処理方法を提供しようとするものである。
【課題を解決するための手段】
【０００７】
本開示によれば、符号化ストリームを復号して画像を生成する復号部と、前記復号部により生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、を備える画像処理装置が提供される。
【０００８】
上記画像処理装置は、典型的には、画像を復号する画像復号装置として実現され得る。
【０００９】
また、本開示によれば、符号化ストリームを復号して画像を生成することと、生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、を含む画像処理方法が提供される。
【００１０】
また、本開示によれば、符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、前記フィルタリング部によりフィルタリングされた画像を用いて、前記符号化対象画像を符号化する符号化部と、を備える画像処理装置が提供される。
【００１１】
上記画像処理装置は、典型的には、画像を符号化する画像符号化装置として実現され得る。
【００１２】
また、本開示によれば、符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、前記フィルタ強度でフィルタリングされた画像を用いて、前記符号化対象画像を符号化することと、を含む画像処理方法が提供される。
【発明の効果】
【００１３】
本開示に係る画像処理装置及び画像処理方法によれば、デブロックフィルタの適用に際しての処理のさらなる並列化が可能となる。
【図面の簡単な説明】
【００１４】
【図１】一実施形態に係る画像符号化装置の構成の一例を示すブロック図である。
【図２】一実施形態に係る画像復号装置の構成の一例を示すブロック図である。
【図３】ブロック境界を挟んで隣接する画素の一例を示す説明図である。
【図４】既存の手法におけるフィルタリング要否判定処理での参照画素について説明するための説明図である。
【図５】既存の手法におけるフィルタ強度選択処理での参照画素について説明するための説明図である。
【図６】フィルタリング処理により更新される画素について説明するための説明図である。
【図７】実施形態の説明のためのエッジの呼び方について説明するための説明図である。
【図８】既存の手法における並列処理について説明するための説明図である。
【図９】既存の手法における処理間の依存関係について説明するための第１の説明図である。
【図１０】既存の手法における処理間の依存関係について説明するための第２の説明図である。
【図１１】既存の手法における処理の順序の一例について説明するための説明図である。
【図１２】第１の実施例に係るフィルタ強度選択処理における参照画素について説明するための第１の説明図である。
【図１３】第１の実施例に係るフィルタ強度選択処理における参照画素について説明するための第２の説明図である。
【図１４】第１の実施例に係るフィルタリング要否判定処理における参照画素について説明するための第１の説明図である。
【図１５】第１の実施例に係るフィルタリング要否判定処理における参照画素について説明するための第２の説明図である。
【図１６】第１の実施例に係るデブロックフィルタの詳細な構成の一例を示すブロック図である。
【図１７】図１６に示した境界判定部の詳細な構成の一例を示すブロック図である。
【図１８】図１６に示した強度選択部の詳細な構成の一例を示すブロック図である。
【図１９】第１の実施例に係るデブロックフィルタによる処理の流れの第１の例を示すフローチャートである。
【図２０】図１９に示したフィルタ強度選択処理の詳細な流れの一例を示すフローチャートである。
【図２１】第１の実施例に係るデブロックフィルタによる処理の流れの第２の例を示すフローチャートである。
【図２２】第１の実施例に係るデブロックフィルタによる処理の流れの第３の例を示すフローチャートである。
【図２３】第２の実施例に係る強度選択部の詳細な構成の一例を示すブロック図である。
【図２４】強度選択用パラメータの推定について説明するための説明図である。
【図２５】第２の実施例に係るフィルタ強度選択処理の詳細な流れの一例を示すフローチャートである。
【図２６】テレビジョン装置の概略的な構成の一例を示すブロック図である。
【図２７】携帯電話機の概略的な構成の一例を示すブロック図である。
【図２８】記録再生装置の概略的な構成の一例を示すブロック図である。
【図２９】撮像装置の概略的な構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１５】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１６】
また、以下の順序で説明を行う。
１．装置の概要
１−１．画像符号化装置
１−２．画像復号装置
２．既存の手法の説明
２−１．デブロックフィルタの基本的な構成
２−２．既存の手法における処理間の依存関係
３．第１の実施例
３−１．デブロックフィルタの構成例
３−２．処理の流れ
４．第２の実施例
４−１．デブロックフィルタの構成例
４−２．処理の流れ
５．応用例
６．まとめ
【００１７】
＜１．装置の概要＞
まず、図１及び図２を用いて、本明細書で開示する技術を適用可能な一例としての装置の概要を説明する。本明細書で開示する技術は、例えば、画像符号化装置及び画像復号装置に適用可能である。
【００１８】
［１−１．画像符号化装置］
図１は、一実施形態に係る画像符号化装置１０の構成の一例を示すブロック図である。図１を参照すると、画像符号化装置１０は、Ａ／Ｄ（Analogue  to  Digital）変換部１１、並べ替えバッファ１２、減算部１３、直交変換部１４、量子化部１５、可逆符号化部１６、蓄積バッファ１７、レート制御部１８、逆量子化部２１、逆直交変換部２２、加算部２３、デブロックフィルタ２４ａ、フレームメモリ２５、セレクタ２６、イントラ予測部３０、動き探索部４０、及びモード選択部５０を備える。
【００１９】
Ａ／Ｄ変換部１１には、Ａ／Ｄ変換部１１は、アナログ形式で入力される画像信号をデジタル形式の画像データに変換し、一連のデジタル画像データを並べ替えバッファ１２へ出力する。
【００２０】
並べ替えバッファ１２に入力される画像データは、符号化対象画像の画像データである。並べ替えバッファ１２は、Ａ／Ｄ変換部１１から入力される一連の画像データに含まれる画像を並べ替える。並べ替えバッファ１２は、符号化処理に係るＧＯＰ（Group  of  Pictures）構造に応じて画像を並べ替えた後、並べ替え後の画像データを減算部１３、イントラ予測部３０及び動き探索部４０へ出力する。
【００２１】
減算部１３には、並べ替えバッファ１２から入力される画像データ、及び後に説明するモード選択部５０により選択される予測画像データが供給される。減算部１３は、並べ替えバッファ１２から入力される画像データとモード選択部５０から入力される予測画像データとの差分である予測誤差データを算出し、算出した予測誤差データを直交変換部１４へ出力する。
【００２２】
直交変換部１４は、減算部１３から入力される予測誤差データについて直交変換を行う。直交変換部１４により実行される直交変換は、例えば、離散コサイン変換（Discrete  Cosine  Transform：ＤＣＴ）又はカルーネン・レーベ変換などであってよい。直交変換部１４は、直交変換処理により取得される変換係数データを量子化部１５へ出力する。
【００２３】
量子化部１５には、直交変換部１４から入力される変換係数データ、及び後に説明するレート制御部１８からのレート制御信号が供給される。量子化部１５は、変換係数データを量子化し、量子化後の変換係数データ（以下、量子化データという）を可逆符号化部１６及び逆量子化部２１へ出力する。また、量子化部１５は、レート制御部１８からのレート制御信号に基づいて量子化パラメータ（量子化スケール）を切替えることにより、可逆符号化部１６に入力される量子化データのビットレートを変化させる。
【００２４】
可逆符号化部１６には、量子化部１５から入力される量子化データ、及び、後に説明するイントラ予測部３０又は動き探索部４０により生成されモード選択部５０により選択されるイントラ予測又はインター予測に関する情報が供給される。イントラ予測に関する情報は、例えば、ブロックごとの最適なイントラ予測モードを示す予測モード情報を含み得る。また、インター予測に関する情報は、例えば、ブロックごとの動きベクトルの予測のための予測モード情報、差分動きベクトル情報、及び参照画像情報などを含み得る。
【００２５】
可逆符号化部１６は、量子化データについて可逆符号化処理を行うことにより、符号化ストリームを生成する。可逆符号化部１６による可逆符号化は、例えば、可変長符号化、又は算術符号化などであってよい。また、可逆符号化部１６は、上述したイントラ予測に関する情報又はインター予測に関する情報を、符号化ストリームのヘッダ（例えばブロックヘッダ又はスライスヘッダなど）内に多重化する。そして、可逆符号化部１６は、生成した符号化ストリームを蓄積バッファ１７へ出力する。
【００２６】
蓄積バッファ１７は、可逆符号化部１６から入力される符号化ストリームを一時的に蓄積する。そして、蓄積バッファ１７は、蓄積した符号化ストリームを、伝送路（又は画像符号化装置１０からの出力線）の帯域に応じたレートで出力する。
【００２７】
レート制御部１８は、蓄積バッファ１７の空き容量を監視する。そして、レート制御部１８は、蓄積バッファ１７の空き容量に応じてレート制御信号を生成し、生成したレート制御信号を量子化部１５へ出力する。例えば、レート制御部１８は、蓄積バッファ１７の空き容量が少ない時には、量子化データのビットレートを低下させるためのレート制御信号を生成する。また、例えば、レート制御部１８は、蓄積バッファ１７の空き容量が十分大きい時には、量子化データのビットレートを高めるためのレート制御信号を生成する。
【００２８】
逆量子化部２１、逆直交変換部２２及び加算部２３による処理は、いわゆる符号化の際のローカルデコード処理を構成する。画像符号化装置１０による符号化対象画像の符号化は、以下に説明するように、ローカルデコード処理によって復号された画像を用いて行われる。
【００２９】
逆量子化部２１は、量子化部１５から入力される量子化データについて逆量子化処理を行う。そして、逆量子化部２１は、逆量子化処理により取得される変換係数データを、逆直交変換部２２へ出力する。
【００３０】
逆直交変換部２２は、逆量子化部２１から入力される変換係数データについて逆直交変換処理を行うことにより、予測誤差データを復元する。そして、逆直交変換部２２は、復元した予測誤差データを加算部２３へ出力する。
【００３１】
加算部２３は、逆直交変換部２２から入力される復元された予測誤差データとモード選択部５０から入力される予測画像データとを加算することにより、復号画像データを生成する。そして、加算部２３は、生成した復号画像データをデブロックフィルタ２４ａ及びフレームメモリ２５へ出力する。
【００３２】
デブロックフィルタ２４ａは、画像の符号化の際に生じるブロック歪みを減少させるためのフィルタリング処理を行う。デブロックフィルタ２４ａによりフィルタリングされた画像は、画像符号化装置１０における符号化対象画像の符号化のために使用される。例えば、デブロックフィルタ２４ａは、加算部２３から入力される復号画像データについてブロックの境界ごとにフィルタリングの要否を判定し、フィルタを適用すべきであると判定した境界にデブロックフィルタを適用する。デブロックフィルタ２４ａには、加算部２３からの復号画像データに加えて、フィルタリングの要否の判定のために使用される情報（例えば、モード情報、変換係数情報及び動きベクトル情報）も入力される。そして、デブロックフィルタ２４ａは、ブロック歪みの除去されたフィルタリング後の復号画像データをフレームメモリ２５へ出力する。なお、デブロックフィルタ２４ａによる処理について、後に詳細に説明する。
【００３３】
フレームメモリ２５は、加算部２３から入力される復号画像データ、及びデブロックフィルタ２４ａから入力されるフィルタリング後の復号画像データを記憶する。
【００３４】
セレクタ２６は、イントラ予測のために使用されるフィルタリング前の復号画像データをフレームメモリ２５から読み出し、読み出した復号画像データを参照画像データとしてイントラ予測部３０に供給する。また、セレクタ２６は、インター予測のために使用されるフィルタリング後の復号画像データをフレームメモリ２５から読み出し、読み出した復号画像データを参照画像データとして動き探索部４０に供給する。
【００３５】
イントラ予測部３０は、並べ替えバッファ１２から入力される符号化対象の画像データ、及びセレクタ２６を介して供給される復号画像データに基づいて、各イントラ予測モードのイントラ予測処理を行う。例えば、イントラ予測部３０は、各イントラ予測モードによる予測結果を所定のコスト関数を用いて評価する。そして、イントラ予測部３０は、コスト関数値が最小となるイントラ予測モード、即ち圧縮率が最も高くなるイントラ予測モードを、最適なイントラ予測モードとして選択する。さらに、イントラ予測部３０は、当該最適なイントラ予測モードを示す予測モード情報を含むイントラ予測に関する情報、予測画像データ、及びコスト関数値を、モード選択部５０へ出力する。
【００３６】
動き探索部４０は、並べ替えバッファ１２から入力される符号化対象の画像データ、及びセレクタ２６を介して供給される復号画像データに基づいて、インター予測処理（フレーム間予測処理）を行う。例えば、動き探索部４０は、各予測モードによる予測結果を所定のコスト関数を用いて評価する。次に、動き探索部４０は、コスト関数値が最小となる予測モード、即ち圧縮率が最も高くなる予測モードを、最適な予測モードとして選択する。また、動き探索部４０は、当該最適な予測モードに従って予測画像データを生成する。そして、動き探索部４０は、選択した最適な予測モードを示す予測モード情報を含むインター予測に関する情報、予測画像データ、及びコスト関数値を、モード選択部５０へ出力する。
【００３７】
モード選択部５０は、イントラ予測部３０から入力されるイントラ予測に関するコスト関数値と動き探索部４０から入力されるインター予測に関するコスト関数値とを比較する。そして、モード選択部５０は、イントラ予測及びインター予測のうちコスト関数値がより少ない予測手法を選択する。モード選択部５０は、イントラ予測を選択した場合には、イントラ予測に関する情報を可逆符号化部１６へ出力すると共に、予測画像データを減算部１３及び加算部２３へ出力する。また、モード選択部５０は、インター予測を選択した場合には、インター予測に関する上述した情報を可逆符号化部１６へ出力すると共に、予測画像データを減算部１３及び加算部２３へ出力する。
【００３８】
［１−２．画像復号装置］
図２は、一実施形態に係る画像復号装置６０の構成の一例を示すブロック図である。図２を参照すると、画像復号装置６０は、蓄積バッファ６１、可逆復号部６２、逆量子化部６３、逆直交変換部６４、加算部６５、デブロックフィルタ２４ｂ、並べ替えバッファ６７、Ｄ／Ａ（Digital  to  Analogue）変換部６８、フレームメモリ６９、セレクタ７０及び７１、イントラ予測部８０、並びに動き補償部９０を備える。
【００３９】
蓄積バッファ６１は、伝送路を介して入力される符号化ストリームを一時的に蓄積する。
【００４０】
可逆復号部６２は、蓄積バッファ６１から入力される符号化ストリームを、符号化の際に使用された符号化方式に従って復号する。また、可逆復号部６２は、符号化ストリームのヘッダ領域に多重化されている情報を復号する。符号化ストリームのヘッダ領域に多重化されている情報とは、例えば、ブロックヘッダ内のイントラ予測に関する情報及びインター予測に関する情報を含み得る。可逆復号部６２は、イントラ予測に関する情報をイントラ予測部８０へ出力する。また、可逆復号部６２は、インター予測に関する情報を動き補償部９０へ出力する。
【００４１】
逆量子化部６３は、可逆復号部６２による復号後の量子化データを逆量子化する。逆直交変換部６４は、符号化の際に使用された直交変換方式に従い、逆量子化部６３から入力される変換係数データについて逆直交変換を行うことにより、予測誤差データを生成する。そして、逆直交変換部６４は、生成した予測誤差データを加算部６５へ出力する。
【００４２】
加算部６５は、逆直交変換部６４から入力される予測誤差データと、セレクタ７１から入力される予測画像データとを加算することにより、復号画像データを生成する。そして、加算部６５は、生成した復号画像データをデブロックフィルタ２４ｂ及びフレームメモリ６９へ出力する。
【００４３】
デブロックフィルタ２４ｂは、復号された画像に現れるブロック歪みを減少させるためのフィルタリング処理を行う。デブロックフィルタ２４ｂは、例えば、加算部６５から入力される復号画像データについてブロックの境界ごとにフィルタリングの要否を判定し、フィルタを適用すべきであると判定した境界にデブロックフィルタを適用する。デブロックフィルタ２４ｂには、加算部６５からの復号画像データに加えて、フィルタリングの要否の判定のために使用される情報も入力される。そして、デブロックフィルタ２４ｂは、ブロック歪みの除去されたフィルタリング後の復号画像データを並べ替えバッファ６７及びフレームメモリ６９へ出力する。なお、デブロックフィルタ２４ｂによる処理について、後に詳細に説明する。
【００４４】
並べ替えバッファ６７は、デブロックフィルタ２４ｂから入力される画像を並べ替えることにより、時系列の一連の画像データを生成する。そして、並べ替えバッファ６７は、生成した画像データをＤ／Ａ変換部６８へ出力する。
【００４５】
Ｄ／Ａ変換部６８は、並べ替えバッファ６７から入力されるデジタル形式の画像データをアナログ形式の画像信号に変換する。そして、Ｄ／Ａ変換部６８は、例えば、画像復号装置６０と接続されるディスプレイ（図示せず）にアナログ画像信号を出力することにより、画像を表示させる。
【００４６】
フレームメモリ６９は、加算部６５から入力されるフィルタリング前の復号画像データ、及びデブロックフィルタ２４ｂから入力されるフィルタリング後の復号画像データを記憶する。
【００４７】
セレクタ７０は、可逆復号部６２により取得されるモード情報に応じて、画像内のブロックごとに、フレームメモリ６９からの画像データの出力先をイントラ予測部８０と動き補償部９０との間で切り替える。例えば、セレクタ７０は、イントラ予測モードが指定された場合には、フレームメモリ６９から供給されるフィルタリング前の復号画像データを参照画像データとしてイントラ予測部８０へ出力する。また、セレクタ７０は、インター予測モードが指定された場合には、フレームメモリ６９から供給されるフィルタリング後の復号画像データを参照画像データとして動き補償部９０へ出力する。
【００４８】
セレクタ７１は、可逆復号部６２により取得されるモード情報に応じて、画像内のブロックごとに、加算部６５へ供給すべき予測画像データの出力元をイントラ予測部８０と動き補償部９０との間で切り替える。例えば、セレクタ７１は、イントラ予測モードが指定された場合には、イントラ予測部８０から出力される予測画像データを加算部６５へ供給する。セレクタ７１は、インター予測モードが指定された場合には、動き補償部９０から出力される予測画像データを加算部６５へ供給する。
【００４９】
イントラ予測部８０は、可逆復号部６２から入力されるイントラ予測に関する情報とフレームメモリ６９からの参照画像データとに基づいて画素値の画面内予測を行い、予測画像データを生成する。そして、イントラ予測部８０は、生成した予測画像データをセレクタ７１へ出力する。
【００５０】
動き補償部９０は、可逆復号部６２から入力されるインター予測に関する情報とフレームメモリ６９からの参照画像データとに基づいて動き補償処理を行い、予測画像データを生成する。そして、動き補償部９０は、生成した予測画像データをセレクタ７１へ出力する。
【００５１】
＜２．既存の手法の説明＞
［２−１．デブロックフィルタの基本的な構成］
一般的に、Ｈ．２６４／ＡＶＣ又はＨＥＶＣなどの既存の画像符号化方式におけるデブロックフィルタによる処理は、フィルタリング要否判定処理、フィルタ強度選択処理及びフィルタリング処理という３種類の処理を含む。以下、ＨＥＶＣを例にとって、これら３つの処理について説明する。
【００５２】
（１）フィルタリング要否判定処理
フィルタリング要否判定処理は、入力画像内のブロック境界ごとにデブロックフィルタを適用すべきか否かを判定する処理である。ブロック境界は、左右に隣接するブロック間の垂直境界と、上下に隣接するブロック間の水平境界とを含む。ＪＣＴＶＣ−Ａ１１９では、８×８画素のブロックサイズが最小の処理単位である。例えば、１６×１６画素のマクロブロック内には４つの８×８画素のブロックが存在し、ブロックごとに１つの（左の）垂直境界及び１つの（上の）水平境界、即ち合計で４＋４＝８個の境界が判定の対象となる。なお、本明細書において、マクロブロックとの用語は、ＨＥＶＣの文脈における符号化単位（ＣＵ：Coding  Unit）をも含むものとする。
【００５３】
図３は、ブロック境界を挟んで隣接する２つのブロックＢａ及びＢｂ内の画素の一例を示す説明図である。ここでは垂直境界を例にとって説明するが、当然ながら、ここで説明される事項は水平境界にも同等に適用可能である。図３の例において、ブロックＢａ内の画素は、ｐｉｊという記号で示されている。ｉは列のインデックス、ｊは行のインデックスである。列のインデックスｉは、垂直境界に近い列から順に（右から左へ）０，１，２，３と付番されている。行のインデックスｊは、上から下へ０，１，２，…，７と付番されている。なお、ブロックＢａの左半分は図中で省略されている。一方、ブロックＢｂ内の画素は、ｑｋｊという記号で示されている。ｋは列のインデックス、ｊは行のインデックスである。列のインデックスｋは、垂直境界に近い列から順に（左から右へ）０，１，２，３と付番されている。なお、ブロックＢｂの右半分もまた図中で省略されている。
【００５４】
図３に示したブロックＢａ及びＢｂの間の垂直境界について、デブロックフィルタを適用すべきか否かは、次のような条件に従って判定され得る：
【００５５】
・輝度成分（Luma）の判定条件・・・条件Ａ及び条件Ｂがいずれも真なら適用
−条件Ａ：
（Ａ１）ブロックＢａ若しくはＢｂがイントラ予測モードである；
（Ａ２）ブロックＢａ若しくはＢｂが非ゼロの直交変換係数を有する；又は
（Ａ３）｜ＭＶＡｘ−ＭＶＢｘ｜≧４若しくは｜ＭＶＡｙ−ＭＶＢｙ｜≧４
−条件Ｂ：
｜ｐ２２−２ｐ１２＋ｐ０２｜＋｜ｑ２２−２ｑ１２＋ｑ０２｜＋｜ｐ２５−２ｐ１５＋ｐ０５｜＋｜ｑ２５−２ｑ１５＋ｑ０５｜＜β
【００５６】
なお、条件Ａ３に関し、Ｑｐｅｌ（１／４画素）精度のブロックＢａの動きベクトルを（ＭＶＡｘ，ＭＶＡｙ）、ブロックＢｂの動きベクトルを（ＭＶＢｘ，ＭＶＢｙ）とする。また、条件Ｂにおけるβは、エッジ判定閾値である。βの初期値は量子化パラメータに応じて与えられる。また、βの値は、スライスヘッダ内のパラメータでユーザにより指定可能である。
【００５７】
・色差成分（Chroma）の判定条件・・・条件Ａ１が真なら適用
−条件Ａ１：ブロックＢａ又はＢｂがイントラ予測モードである
【００５８】
即ち、図４において点線枠Ｌ２及びＬ５で示しているように、一般的な境界についてのフィルタリング要否判定処理（特に、輝度成分の判定条件Ｂの判定）では、各ブロックの２番目及び５番目のライン（最も上の行を０番目とする）の画素が参照される。なお、対象の境界が垂直境界である場合には、ラインとは、当該境界と直交する行に相当する。対象の境界が水平境界である場合には、ラインとは、当該境界と直交する列に相当する。そして、上述した判定条件に従ってデブロックフィルタを適用すべきと判定された境界について、次に説明するフィルタ強度選択処理及びフィルタリング処理が行われる。
【００５９】
（２）フィルタ強度選択処理
ある境界についてデブロックフィルタを適用すべきと判定されると、垂直境界については当該境界の左右の画素、水平境界については当該境界の上下の画素に、フィルタリング処理が行われる。輝度成分については、画素値に応じてフィルタ強度が強（strong）フィルタと弱（weak）フィルタとの間で切り替えられ得る。
【００６０】
−強度選択・・・１ラインごとにフィルタ強度を選択。以下の条件Ｃ１〜Ｃ３が全て満たされる場合には強フィルタ、いずれか１つでも満たされない場合には弱フィルタが選択される：
（Ｃ１）ｄ＜（β>>２）
（Ｃ２）（｜ｐ３ｊ−ｐ０ｊ｜＋｜ｑ０ｊ−ｑ３ｊ｜）＜（β>>３）
（Ｃ３）｜ｐ０ｊ−ｑ０ｊ｜＜（（５ｔＣ＋１）>>１）
ここで、ｊは、ラインのインデックスである。また、ｄ＝｜ｐ２２−２ｐ１２＋ｐ０２｜＋｜ｑ２２−２ｑ１２＋ｑ０２｜＋｜ｐ２５−２ｐ１５＋ｐ０５｜＋｜ｑ２５−２ｑ１５＋ｑ０５｜である。
【００６１】
即ち、図５において点線枠Ｃ４〜Ｃ７及びＣ０〜Ｃ３で示しているように、一般的なフィルタ強度選択処理では、各ブロックの０〜７番目の全てのラインの画素値が参照される。
【００６２】
（３）フィルタリング処理
選択されたフィルタ強度を有するデブロックフィルタのフィルタリング処理は、次のような計算式により表現され得る。
【００６３】
・輝度成分のフィルタリング
−弱フィルタリング：
Δ＝Ｃｌｉｐ（−ｔＣ，ｔＣ，（１３（ｑ０ｊ−ｐ０ｊ）＋４（ｑ１ｊ−ｐ１ｊ）−５（ｑ２ｊ−ｐ２ｊ）＋１６）>>５））
ｐ０ｊ＝Ｃｌｉｐ０−２５５（ｐ０ｊ＋Δ）
ｑ０ｊ＝Ｃｌｉｐ０−２５５（ｑ０ｊ−Δ）
ｐ１ｊ＝Ｃｌｉｐ０−２５５（ｐ１ｊ＋Δ／２）
ｑ１ｊ＝Ｃｌｉｐ０−２５５（ｑ１ｊ−Δ／２）
【００６４】
−強フィルタリング：
ｐ０ｊ＝Ｃｌｉｐ０−２５５（（ｐ２ｊ＋２ｐ１ｊ＋２ｐ０ｊ＋２ｑ０ｊ＋ｑ１ｊ＋４）>>３）
ｑ０ｊ＝Ｃｌｉｐ０−２５５（（ｐ１ｊ＋２ｐ０ｊ＋２ｑ０ｊ＋２ｑ１ｊ＋ｑ２ｊ＋４）>>３）
ｐ１ｊ＝Ｃｌｉｐ０−２５５（（ｐ２ｊ＋ｐ１ｊ＋ｐ０ｊ＋ｑ０ｊ＋２）>>２）
ｑ１ｊ＝Ｃｌｉｐ０−２５５（（ｐ０ｊ＋ｑ０ｊ＋ｑ１ｊ＋ｑ２ｊ＋２）>>２）
ｐ２ｊ＝Ｃｌｉｐ０−２５５（（２ｐ３ｊ＋３ｐ２ｊ＋ｐ１ｊ＋ｐ０ｊ＋ｑ０ｊ＋４）>>３）
ｑ２ｊ＝Ｃｌｉｐ０−２５５（（ｐ０ｊ＋ｑ０ｊ＋ｑ１ｊ＋３ｑ２ｊ＋２ｑ３ｊ＋４）>>３）
【００６５】
なお、Ｃｌｉｐ（ａ，ｂ，ｃ）は値ｃをａ≦ｃ≦ｂの範囲でクリップする処理、Ｃｌｉｐ０−２５５（ｃ）は値ｃを０≦ｃ≦２５５の範囲でクリップする処理をそれぞれ表す。
【００６６】
・色差成分のフィルタリング：
Δ＝Ｃｌｉｐ（−ｔＣ，ｔＣ，（（（（ｑ０ｊ−ｐ０ｊ）<<２）＋ｐ１ｊ−ｑ１ｊ＋４）>>３））
ｐ０ｊ＝Ｃｌｉｐ０−２５５（ｐ０ｊ＋Δ）
ｑ０ｊ＝Ｃｌｉｐ０−２５５（ｑ０ｊ−Δ）
【００６７】
即ち、図６において点線枠Ｃ５〜Ｃ７及びＣ０〜Ｃ２で示しているように、一般的なフィルタリング処理（特に、輝度成分の強フィルタリング）では、各ブロックの０〜２番目及び５〜７番目のラインの画素値が更新される。
【００６８】
［２−２．既存の手法における処理間の依存関係］
ここで、説明のために、図７に示したように、１６×１６画素のサイズを有するマクロブロックＭＢｘ（ＭＢ０、ＭＢ１…）の左上の垂直境界をＶｘ，０、中央上の垂直境界をＶｘ，１、左下の垂直境界をＶｘ，２、中央下の垂直境界をＶｘ，３、左上の水平境界をＨｘ，０、右上の水平境界をＨｘ，１、左中央の水平境界をＨｘ，２、右中央の水平境界をＨｘ，３、と表すものとする。また、例えば境界Ｚについてのフィルタリング要否判定処理をＪＺ、フィルタ強度選択処理をＳＺ、フィルタリング処理をＦＺなどと表すものとする。
【００６９】
上述した既存の手法では、１つのマクロブロック内で同一方向の複数の境界についての処理の間に依存関係が存在しない。そのため、例えば１つのマクロブロック内で複数の垂直境界についての強度選択処理及びフィルタリング処理を並列的に実行することが可能であり、複数の水平境界についての強度選択処理及びフィルタリング処理を並列的に実行することも可能である。例えば、図８を参照すると、マクロブロックＭＢ０内で、垂直境界Ｖ０，０についてのフィルタ強度選択処理ＳＶ０，０が、他の垂直境界についてのフィルタリング処理ＦＶ０，１、ＦＶ０，２及びＦＶ０，３により更新される画素を参照しておらず、これらフィルタリング処理に依存しないことが分かる。同様に、垂直境界Ｖ０，１についてのフィルタ強度選択処理ＳＶ０，１は、他の垂直境界についてのフィルタリング処理ＦＶ０，０、ＦＶ０，２及びＦＶ０，３により更新される画素を参照しない。垂直境界Ｖ０，２についてのフィルタ強度選択処理ＳＶ０，２は、他の垂直境界についてのフィルタリング処理ＦＶ０，０、ＦＶ０，１及びＦＶ０，３により更新される画素を参照しない。垂直境界Ｖ０，３についてのフィルタ強度選択処理ＳＶ０，３は、他の垂直境界についてのフィルタリング処理ＦＶ０，０、ＦＶ０，１及びＦＶ０，２により更新される画素を参照しない。
【００７０】
しかし、上述した既存の手法では、垂直境界についてのフィルタリング処理と水平境界についてのフィルタリング要否判定処理及びフィルタ強度選択処理との間の依存関係は残される。また、水平境界についてのフィルタリング処理と垂直境界についてのフィルタリング要否判定処理及びフィルタ強度選択処理との間の依存関係も残される。従って、例えば垂直境界を水平境界よりも先に処理する場合、あるマクロブロック内での水平境界についての処理は、垂直境界についての処理の終了を待って実行されることになる。一例として、図９を参照すると、マクロブロックＭＢ０内で、フィルタリング処理ＦＶ０，０及びＦＶ０，１の結果にフィルタリング要否判定処理ＳＨ０，０が依存し、フィルタリング処理ＦＶ０，１の結果にフィルタ強度選択処理ＳＨ０，１が依存することが示されている。また、別の例として、図１０を参照すると、マクロブロックＭＢ０内で、フィルタリング処理ＦＶ０，０及びＦＶ０，１の結果にフィルタリング要否判定処理ＪＨ０，０が依存し、フィルタリング処理ＦＶ０，１の結果にフィルタリング要否判定処理ＪＨ０，１が依存することが示されている。
【００７１】
既存の手法は、このような処理間の依存関係を有しているため、例えばＪＣＴＶＣ−Ａ１１９において提案された手法を採用したとしても、非常に限られた範囲でしかデブロックフィルタの処理の並列化を達成することができない。
【００７２】
図１１は、既存の手法におけるデブロックフィルタの処理の順序の一例について説明するための説明図である。ここでは、一例として、３２×３２画素のサイズを有する画像がデブロックフィルタに入力されるものとする。当該入力画像は、それぞれ１６×１６画素のサイズを有する４つのマクロブロックＭＢ０〜ＭＢ３を含む。
【００７３】
図１１を参照すると、並列的に実行され得る処理が各点線枠内にそれぞれ示されている。例えば、第１ステップでは、マクロブロックＭＢ０の４つの垂直境界についてのフィルタリング要否判定処理ＪＶ０，０、ＪＶ０，１、ＪＶ０，２及びＪＶ０，３が並列的に実行される。次に、第２ステップでは、マクロブロックＭＢ０の４つの垂直境界についてのフィルタ強度選択処理ＳＶ０，０、ＳＶ０，１、ＳＶ０，２及びＳＶ０，３が並列的に実行される。次に、第３ステップでは、マクロブロックＭＢ０の４つの垂直境界についてのフィルタリング処理ＦＶ０，０、ＦＶ０，１、ＦＶ０，２及びＦＶ０，３が並列的に実行される。次に、第３ステップが終了した後、第４ステップにおいて、マクロブロックＭＢ０の４つの水平境界についてのフィルタリング要否判定処理ＪＨ０，０、ＪＨ０，１、ＪＨ０，２及びＪＨ０，３が並列的に実行される。次に、第５ステップでは、マクロブロックＭＢ０の４つの水平境界についてのフィルタ強度選択処理ＳＨ０，０、ＳＨ０，１、ＳＨ０，２及びＳＨ０，３が並列的に実行される。次に、第６ステップでは、マクロブロックＭＢ０の４つの水平境界についてのフィルタリング処理ＦＨ０，０、ＦＨ０，１、ＦＨ０，２及びＦＨ０，３が並列的に実行される。次に、第６ステップが終了した後、マクロブロックＭＢ１についての処理（第７ステップ〜第１２ステップ）が順次行われる。次に、マクロブロックＭＢ１についての処理が終了した後、マクロブロックＭＢ２についての処理（第１３ステップ〜第１８ステップ）が順次行われる。次に、マクロブロックＭＢ２についての処理が終了した後、マクロブロックＭＢ３についての処理（第１９ステップ〜第２４ステップ）が順次行われる。
【００７４】
このような限られた範囲での処理の並列化では、デブロックフィルタの適用に際しての多大な処理量を原因とする遅延又はデータレートの低下などの課題が十分に解決されるとは言い難い。そこで、以下に説明するデブロックフィルタの２つの実施例により、デブロックフィルタの適用に際しての処理のさらなる並列化を実現する。
【００７５】
＜３．第１の実施例＞
［３−１．デブロックフィルタの構成例］
本節では、図１に示した画像符号化装置１０のデブロックフィルタ２４ａ及び図２に示した画像復号装置６０のデブロックフィルタ２４ｂの第１の実施例に係る構成の一例を説明する。なお、デブロックフィルタ２４ａ及びデブロックフィルタ２４ｂの構成は、共通であってよい。従って、これ以降の説明では、特に両者を区別する必要が無い場合には、デブロックフィルタ２４ａ及びデブロックフィルタ２４ｂをデブロックフィルタ２４と総称する。
【００７６】
（１）新たな処理間の依存関係
本実施例においても、デブロックフィルタ２４による処理は、上述したフィルタリング要否判定処理、フィルタ強度選択処理及びフィルタリング処理という３種類の処理を含む。但し、デブロックフィルタ２４は、既存の手法とは異なる参照画素の画素値に基づいて、フィルタ強度選択処理を行う。より具体的には、デブロックフィルタ２４は、ある境界（ある境界と直交する各ライン）に適用されるデブロックフィルタのフィルタ強度を、当該境界と直交する他の境界についてのフィルタリング処理によって更新されないラインに属する画素の画素値に基づいて選択する。ここでの更新されないラインとは、典型的には、当該境界の中央部分のラインである。図５又は図９などから理解されるように、各ブロックのブロックサイズが８×８画素である場合には、各境界の中央部分の３番目及び４番目（上端又は左端のラインを０番目とする）の２つのラインの画素値は、当該境界と直交する境界についてのフィルタリング処理において更新されない。従って、各ラインに適用されるデブロックフィルタのフィルタ強度は、デブロックフィルタへの入力画素値を用いて選択されることになる。
【００７７】
図１２及び図１３は、デブロックフィルタ２４によるフィルタ強度選択処理における参照画素について説明するための説明図である。図１２を参照すると、１６×１６画素のサイズを有するマクロブロックＭＢ０が示されている。デブロックフィルタ２４は、マクロブロックＭＢ０の垂直境界Ｖ０，０と直交する８つのラインについてのフィルタ強度を、垂直境界Ｖ０，０と直交する３番目のラインＲ３及び４番目のラインＲ４の少なくとも１つに属する画素を参照画素として用いて選択する（ＳＶ０，０）。ラインＲ３及びＲ４は、水平境界Ｈ０，０についてのフィルタリング処理によっても、水平境界Ｈ０，２についてのフィルタリング処理によっても更新されないラインである。同様に、デブロックフィルタ２４は、垂直境界Ｖ０，２と直交する８つのラインについてのフィルタ強度を、垂直境界Ｖ０，２と直交するラインのうち３番目のラインＲ３及び４番目のラインＲ４の少なくとも１つに属する画素を参照画素として用いて選択する（ＳＶ０，２）。このような構成により、水平境界についてのフィルタリング処理と垂直境界についてのフィルタ強度選択処理との間の依存関係は解消される。
【００７８】
図１３を参照すると、図１２と同様のマクロブロックＭＢ０が示されている。デブロックフィルタ２４は、マクロブロックＭＢ０の水平境界Ｈ０，０と直交する８つのラインについてのフィルタ強度を、水平境界Ｈ０，０と直交する３番目のラインＣ３及び４番目のラインＣ４の少なくとも１つに属する画素を参照画素として用いて選択する（ＳＨ０，０）。ラインＣ３及びＣ４は、垂直境界Ｖ０，０についてのフィルタリング処理によっても、垂直境界Ｖ０，１についてのフィルタリング処理によっても更新されないラインである。同様に、デブロックフィルタ２４は、水平境界Ｈ０，１と直交する８つのラインについてのフィルタ強度を、水平境界Ｈ０，２と直交するラインのうち３番目のラインＣ３及び４番目のラインＣ４の少なくとも１つに属する画素を参照画素として用いて選択する（ＳＨ０，１）。このような構成により、垂直境界についてのフィルタリング処理と水平境界についてのフィルタ強度選択処理との間の依存関係は解消される。
【００７９】
このように処理間の依存関係が解消される結果として、ある境界についてのフィルタ強度選択処理を、他の境界についてのフィルタリング処理の終了を待つことなく行うことが可能となる。従って、垂直境界及び水平境界の双方についてのフィルタ強度判定処理を並列化することができる。また、マクロブロック間で処理を並列化することも可能となる。
【００８０】
本実施例において、デブロックフィルタ２４は、さらに、フィルタ強度判定処理と同様のラインに属する参照画素の画素値に基づいて、フィルタリング要否判定処理を行う。これは、各ラインにデブロックフィルタを適用するか否かの判定が、デブロックフィルタへの入力画素値を用いて行われることを意味する。
【００８１】
図１４を参照すると、マクロブロックＭＢ０の垂直境界Ｖ０，０についてのフィルタリング要否判定処理ＪＶ０，０が垂直境界Ｖ０，０と直交するラインＲ３及びＲ４に属する画素を参照画素として用いて行われることが示されている。同様に、垂直境界Ｖ０，２についてのフィルタリング要否判定処理ＪＶ０，２は、垂直境界Ｖ０，２と直交するラインＲ３及びＲ４に属する画素を参照画素として用いて行われる。このような構成により、水平境界についてのフィルタリング処理と垂直境界についてのフィルタリング要否判定処理との間の依存関係は解消される。
【００８２】
図１５を参照すると、マクロブロックＭＢ０の水平境界Ｈ０，０についてのフィルタリング要否判定処理ＪＨ０，０は、水平境界Ｈ０，０と直交するラインＣ３及びＣ４に属する画素を参照画素として用いて行われる。同様に、水平境界Ｈ０，１についてのフィルタリング要否判定処理ＪＨ０，１は、水平境界Ｈ０，１と直交するラインＣ３及びＣ４に属する画素を参照画素として用いて行われる。このような構成により、垂直境界についてのフィルタリング処理と水平境界についてのフィルタリング要否判定処理との間の依存関係は解消される。
【００８３】
このように処理間の依存関係が解消される結果として、ある境界についてのフィルタリング要否判定処理を、他の境界についてのフィルタリング処理の終了を待つことなく行うことが可能となる。垂直境界及び水平境界の双方についてのフィルタリング要否判定処理を並列化することもできる。
【００８４】
（２）デブロックフィルタの詳細な構成
図１６は、本実施例に係るデブロックフィルタ２４の詳細な構成の一例を示すブロック図である。図１６を参照すると、デブロックフィルタ２４は、判定ブロック１１０、強度選択ブロック１３０、フィルタリングブロック１５０、及び制御部１６０を有する。
【００８５】
（２−１）判定ブロック
判定ブロック１１０は、複数の境界判定部１１２−１〜１１２−ｎを含む。各境界判定部１１２には、デブロックフィルタ２４への入力画像、及びフィルタリングの要否の判定のために使用される判定情報が供給される。
【００８６】
複数の境界判定部１１２−１〜１１２−ｎは、以下に説明するフィルタリング要否判定処理を、複数の境界を対象として並列的に実行する。例えば、境界判定部１１２−１は第１の垂直境界、境界判定部１１２−２は第１の水平境界、境界判定部１１２−３は第２の垂直境界、境界判定部１１２−４は第２の水平境界について、並列的にフィルタリング要否判定処理を実行し得る。
【００８７】
各境界判定部１１２は、各ブロック境界にデブロックフィルタを適用すべきか否かを、当該境界と直交する他の境界についてのフィルタリング処理により更新されないライン（以下、基本ラインという）に属する参照画素の画素値を用いて判定する。ここで参照される基本ラインは各境界の中央部分のラインであり、参照される画素値はデブロックフィルタ２４への入力画素値である。そして、各境界判定部１１２は、各境界についての判定結果を示す情報（例えば、“１”がデブロックフィルタを適用すべきとの判定結果を示す二値情報）を、強度選択ブロック１３０及びフィルタリングブロック１５０へ出力する。
【００８８】
図１７は、各境界判定部１１２のさらに詳細な構成の一例を示すブロック図である。図１７を参照すると、各境界判定部１１２は、タップ構築部１２１、演算部１２２、閾値比較部１２３、歪み評価部１２４及びフィルタリング判定部１２５を含む。
【００８９】
タップ構築部１２１は、入力画像内の注目する境界を挟んで隣接する２つのブロックの画素値から基本ラインの参照画素の画素値を取得し、上述した輝度成分の判定条件Ｂの判定のためのタップ（参照画素値のセット）を構築する。演算部１２２は、タップ構築部１２１により構築されたタップを判定条件Ｂの判定式の左辺に代入し、エッジ判定閾値βと比較される判定用パラメータを計算する。閾値比較部１２３は、演算部１２２により計算された値をエッジ判定閾値βと比較し、比較結果をフィルタリング判定部１２５へ出力する。
【００９０】
演算部１２２による演算及び閾値比較部１２３による閾値との比較は、例えば、次の式により表現されてもよい。
−条件Ｂ：
｜ｐ２３−２ｐ１３＋ｐ０３｜＋｜ｑ２３−２ｑ１３＋ｑ０３｜＋｜ｐ２４−２ｐ１４＋ｐ０４｜＋｜ｑ２４−２ｑ１４＋ｑ０４｜＜β
【００９１】
その代わりに、演算部１２２による演算及び閾値比較部１２３による閾値との比較は、次の式により表現されてもよい。
−条件Ｂ´：
｜ｐ２３−２ｐ１３＋ｐ０３｜＋｜ｑ２３−２ｑ１３＋ｑ０３｜＜（β>>１）；かつ
｜ｐ２４−２ｐ１４＋ｐ０４｜＋｜ｑ２４−２ｑ１４＋ｑ０４｜＜（β>>１）
【００９２】
条件Ｂ´は、条件Ｂと比較して、（参照画素値が変わらなければ）デブロックフィルタを適用すべきと判定されにくい条件である。発明者らは、参照ラインを境界の中央部分へ寄せると、多くの場合上記判定用パラメータの値（条件Ｂの式の左辺）が小さくなり、デブロックフィルタを適用すべきという判定がされ易くなるという傾向があることを、経験的に把握している。そこで、条件Ｂの代わりに条件Ｂ´を用いることにより、参照ラインの変更に伴う判定の精度の低下を防止することができる。なお、他の手法として、条件Ｂの右辺の閾値βの値をより小さく設定することにより、参照ラインの変更に伴う判定の精度の低下が防止されてもよい。
【００９３】
歪み評価部１２４は、判定情報として供給されるモード情報（ＭＢモード）、変換係数情報及び動きベクトル情報を用いて、上述した輝度成分の判定条件Ａを評価する。そして、歪み評価部１２４は、評価結果をフィルタリング判定部１２５へ出力する。なお、色差成分については、歪み評価部１２４によるモード情報に基づく判定条件Ａ１についての判定のみが行われ得る。
【００９４】
フィルタリング判定部１２５は、閾値比較部１２３から入力される判定条件Ｂ又はＢ´についての比較結果と、歪み評価部１２４から入力される判定条件Ａについての評価結果とに基づいて、注目するブロック境界にデブロックフィルタを適用すべきか否かを判定する。そして、フィルタリング判定部１２５は、判定結果を示す情報を出力する。
【００９５】
（２−２）強度選択ブロック
図１６に戻り、デブロックフィルタ２４の構成の説明を継続する。強度選択ブロック１３０は、複数の強度選択部１３２−１〜１３２−ｎを含む。各強度選択部１３２には、入力画像及び判定ブロック１１０からの各境界についての判定結果が供給される。
【００９６】
複数の強度選択部１３２−１〜１３２−ｎは、以下に説明するフィルタ強度選択処理を、複数の境界を対象として並列的に実行する。例えば、強度選択部１３２−１は第１の垂直境界、強度選択部１３２−２は第１の水平境界、強度選択部１３２−３は第２の垂直境界、強度選択部１３２−４は第２の水平境界について、並列的にフィルタ強度選択処理を実行し得る。
【００９７】
各強度選択部１３２は、各ブロック境界に適用されるデブロックフィルタのフィルタ強度を、当該境界と直交する他の境界についてのフィルタリング処理により更新されない基本ラインに属する参照画素の画素値を用いて選択する。ここで参照される基本ラインは各境界の中央部分のラインであり、参照される画素値はデブロックフィルタ２４への入力画素値である。そして、各強度選択部１３２は、各境界についての選択結果を示す情報（例えば、“１”が強フィルタの選択を示す二値情報）を、フィルタリングブロック１５０へ出力する。
【００９８】
なお、本実施例では、各強度選択部１３２は、対応する境界判定部１１２から入力される判定結果がデブロックフィルタを適用すべきことを示している場合にのみ、対応する境界についてフィルタ強度選択処理を実行し得る。この場合には、不要なフィルタ強度選択処理の実行を回避し、処理コストを抑制することができる。一方、各強度選択部１３２は、各境界判定部１１２による判定と並列的にフィルタ強度選択処理を実行してもよい。この場合には、全体としての処理時間を短縮することができる。
【００９９】
図１８は、各強度選択部１３２のさらに詳細な構成の一例を示すブロック図である。図１８を参照すると、各強度選択部１３２は、タップ構築部１４１、パラメータ計算部１４２、選択部１４３及びバッファ１４４を含む。
【０１００】
タップ構築部１４１は、各境界と直交する基本ラインを制御部１６０からのライン制御信号に従って認識し、基本ラインの参照画素の画素値から、上述した強度選択のための条件Ｃ１〜Ｃ３の式を評価するためのタップを構築する。以下の説明において、基本ラインとは、各境界の中央部分で当該境界と直交する、３番目及び４番目のラインである。
【０１０１】
パラメータ計算部１４２は、タップ構築部１４１により構築されたタップを条件Ｃ１〜Ｃ３の式の左辺に代入し、ブロック歪みの強さに依存する次の３種類のパラメータｄ１〜ｄ３を計算する。なお、パラメータｄ２及びｄ３は、基本ラインごとに計算される。これらパラメータを、本明細書では強度選択用パラメータという。
ｄ１＝｜ｐ２３−２ｐ１３＋ｐ０３｜＋｜ｑ２３−２ｑ１３＋ｑ０３｜＋｜ｐ２４−２ｐ１４＋ｐ０４｜＋｜ｑ２４−２ｑ１４＋ｑ０４｜
ｄ２＝｜ｐ３ｊ−ｐ０ｊ｜＋｜ｑ０ｊ−ｑ３ｊ｜  （ｊ＝３，４）
ｄ３＝｜ｐ０ｊ−ｑ０ｊ｜  （ｊ＝３，４）
【０１０２】
選択部１４３は、基本ラインについては、パラメータ計算部１４２により計算された強度選択用パラメータを条件Ｃ１〜Ｃ３に従って評価することにより、各基本ラインに適用されるデブロックフィルタのフィルタ強度を選択する。
−以下の条件Ｃ１〜Ｃ３が全て満たされる場合には強フィルタ、いずれか１つでも満たされない場合には弱フィルタが選択される：
（Ｃ１）ｄ１＜（β>>２）
（Ｃ２）ｄ２＜（β>>３）
（Ｃ３）ｄ３＜（（５ｔＣ＋１）>>１）
そして、選択部１４３は、各基本ラインについての選択結果を示す情報をフィルタリングブロック１５０へ出力する。また、選択部１４３は、各基本ラインについての選択結果を示す情報（又は上記強度選択用パラメータｄ１〜ｄ３の値）をバッファ１４４へ出力して記憶させる。
【０１０３】
選択部１４３は、基本ライン以外の各ラインについては、基本ラインの少なくとも１つについて計算された強度選択用パラメータを評価することにより、フィルタ強度を選択する。本実施例のように、基本ラインが２つのラインである場合には、基本ライン以外の各ラインについての評価のパターンは、例えば次の３つのいずれかであってよい。
−パターンＰ１：  ２つの基本ラインについて計算される強度選択用パラメータの双方がブロック歪みが強いことを示している場合（即ち、２つの基本ラインについて共に強フィルタが選択される場合）に、強フィルタを選択。
−パターンＰ２：  選択対象のラインに近い基本ライン（以下、近傍ラインという）について計算される強度選択用パラメータがブロック歪みが強いことを示している場合に、強フィルタを選択。
−パターンＰ３：  ２つの基本ラインについて計算される強度選択用パラメータのいずれか一方又は双方がブロック歪みが強いことを示している場合に、強フィルタを選択。
【０１０４】
選択部１４３は、基本ライン以外の全てのラインについて同じパターンを使用してもよく、又はライン位置に応じて評価パターンを変更してもよい。例えば、第１のシナリオにおいて、選択部１４３は、次の表１のように、基本ライン以外の全てのラインについて評価パターンＰ２を用いる。評価パターンＰ２は、選択対象のラインと近傍ラインとの画像の空間的相関を利用した評価パターンであり、フィルタ強度の選択結果の簡易な再利用によって処理コストを抑制しながら、ある程度合理的な強度選択を実現できる。
【０１０５】
【表１】
2013012815.tif 000003
【０１０６】
また、第２のシナリオにおいて、選択部１４３は、次の表２のように、基本ライン以外の全てのラインについて評価パターンＰ１を用いる。評価パターンＰ１は、上述した３つの評価パターンのうち最も強フィルタが選択されにくい評価パターンである。評価パターンＰ１は、強フィルタが過剰に適用されることによる画質の劣化等の悪影響を積極的に防止したいような状況において採用され得る。
【０１０７】
【表２】
2013012815.tif 000004
【０１０８】
また、第３のシナリオにおいて、選択部１４３は、次の表３のように、基本ライン以外の全てのラインについて評価パターンＰ３を用いる。評価パターンＰ３は、上述した３つの評価パターンのうち最も強フィルタが選択され易い評価パターンである。評価パターンＰ３は、強フィルタを積極的に選択してブロック歪みを大きく減少させたいような状況において採用され得る。
【０１０９】
【表３】
2013012815.tif 000005
【０１１０】
また、第４のシナリオにおいて、選択部１４３は、次の表４のように、基本ラインに隣接する２つのライン（＃２及び＃５）については評価パターンＰ２を用い、その他のライン（＃０、＃１、＃６及び＃７）については評価パターンＰ１を用いる。基本ライン以外のラインの中でも、基本ラインからの距離が遠いほど基本ラインとの画像の空間的相関は低下する。そこで、第４のシナリオのように、ライン位置に応じて適応的に評価パターンを変更することにより、ラインごとにより適切なフィルタ強度を選択することができる。
【０１１１】
【表４】
2013012815.tif 000006
【０１１２】
また、選択部１４３は、各境界のＢＳ（Boundary  Strength）値に応じて、当該境界と直交する基本ライン以外のラインについての評価パターンを変更してもよい。ＢＳ値は、例えばＨ．２６４／ＡＶＣにおいては、各境界に接する２つのブロックのイントラ／インターの種別、直交変換係数の有無、参照ピクチャの差異及び動きベクトルの差異などに応じて与えられる５段階の数値である。ＢＳ値が高いほど、ブロック歪みは強いと判断される。そこで、第５のシナリオにおいて、選択部１４３は、次の表５のように、ライン＃０、＃１、＃６及び＃７について、評価パターンをＢＳ値に応じて切り替える。例えば、ＢＳ値は「低」と「高」とに区分され、ＢＳ値が「低」であれば評価パターンＰ１が、ＢＳ値が「高」であれば評価パターンＰ２が用いられる。このように、ＢＳ値が低い場合にのみ適応的に強フィルタの過剰な適用を回避することで、フィルタリング後の画質を効果的に改善することが可能となる。
【０１１３】
【表５】
2013012815.tif 000007
【０１１４】
なお、ここで説明したシナリオは例に過ぎない。即ち、ライン位置及びＢＳ値以外の基準に従って評価パターンが切り替えられてもよく、又は上述した３つの評価パターン以外の評価パターンが用いられてもよい。また、複数の評価パターンの間で選択部１４３により使用される評価パターンを切り替えるためのフラグが、シーケンスパラメータセット、ピクチャパラメータセット又はスライスヘッダ内で符号化されてもよい。
【０１１５】
そして、選択部１４３は、基本ライン以外の各ラインについても、フィルタ強度の選択結果を示す情報をフィルタリングブロック１５０へ出力する。
【０１１６】
（２−３）フィルタリングブロック
図１６に戻り、デブロックフィルタ２４の構成の説明を継続する。フィルタリングブロック１５０は、複数のフィルタリング部１５２−１〜１５２−ｎを含む。各フィルタリング部１５２には、入力画像、判定ブロック１１０からの各境界についての判定結果、及び強度選択ブロック１３０からの各境界についてのフィルタ強度の選択結果が供給される。
【０１１７】
各フィルタリング部１５２は、対応する境界判定部１１２による判定結果がフィルタを適用すべきことを示している場合に、対応する強度選択部１３２により選択されたフィルタ強度を有するデブロックフィルタを、対応する境界と直交する各ラインに適用する。そして、各フィルタリング部１５２は、フィルタを適用した画素についてはフィルタリング後の画素値、その他の画素については入力画像の画素値を出力する。各フィルタリング部１５２からの出力は、デブロックフィルタ２４からの出力画像を構成し得る。
【０１１８】
（２−４）制御部
制御部１６０は、図１６に示したデブロックフィルタ２４の各部における処理を制御する。例えば、制御部１６０は、強度選択ブロック１３０にライン制御信号を出力し、ラインごとに基本ラインにいての処理と基本ライン以外のラインについての処理とを分岐させる。
【０１１９】
また、例えば、制御部１６０は、フィルタリング要否判定処理、フィルタ強度選択処理及びフィルタリング処理の並列度を制御する。高い並列度が望まれる場合には、複数のマクロブロック（あるいは複数のＬＣＵ（Largest  Coding  Unit））にわたって各処理が並列化されてもよい。また、マクロブロックごとの逐次処理が行われる場合には、個々のマクロブロック内の複数の垂直境界及び複数の水平境界を対象として、処理が並列化されてもよい。並列度の制御は、入力画像のサイズに基づいて行われてもよい。例えば、制御部１６０は、入力画像のサイズが相対的に大きい場合に、各処理の並列度を高めてもよい。それにより、画像のサイズに応じて増加する処理量を原因とする遅延又はデータレートの低下を適応的に防止することができる。また、例えば、制御部１６０は、シーケンスパラメータセット、ピクチャパラメータセット又はスライスヘッダ内に含まれるパラメータに基づいて、各処理の並列度を制御してもよい。それにより、装置を開発するユーザごとの要件に応じて柔軟に並列度を設定することが可能となる。例えば、プロセッサのコア数又はソフトウェアのスレッド数などの実装環境の制約に応じて並列度が設定されてもよい。
【０１２０】
［３−２．処理の流れ］
次に、図１９〜図２２を用いて、本実施例に係るデブロックフィルタ２４による処理の流れを説明する。
【０１２１】
（１）第１の例
図１９は、本実施例に係るデブロックフィルタ２４による処理の流れの第１の例を示すフローチャートである。第１の例では、マクロブロック（ＭＢ）ごとの逐次処理が行われる。
【０１２２】
図１９を参照すると、まず、境界判定部１１２−１〜１１２−ｎは、入力画像内の１つの注目ＭＢに含まれる複数の垂直境界及び複数の水平境界について並列的に、フィルタリングの要否を判定する（ステップＳ１１０）。
【０１２３】
次に、強度選択部１３２−１〜１３２−ｎは、ステップＳ１１０においてフィルタリングが必要と判定された境界について並列的に、各境界と直交するラインの各々のフィルタ強度を選択する（ステップＳ１２０）。
【０１２４】
次に、垂直境界を対象とする各フィルタリング部１５２は、ステップＳ１１０においてフィルタリングが必要と判定された垂直境界と直交するラインの各々に、対応する強度選択部１３２により選択されたフィルタ強度を有するデブロックフィルタを適用する（ステップＳ１３０）。
【０１２５】
次に、水平境界を対象とする各フィルタリング部１５２は、前の注目ＭＢについてフィルタリングが必要と判定された水平境界と直交するラインの各々に、対応する強度選択部１３２により選択されたフィルタ強度を有するデブロックフィルタを適用する（ステップＳ１４０）。
【０１２６】
その後、入力画像内に未処理のＭＢが残っている場合には、次のＭＢを新たな注目ＭＢとして、ステップＳ１１０〜Ｓ１４０の処理が繰り返される（ステップＳ１５０）。
【０１２７】
一方、入力画像内に未処理のＭＢが残っていない場合には、水平境界を対象とする各フィルタリング部１５２により、最後の注目ＭＢについてフィルタリングが必要と判定された水平境界と直交するラインの各々に、対応する強度選択部１３２により選択されたフィルタ強度を有するデブロックフィルタが適用される（ステップＳ１６０）。
【０１２８】
図２０は、図１９のステップＳ１２０に相当する、フィルタ強度選択処理の流れの一例を示すフローチャートである。なお、図２０では、１つの境界についてのフィルタ強度選択処理の流れの一例が示されている。
【０１２９】
図２０を参照すると、まず、タップ構築部１４１により構築される基本ラインの参照画素のタップに基づいて、パラメータ計算部１４２は、基本ラインについての強度選択用パラメータを計算する（ステップＳ１２１）。
【０１３０】
次に、選択部１４３は、ステップＳ１２１において計算された強度選択用パラメータを閾値と比較して評価することにより、各基本ラインについてのフィルタ強度を選択する（ステップＳ１２２）。そして、選択部１４３は、各基本ラインについてのフィルタ強度の選択結果をバッファ１４４へ出力して記憶させる（ステップＳ１２３）。
【０１３１】
その後のステップＳ１２５〜Ｓ１２９の処理は、処理対象の境界と直交する各ライン（以下、注目ラインという）について繰り返される（ステップＳ１２４）。
【０１３２】
ステップＳ１２５において、選択部１４３は、注目ラインが基本ラインであるかを判定する（ステップＳ１２５）。ここで、注目ラインが基本ラインでなければ、選択部１４３は、注目ラインについての評価パターン（例えば、上述した評価パターンＰ１〜Ｐ３のいずれか）を決定する（ステップＳ１２６）。そして、選択部１４３は、決定した評価パターンに従い、基本ラインについてのフィルタ強度の選択結果を用いて、注目ラインについてのフィルタ強度を選択する（ステップＳ１２７）。一方、注目ラインが基本ラインであれば、選択部１４３は、バッファ１４４によりバッファリングされている当該注目ラインについてのフィルタ強度の選択結果を取得する（ステップＳ１２８）。そして、選択部１４３は、注目ラインについてのフィルタ強度の選択結果をフィルタリングブロック１５０へ出力する（ステップＳ１２９）。
【０１３３】
（２）第２の例
図２１は、本実施例に係るデブロックフィルタ２４による処理の流れの第２の例を示すフローチャートである。第２の例では、入力画像内の全ての境界にわたる並列処理が実現される。
【０１３４】
図２１を参照すると、まず、境界判定部１１２−１〜１１２−ｎは、入力画像内の全ての垂直境界及び全ての水平境界について並列的に、フィルタリングの要否を判定する（ステップＳ２１０）。
【０１３５】
次に、強度選択部１３２−１〜１３２−ｎは、ステップＳ２１０においてフィルタリングが必要と判定された境界について並列的に、各境界と直交するラインの各々のフィルタ強度を選択する（ステップＳ２２０）。
【０１３６】
次に、フィルタリング部１５２−１〜１５２−ｎは、ステップＳ２１０においてフィルタリングが必要と判定された垂直境界と直交するラインに、強度選択部１３２−１〜１３２−ｎにより選択されたフィルタ強度を有するデブロックフィルタを適用する（ステップＳ２３０）。
【０１３７】
次に、フィルタリング部１５２−１〜１５２−ｎは、ステップＳ２１０においてフィルタリングが必要と判定された水平境界と直交するラインに、強度選択部１３２−１〜１３２−ｎにより選択されたフィルタ強度を有するデブロックフィルタを適用する（ステップＳ２４０）。
【０１３８】
（３）第３の例
図２２は、本実施例に係るデブロックフィルタ２４による処理の流れの第３の例を示すフローチャートである。第３の例では、第１の例と同様、マクロブロックごとの逐次処理が行われる。
【０１３９】
図２２を参照すると、まず、境界判定部１１２−１〜１１２−ｎは、入力画像内の１つの注目ＭＢに含まれる複数の垂直境界及び複数の水平境界について並列的に、フィルタリングの要否を判定する（ステップＳ３１０）。
【０１４０】
また、ステップＳ３１０と並列的に、強度選択部１３２−１〜１３２−ｎは、同じ注目ＭＢに含まれる複数の垂直境界及び複数の水平境界について、各境界と直交するラインの各々のフィルタ強度を選択する（ステップＳ３２０）。
【０１４１】
その後のステップＳ１３０〜Ｓ１６０の処理は、図１９に関連して説明したデブロックフィルタ２４による処理の流れの第１の例と同様である。
【０１４２】
なお、ここではマクロブロック（あるいはＬＣＵ）単位及び画像単位でそれぞれ処理が並列化される典型的な例について説明した。しかしながら、かかる例に限定されず、例えば、特定の数（２つ若しくは４つなど）のマクロブロック、又は水平方向若しくは垂直方向に並ぶ一群のブロックなどの様々な単位で、デブロックフィルタ２４による処理は並列化されてよい。
【０１４３】
＜４．第２の実施例＞
第２の実施例では、フィルタ強度の選択の的確さを向上させるために、以下に説明するような強度選択用パラメータの推定の仕組みが導入される。第１の実施例において導入された、フィルタリング要否判定処理、フィルタ強度選択処理及びフィルタリング処理の間の新たな依存関係は、本実施例においても活用される。
【０１４４】
［４−１．デブロックフィルタの構成例］
第２の実施例に係るデブロックフィルタ２４の全体的な構成は、図１６に示した第１の実施例に係るデブロックフィルタ２４の構成と同様であってよい。図２３は、第２の実施例に係る各強度選択部１３２の詳細な構成の一例を示すブロック図である。図２３を参照すると、各強度選択部１３２は、タップ構築部１４１、パラメータ計算部１４２、バッファ２４３、パラメータ推定部２４４及び選択部２４５を含む。
【０１４５】
本実施例において、選択部２４５は、各基本ラインについてパラメータ計算部１４２から入力される強度選択用パラメータｄ１、ｄ２及びｄ３の計算結果を、バッファ２４３に記憶させる。ここでの基本ラインは、第１の実施例と同様、各ブロックのブロックサイズが８×８画素である場合には、各境界の中央部分の３番目及び４番目の２つのラインであってよい。
【０１４６】
パラメータ推定部２４４は、基本ライン以外の各ライン（本実施例において、推定ラインという）についての強度選択用パラメータの値を、バッファ２４３により記憶されている基本ラインについての強度選択用パラメータの値を用いて推定する。図２４は、強度選択用パラメータの推定について説明するための説明図である。パラメータ推定部２４４による各推定ラインについての強度選択用パラメータの推定は、例えば、基本ラインについて計算されたパラメータ値を次のように外挿することにより行われてよい。
ｄＸ０＝４ｄＸ３−３ｄＸ４
ｄＸ１＝３ｄＸ３−２ｄＸ４
ｄＸ２＝２ｄＸ３−１ｄＸ４
ｄＸ５＝２ｄＸ４−１ｄＸ３
ｄＸ６＝３ｄＸ４−２ｄＸ３
ｄＸ７＝４ｄＸ４−３ｄＸ３
なお、ｄＸｉはｄ１ｉ、ｄ２ｉ及びｄ３ｉのいずれかであり、ｉはラインのインデックスである。
【０１４７】
選択部２４５は、基本ラインについては、パラメータ計算部１４２により計算された強度選択用パラメータの値を上述した条件Ｃ１〜Ｃ３に従って評価することにより、フィルタ強度を選択する。また、選択部２４５は、推定ラインについては、パラメータ推定部２４４により推定された強度選択用パラメータの値を上述した条件Ｃ１〜Ｃ３に従って評価することにより、フィルタ強度を選択する。そして、選択部２４５は、各ラインについてのフィルタ強度の選択結果を示す情報を、フィルタリングブロック１５０へ出力する。
【０１４８】
［４−２．処理の流れ］
本実施例に係るデブロックフィルタ２４による処理の全体的な流れは、図１９、図２１又は図２２に例示したような流れであってよい。図２５は、本実施例に係るフィルタ強度選択処理の流れの一例を示すフローチャートである。なお、図２５では、１つの境界についてのフィルタ強度選択処理の流れの一例が示されている。
【０１４９】
図２５を参照すると、まず、タップ構築部１４１により構築される基本ラインの参照画素のタップに基づいて、パラメータ計算部１４２は、基本ラインについての強度選択用パラメータを計算する（ステップＳ２２１）。
【０１５０】
次に、選択部２４５は、ステップＳ２２１において計算された基本ラインについての強度選択用パラメータの値をバッファ２４３へ出力して記憶させる（ステップＳ２２２）。
【０１５１】
その後のステップＳ２２４〜Ｓ２２８の処理は、処理対象の境界と直交する各ライン（以下、注目ラインという）について繰り返される（ステップＳ２２３）。
【０１５２】
ステップＳ２２４において、選択部２４５は、注目ラインが基本ラインであるかを判定する（ステップＳ２２４）。ここで、注目ラインが基本ラインでなければ、パラメータ推定部２４４により、注目ラインについての強度選択用パラメータの値が基本ラインについてのパラメータ値から推定される（ステップＳ２２５）。一方、注目ラインが基本ラインであれば、選択部２４５は、バッファ２４３によりバッファリングされている当該注目ラインについての強度選択用パラメータの値を取得する（ステップＳ２２６）。そして、選択部２４５は、パラメータ推定部２４４により推定され又はバッファ２４３から取得された強度選択用パラメータを用いて、注目ラインについてのフィルタ強度を選択する（ステップＳ２２７）。そして、選択部２４５は、注目ラインについてのフィルタ強度の選択結果をフィルタリングブロック１５０へ出力する（ステップＳ２２８）。
【０１５３】
このような第２の実施例によれば、基本ラインについての強度選択用パラメータの値から推定ラインについての強度選択用パラメータの値が推定され、推定された値に基づいてフィルタ強度が選択されるため、フィルタ強度の選択の的確さを向上させることができる。
【０１５４】
＜５．応用例＞
上述した実施形態に係る画像符号化装置１０及び画像復号装置６０は、衛星放送、ケーブルＴＶなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、４つの応用例について説明する。
【０１５５】
［５−１．第１の応用例］
図２６は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置９００は、アンテナ９０１、チューナ９０２、デマルチプレクサ９０３、デコーダ９０４、映像信号処理部９０５、表示部９０６、音声信号処理部９０７、スピーカ９０８、外部インタフェース９０９、制御部９１０、ユーザインタフェース９１１、及びバス９１２を備える。
【０１５６】
チューナ９０２は、アンテナ９０１を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ９０２は、復調により得られた符号化ビットストリームをデマルチプレクサ９０３へ出力する。即ち、チューナ９０２は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置９００における伝送手段としての役割を有する。
【０１５７】
デマルチプレクサ９０３は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ９０４へ出力する。また、デマルチプレクサ９０３は、符号化ビットストリームからＥＰＧ（Electronic  Program  Guide）などの補助的なデータを抽出し、抽出したデータを制御部９１０に供給する。なお、デマルチプレクサ９０３は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
【０１５８】
デコーダ９０４は、デマルチプレクサ９０３から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ９０４は、復号処理により生成される映像データを映像信号処理部９０５へ出力する。また、デコーダ９０４は、復号処理により生成される音声データを音声信号処理部９０７へ出力する。
【０１５９】
映像信号処理部９０５は、デコーダ９０４から入力される映像データを再生し、表示部９０６に映像を表示させる。また、映像信号処理部９０５は、ネットワークを介して供給されるアプリケーション画面を表示部９０６に表示させてもよい。また、映像信号処理部９０５は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部９０５は、例えばメニュー、ボタン又はカーソルなどのＧＵＩ（Graphical  User  Interface）の画像を生成し、生成した画像を出力画像に重畳してもよい。
【０１６０】
表示部９０６は、映像信号処理部９０５から供給される駆動信号により駆動され、表示デバイス（例えば、液晶ディスプレイ、プラズマディスプレイ又はＯＬＥＤなど）の映像面上に映像又は画像を表示する。
【０１６１】
音声信号処理部９０７は、デコーダ９０４から入力される音声データについてＤ／Ａ変換及び増幅などの再生処理を行い、スピーカ９０８から音声を出力させる。また、音声信号処理部９０７は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
【０１６２】
外部インタフェース９０９は、テレビジョン装置９００と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース９０９を介して受信される映像ストリーム又は音声ストリームが、デコーダ９０４により復号されてもよい。即ち、外部インタフェース９０９もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置９００における伝送手段としての役割を有する。
【０１６３】
制御部９１０は、ＣＰＵ（Central  Processing  Unit）などのプロセッサ、並びにＲＡＭ（Random  Access  Memory）及びＲＯＭ（Read  Only  Memory）などのメモリを有する。メモリは、ＣＰＵにより実行されるプログラム、プログラムデータ、ＥＰＧデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置９００の起動時にＣＰＵにより読み込まれ、実行される。ＣＰＵは、プログラムを実行することにより、例えばユーザインタフェース９１１から入力される操作信号に応じて、テレビジョン装置９００の動作を制御する。
【０１６４】
ユーザインタフェース９１１は、制御部９１０と接続される。ユーザインタフェース９１１は、例えば、ユーザがテレビジョン装置９００を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース９１１は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部９１０へ出力する。
【０１６５】
バス９１２は、チューナ９０２、デマルチプレクサ９０３、デコーダ９０４、映像信号処理部９０５、音声信号処理部９０７、外部インタフェース９０９及び制御部９１０を相互に接続する。
【０１６６】
このように構成されたテレビジョン装置９００において、デコーダ９０４は、上述した実施形態に係る画像復号装置６０の機能を有する。それにより、テレビジョン装置９００での画像の復号に際して、デブロックフィルタの処理の並列度を高めて処理を高速化することができる。
【０１６７】
［５−２．第２の応用例］
図２７は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機９２０は、アンテナ９２１、通信部９２２、音声コーデック９２３、スピーカ９２４、マイクロホン９２５、カメラ部９２６、画像処理部９２７、多重分離部９２８、記録再生部９２９、表示部９３０、制御部９３１、操作部９３２、及びバス９３３を備える。
【０１６８】
アンテナ９２１は、通信部９２２に接続される。スピーカ９２４及びマイクロホン９２５は、音声コーデック９２３に接続される。操作部９３２は、制御部９３１に接続される。バス９３３は、通信部９２２、音声コーデック９２３、カメラ部９２６、画像処理部９２７、多重分離部９２８、記録再生部９２９、表示部９３０、及び制御部９３１を相互に接続する。
【０１６９】
携帯電話機９２０は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
【０１７０】
音声通話モードにおいて、マイクロホン９２５により生成されるアナログ音声信号は、音声コーデック９２３に供給される。音声コーデック９２３は、アナログ音声信号を音声データへ変換し、変換された音声データをＡ／Ｄ変換し圧縮する。そして、音声コーデック９２３は、圧縮後の音声データを通信部９２２へ出力する。通信部９２２は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部９２２は、生成した送信信号をアンテナ９２１を介して基地局（図示せず）へ送信する。また、通信部９２２は、アンテナ９２１を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部９２２は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック９２３へ出力する。音声コーデック９２３は、音声データを伸張し及びＤ／Ａ変換し、アナログ音声信号を生成する。そして、音声コーデック９２３は、生成した音声信号をスピーカ９２４に供給して音声を出力させる。
【０１７１】
また、データ通信モードにおいて、例えば、制御部９３１は、操作部９３２を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部９３１は、文字を表示部９３０に表示させる。また、制御部９３１は、操作部９３２を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部９２２へ出力する。通信部９２２は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部９２２は、生成した送信信号をアンテナ９２１を介して基地局（図示せず）へ送信する。また、通信部９２２は、アンテナ９２１を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部９２２は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部９３１へ出力する。制御部９３１は、表示部９３０に電子メールの内容を表示させると共に、電子メールデータを記録再生部９２９の記憶媒体に記憶させる。
【０１７２】
記録再生部９２９は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、ＲＡＭ又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、ＵＳＢメモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
【０１７３】
また、撮影モードにおいて、例えば、カメラ部９２６は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部９２７へ出力する。画像処理部９２７は、カメラ部９２６から入力される画像データを符号化し、符号化ストリームを記録再生部９２９の記憶媒体に記憶させる。
【０１７４】
また、テレビ電話モードにおいて、例えば、多重分離部９２８は、画像処理部９２７により符号化された映像ストリームと、音声コーデック９２３から入力される音声ストリームとを多重化し、多重化したストリームを通信部９２２へ出力する。通信部９２２は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部９２２は、生成した送信信号をアンテナ９２１を介して基地局（図示せず）へ送信する。また、通信部９２２は、アンテナ９２１を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部９２２は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部９２８へ出力する。多重分離部９２８は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部９２７、音声ストリームを音声コーデック９２３へ出力する。画像処理部９２７は、映像ストリームを復号し、映像データを生成する。映像データは、表示部９３０に供給され、表示部９３０により一連の画像が表示される。音声コーデック９２３は、音声ストリームを伸張し及びＤ／Ａ変換し、アナログ音声信号を生成する。そして、音声コーデック９２３は、生成した音声信号をスピーカ９２４に供給して音声を出力させる。
【０１７５】
このように構成された携帯電話機９２０において、画像処理部９２７は、上述した実施形態に係る画像符号化装置１０及び画像復号装置６０の機能を有する。それにより、携帯電話機９２０での画像の符号化及び復号に際して、デブロックフィルタの処理の並列度を高めて処理を高速化することができる。
【０１７６】
［５−３．第３の応用例］
図２８は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置９４０は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置９４０は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置９４０は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置９４０は、音声データ及び映像データを復号する。
【０１７７】
記録再生装置９４０は、チューナ９４１、外部インタフェース９４２、エンコーダ９４３、ＨＤＤ（Hard  Disk  Drive）９４４、ディスクドライブ９４５、セレクタ９４６、デコーダ９４７、ＯＳＤ（On-Screen  Display）９４８、制御部９４９、及びユーザインタフェース９５０を備える。
【０１７８】
チューナ９４１は、アンテナ（図示せず）を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ９４１は、復調により得られた符号化ビットストリームをセレクタ９４６へ出力する。即ち、チューナ９４１は、記録再生装置９４０における伝送手段としての役割を有する。
【０１７９】
外部インタフェース９４２は、記録再生装置９４０と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース９４２は、例えば、ＩＥＥＥ１３９４インタフェース、ネットワークインタフェース、ＵＳＢインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース９４２を介して受信される映像データ及び音声データは、エンコーダ９４３へ入力される。即ち、外部インタフェース９４２は、記録再生装置９４０における伝送手段としての役割を有する。
【０１８０】
エンコーダ９４３は、外部インタフェース９４２から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ９４３は、符号化ビットストリームをセレクタ９４６へ出力する。
【０１８１】
ＨＤＤ９４４は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラム及びその他のデータを内部のハードディスクに記録する。また、ＨＤＤ９４４は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
【０１８２】
ディスクドライブ９４５は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ９４５に装着される記録媒体は、例えばＤＶＤディスク（ＤＶＤ−Ｖｉｄｅｏ、ＤＶＤ−ＲＡＭ、ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等）又はＢｌｕ−ｒａｙ（登録商標）ディスクなどであってよい。
【０１８３】
セレクタ９４６は、映像及び音声の記録時には、チューナ９４１又はエンコーダ９４３から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをＨＤＤ９４４又はディスクドライブ９４５へ出力する。また、セレクタ９４６は、映像及び音声の再生時には、ＨＤＤ９４４又はディスクドライブ９４５から入力される符号化ビットストリームをデコーダ９４７へ出力する。
【０１８４】
デコーダ９４７は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ９４７は、生成した映像データをＯＳＤ９４８へ出力する。また、デコーダ９０４は、生成した音声データを外部のスピーカへ出力する。
【０１８５】
ＯＳＤ９４８は、デコーダ９４７から入力される映像データを再生し、映像を表示する。また、ＯＳＤ９４８は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのＧＵＩの画像を重畳してもよい。
【０１８６】
制御部９４９は、ＣＰＵなどのプロセッサ、並びにＲＡＭ及びＲＯＭなどのメモリを有する。メモリは、ＣＰＵにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置９４０の起動時にＣＰＵにより読み込まれ、実行される。ＣＰＵは、プログラムを実行することにより、例えばユーザインタフェース９５０から入力される操作信号に応じて、記録再生装置９４０の動作を制御する。
【０１８７】
ユーザインタフェース９５０は、制御部９４９と接続される。ユーザインタフェース９５０は、例えば、ユーザが記録再生装置９４０を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース９５０は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部９４９へ出力する。
【０１８８】
このように構成された記録再生装置９４０において、エンコーダ９４３は、上述した実施形態に係る画像符号化装置１０の機能を有する。また、デコーダ９４７は、上述した実施形態に係る画像復号装置６０の機能を有する。それにより、記録再生装置９４０での画像の符号化及び復号に際して、デブロックフィルタの処理の並列度を高めて処理を高速化することができる。
【０１８９】
［５−４．第４の応用例］
図２９は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置９６０は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
【０１９０】
撮像装置９６０は、光学ブロック９６１、撮像部９６２、信号処理部９６３、画像処理部９６４、表示部９６５、外部インタフェース９６６、メモリ９６７、メディアドライブ９６８、ＯＳＤ９６９、制御部９７０、ユーザインタフェース９７１、及びバス９７２を備える。
【０１９１】
光学ブロック９６１は、撮像部９６２に接続される。撮像部９６２は、信号処理部９６３に接続される。表示部９６５は、画像処理部９６４に接続される。ユーザインタフェース９７１は、制御部９７０に接続される。バス９７２は、画像処理部９６４、外部インタフェース９６６、メモリ９６７、メディアドライブ９６８、ＯＳＤ９６９、及び制御部９７０を相互に接続する。
【０１９２】
光学ブロック９６１は、フォーカスレンズ及び絞り機構などを有する。光学ブロック９６１は、被写体の光学像を撮像部９６２の撮像面に結像させる。撮像部９６２は、ＣＣＤ又はＣＭＯＳなどのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部９６２は、画像信号を信号処理部９６３へ出力する。
【０１９３】
信号処理部９６３は、撮像部９６２から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部９６３は、カメラ信号処理後の画像データを画像処理部９６４へ出力する。
【０１９４】
画像処理部９６４は、信号処理部９６３から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部９６４は、生成した符号化データを外部インタフェース９６６又はメディアドライブ９６８へ出力する。また、画像処理部９６４は、外部インタフェース９６６又はメディアドライブ９６８から入力される符号化データを復号し、画像データを生成する。そして、画像処理部９６４は、生成した画像データを表示部９６５へ出力する。また、画像処理部９６４は、信号処理部９６３から入力される画像データを表示部９６５へ出力して画像を表示させてもよい。また、画像処理部９６４は、ＯＳＤ９６９から取得される表示用データを、表示部９６５へ出力する画像に重畳してもよい。
【０１９５】
ＯＳＤ９６９は、例えばメニュー、ボタン又はカーソルなどのＧＵＩの画像を生成して、生成した画像を画像処理部９６４へ出力する。
【０１９６】
外部インタフェース９６６は、例えばＵＳＢ入出力端子として構成される。外部インタフェース９６６は、例えば、画像の印刷時に、撮像装置９６０とプリンタとを接続する。また、外部インタフェース９６６には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置９６０にインストールされ得る。さらに、外部インタフェース９６６は、ＬＡＮ又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース９６６は、撮像装置９６０における伝送手段としての役割を有する。
【０１９７】
メディアドライブ９６８に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ９６８に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はＳＳＤ（Solid  State  Drive）のような非可搬性の記憶部が構成されてもよい。
【０１９８】
制御部９７０は、ＣＰＵなどのプロセッサ、並びにＲＡＭ及びＲＯＭなどのメモリを有する。メモリは、ＣＰＵにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置９６０の起動時にＣＰＵにより読み込まれ、実行される。ＣＰＵは、プログラムを実行することにより、例えばユーザインタフェース９７１から入力される操作信号に応じて、撮像装置９６０の動作を制御する。
【０１９９】
ユーザインタフェース９７１は、制御部９７０と接続される。ユーザインタフェース９７１は、例えば、ユーザが撮像装置９６０を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース９７１は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部９７０へ出力する。
【０２００】
このように構成された撮像装置９６０において、画像処理部９６４は、上述した実施形態に係る画像符号化装置１０及び画像復号装置６０の機能を有する。それにより、撮像装置９６０での画像の符号化及び復号に際して、デブロックフィルタの処理の並列度を高めて処理を高速化することができる。
【０２０１】
＜６．まとめ＞
ここまで、図１〜図２９を用いて、一実施形態に係る画像符号化装置１０及び画像復号装置６０のデブロックフィルタの２つの実施例について詳しく説明した。これら２つの実施例によれば、ブロックごとに復号される画像内の各境界に適用されるデブロックフィルタのフィルタ強度がデブロックフィルタへの入力画素値を用いて選択され、選択されたフィルタ強度で上記境界と直交するラインがフィルタリングされる。従って、ある境界についてのフィルタ強度の選択を、他の境界についてのフィルタリング処理の結果に依存することなく行うことが可能となる。よって、デブロックフィルタの適用に際しての処理のさらなる並列化が実現される。その結果、デブロックフィルタの多大な処理量を原因とする遅延又はデータレートの低下を緩和し、処理を高速化することができる。
【０２０２】
また、第１の実施例によれば、各境界と直交するラインの各々のフィルタ強度は、当該境界の中央部分の基本ラインについて計算される強度選択用パラメータを評価することにより選択される。即ち、フィルタ強度の選択のために全てのラインについて強度選択用パラメータを計算する必要がない。よって、少ない処理コストでのフィルタ強度の選択が可能であり、処理の実装も容易である。
【０２０３】
また、第２の実施例によれば、各境界の中央部分の基本ラインについて計算される強度選択用パラメータを用いて、基本ライン以外のラインについての強度選択用パラメータの値が推定される。従って、基本ライン以外のラインについてのフィルタ強度の選択の的確さを向上させることができる。
【０２０４】
なお、本明細書では、主に垂直境界についてのフィルタリング処理が水平境界についてのフィルタリング処理よりも先に行われる例を説明したが、水平境界についてのフィルタリング処理が先に行われる場合にも本開示に係る技術による上述した効果は同等に享受され得る。また、デブロックフィルタの処理単位のサイズ又はマクロブロックのサイズは、本明細書で説明した例に限定されず、他のサイズであってもよい。
【０２０５】
また、デブロックフィルタの処理の並列化のために使用される情報を符号化側から復号側に伝送する手法は、これら情報を符号化ストリームのヘッダに多重化する手法に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像（スライス若しくはブロックなど、画像の一部であってもよい）と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像（又はビットストリーム）とは別の伝送路上で伝送されてもよい。また、情報は、画像（又はビットストリーム）とは別の記録媒体（又は同一の記録媒体の別の記録エリア）に記録されてもよい。さらに、情報と画像（又はビットストリーム）とは、例えば、複数フレーム、１フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
【０２０６】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０２０７】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）
符号化ストリームを復号して画像を生成する復号部と、
前記復号部により生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、
前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、
を備える画像処理装置。
（２）
前記選択部により使用される前記入力画素値は、前記ブロック境界と直交する他の境界についてのフィルタリングによって更新されないラインに属する画素の画素値である、前記（１）に記載の画像処理装置。
（３）
前記選択部は、前記ブロック境界の中央部分のラインを、前記フィルタ強度の選択のために使用する、前記（２）に記載の画像処理装置。
（４）
各ブロックのブロックサイズは、８×８画素であり、
前記選択部は、前記中央部分の２つのラインの少なくとも１つについて計算される、ブロック歪みの強さに依存するパラメータを評価することにより、前記ブロック境界と直交する各ラインについての前記フィルタ強度を選択する、
前記（３）に記載の画像処理装置。
（５）
前記選択部は、前記２つのラインについて計算される前記パラメータの双方がブロック歪みが強いことを示している場合に、各ラインについて強フィルタを選択する、前記（４）に記載の画像処理装置。
（６）
前記選択部は、前記２つのラインのうち各ラインに近いラインについて計算される前記パラメータがブロック歪みが強いことを示している場合に、各ラインについて強フィルタを選択する、前記（４）に記載の画像処理装置。
（７）
前記選択部は、前記パラメータの評価のパターンをライン位置に応じて変更する、前記（４）に記載の画像処理装置。
（８）
前記選択部は、前記パラメータの評価のパターンを前記ブロック境界のＢＳ（Boundary  Strength）値に応じて変更する、前記（４）又は前記（７）に記載の画像処理装置。
（９）
前記選択部は、
前記中央部分のラインについてブロック歪みの強さに依存するパラメータを計算し、
計算されたパラメータを用いて前記ブロック境界の非中央部分の各ラインについての前記パラメータを推定し、
推定した前記パラメータを評価することにより、前記非中央部分の各ラインについて前記フィルタ強度を選択する、
前記（３）に記載の画像処理装置。
（１０）
各ブロックのブロックサイズは、８×８画素であり、
前記選択部は、前記中央部分の２つのラインについて計算される前記パラメータの値を外挿することにより、前記非中央部分の各ラインについての前記パラメータを推定する、
前記（９）に記載の画像処理装置。
（１１）
デブロックフィルタへの前記入力画素値を用いて、前記ブロック境界にデブロックフィルタを適用するかを判定する判定部、をさらに備え、
前記フィルタリング部は、前記判定部によりデブロックフィルタを適用すると判定された場合にのみ、前記ブロック境界にデブロックフィルタを適用する、
前記（１）〜（１０）のいずれか１項に記載の画像処理装置。
（１２）
前記判定部は、前記ブロック境界の中央部分のラインに属する画素の画素値を用いて前記判定を行い、
前記判定部による前記判定の条件は、前記ブロック境界の非中央部分のラインに属する画素の画素値が使用される場合の条件と比較して、よりデブロックフィルタが適用されにくい条件である、
前記（１１）に記載の画像処理装置。
（１３）
前記選択部による第１の境界についての前記フィルタ強度の選択は、前記第１の境界と直交する第２の境界についての前記フィルタリング部によるフィルタリングを待つことなく行われる、前記（１）〜（１２）のいずれか１項に記載の画像処理装置。
（１４）
前記選択部による前記フィルタ強度の選択は、前記判定部による前記判定と並列的に行われる、前記（１１）に記載の画像処理装置。
（１５）
符号化ストリームを復号して画像を生成することと、
生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、
選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、
を含む画像処理方法。
（１６）
符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、
前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、
前記フィルタリング部によりフィルタリングされた画像を用いて、前記符号化対象画像を符号化する符号化部と、
を備える画像処理装置。
（１７）
符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、
選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、
前記フィルタ強度でフィルタリングされた画像を用いて、前記符号化対象画像を符号化することと、
を含む画像処理方法。
【符号の説明】
【０２０８】
１０，  ６０      画像処理装置
１１２−１〜ｎ    判定部
１３２−１〜ｎ    選択部
１５２−１〜ｎ    フィルタリング部
１６０            制御部
【図１】
2013012815.tif 000008
【図２】
2013012815.tif 000009
【図３】
2013012815.tif 000010
【図４】
2013012815.tif 000011
【図５】
2013012815.tif 000012
【図６】
2013012815.tif 000013
【図７】
2013012815.tif 000014
【図８】
2013012815.tif 000015
【図９】
2013012815.tif 000016
【図１０】
2013012815.tif 000017
【図１１】
2013012815.tif 000018
【図１２】
2013012815.tif 000019
【図１３】
2013012815.tif 000020
【図１４】
2013012815.tif 000021
【図１５】
2013012815.tif 000022
【図１６】
2013012815.tif 000023
【図１７】
2013012815.tif 000024
【図１８】
2013012815.tif 000025
【図１９】
2013012815.tif 000026
【図２０】
2013012815.tif 000027
【図２１】
2013012815.tif 000028
【図２２】
2013012815.tif 000029
【図２３】
2013012815.tif 000030
【図２４】
2013012815.tif 000031
【図２５】
2013012815.tif 000032
【図２６】
2013012815.tif 000033
【図２７】
2013012815.tif 000034
【図２８】
2013012815.tif 000035
【図２９】
2013012815.tif 000036