(57)【要約】【課題】符号化効率の低減を抑制することができるようにする。【解決手段】復号画素分類部１５２および入力画素分類部１５３は、直交変換サイズバッファ１５１から読み出した直交変換サイズに基づいて、復号画像または入力画像の各マクロブロックをクラス分類する。４×４ブロック係数算出部１５４および８×８ブロック係数算出部１５５は、それぞれの直交変換ブロックにおいて、残差が最小となるようにフィルタ係数を算出する。ループフィルタ１１３の画素分類部１６１は、復号画像の各マクロブロックを、その直交変換ブロックサイズ毎にクラス分類する。フィルタ部（４×４）１６２およびフィルタ部（８×８）１６３は、それぞれが対応する直交変換ブロックに対して適切なフィルタ係数を適用し、フィルタ処理を行う。本発明は、例えば、画像処理装置に適用することができる。【選択図】図１１
2011049740.tif 000002
【特許請求の範囲】
【請求項１】
画像を、所定の画像サイズ毎に、前記画像に対して行われる直交変換処理において適用された直交変換サイズによって分類する分類手段と、
前記分類手段により分類された前記画像サイズ毎の各部分画像に対して、前記部分画像の前記直交変換サイズに対応する前記画像の局所的性質に応じて設定されたフィルタ係数を用いて、雑音除去のためのフィルタ処理を行うフィルタ手段と
を備える画像処理装置。
【請求項２】
前記フィルタ手段は、Wiener Filterである
請求項１に記載の画像処理装置。
【請求項３】
前記画像サイズは、マクロブロックであり、
前記分類手段は、各マクロブロックを、その直交変換サイズによって分類し、
前記フィルタ手段は、前記分類手段により分類された各マクロブロックに対して、その直交変換サイズに対応する前記画像の局所的性質に応じて設定された前記フィルタ係数を用いて前記フィルタ処理を行う
請求項１に記載の画像処理装置。
【請求項４】
前記画像を符号化し、符号化データを生成する符号化手段をさらに備える
請求項１に記載の画像処理装置。
【請求項５】
前記符号化手段は、前記画像をAVC（Advanced Video Coding）方式で符号化し、
前記分類手段は、前記符号化手段により、直交変換され、量子化され、逆量子化され、逆直交変換された復号画像を、前記画像サイズ毎に分類し、
前記フィルタ手段は、前記復号画像の前記部分画像に対して前記フィルタ処理を行い、フィルタ処理結果を参照画像としてフレームメモリに格納する
請求項４に記載の画像処理装置。
【請求項６】
前記符号化手段への入力画像と、前記復号画像とを用いて、前記フィルタ係数を算出するフィルタ係数算出手段をさらに備え、
前記フィルタ手段は、前記フィルタ係数算出手段により算出された前記フィルタ係数を用いて、前記フィルタ処理を行う
請求項５に記載の画像処理装置。
【請求項７】
前記フィルタ係数算出手段は、前記入力画像および前記復号画像を、それぞれ、前記画像サイズ毎に、前記符号化手段により行われる直交変換処理において適用される直交変換サイズによって分類し、各直交変換サイズ毎に、前記入力画像および前記復号画像の差分が最小となるように前記フィルタ係数を算出する
請求項６に記載の画像処理装置。
【請求項８】
前記フィルタ係数算出手段は、前記符号化手段により行われる直交変換処理において適用される直交変換サイズに対応する前記画像の局所的性質に応じて、前記フィルタ係数の値を設定する
請求項６に記載の画像処理装置。
【請求項９】
前記フィルタ係数算出手段は、前記符号化手段により行われる直交変換処理において適用される直交変換サイズに対応する前記画像の局所的性質に応じて、前記フィルタ係数のタップ数をさらに設定する
請求項８に記載の画像処理装置。
【請求項１０】
前記フィルタ係数算出手段は、前記直交変換サイズがより大きい程、前記フィルタ係数のタップ数を長く設定し、前記直交変換サイズが小さい程、前記フィルタ係数のタップ数を短く設定する
請求項９に記載の画像処理装置。
【請求項１１】
前記符号化手段により生成された前記符号化データに前記フィルタ係数を付加する付加手段をさらに備える
請求項４に記載の画像処理装置。
【請求項１２】
前記付加手段は、前記符号化データに、前記フィルタ処理を行うか否かを制御するフラグ情報をさらに付加する
請求項１１に記載の画像処理装置。
【請求項１３】
画像が符号化された符号化データから、前記フィルタ係数を抽出する抽出手段と、
前記符号化データを復号し、復号画像を生成する復号手段と
をさらに備え、
前記分類手段は、前記復号手段により生成された前記復号画像を、前記画像サイズ毎に、前記直交変換サイズによって分類し、
前記フィルタ手段は、前記分類手段により分類された前記画像サイズ毎の各部分画像に対して、前記抽出手段により抽出された前記フィルタ係数を用いて、雑音除去のためのフィルタ処理を行う
請求項１に記載の画像処理装置。
【請求項１４】
前記復号手段は、前記符号化データをAVC（Advanced Video Coding）方式で復号し、
前記分類手段は、前記復号手段により、復号され、逆量子化され、逆直交変換された前記復号画像を、前記画像サイズ毎に分類し、
前記フィルタ手段は、前記復号画像の前記部分画像に対して前記フィルタ処理を行う
請求項１３に記載の画像処理装置。
【請求項１５】
画像処理装置の分類手段が、画像を、所定の画像サイズ毎に、前記画像に対して行われる直交変換処理において適用された直交変換サイズによって分類し、
前記画像処理装置のフィルタ手段が、その分類された前記画像サイズ毎の各部分画像に対して、前記部分画像の前記直交変換サイズに対応する前記画像の局所的性質に応じて設定されたフィルタ係数を用いて、雑音除去のためのフィルタ処理を行う
画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法に関し、特に、画像を符号化し、復号することによる画質の劣化を抑制し、復号画像の画質をより向上させることができるようにした画像処理装置および方法に関する。
【背景技術】
【０００２】
近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮するMPEG（Moving Picture Experts Group）などの方式に準拠した装置が、放送局などの情報配信、及び一般家庭における情報受信の双方において普及しつつある。
【０００３】
特に、MPEG２（ISO（International Organization for Standardization）/IEC（International Electrotechnical Commission）13818-2）は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準で、プロフェッショナル用途及びコンシューマ用途の広範なアプリケーションに現在広く用いられている。MPEG２圧縮方式を用いることにより、例えば７２０×４８０画素を持つ標準解像度の飛び越し走査画像であれば４〜８Ｍｂｐｓ、１９２０×１０８８画素を持つ高解像度の飛び越し走査画像であれば１８〜２２Ｍｂｐｓの符号量（ビットレート）を割り当てることで、高い圧縮率と良好な画質の実現が可能である。
【０００４】
MPEG２は主として放送用に適合する高画質符号化を対象としていたが、MPEG１より低い符号量（ビットレート）、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG４符号化方式の標準化が行われた。画像符号化方式に関しては、１９９８年１２月にISO/IEC14496-2としてその規格が国際標準に承認された。
【０００５】
更に、近年、当初テレビ会議用の画像符号化を目的として、H.26L（ITU-T（ITU Telecommunication Standardization Sector）Q6/16  VCEG（Video Coding Experts Group））という標準の規格化が進んでいる。H.26LはMPEG２やMPEG４といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、現在、MPEG４の活動の一環として、このH.26Lをベースに、H.26Lではサポートされない機能をも取り入れ、より高い符号化効率を実現する標準化がJoint Model of Enhanced-Compression Video Codingとして行われている。標準化のスケジュールとしては、２００３年３月にはH.264及びMPEG４ Part１０（AVC（Advanced Video Coding））という名の元に国際標準となった。
【０００６】
更に、その拡張として、RGBや4:2:2、4:4:4といった、業務用に必要な符号化ツールや、MPEG２で規定されていた8x8DCT（Discrete Cosine Transform）や量子化マトリクスをも含んだFRExt（Fidelity Range Extension）の標準化が行われ、これにより、AVCを用いて、映画に含まれるフィルムノイズをも良好に表現することが可能な符号化方式となって、Blu-Ray Disc等の幅広いアプリケーションに用いられる運びとなった。
【０００７】
しかしながら、昨今、ハイビジョン画像の４倍の、４０００×２０００画素程度の画像を圧縮したい、或いは、インターネットのような、限られた伝送容量の環境において、ハイビジョン画像を配信したいといった、更なる高圧縮率符号化に対するニーズが高まっている。このため、先述の、ITU-T傘下のVCEGにおいて、符号化効率の改善に関する検討が継続され行なわれている。
【０００８】
また、最近、検討されている次世代のビデオ符号化技術として適応ループフィルタ（ALF（Adaptive Loop Filter））がある（例えば、非特許文献１および非特許文献２参照）。このループフィルタにより、フレーム毎に最適なフィルタ処理が行われ、デブロックフィルタで取りきれなかったブロック歪みや量子化による歪みを低減することができる。
【０００９】
ところで、マクロブロックサイズを１６画素×１６画素とするのは、次世代符号化方式の対象となるようなUHD（Ultra High Definition；４０００画素×２０００画素）といった大きな画枠に対しては、最適ではない。このような場合、マクロブロックサイズを、例えば、３２画素×３２画素、６４×６４画素といった大きさにすることが提案されている（例えば、非特許文献３参照）。
【先行技術文献】
【非特許文献】
【００１０】
【非特許文献１】Yi-Jen Chiu and L. Xu, “Adaptive (Wiener) Filter for Video Compression,” ITU-T SG16 Contribution, C437, Geneva, April 2008.
【非特許文献２】Takeshi. Chujoh, et al., “Block-based Adaptive Loop Filter” ITU-T SG16 Q6 VCEG Contribution, AI18, Germany, July, 2008
【非特許文献３】Qualcomm Inc, "Video Coding Using Extended Block Sizes" ITU-T SG16 Contribution, C123, English, January 2009.
【発明の概要】
【発明が解決しようとする課題】
【００１１】
一般に画像は局所的には様々な特徴をもっているため、局所的には最適なフィルタ係数は異なる。例えば、AVC符号化方式においては、直交変換の大きさが４×４である場合と、８×８である場合には、異なる画質劣化が観測される。例えば、８×８直交変換ブロックにおいては、４×４直交変換ブロックにおいては観測されないモスキート雑音が観測される。また、フラットなエリアについては、８×８直交変換ブロックが選択されやすいが、細かなテクスチャを含むエリアについては、４×４直交変換ブロックが選択されやすいという傾向がある。
【００１２】
しかしながら、従来提案されている方法においては、画像全体に対して一様にフィルタリングを施すのみであり、画像の持つ局所的性質に適したノイズ除去がなされているとは限らず、局所的には復号画像の画質が低下する恐れがあった。
【００１３】
本発明は、このような状況に鑑みて提案されたものであり、画像を符号化し、復号することによる画質の劣化を抑制し、復号画像の画質をより向上させることを目的とする。
【課題を解決するための手段】
【００１４】
本発明の一側面は、画像を、所定の画像サイズ毎に、前記画像に対して行われる直交変換処理において適用された直交変換サイズによって分類する分類手段と、前記分類手段により分類された前記画像サイズ毎の各部分画像に対して、前記部分画像の前記直交変換サイズに対応する前記画像の局所的性質に応じて設定されたフィルタ係数を用いて、雑音除去のためのフィルタ処理を行うフィルタ手段とを備える画像処理装置である。
【００１５】
前記フィルタ手段は、Wiener Filterであるようにすることができる。
【００１６】
前記画像サイズは、マクロブロックであり、前記分類手段は、各マクロブロックを、その直交変換サイズによって分類し、前記フィルタ手段は、前記分類手段により分類された各マクロブロックに対して、その直交変換サイズに対応する前記画像の局所的性質に応じて設定された前記フィルタ係数を用いて前記フィルタ処理を行うことができる。
【００１７】
前記画像を符号化し、符号化データを生成する符号化手段をさらに備えることができる。
【００１８】
前記符号化手段は、前記画像をAVC（Advanced Video Coding）方式で符号化し、前記分類手段は、前記符号化手段により、直交変換され、量子化され、逆量子化され、逆直交変換された復号画像を、前記画像サイズ毎に分類し、前記フィルタ手段は、前記復号画像の前記部分画像に対して前記フィルタ処理を行い、フィルタ処理結果を参照画像としてフレームメモリに格納することができる。
【００１９】
前記符号化手段への入力画像と、前記復号画像とを用いて、前記フィルタ係数を算出するフィルタ係数算出手段をさらに備え、前記フィルタ手段は、前記フィルタ係数算出手段により算出された前記フィルタ係数を用いて、前記フィルタ処理を行うことができる。
【００２０】
前記フィルタ係数算出手段は、前記入力画像および前記復号画像を、それぞれ、前記画像サイズ毎に、前記符号化手段により行われる直交変換処理において適用される直交変換サイズによって分類し、各直交変換サイズ毎に、前記入力画像および前記復号画像の差分が最小となるように前記フィルタ係数を算出することができる。
【００２１】
前記フィルタ係数算出手段は、前記符号化手段により行われる直交変換処理において適用される直交変換サイズに対応する前記画像の局所的性質に応じて、前記フィルタ係数の値を設定することができる。
【００２２】
前記フィルタ係数算出手段は、前記符号化手段により行われる直交変換処理において適用される直交変換サイズに対応する前記画像の局所的性質に応じて、前記フィルタ係数のタップ数をさらに設定することができる。
【００２３】
前記フィルタ係数算出手段は、前記直交変換サイズがより大きい程、前記フィルタ係数のタップ数を長く設定し、前記直交変換サイズが小さい程、前記フィルタ係数のタップ数を短く設定することができる。
【００２４】
前記符号化手段により生成された前記符号化データに前記フィルタ係数を付加する付加手段をさらに備えることができる。
【００２５】
前記付加手段は、前記符号化データに、前記フィルタ処理を行うか否かを制御するフラグ情報をさらに付加することができる。
【００２６】
画像が符号化された符号化データから、前記フィルタ係数を抽出する抽出手段と、前記符号化データを復号し、復号画像を生成する復号手段とをさらに備え、前記分類手段は、前記復号手段により生成された前記復号画像を、前記画像サイズ毎に、前記直交変換サイズによって分類し、前記フィルタ手段は、前記分類手段により分類された前記画像サイズ毎の各部分画像に対して、前記抽出手段により抽出された前記フィルタ係数を用いて、雑音除去のためのフィルタ処理を行うことができる。
【００２７】
前記復号手段は、前記符号化データをAVC（Advanced Video Coding）方式で復号し、前記分類手段は、前記復号手段により、復号され、逆量子化され、逆直交変換された前記復号画像を、前記画像サイズ毎に分類し、前記フィルタ手段は、前記復号画像の前記部分画像に対して前記フィルタ処理を行うことができる。
【００２８】
本発明の一側面は、また、画像処理装置の分類手段が、画像を、所定の画像サイズ毎に、前記画像に対して行われる直交変換処理において適用された直交変換サイズによって分類し、前記画像処理装置のフィルタ手段が、その分類された前記画像サイズ毎の各部分画像に対して、前記部分画像の前記直交変換サイズに対応する前記画像の局所的性質に応じて設定されたフィルタ係数を用いて、雑音除去のためのフィルタ処理を行う画像処理方法である。
【００２９】
本発明の一側面においては、画像が、所定の画像サイズ毎に、画像に対して行われる直交変換処理において適用された直交変換サイズによって分類され、その分類された画像サイズ毎の各部分画像に対して、部分画像の直交変換サイズに対応する画像の局所的性質に応じて設定されたフィルタ係数が用いられて、雑音除去のためのフィルタ処理が行われる。
【発明の効果】
【００３０】
本発明によれば、画像を符号化または復号することができる。特に、画像を符号化し、復号することによる画質の劣化を抑制し、復号画像の画質をより向上させることができる。
【図面の簡単な説明】
【００３１】
【図１】本発明を適用した画像符号化装置の主な構成例を示すブロック図である。
【図２】直交変換の単位の例を説明するための図である。
【図３】４×４直交変換を行うマクロブロックにおける処理について説明する図である。
【図４】整数変換、逆整数変換を、バタフライ演算により実現する方法を示す図である。
【図５】デブロックフィルタの動作原理を説明する図である。
【図６】Bsの定義の方法を説明する図である。
【図７】デブロックフィルタの動作原理を説明する図である。
【図８】indexAおよびindexBとαおよびβの値の対応関係の例を示す図である。
【図９】BsおよびindexAとtC0との対応関係の例を示す図である。
【図１０】マクロブロックの例を示す図である。
【図１１】ループフィルタおよびフィルタ係数算出部の主な構成例を示すブロック図である。
【図１２】符号化処理の流れの例を説明するフローチャートである。
【図１３】予測処理の流れの例を説明するフローチャートである。
【図１４】ループフィルタ処理の流れの例を説明するフローチャートである。
【図１５】本発明を適用した画像復号装置の主な構成例を示すブロック図である。
【図１６】ループフィルタの主な構成例を示すブロック図である。
【図１７】復号処理の流れの例を説明するフローチャートである。
【図１８】予測画像生成処理の流れの例を説明するフローチャートである。
【図１９】ループフィルタ処理の流れの例を説明するフローチャートである。
【図２０】ALFブロックおよびフィルタブロックフラグを説明する図である。
【図２１】ALFブロックおよびフィルタブロックフラグの他の例を説明する図である。
【図２２】本発明を適用したパーソナルコンピュータの主な構成例を示すブロック図である。
【図２３】本発明を適用したテレビジョン受像機の主な構成例を示すブロック図である。
【図２４】本発明を適用した携帯電話機の主な構成例を示すブロック図である。
【図２５】本発明を適用したハードディスクレコーダの主な構成例を示すブロック図である。
【図２６】本発明を適用したカメラの主な構成例を示すブロック図である。
【発明を実施するための形態】
【００３２】
以下、発明を実施するための形態（以下実施の形態とする）について説明する。なお、説明は以下の順序で行う。
１．第１の実施の形態（画像符号化装置）
２．第２の実施の形態（画像復号装置）
３．第３の実施の形態（ALFブロック制御）
４．第４の実施の形態（QALF）
５．第５の実施の形態（パーソナルコンピュータ）
６．第６の実施の形態（テレビジョン受像機）
７．第７の実施の形態（携帯電話機）
８．第８の実施の形態（ハードディスクレコーダ）
９．第９の実施の形態（カメラ）
【００３３】
＜１．第１の実施の形態＞
［デバイスの構成］
図１は、本発明を適用した画像処理装置としての画像符号化装置の一実施の形態の構成を表している。
【００３４】
図１に示される画像符号化装置１００は、例えば、H．264及びMPEG（Moving Picture Experts Group）４ Part１０（AVC（Advanced Video Coding））（以下H．264/AVCと称する）方式で画像を圧縮符号化する符号化装置であり、さらに、適応ループフィルタを採用している。
【００３５】
図１の例において、画像符号化装置１００は、A/D（Analog / Digital）変換部１０１、画面並べ替えバッファ１０２、演算部１０３、直交変換部１０４、量子化部１０５、可逆符号化部１０６、および蓄積バッファ１０７を有する。また、画像符号化装置１００は、逆量子化部１０８、逆直交変換部１０９、演算部１１０、およびデブロックフィルタ１１１を有する。さらに、画像符号化装置１００は、フィルタ係数算出部１１２、ループフィルタ１１３、およびフレームメモリ１１４を有する。また、画像符号化装置１００は、選択部１１５、イントラ予測部１１６、動き予測・補償部１１７、および選択部１１８を有する。さらに、画像符号化装置１００は、レート制御部１１９を有する。
【００３６】
A/D変換部１０１は、入力された画像データをA/D変換し、画面並べ替えバッファ１０２に出力し、記憶させる。画面並べ替えバッファ１０２は、記憶した表示の順番のフレームの画像を、GOP（Group of Picture）構造に応じて、符号化のためのフレームの順番に並べ替える。画面並べ替えバッファ１０２は、フレームの順番を並び替えた画像を、演算部１０３、イントラ予測部１１６、動き予測・補償部１１７、およびフィルタ係数算出部１１２に供給する。
【００３７】
演算部１０３は、画面並べ替えバッファ１０２から読み出された画像から、選択部１１８から供給される予測画像を減算し、その差分情報を直交変換部１０４に出力する。例えば、イントラ符号化が行われる画像の場合、演算部１０３は、画面並べ替えバッファ１０２から読み出された画像にイントラ予測部１１６から供給される予測画像を加算する。また、たとえば、インター符号化が行われる画像の場合、演算部１０３は、画面並べ替えバッファ１０２から読み出された画像に動き予測・補償部１１７から供給される予測画像を加算する。
【００３８】
直交変換部１０４は、演算部１０３からの差分情報に対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を量子化部１０５に供給する。また、直交変換部１０４は、各マクロブロックに対して、４×４直交変換と、８×８直交変換とのいずれを適用したかに関する情報（直交変換サイズ）を、フィルタ係数算出部１１２およびループフィルタ１１３に供給する。
【００３９】
量子化部１０５は、直交変換部１０４が出力する変換係数を量子化する。量子化部１０５は、量子化された変換係数を可逆符号化部１０６に供給する。
【００４０】
可逆符号化部１０６は、その量子化された変換係数に対して、可変長符号化、算術符号化等の可逆符号化を施す。
【００４１】
可逆符号化部１０６は、イントラ予測を示す情報などをイントラ予測部１１６から取得し、インター予測モードを示す情報などを動き予測・補償部１１７から取得する。なお、イントラ予測を示す情報は、以下、イントラ予測モード情報とも称する。また、インター予測を示す情報モードを示す情報は、以下、インター予測モード情報とも称する。
【００４２】
可逆符号化部１０６は、さらに、ループフィルタ１１３において使用されるフィルタ係数を、フィルタ係数算出部１１２から取得する。
【００４３】
可逆符号化部１０６は、量子化された変換係数を符号化するとともに、フィルタ係数、イントラ予測モード情報、インター予測モード情報、および量子化パラメータなどを、符号化データのヘッダ情報の一部とする（多重化する）。可逆符号化部１０６は、符号化して得られた符号化データを蓄積バッファ１０７に供給して蓄積させる。
【００４４】
例えば、可逆符号化部１０６においては、可変長符号化または算術符号化等の可逆符号化処理が行われる。可変長符号化としては、H．264/AVC方式で定められているCAVLC（Context-Adaptive Variable Length Coding）などがあげられる。算術符号化としては、CABAC（Context-Adaptive Binary Arithmetic Coding）などがあげられる。
【００４５】
蓄積バッファ１０７は、可逆符号化部１０６から供給された符号化データを、一時的に保持し、所定のタイミングにおいて、H．264/AVC方式で符号化された符号化画像として、例えば、後段の図示せぬ記録装置や伝送路などに出力する。
【００４６】
また、量子化部１０５において量子化された変換係数は、逆量子化部１０８にも供給される。逆量子化部１０８は、その量子化された変換係数を、量子化部１０５による量子化に対応する方法で逆量子化し、得られた変換係数を、逆直交変換部１０９に供給する。
【００４７】
逆直交変換部１０９は、供給された変換係数を、直交変換部１０４による直交変換処理に対応する方法で逆直交変換する。逆直交変換された出力は、演算部１１０に供給される。
【００４８】
演算部１１０は、逆直交変換部１０９より供給された逆直交変換結果、すなわち、復元された差分情報に、選択部１１８から供給される予測画像を加算し、局部的に復号された画像（復号画像）を得る。例えば、差分情報が、イントラ符号化が行われる画像に対応する場合、演算部１１０は、その差分情報にイントラ予測部１１６から供給される予測画像を加算する。また、たとえば、差分情報が、インター符号化が行われる画像に対応する場合、演算部１１０は、その差分情報に動き予測・補償部１１７から供給される予測画像を加算する。
【００４９】
その加算結果は、デブロックフィルタ１１１に供給される。
【００５０】
デブロックフィルタ１１１は、復号画像のブロック歪を除去する。デブロックフィルタ１１１は、その歪除去結果をループフィルタ１１３およびフレームメモリ１１４に供給する。
【００５１】
フィルタ係数算出部１１２には、デブロックフィルタ１１１からフレームメモリ１１４を介して供給される復号画像が供給される。また、フィルタ係数算出部１１２には、画面並べ替えバッファ１０２から読み出された入力画像が供給される。さらに、フィルタ係数算出部１１２には、直交変換部１０４から、直交変換サイズ（各マクロブロックに対して４×４直交変換と、８×８直交変換とのいずれが適用されたかに関する情報）が供給される。
【００５２】
フィルタ係数算出部１１２は、直交変換部１０４から供給される直交変換サイズに基づいて、復号画像および入力画像の各マクロブロックを、直交変換のサイズ毎にグループ分け（クラス分類）し、各グループ（クラス）毎に、ループフィルタ１１３において行われるフィルタ処理の適切なフィルタ係数を生成する。フィルタ係数算出部１１２は、各グループ（直交変換サイズ）において、残差（復号画像と入力画像との差分）を最小にするようにフィルタ係数を算出する。
【００５３】
フィルタ係数算出部１１２は、生成した各グループのフィルタ係数をループフィルタ１１３に供給する。また、フィルタ係数算出部１１２は、生成した各グループのフィルタ係数を可逆符号化部１０６にも供給する。上述したようにフィルタ係数は、可逆符号化部１０６により、符号化データに含められる（多重化される）。つまり、各グループのフィルタ係数は、符号化データとともに画像復号装置に送られる。
【００５４】
ループフィルタ１１３には、デブロックフィルタ１１１からフレームメモリ１１４を介して供給される復号画像が供給される。また、フィルタ係数算出部１１２には、直交変換部１０４から、直交変換サイズ（各マクロブロックに対して４×４直交変換と、８×８直交変換とのいずれが適用されたかに関する情報）が供給される。
【００５５】
ループフィルタ１１３は、直交変換部１０４から供給される直交変換サイズに基づいて、復号画像の各マクロブロックを、直交変換のサイズ毎にグループ分け（クラス分類）し、フィルタ係数算出部１１２から供給されたフィルタ係数を用いて、各グループ（クラス）毎に復号画像にフィルタ処理を行う。このフィルタとして、例えば、ウィナーフィルタ（Wiener Filter）が用いられる。もちろんウィナーフィルタ以外のフィルタを用いても良い。ループフィルタ１１３は、フィルタ処理結果をフレームメモリ１１４に供給し、参照画像として蓄積させる。
【００５６】
フレームメモリ１１４は、所定のタイミングにおいて、蓄積されている参照画像を、選択部１１５を介してイントラ符号化部１１６または動き予測・補償部１１７に出力する。例えば、イントラ符号化が行われる画像の場合、フレームメモリ１１４は、参照画像を、選択部１１５を介してイントラ予測部１１６に供給する。また、例えば、インター符号化が行われる画像の場合、フレームメモリ１１４は、参照画像を、選択部１１５を介して動き予測・補償部１１７に供給する。
【００５７】
画像符号化装置１００においては、例えば、画面並べ替えバッファ１０２からのＩピクチャ、Ｂピクチャ、およびＰピクチャが、イントラ予測（イントラ処理とも称する）する画像として、イントラ予測部１１６に供給される。また、画面並べ替えバッファ１０２から読み出されたＢピクチャおよびＰピクチャが、インター予測（インター処理とも称する）する画像として、動き予測・補償部１１７に供給される。
【００５８】
選択部１１５は、フレームメモリ１１４から供給される参照画像を、イントラ符号化を行う画像の場合、イントラ予測部１１６に供給し、インター符号化を行う画像の場合、動き予測・補償部１１７に供給する。
【００５９】
イントラ予測部１１６は、画面並べ替えバッファ１０２から読み出されたイントラ予測する画像とフレームメモリ１１４から供給された参照画像に基づいて、候補となる全てのイントラ予測モードのイントラ予測処理を行い、予測画像を生成する。
【００６０】
イントラ予測部１１６において、当該ブロック／マクロブロックに対して適用されたイントラ予測モード情報は、可逆符号化部１０６に伝送され、符号化データにおけるヘッダ情報の一部とされる。輝度信号に対しては、イントラ４×４予測モード、イントラ８×８予測モード及びイントラ１６×１６予測モードが定義されており、また、色差信号に関しては、それぞれのマクロブロックごとに、輝度信号とは独立した予測モードを定義することが可能である。イントラ４×４予測モードについては、それぞれの４×４輝度ブロックに対して１つのイントラ予測モードが定義されることになる。イントラ８×８予測モードについては、それぞれの８×８輝度ブロックに対して１つのイントラ予測モードが定義されることになる。イントラ１６×１６予測モード、並びに、色差信号に対しては、１つのマクロブロックに対してそれぞれ１つの予測モードが定義されることになる。
【００６１】
イントラ予測部１１６は、予測画像を生成したイントラ予測モードに対してコスト関数値を算出し、算出したコスト関数値が最小値を与えるイントラ予測モードを、最適イントラ予測モードとして選択する。イントラ予測部１１６は、最適イントラ予測モードで生成された予測画像を、選択部１１８を介して演算部１０３に供給する。
【００６２】
動き予測・補償部１１７は、インター符号化が行われる画像について、画面並べ替えバッファ１０２から供給される入力画像と、フレームメモリ１１４から供給される参照フレームとなる復号画像とを用いて、動きベクトルを算出する。動き予測・補償部１１７は、算出した動きベクトルに応じて動き補償処理を行い、予測画像（インター予測画像情報）を生成する。
【００６３】
動き予測・補償部１１７は、候補となる全てのインター予測モードのインター予測処理を行い、予測画像を生成する。このインター予測モードは、イントラ予測モードの場合と同様である。
【００６４】
動き予測・補償部１１７は、予測画像を生成したインター予測モードに対してコスト関数値を算出し、算出したコスト関数値が最小値を与えるインター予測モードを、最適インター予測モードとして選択する。動き予測・補償部１１７は、最適インター予測モードで生成された予測画像を、選択部１１８を介して演算部１０３に供給する。
【００６５】
動き予測・補償部１１７は、算出した動きベクトルを示す動きベクトル情報を可逆符号化部１０６に供給する。この動きベクトル情報は、可逆符号化部１０６により、符号化データに含められる（多重化される）。つまり、動きベクトル情報は、符号化データとともに画像復号装置に送られる。
【００６６】
選択部１１８は、イントラ符号化を行う画像の場合、イントラ予測部１１６の出力を演算部１０３に供給し、インター符号化を行う画像の場合、動き予測・補償部１１７の出力を演算部１０３に供給する。
【００６７】
レート制御部１１９は、蓄積バッファ１０７に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部１０５の量子化動作のレートを制御する。
【００６８】
［直交変換の説明］
次に、上述した各処理の詳細について説明する。最初に直交変換について説明する。
【００６９】
MPEG２符号化方式においては、直交変換は、８×８画素を単位として処理が行なわれていた。これに対して、AVC符号化方式と同様に直交変換を行う画像符号化装置１００は、Baseline Profile、Main Profile、Extended Profileにおいては、４×４画素を単位とした直交変換を行う。また、画像符号化装置１００は、High Profile以上においては、マクロブロック単位で、図２Ａに示される４×４画素単位の直交変換と、図２Ｂに示される８×８画素単位の直交変換を切り替えて用いることが可能である。
【００７０】
［４×４直交変換］
まず、４×４直交変換方式について説明する。４×４画素単位の直交変換は、以下のような特徴を有する。
【００７１】
第一の特徴は、MPEG２符号化方式においては、変換のための演算精度は、ある範囲内で、それぞれの符号化方式に対して、自由に設定することがあるため、逆変換におけるミスマッチ対策を行う必要があったが、本方式においては、変換、逆変換、ともに規格において規定されており、このようなミスマッチ対策を行うことが不要であるという点である。
【００７２】
第二の特徴は、演算が、携帯端末等に用いられるような、低消費電力型のデジタルシグナルプロセッサ（DSP（Digital Signal Processor））においても実現が可能であるよう、16-bitレジスタによる実装が可能であるという点である。
【００７３】
第三の特徴は、MPEG２等の、８×８画素単位の直交変換による符号化方式においては、高域係数の量子化誤差に起因してモスキート雑音が観測されていたが、本方式においては、このようなモスキート雑音が観測されにくいという点である。
【００７４】
図３に、直交変換及び量子化処理の概要を示す。すなわち、１つのマクロブロックに含まれる、輝度信号１６×１６画素、色差信号８×８画素は、それぞれ、図３に示されるように４×４画素ブロックに分割され、それぞれに対して整数変換処理及び量子化処理が施される。更に、色差信号に関しては、図３に示されるように、直流成分のみを集めた２×２マトリクスが生成され、これに２次のアダマール変換及び量子化処理が施される。
【００７５】
また、当該マクロブロックがイントラ１６×１６モードである場合には、図３に示す通り、直流成分のみを集めた４×４マトリクスが生成され、これに４次のアダマール変換及び量子化が施される。
【００７６】
４次の直交変換処理については、以下の式（１）ように記述することが出来る。
【００７７】
【数１】
2011049740.tif 000003
・・・（１）
【００７８】
この式（１）は、以下の式（２）のように、変形することができる。
【００７９】
【数２】
2011049740.tif 000004
・・・（２）
【００８０】
この式（２）は、さらに、以下の式（３）のように、変形することができる。
【００８１】
【数３】
2011049740.tif 000005
・・・（３）
【００８２】
したがって、行列［Ｃf］は、以下の式（４）のように表すことができる。
【００８３】
【数４】
2011049740.tif 000006
・・・（４）
【００８４】
つまり、画像符号化装置１００は、式（４）の右辺に示される行列を、整数変換行列として用いる。
【００８５】
これにより、add（加減算）およびshift（ビットシフト）により整数変換を実現することができる。
【００８６】
また、式（３）から、行列［Ｅf］は、以下の式（５）のように表すことができる。
【００８７】
【数５】
2011049740.tif 000007
・・・（５）
【００８８】
この式（５）の右辺の項については、画像符号化装置１００が４×４の成分ごとに異なる量子化処理を行うことで実現する。換言すれば、画像符号化装置１００は、整数変換と量子化処理の組み合わせにより、直交変換を実現している。
【００８９】
また、逆整数変換については、以下の式（６）のように表すことができる。
【００９０】
【数６】
2011049740.tif 000008
・・・（６）
【００９１】
したがって、式（６）の右辺は、以下の式（７）および式（８）のように表すことができる。
【００９２】
【数７】
2011049740.tif 000009
・・・（７）
【数８】
2011049740.tif 000010
・・・（８）
【００９３】
式（７）の右辺に示される行列は、逆量子化の結果得られる４×４行列であり、これに対して、式（８）の右辺に示される逆整数行列を施すことで復号画像に対する４×４行列が算出される。
【００９４】
逆整数変換についても、add（加減算）およびshift（ビットシフト）のみで実現することができる。
【００９５】
図４Ａ及び図４Ｂに、整数変換及び逆整数変換をバタフライ演算により実現するための手法を示す。
【００９６】
［８×８直交変換］
次に、AVC High Profile以上で用いることが可能である、８×８直交変換について説明する。
【００９７】
画像符号化装置１００において、８×８直交変換は、４×４の場合と同様、加減算とシフト演算のみにおいて実現される整数変換として定義されている。
【００９８】
画像符号化装置１００は、最初に、８点の水平方向の直交変換の計算を行い、次に、８点の垂直方向の変換を行う。
【００９９】
以下において、説明の簡略化のため、１次元で、８次の整数変換を説明する。
【０１００】
入力信号を、{d0,d1,d2,d3,d4,d5,d6,d7}とすると、まず、次の式（９）乃至式（１６）の計算が行われる。
【０１０１】
e0 = d0 + d7  ・・・（９）
e1 = d1 + d6  ・・・（１０）
e2 = d2 + d5  ・・・（１１）
e3 = d3 + d6  ・・・（１２）
e4 = d0 - d7  ・・・（１３）
e5 = d1 - d6  ・・・（１４）
e6 = d2 - d5  ・・・（１５）
e7 = d3 - d4  ・・・（１６）
【０１０２】
次に、{e0,e1,e2,e3,e4,e5,e6,e7}に対して以下の式（１７）乃至式（２４）の計算が行われる。
【０１０３】
e'0 = e0 + e3  ・・・（１７）
e'1 = e1 + e2  ・・・（１８）
e'2 = e0 - e3  ・・・（１９）
e'3 = e1 - e2  ・・・（２０）
e'4 = e5 + e6 + (e4>>1 + e4)  ・・・（２１）
e'5 = e4 - e7 - (e6>>1 + e6)  ・・・（２２）
e'6 = e4 + e7 - (e5>>1 + e5)  ・・・（２３）
e'7 = e5 - e6 + (e7>>1+e7)  ・・・（２４）
【０１０４】
更に、{e'0,e'1,e'2,e'3,e'4,e'5,e'6,e'7}に対して、以下の式（２５）乃至式（３２）の計算が行われ、直交変換された係数{D0,D1,D2,D3,D4,D5,D6,D7}が得られる。
【０１０５】
D0 = e'0 + e'1  ・・・（２５）
D2 = e'2 + e'3>>1  ・・・（２６）
D4 = e'0 - e'1  ・・・（２７）
D6 = e'2>>1 - e'3  ・・・（２８）
D1 = e'4 + e'7>>2  ・・・（２９）
D3 = e'5 + e'6>>2  ・・・（３０）
D5 = e'6 - e'5>>2  ・・・（３１）
D7 = -e'7 + e'4>>2  ・・・（３２）
【０１０６】
{D0,D1,D2,D3,D4,D5,D6,D7}から{d0,d1,d2,d3,d4,d5,d6,d7}への逆直交変換は以下のように行われる。
【０１０７】
すなわち、まず、{D0,D1,D2,D3,D4,D5,D6,D7}から{f0,f1,f2,f3,f4,f5,f6,f7}が、以下の式（３４）乃至式（４０）のように算出される。
【０１０８】
f0 = D0 + D4  ・・・（３３）
f1 = -D3 + D5 - (D7 + D7>>1)  ・・・（３４）
f2 = D0 - D4  ・・・（３５）
f3 = D1 + D7 - (D3 + D3>>1)  ・・・（３６）
f4 = D2>>1 - D6  ・・・（３７）
f5 = -D1 + D7 + (D5 + D5>>1)  ・・・（３８）
f6 = D2 + D6>>1  ・・・（３９）
f7 = D3 + D5 + (D1 + D1>>1)  ・・・（４０）
【０１０９】
次に、{f0,f1,f2,f3,f4,f5,f6,f7}から、{f'0,f'1,f'2,f'3,f'4,f'5,f'6,f'7}が、以下の式（４１）乃至式（４８）のように算出される。
【０１１０】
f'0 = f0 + f6  ・・・（４１）
f'1 = f1 + f7>>2  ・・・（４２）
f'2 = f2 + f4  ・・・（４３）
f'3 = f3 + f5>>2  ・・・（４４）
f'4 = f2 - f4  ・・・（４５）
f'5 = f3>>2 - f5  ・・・（４６）
f'6 = f0 - f6  ・・・（４７）
f'7 = f7 - f1>>2  ・・・（４８）
【０１１１】
最後に、{f'0,f'1,f'2,f'3,f'4,f'5,f'6,f'7}から、{d0,d1,d2,d3,d4,d5,d6,d7}が、以下の式（４９）乃至式（５６）のように算出される。
【０１１２】
d0 = f'0 + f'7  ・・・（４９）
d1 = f'2 + f'5  ・・・（５０）
d2 = f'4 + f'3  ・・・（５１）
d3 = f'6 + f'1  ・・・（５２）
d4 = f'6 - f'1  ・・・（５３）
d5 = f'4 - f'3  ・・・（５４）
d6 = f'2 - f'5  ・・・（５５）
d7 = f'0 - f'7  ・・・（５６）
【０１１３】
［デブロックフィルタ］
次にデブロックフィルタについて説明する。デブロックフィルタ１１１は、復号画像におけるブロック歪を除去する。これにより、動き補償処理により参照される画像へのブロック歪の伝播が抑制される。
【０１１４】
デブロックフィルタの処理としては、符号化データに含まれる、Picture Parameter Set RBSP（Raw Byte Sequence Payload）に含まれるdeblocking_filter_control_present_flag、及び、スライスヘッダ（Slice Header）に含まれるdisable_deblocking_filter_idcという２つのパラメータによって、以下の（ａ）乃至（ｃ）の３通りの方法が選択可能である。
【０１１５】
（ａ）ブロック境界、及びマクロブロック境界に施す
（ｂ）マクロブロック境界にのみ施す
（ｃ）施さない
【０１１６】
量子化パラメータQPについては、以下の処理を輝度信号に対して適用する場合は、QPYを、色差信号に対して適用する場合はQPCを用いる。また、動きベクトル符号化、イントラ予測、エントロピー符号化（CAVLC/CABAC）においては、異なるスライスに属する画素値は"not available"として処理するが、デブロックフィルタ処理においては、異なるスライスに属する画素値でも、同一のピクチャに属する場合は"available"であるとして処理を行う。
【０１１７】
以下においては、図５に示されるように、デブロックフィルタ処理前の画素値をp0〜p3、q0〜q3とし、処理後の画素値をp0'〜p3'、q0'〜q3'とする。
【０１１８】
まず、デブロックフィルタ処理に先立ち、図５におけるp及びqに対して、図６に示される表のように、Bs（Boundary Strength）が定義される。
【０１１９】
図５における(p2,p1,p0,q0,q1,q2)は、以下の式（５７）および式（５８）により示される条件が成立する場合のみ、デブロックフィルタ処理が施される。
【０１２０】
Bs > 0  ・・・（５７）
|p0-q0| < α; |p1-p0| < β; |q1-10| < β  ・・・（５８）
【０１２１】
式（５８）のαおよびβは、デフォルトでは以下のようにQPに応じてその値が定められているが、符号化データの、スライスヘッダに含まれる、slice_alpha_c0_offset_div2及びslice_beta_offset_div2という２つのパラメータによって、図７に示されるグラフの矢印のように、ユーザがその強度を調整することが可能である。
【０１２２】
図８に示される表のように、αはindexAから求められる。同様に、βはindexBから求められる。このindexAおよびindexBは、以下の式（５９）乃至式（６１）のように定義される。
【０１２３】
qPaν＝（qPp＋qPq＋１）＞＞１  ・・・（５９）
indexA＝Clip3（0,51,qPaν＋FilterOffsetA）  ・・・（６０）
indexB＝Clip3（0,51,qPaν＋FilterOffsetB）  ・・・（６１）
【０１２４】
式（６０）および式（６１）において、FilterOffsetA及びFilterOffsetBが、ユーザによる調整分に相当する。
【０１２５】
デブロックフィルタ処理は、以下に説明するように、Bs<4の場合と、Bs=4の場合とで、互いに異なる方法が定義されている。Bs<4の場合、デブロックフィルタ処理後の画素値p'0及びq'0が、以下の式（６２）乃至式（６４）のように求められる。
【０１２６】
Δ＝Clip3（−tc,tc（（（（q0−p0）＜＜２）＋（p1−q1）＋４）＞＞３））  ・・・（６２）
p'0＝Clip1（p0＋Δ）  ・・・（６３）
q'0＝Clip1（q0＋Δ）  ・・・（６４）
【０１２７】
ここで、tcは、以下の式（６５）または式（６６）ように算出される。すなわち、chromaEdgeFlagの値が「０」である場合、tcは以下の式（６５）のように算出される。
【０１２８】
tc＝tc0＋（（ap＜β）?1:0）＋（（ap＜β）?1:0）  ・・・（６５）
【０１２９】
また、chromaEdgeFlagの値が「０」以外である場合、tcは以下の式（６６）のように算出される。
【０１３０】
tc＝tc0＋１  ・・・（６６）
【０１３１】
tC0の値は、BsとindexAの値に応じて、図９Ａおよび図９Ｂに示される表のように定義される。
【０１３２】
また、式（６５）のap及びaqの値は、以下の式（６７）および（６８）のように算出される。
ap＝|p2−p0|  ・・・（６７）
aq＝|q2−q0|  ・・・（６８）
【０１３３】
デブロックフィルタ処理後の画素値p'1は以下のように求められる。すなわち、chromaEdgeFlagの値が「０」で、尚且つ、apの値がβ以下である場合、p'1は、以下の式（６９）のように求められる。
【０１３４】
p'1＝p1＋Clip3（−tc0,tc0,（p2＋（（p0＋q0＋１）＞＞１）−（p1＜＜１））＞＞１）
・・・（６９）
【０１３５】
また、式（６９）が成り立たない場合、p'1は、以下の式（７０）のように求められる。
【０１３６】
p'1＝p1  ・・・（７０）
【０１３７】
デブロックフィルタ処理後の画素値q'1は以下のように求められる。すなわち、chromaEdgeFlagの値が「０」で、尚且つ、aqの値がβ以下である場合、q'1は、以下の式（７１）のように求められる。
【０１３８】
q'1＝q1＋Clip3（−tc0,tc0,（q2＋（（p0＋q0＋１）＞＞１）−（q1＜＜１））＞＞１）
・・・（７１）
【０１３９】
また、式（７１）が成り立たない場合、q'1は、以下の式（７２）のように求められる。
【０１４０】
q'1＝q1  ・・・（７２）
【０１４１】
p'2及びq'2の値は、Filtering前の値p2及びq2と変わらない。すなわち、p'2は、以下の式（７３）のように求められ、q'2は、以下の式（７４）のように求められる。
【０１４２】
p'2＝p2  ・・・（７３）
q'2＝q2  ・・・（７４）
【０１４３】
Bs=4の場合、デブロックフィルタ後の画素値p'I（i＝0..2）は、以下のように求められる。chromaEdgeFlag の値が「０」であり、以下の式（７５）に示される条件が成り立つ場合、p'0、p'1、及びp'2は、以下の式（７６）乃至式（７８）のように求められる。
【０１４４】
ap＜β&&|p0−q0|＜（（α＞＞２）＋２）  ・・・（７５）
p'0＝（p2＋２×p1＋２×p0＋２×q0＋q1＋４）＞＞３  ・・・（７６）
p'1＝（p2＋p1＋p0＋q0＋２）＞＞２  ・・・（７７）
p'2＝（２×p3＋３×p2＋p1＋p0＋q0＋４）＞＞３  ・・・（７８）
【０１４５】
また、式（７５）に示される条件が成り立たない場合、p'0、p'1、及びp'2は、以下の式（７９）乃至（８１）のように求められる。
【０１４６】
p'0＝（２×p1＋p0＋q1＋２）＞＞２  ・・・（７９）
p'1＝p1  ・・・（８０）
p'2＝p2  ・・・（８１）
【０１４７】
デブロックフィルタ処理後の画素値q'i（I＝0..2）は、以下のように求められる。すなわち、chromaEdgeFlagの値が「０」であり、以下の式（８２）に示される条件が成り立つ場合、q'0、q'1、及びq'2は、以下の式（８３）乃至（８５）のように求められる。
【０１４８】
aq＜β&&|p0−q0|＜（（α＞＞２）＋２）  ・・・（８２）
q'0＝（p1＋２×p0＋２×q0＋２×q1＋q2＋４）＞＞３  ・・・（８３）
q'1＝（p0＋q0＋q1＋q2＋２）＞＞２  ・・・（８４）
q'2＝（２×q3＋３×q2＋q1＋q0＋p4＋４）＞＞３  ・・・（８５）
【０１４９】
また、式（８２）に示される条件が成り立たない場合、q'0、q'1、及びq'2は、以下の式（８６）乃至（８８）のように求められる。
【０１５０】
q'0＝（２×q1＋q0＋p1＋２）＞＞２  ・・・（８６）
q'1＝q1  ・・・（８７）
q'2＝q2  ・・・（８８）
【０１５１】
［ループフィルタ］
ところで、4000×2000画素といった、更に高い解像度の画像の伝送や、既存のハイビジョン画像を、インターネットのような限られたバンド幅の回線において伝送する場合、AVCにより実現される圧縮率ではまだ不十分である。
【０１５２】
そこで、符号化効率改善の１手法として、画像符号化装置１００においては、ループフィルタ１１３が用いられる。ループフィルタ１１３には、例えば、Wiener Filterが適用される。もちろん、ループフィルタ１１３としてWiener Filter以外を用いるようにしてもよい。ループフィルタ１１３は、デブロックフィルタ処理された復号画像に対して、フィルタ処理を行うことにより、原画像との残差を最小にする。フィルタ係数算出部１１２は、フィルタ処理によって復号画像と原画像との残差が最小となるように、ループフィルタ係数の算出を行う。ループフィルタ１１３は、このフィルタ係数を用いてフィルタ処理を行う。なお、このフィルタ係数は、符号化データに付加されて画像復号装置に伝送され、復号時のフィルタ処理にも使用される。
【０１５３】
画像符号化装置１００は、このようなフィルタ処理を行うことにより、復号画像の画質を向上させ、更に、参照画像の画質も向上させることができる。
【０１５４】
［予測モードの選択］
ところで、マクロブロックサイズを１６画素×１６画素とするのは、次世代符号化方式の対象となるような、UHD（Ultra High Definition；４０００画素×２０００画素）といった大きな画枠に対しては、最適ではない。そこで、マクロブロックサイズを、例えば、３２画素×３２画素、６４×６４画素といった大きさにすることが提案されている。
【０１５５】
より高い符号化効率を達成するには、適切な予測モードの選択が重要である。例えば、High Complexity Modeと、Low Complexity Modeの２通りのモード判定方法を選択する方法が考えられる。この方法の場合、どちらも、それぞれの予測モードModeに関するコスト関数値を算出し、これを最小にする予測モードを当該ブロック乃至マクロブロックに対する最適モードとして選択する。
【０１５６】
High Complexity Modeにおけるコスト関数は、以下の式（８９）のように求めることができる。
【０１５７】
Cost（Mode∈Ω）＝Ｄ＋λ×Ｒ  ・・・（８９）
【０１５８】
式（８９）において、Ωは、当該ブロック乃至マクロブロックを符号化するための候補モードの全体集合である。また、Ｄは、当該予測モードModeで符号化した場合の、復号画像と入力画像の差分エネルギーである。さらに、λは、量子化パラメータの関数として与えられるLagrange未定乗数である。また、Ｒは、直交変換係数を含んだ、当該モードModeで符号化した場合の総符号量である。
【０１５９】
つまり、High Complexity Modeでの符号化を行なうには、上記パラメータＤ及びＲを算出するため、全ての候補モードModeにより、一度、仮エンコード処理を行う必要があり、より高い演算量を要する。
【０１６０】
これに対してLow Complexity Modeにおけるコスト関数は、以下の式（９０）のように求めることができる。
【０１６１】
Cost（Mode∈Ω）＝Ｄ＋QP2Quant（QP）×HeaderBit  ・・・（９０）
【０１６２】
となる。式（９０）において、Ｄは、High Complexity Modeの場合と異なり、予測画像と入力画像の差分エネルギーとなる。また、QP2Quant（QP）は、量子化パラメータQPの関数として与えられる。さらに、HeaderBitは、直交変換係数を含まない、動きベクトルや、モードといった、Headerに属する情報に関する符号量である。
【０１６３】
すなわち、Low Complexity Modeにおいては、それぞれの候補モードModeに関して、予測処理を行う必要があるが、復号画像までは必要ないため、符号化処理まで行う必要はない。このため、High Complexity Modeより低い演算量での実現が可能である。
【０１６４】
High Profileにおいては、図２に示されたような、４×４直交変換と、８×８直交変換との選択も、上述のHigh Complexity Mode若しくはLow Complexity Modeのいずれかに基づき行なわれる。
【０１６５】
ところで、マクロブロックサイズを１６画素×１６画素とするのは、次世代符号化方式の対象となるような、UHDといった大きな画枠に対しては、最適ではない。マクロブロックサイズを、図１０に示されるように、例えば、３２画素×３２画素といった大きさにすることが提案されている。
【０１６６】
図１０のような、階層構造を採用することにより、１６×１６画素ブロック以下に関しては、現在のAVCにおけるマクロブロックと互換性を保ちながら、そのスーパーセットとして、より大きなブロックが定義されている。
【０１６７】
［詳細な構成例］
以上のように、画像符号化装置１００は、画像符号化処理に、ループフィルタ処理を適用する。画像符号化装置１００は、直交変換サイズ毎に、このループフィルタ処理の適切なフィルタ係数を求め、各マクロブロックを、その直交変換サイズに適したフィルタ係数でフィルタ処理する。
【０１６８】
以下に、このようなループフィルタに関する構成である、フィルタ係数算出部１１２およびループフィルタ１１３の構成の詳細について説明する。
【０１６９】
図１１は、フィルタ係数算出部１１２およびループフィルタ１１３の主な構成例を示すブロック図である。
【０１７０】
図１１に示されるように、フィルタ係数算出部１１２は、直交変換サイズバッファ１５１、復号画素分類部１５２、入力画素分類部１５３、４×４ブロック係数算出部１５４、および８×８ブロック係数算出部１５５を有する。
【０１７１】
また、ループフィルタ１１３は、画素分類部１６１、フィルタ部（４×４）１６２、およびフィルタ部（８×８）１６３を有する。
【０１７２】
まず、デブロックフィルタ１１１から、復号画像がフレームメモリ１１４に供給される。また、各マクロブロックに対する直交変換サイズ（４×４であるか、８×８であるか）に関する情報が、直交変換部１０４から、フィルタ係数算出部１１２の直交変換サイズバッファ１５１へ供給される。
【０１７３】
復号画像は、更に、フレームメモリ１１４からフィルタ係数算出部１１２の復号画素分類部１５２へ供給される。また、入力画像は、画面並べ替えバッファ１０２から、入力画素分類部１５３へ供給される。
【０１７４】
復号画素分類部１５２は、直交変換サイズバッファ１５１から、直交変換サイズに関する情報を読み出し、取得する。復号画素分類部１５２は、取得した直交変換サイズに基づいて、復号画像の各マクロブロックを、４×４直交変換が適用されたマクロブロック（４×４直交変換ブロック）と、８×８直交変換が適用されたマクロブロック（８×８直交変換ブロック）とにクラス分類（グループ分け）する。そして、復号画素分類部１５２は、復号画像のうち、４×４直交変換ブロックに関する情報を、４×４ブロック係数算出部１５４に供給し、８×８直交変換ブロックに関する情報を、８×８ブロック係数算出部１５５に供給する。
【０１７５】
同様に、入力画素分類部１５３は、直交変換サイズバッファ１５１から、直交変換サイズに関する情報を読み出し、取得する。入力画素分類部１５３は、取得した直交変換サイズに基づいて、入力画像の各マクロブロックを、４×４直交変換が適用されたマクロブロック（４×４直交変換ブロック）と、８×８直交変換が適用されたマクロブロック（８×８直交変換ブロック）とにクラス分類（グループ分け）する。そして、入力画素分類部１５３は、入力画像のうち、４×４直交変換ブロックに関する情報を、４×４ブロック係数算出部１５４に供給し、８×８直交変換ブロックに関する情報を、８×８ブロック係数算出部１５５に供給する。
【０１７６】
４×４ブロック係数算出部１５４は、供給された４×４直交変換ブロックの復号画像および入力画像を用いて、残差が最小となるようにフィルタ係数（例えば、Wiener Filter係数）を算出する。４×４ブロック係数算出部１５４は、算出したフィルタ係数を、可逆符号化部１０６に供給するとともに、ループフィルタ１１３のフィルタ部（４×４）１６２に供給する。
【０１７７】
同様に、８×８ブロック係数算出部１５５は、供給された８×８直交変換ブロックの復号画像および入力画像を用いて、残差が最小となるようにフィルタ係数（例えば、Wiener Filter係数）を算出する。８×８ブロック係数算出部１５５は、算出したフィルタ係数を、可逆符号化部１０６に供給するとともに、ループフィルタ１１３のフィルタ部（８×８）１６３に供給する。
【０１７８】
可逆符号化部１０６は、供給された各フィルタ係数を符号化データに付加する。
【０１７９】
ところで、ループフィルタ１１３の画素分類部１６１には、各マクロブロックに対する直交変換サイズ（４×４であるか、８×８であるか）に関する情報が、直交変換部１０４から供給される。そして、その画素分類部１６１には、デブロックフィルタ１１１から復号画像が供給される。
【０１８０】
画素分類部１６１は、直交変換部１０４から供給される直交変換サイズに関する情報に基づいて、復号画像の各マクロブロックを、４×４直交変換が適用されたマクロブロック（４×４直交変換ブロック）と、８×８直交変換が適用されたマクロブロック（８×８直交変換ブロック）とにクラス分類（グループ分け）する。そして、画素分類部１６１は、復号画像のうち、４×４直交変換ブロックに関する情報を、フィルタ部（４×４）１６２に供給し、８×８直交変換ブロックに関する情報を、フィルタ部（８×８）１６３に供給する。
【０１８１】
フィルタ部（４×４）１６２は、４×４ブロック係数算出部１５４から供給された４×４直交変換ブロックにとって適切なフィルタ係数を適用し、復号画像の４×４直交変換ブロックに対してフィルタ処理を行う。
【０１８２】
フィルタ部（８×８）１６３は、８×８ブロック係数算出部１５５から供給された８×８直交変換ブロックにとって適切なフィルタ係数を適用し、復号画像の８×８直交変換ブロックに対してフィルタ処理を行う。
【０１８３】
フィルタ部（４×４）１６２およびフィルタ部（８×８）１６３は、フィルタ処理を施した復号画像を、フレームメモリ１１４に格納し、所定のタイミングにおいて動き予測・補償部１１７へと出力させる。
【０１８４】
フィルタ係数算出部１１２およびループフィルタ１１３は、以上のように処理を行い、直交変換サイズ毎にフィルタ係数を生成し、フィルタ処理を行う。
【０１８５】
画像内における局所的な性質は、直交変換サイズに反映されると言える。例えば、フラットなエリア（周波数が疎な部分）については、８×８直交変換が選ばれやすく、細かなテクスチャを含むエリア（周波数が密な部分）については、４×４直交変換が選ばれやすい。
【０１８６】
更に、また、８×８直交変換と、４×４直交変換では、異なる画質劣化の傾向が観測される。例えば、８×８直交変換においては、モスキート雑音が観測されやすいが、４×４直交変換では、モスキート雑音は観測されにくい。
【０１８７】
したがって、フィルタ係数算出部１１２は、上述したように直交変換サイズ毎にフィルタ係数を生成することにより、画像内の局所的な性質をフィルタ係数に反映させる。例えば、フィルタ係数算出部１１２は、フィルタ係数の値を調整することにより、ループフィルタ１１３が、周波数が疎な部分に対してフィルタを弱めにかけ、周波数が密な部分に対してフィルタを強めにかけるように制御することができる。
【０１８８】
なお、フィルタ係数算出部１１２は、単にフィルタ係数の値を変更するだけでなく、フィルタのタップ数を増減させることもできる。例えば、フィルタ係数算出部１１２は、周波数が疎な部分に対してタップ数を少なくし、周波数が密な部分に対してタップ数を多くするようにしてもよい。もちろん、フィルタ係数算出部１１２が、フィルタ係数の値の調整とタップ数の増減の両方を行うようにしてもよい。
【０１８９】
このように画像内の局所的な性質が反映されたフィルタ係数を用いてフィルタ処理を行うので、ループフィルタ１１３は、画像の持つ局所的性質に適したノイズ除去を行うことができ、復号画像の画質をより向上させることができる。
【０１９０】
なお、画像符号化装置１００は、以上のように、直交変換サイズという、既に、シンタクス要素として存在する値に基づいた切り替えを行うため、改めて、どちらのフィルタ係数を送るかに関するマップ情報を符号化データに付加する必要がないため、符号化データにおけるオーバーヘッドを増加させる（符号化効率を低減させる）ことなく、高画質処理を実現することが可能である。
【０１９１】
［処理の流れ］
次に、以上のように構成される各部を用いた処理の流れについて説明する。最初に、画像符号化装置１００により行われる符号化処理の流れの例を、図１２のフローチャートを参照して説明する。
【０１９２】
ステップＳ１０１において、A/D変換部１０１は入力された画像をA/D変換する。ステップＳ１０２において、画面並べ替えバッファ１０２は、A/D変換された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
【０１９３】
ステップＳ１０３において、イントラ予測部１１６や動き予測・補償部１１７等は、予測モードを決定し、予測画像を生成する予測処理を行う。この予測処理の詳細については、後述する。
【０１９４】
ステップＳ１０４において、演算部１０３は、ステップＳ１０２の処理により並び替えられた画像と、ステップＳ１０３の予測処理により生成された予測画像との差分を演算する。予測画像は、インター予測する場合は動き予測・補償部１１７から、イントラ予測する場合はイントラ予測部１１６から、それぞれ選択部１１８を介して演算部１０３に供給される。
【０１９５】
差分データは元の画像データに較べてデータ量が小さくなっている。したがって、画像をそのまま符号化する場合に較べて、データ量を圧縮することができる。
【０１９６】
ステップＳ１０５において、直交変換部１０４は、ステップＳ１０４の処理により生成された差分情報を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数が出力される。ステップＳ１０６において、量子化部１０５は変換係数を量子化する。この量子化に際しては、後述するステップＳ１１５の処理で説明されるように、レートが制御される。
【０１９７】
ステップＳ１０７において、可逆符号化部１０６は量子化部１０５より出力された量子化された変換係数を符号化する。
【０１９８】
また、量子化された差分情報は、次のようにして局部的に復号される。すなわち、ステップＳ１０８において、逆量子化部１０８は量子化部１０５により量子化された変換係数を量子化部１０５の特性に対応する特性で逆量子化する。ステップＳ１０９において、逆直交変換部１０９は逆量子化部１０８により逆量子化された変換係数を直交変換部１０４の特性に対応する特性で逆直交変換する。
【０１９９】
ステップＳ１１０において、演算部１１０は、選択部１１８を介して供給される予測画像を局部的に復号された差分情報に加算し、局部的に復号された画像（演算部１０３への入力に対応する画像）を生成する。ステップＳ１１１においてデブロックフィルタ１１１は、演算部１１０より供給された復号画像に対しデブロックフィルタを行う。これによりブロック歪みが除去される。
【０２００】
以上の処理が、１ピクチャ分行われると、フィルタ係数算出部１１２およびループフィルタ１１３は、ステップＳ１１２において、ループフィルタ処理を行う。ループフィルタ処理の詳細については後述する。
【０２０１】
ステップＳ１１３において、可逆符号化部１０６は、イントラ予測モード情報、インター予測モード情報、および各直交変換ブロック用のフィルタ係数等のメタデータをスライスヘッダに埋め込む（記述する）。このメタデータは、画像復号時に読み出され利用される。
【０２０２】
ステップＳ１１４において蓄積バッファ１０７は、符号化データを蓄積する。蓄積バッファ１０７に蓄積された符号化データは、適宜読み出され、伝送路を介して復号側に伝送される。
【０２０３】
ステップＳ１１５においてレート制御部１１９は、蓄積バッファ１０７に蓄積された符号化データに基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部１０５の量子化動作のレートを制御する。
【０２０４】
次に、図１３のフローチャートを参照し、図１２のステップＳ１０３において実行される予測処理の流れの例を説明する。
【０２０５】
予測処理が開始されると、ステップＳ１３１において、イントラ予測部１１６は、選択部１１５を介してフレームメモリ１１４から取得した参照画像、および、画面並べ替えバッファ１０２から供給される入力画像を用いて、イントラ４×４、イントラ８×８、およびイントラ１６×１６のそれぞれのモード（予め用意された各イントラモード）に対するコスト関数値を算出する。
【０２０６】
ステップＳ１３２において、イントラ予測部１１６は、ステップＳ１３１において算出された各モードのコスト関数値に基づいて、イントラ４×４、イントラ８×８、およびイントラ１６×１６のそれぞれに対するベストモードを決定する。
【０２０７】
ステップＳ１３３において、イントラ予測部１１６は、イントラ４×４、イントラ８×８、およびイントラ１６×１６の中から、ベストイントラモードを選択する。
【０２０８】
このステップＳ１３１乃至ステップＳ１３３の各処理と並行して、動き予測・補償部１１７は、ステップＳ１３４乃至ステップＳ１３７の各処理を実行する。
【０２０９】
ステップＳ１３４において、動き予測・補償部１１７は、動き探索を行う。ステップＳ１３５において、動き予測・補償部１１７は、インター１６×１６乃至４×４のそれぞれのモードに対して、動きベクトル・参照フレームを決定する。
【０２１０】
ステップＳ１３６において、動き予測・補償部１１７は、インター１６×１６乃至４×４のそれぞれのモードに対して、コスト関数値を算出する。
【０２１１】
ステップＳ１３７において、動き予測・補償部１１７は、そのコスト関数値に基づいて、ベストインターモードを決定する。
【０２１２】
ステップＳ１３８において、選択部１１８は、ステップＳ１３３において選択されたベストイントラモードと、ステップＳ１３７において決定されたベストインターモードとのいずれか一方をベストモードに決定する。
【０２１３】
ステップＳ１３９において、ベストモードに決定されたモードに対応するイントラ予測部１１６または動き予測・補償部１１７は、予測画像を生成する。この予測画像は、選択部１１８を介して、演算部１０３および演算部１１０に供給される。また、このときのベストモードの予測モード情報（イントラ予測モード情報またはインター予測モード情報）が可逆符号化部１０６に供給される。
【０２１４】
予測画像が生成されると予測処理が終了され、図１２のステップＳ１０３に戻り、ステップＳ１０４以降の処理が実行される。
【０２１５】
次に、図１４のフローチャートを参照して、図１２のステップＳ１１２において実行されるループフィルタ処理の流れの例を説明する。
【０２１６】
ループフィルタ処理が開始されると、ステップＳ１５１において、復号画素分類部１５２、入力画素分類部１５３、および画素分類部１６１は、それぞれ、供給された復号画像または入力画像の各マクロブロックを、図１２のステップＳ１０５において実行される直交変換処理において適用された直交変換サイズ毎にグループに分ける（クラス分類を行う）。
【０２１７】
ステップＳ１５２において、４×４ブロック係数算出部１５４および８×８ブロック係数算出部１５５は、各グループに対してフィルタ係数を算出する。
【０２１８】
ステップＳ１５３において、フィルタ部（４×４）１６２およびフィルタ部（８×８）１６３は、各グループに対して、ステップＳ１５２において算出された各フィルタ係数を用いてフィルタ処理を行う。
【０２１９】
ステップＳ１５４において、フレームメモリ１１４は、ステップＳ１５３において行われたフィルタ処理の結果（フィルタ処理された復号画像）を記憶する。この画像は、所定のタイミングにおいて、参照画像として動き予測・補償部１１７に供給される。
【０２２０】
ステップＳ１５４の処理が終了すると、ループフィルタ処理が終了され、図１２のステップＳ１１２に戻り、ステップＳ１１３以降の処理が実行される。
【０２２１】
以上のように各処理を行うことにより、フィルタ係数算出部１１２は、直交変換サイズ毎に、適切なフィルタ係数を生成することができる。また、ループフィルタ１１３は、各マクロブロックを、その直交変換サイズに応じたフィルタ係数を用いてフィルタ処理を行うことができる。
【０２２２】
結果として、画像符号化装置１００は、画像内の局所的性質に適したノイズ除去を行うことができ、より高画質な参照画像を得ることができる。
【０２２３】
さらに、可逆符号化部１０６がこのフィルタ係数を符号化データに付加するので、画像復号装置がその符号化データを復号して得られた復号画像に対して、そのフィルタ係数を用いて適切にフィルタ処理することができる。つまり、画像符号化装置１００は、画像符号化装置１００が生成した符号化データを復号して得られる復号画像を高画質化することができる。
【０２２４】
なお、以上において「付加する」とは、任意の形態で制御情報を符号化データに関連付けることを示す。例えば、符号化データのシンタックスとして記述するようにしてもよいし、ユーザデータとして記述するようにしてもよい。また、フィルタ係数等の情報をメタデータとして符号化データとリンクされた状態にするようにしてもよい。つまり、「付加」は、「埋め込み」、「記述」、「多重化」、および「連結」等を含む。以下においても同様である。
【０２２５】
また、以上においては、直交変換サイズとして４×４と８×８を説明したが、直交変換サイズは任意である。また、適用される直交変換サイズの個数も任意である。
【０２２６】
適用される直交変換サイズが３つ以上の場合のグループ分け（クラス分類）は、例えば、全直交変換サイズのうちいずれか２つに対して行われるようにし、その他の直交変換サイズは無視される（選択しない）ようにしてもよい。その場合、無視されるグループは、フィルタ処理が行われない。この場合、例えばフラグ情報等により、フィルタ処理を行うか否かを制御するようにしてもよい。
【０２２７】
また、例えば、各直交変換サイズが２つのグループに分けられるようにしてもよい。つまり、この場合、１つのグループに複数の直交変換サイズが混在する可能性がある。さらに、例えば、各直交変換サイズが互いに異なるグループに分けられるようにしてもよい。この場合、グループの数は３つ以上となる。この場合、係数算出部やフィルタ部（図１１）はグループの数だけ用意される。
【０２２８】
また、フィルタの処理単位は、フレームでもよいし、スライスでもよいし、これら以外であってもよい。また、クラス分類を行う単位（処理単位となる部分画像の画像サイズ）は、マクロブロック以外であってもよい。
【０２２９】
＜２．第２の実施の形態＞
［デバイスの構成］
次に、第１の実施の形態において説明した画像符号化装置１００に対応する画像復号装置について説明する。図１５は、本発明を適用した画像処理装置としての画像復号装置の一実施の形態の構成例を示すブロック図である。
【０２３０】
画像復号装置２００は、画像符号化装置１００より出力される符号化データを復号し、復号画像を生成する。
【０２３１】
画像復号装置２００は、蓄積バッファ２０１、可逆復号部２０２、逆量子化部２０３、逆直交変換部２０４、演算部２０５、およびデブロックフィルタ２０６を有する。また、画像復号装置２００は、ループフィルタ２０７を有する。さらに、画像復号装置２００は、画面並べ替えバッファ２０８、およびD/A（Digital / Analog l）変換部２０９を有する。また、画像復号装置２００は、フレームメモリ２１０、選択部２１１、イントラ予測部２１２、動き予測・補償部２１３、および選択部２１４を有する。
【０２３２】
蓄積バッファ２０１は、伝送されてきた符号化データを蓄積する。可逆復号部２０２は、蓄積バッファ２０１より供給された、図１の可逆符号化部１０６により符号化された情報を、可逆符号化部１０６の符号化方式に対応する方式で復号する。
【０２３３】
当該マクロブロックがイントラ符号化されたものである場合、可逆復号部２０２は、符号化データのヘッダ部に格納されたイントラ予測モード情報を抽出し、イントラ予測部２１２へ供給する。また、当該マクロブロックがインター符号化されたものである場合、可逆復号部２０２は、符号化データのヘッダ部に格納された動きベクトル情報やインター予測モード情報等を抽出し、動き予測・補償部２１３へ供給する。
【０２３４】
また、可逆復号部２０２は、符号化データから、各直交変換サイズ用のフィルタ係数を抽出し、それらをループフィルタ２０７に供給する。
【０２３５】
逆量子化部２０３は可逆復号部２０２により復号された画像を、図１の量子化部１０５の量子化方式に対応する方式で逆量子化する。
【０２３６】
逆直交変換部２０４は、図１の直交変換部１０４の直交変換方式に対応する方式で逆量子化部２０３の出力を逆直交変換する。逆直交変換部２０４は、逆直交変換された差分情報を演算部２０５に供給する。また、逆直交変換部２０４は、その逆直交変換処理において、各マクロブロックに対して適用した直交変換サイズをループフィルタ２０７に供給する。
【０２３７】
演算部２０５は、逆直交変換された差分情報に、選択部２１４から供給される予測画像を加算し、復号画像を生成する。デブロックフィルタ２０６は、その加算処理されて生成された復号画像のブロック歪を除去する。
【０２３８】
ループフィルタ２０７は、逆直交変換部２０４から供給される情報に基づいて、デブロックフィルタ２０６から供給された復号画像の各マクロブロックを、逆直交変換部２０４による逆直交変換処理において適用された逆直交変換サイズ毎にグループ分け（クラス分類）し、各グループ（クラス）に対して、可逆復号部２０２より供給されたフィルタ係数を用いてフィルタ処理を行う。
【０２３９】
このフィルタ係数は、画像符号化装置１００のフィルタ係数算出部１１２において生成された係数であり、第１の実施の形態において説明したように、直交変換サイズ毎に、残差が最小となるように算出されたものである。すなわち、この各直交変換サイズ用のフィルタ係数は、それぞれ、対応する直交変換サイズに対して適切な値に設定されている。
【０２４０】
これにより、ループフィルタ２０７は、デブロックフィルタ２０６では取りきれなかったブロック歪や量子化による歪を低減することができる。このとき、ループフィルタ２０７は、画像内の局所的性質に適したノイズ除去を行うので、より高画質な復号画像を出力することができる。
【０２４１】
ループフィルタ２０７は、フィルタ処理後の画像をフレームメモリ２１０に供給し、参照画像として蓄積させるとともに、画面並べ替えバッファ２０８に出力する。
【０２４２】
画面並べ替えバッファ２０８は、画像の並べ替えを行う。すなわち、図１の画面並べ替えバッファ１０２により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部２０９は、画面並べ替えバッファ２０８から供給された画像をD/A変換し、出力する。例えば、D/A変換部２０９は、D/A変換して得られた出力信号を図示せぬディスプレイに出力し、画像を表示させる。
【０２４３】
イントラ予測部２１２は、当該フレームがイントラ符号化されたものである場合、選択部２１１を介してフレームメモリ２１０から参照画像を取得し、可逆復号部２０２から供給される情報に基づいて、予測画像を生成し、生成した予測画像を、選択部２１４を介して演算部２０５に供給する。
【０２４４】
動き予測・補償部２１３は、当該フレームがインター符号化されたものである場合、選択部２１１を介してフレームメモリ２１０から参照画像を取得し、可逆復号部２０２から供給される動きベクトル情報に基づき、参照画像に対して動き補償処理を行い、予測画像を生成する。動き予測・補償部２１３は、生成した予測画像を、選択部２１４を介して演算部２０５に供給する。
【０２４５】
選択部２１４は、当該マクロブロックがイントラ符号化されたものである場合、イントラ予測部２１２に接続し、イントラ予測部２１２から供給される画像を予測画像として演算部２０５に供給する。また、当該マクロブロックがインター符号化されたものである場合、選択部２１４は、動き予測・補償部２１３に接続し、動き予測・補償部２１３から供給される画像を予測画像として演算部２０５に供給する。
【０２４６】
図１６は、図１５のループフィルタ２０７の詳細な構成例を示すブロック図である。
【０２４７】
ループフィルタ２０７は、基本的に、画像符号化装置１００のループフィルタ１１３と同様の構成を有し、同様の処理を実行する。図１６に示されるように、ループフィルタ２０７は、画素分類部２５１、フィルタ部（４×４）２５２、およびフィルタ部（８×８）２５３を有する。
【０２４８】
画素分類部２５１は、逆直交変換部２０４から供給される直交変換サイズに関する情報に基づいて、デブロックフィルタ２０６から供給される復号画像の各マクロブロックを、４×４直交変換が適用されたマクロブロック（４×４直交変換ブロック）と、８×８直交変換が適用されたマクロブロック（８×８直交変換ブロック）とにクラス分類（グループ分け）する。そして、画素分類部２５１は、復号画像のうち、４×４直交変換ブロックに関する情報を、フィルタ部（４×４）２５２に供給し、８×８直交変換ブロックに関する情報を、フィルタ部（８×８）２５３に供給する。
【０２４９】
フィルタ部（４×４）２５２は、可逆復号部２０２から供給された４×４直交変換ブロックにとって適切なフィルタ係数を適用し、復号画像の４×４直交変換ブロックに対してフィルタ処理を行う。
【０２５０】
フィルタ部（８×８）２５３は、可逆復号部２０２から供給された８×８直交変換ブロックにとって適切なフィルタ係数を適用し、復号画像の８×８直交変換ブロックに対してフィルタ処理を行う。
【０２５１】
フィルタ部（４×４）２５２およびフィルタ部（８×８）２５３は、フィルタ処理を施した復号画像を、画面並べ替えバッファ２０８やフレームメモリ２１０に供給する。
【０２５２】
このように、ループフィルタ２０７は、復号画像の各マクロブロックを、その直交変換サイズ毎に分類し、その直交変換サイズ用のフィルタ係数を用いてフィルタ処理を行う。このフィルタ係数は、可逆復号部２０２により符号化データから抽出されたものであり、第１の実施の形態において説明したように、各直交変換サイズブロックの画像に適するように生成されたものである。したがって、ループフィルタ２０７は、第１の実施の形態において説明したループフィルタ１１３の場合と同様に、画像の持つ局所的性質に適したノイズ除去を行うことができ、結果として、より高画質な復号画像を得ることができる。
【０２５３】
［処理の流れ］
図１７のフローチャートを参照して、この画像復号装置２００が実行する復号処理の流れの例を説明する。
【０２５４】
ステップＳ２０１において、蓄積バッファ２０１は伝送されてきた画像（符号化データ）を蓄積する。ステップＳ２０２において、可逆復号部２０２は、符号化データからフィルタ係数を抽出する。また、可逆復号部２０２は、動きベクトル情報、参照フレーム情報、予測モード情報（イントラ予測モード情報やインター予測モード情報）などの抽出も行う。
【０２５５】
ステップＳ２０３において、可逆復号部２０２は、符号化データを可逆復号する。ステップＳ２０４において、逆量子化部２０３は、ステップＳ２０３において符号化データが復号されて得られた変換係数を、図１の量子化部１０５の特性に対応する特性で逆量子化する。ステップＳ２０５において、逆直交変換部２０４は、ステップＳ２０４の処理により逆量子化された変換係数を、図１の直交変換部１０４の特性に対応する特性で逆直交変換する。これにより図１の直交変換部１０４の入力（演算部１０３の出力）に対応する差分情報が復号されたことになる。
【０２５６】
ステップＳ２０６において、イントラ予測部２１２および動き予測・補償部２１３等は、予測画像生成処理を行い、予測モードに応じて予測画像を生成する。この予測画像生成処理の詳細については、後述する。ステップＳ２０７において、演算部２０５は、ステップＳ２０６において生成された予測画像を、ステップＳ２０５までの処理により復号された差分情報に加算する。これにより元の画像が復号される。
【０２５７】
ステップＳ２０８において、デブロックフィルタ２０６は、演算部２０５より出力された画像をフィルタリングする。これによりブロック歪みが除去される。
【０２５８】
ステップＳ２０９において、ループフィルタ２０７等は、ループフィルタ処理を行い、デブロックフィルタ処理された画像に、さらに適応フィルタ処理を施す。このループフィルタ処理の詳細については後述するが、基本的に、図１のループフィルタ１１３が行う処理と同様である。
【０２５９】
この適応フィルタ処理により、デブロッキングフィルタ処理により取りきれなかったブロック歪みや量子化による歪みを低減することができる。
【０２６０】
ステップＳ２１０において、画面並べ替えバッファ２０８は、並べ替えを行う。すなわち、図１の画像符号化装置１００の画面並べ替えバッファ１０２により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
【０２６１】
ステップＳ２１１において、D/A変換部２０９は、ステップＳ２１０において並べ替えられた画像をD/A変換する。この画像が図示せぬディスプレイに出力され、画像が表示される。ステップＳ２１１の処理が終了すると、復号処理が終了される。
【０２６２】
次に、図１８のフローチャートを参照して、図１７のステップＳ２０６において実行される予測画像生成処理の流れの例を説明する。
【０２６３】
予測画像生成処理が開始されると、ステップＳ２３１において、可逆復号部２０２は、ステップＳ２０２において抽出した予測モード等の情報に基づいて、当該ブロックがイントラ符号化されたか否かを判定する。イントラ符号化されたブロックであれば、可逆復号部２０２は、符号化データより抽出したイントラ予測モード情報をイントラ予測部２１２に供給し、ステップＳ２３２に進む。
【０２６４】
ステップＳ２３２において、イントラ予測部２１２は、可逆復号部２０２より供給されるイントラ予測モード情報を取得する。イントラ予測モード情報を取得すると、イントラ予測部２１２は、ステップＳ２３３において、そのイントラ予測モード情報に基づいて、選択部２１１を介してフレームメモリ２１０から参照画像を取得し、イントラ予測画像を生成する。イントラ予測画像を生成すると、イントラ予測部２１２は、そのイントラ予測画像を、予測画像として、選択部２１４を介して演算部２０５に供給する。
【０２６５】
また、ステップＳ２３１において、当該ブロックがインター符号化されていると判定された場合、可逆復号部２０２は、符号化データより抽出した動き予測モード、参照フレーム、および動きベクトル情報等を動き予測・補償部２１３に供給し、ステップＳ２３４に進む。
【０２６６】
ステップＳ２３４において、動き予測・補償部２１３は、可逆復号部２０２より供給される動き予測モード、参照フレーム、および動きベクトル情報等を取得する。それらの情報を取得すると、動き予測・補償部２１３は、ステップＳ２３５において、動きベクトル情報に応じた内挿フィルタを選択し、ステップＳ２３６において、選択部２１１を介してフレームメモリ２１０から参照画像を取得し、インター予測画像を生成する。インター予測画像を生成すると、動き予測・補償部２１３は、そのインター予測画像を、予測画像として、選択部２１４を介して演算部２０５に供給する。
【０２６７】
ステップＳ２３３またはステップＳ２３６の処理が終了すると、予測画像生成処理が終了され、図１７のステップＳ２０６に戻り、ステップＳ２０７以降の処理が実行される。
【０２６８】
次に、図１９のフローチャートを参照して、図１７のステップＳ２０９において実行されるループフィルタ処理の流れの例を説明する。
【０２６９】
ループフィルタ処理が開始されると、ステップＳ２５１において、ループフィルタ２０７のフィルタ部（４×４）２５２およびフィルタ部（８×８）２５３は、各グループのフィルタ係数を、可逆復号部２０２から取得する。
【０２７０】
ステップＳ２５２において、画素分類部２５１は、逆直交変換部２０４から、当該マクロブロックの直交変換サイズを取得する。画素分類部２５１は、取得した直交変換サイズに基づいて、当該マクロブロックをクラス分類する。
【０２７１】
ステップＳ２５３において、当該マクロブロックの直交変換サイズに対応するフィルタ部（フィルタ部（４×４）２５２またはフィルタ部（８×８）２５３のいずれか）は、ステップＳ２５１において取得したフィルタ係数を用いて、当該マクロブロックに対して、直交変換サイズに応じたフィルタ処理を行う。
【０２７２】
ステップＳ２５４において、フレームメモリ２１０は、ステップＳ２５３のフィルタ処理結果を記憶する。
【０２７３】
ステップＳ２５４の処理が終了すると、ループフィルタ処理が終了され、図１７のステップＳ２０９に戻り、ステップＳ２１０以降の処理が行われる。
【０２７４】
以上のように各処理を行うことにより、ループフィルタ２０７が、フィルタ処理を行い、デブロックフィルタにより取りきれなかったブロック歪みや量子化による歪みを低減することができる。
【０２７５】
また、このとき、ループフィルタ２０７は、符号化データより抽出されたフィルタ係数を用いてフィルタ処理を行う。このフィルタ係数は、マクロブロックの直交変換サイズ毎に残差が最小となるように生成されたものである。ループフィルタ２０７は、処理対象である当該マクロブロックを、その直交変換サイズ用のフィルタ係数を用いてフィルタ処理を行う。このようにすることにより、ループフィルタ２０７は、画像内の局所的性質に適したノイズ除去を行うことができる。結果として、画像復号装置２００は、より高画質な復号画像を得ることができる。
【０２７６】
なお、第１の実施の形態の場合と同様に、直交変換サイズは任意である。また、適用される直交変換サイズの個数も任意である。
【０２７７】
マクロブロックのグループ分け（クラス分類）の方法は、符号化データを生成した画像符号化装置１００の方法に対応していればどのような方法であってもよい。また、フィルタの処理単位は、フレームでもよいし、スライスでもよいし、これら以外であってもよい。
【０２７８】
＜３．第３の実施の形態＞
［ALFブロック制御の説明］
なお、以上のようなフィルタ係数の制御に加え、さらに、ループフィルタによって局所的に画質が悪化する領域にはループフィルタ処理を行わないようにするBALF（Block based Adaptive Loop Filter）を適用するようにしてもよい。以下にBALFについて説明する。
【０２７９】
図２０Ａのフレーム３０１は、デブロックフィルタ処理後の復号画像を示す。図２０Ｂに示されるように、それぞれが、局所的に行われる適応フィルタ処理の制御単位となる制御ブロックである、複数のALF（Adaptive Loop Filter）ブロック３０２が、このフレーム３０１の領域全体に敷き詰めるように隙間無く配置される。このALFブロック３０２が配置される領域は、フレーム３０１の領域と同一でなくても良いが、少なくともフレーム３０１の領域全体を含む。結果として、フレーム３０１の領域は、各ALFブロック３０２の領域（複数の領域）に分割される。
【０２８０】
ALFブロック３０２の水平方向のサイズ（両矢印３０３）と、垂直方向のサイズ（両矢印３０４）は、例えば、８×８、１６×１６、２４×２４、３２×３２、４８×４８、６４×６４、９６×９６、あるいは１２８×１２８等とすることができる。なお、そのALFブロックのサイズを指定する情報をブロックサイズインデックスと称する。
【０２８１】
ブロックサイズが決まれば、フレームサイズは固定であるので、１フレーム当たりのALFブロック数も決定される。
【０２８２】
そして、図２０Ｃに示されるように、ALFブロック３０２毎に、フィルタ処理を行うか否かを制御するフィルタブロックフラグ３０５が設定される。例えば、適応フィルタにより画質が改善される領域については、値が「１」のフィルタブロックフラグ３０５が設定され、適応フィルタにより画質が悪化する領域については、値が「０」のフィルタブロックフラグ３０５が設定される。フィルタブロックフラグ３０５において、値「１」は、フィルタ処理を行うことを示す値であり、値「０」は、フィルタ処理を行わないことを示す値である。
【０２８３】
そして、このフィルタブロックフラグ３０５の値に基づいて、ALFブロック３０２の領域毎に、ループフィルタ処理を行うか否かが制御される。例えば、ループフィルタ１１３は、フィルタブロックフラグ３０５の値が「１」のALFブロック３０２の領域にのみフィルタ処理を行い、フィルタブロックフラグ３０５の値が「０」のALFブロック３０２の領域にはフィルタ処理を行わない。
【０２８４】
例えば、フィルタ係数算出部１１２において、このようなALFブロック３０２やフィルタブロックフラグ３０５を設定し、ループフィルタ１１３が、その情報に基づいて、上述したようにフィルタ処理を行うようにする。
【０２８５】
このようにすることにより、ループフィルタ１１３は、フィルタ処理により局所的に画質が悪化する領域に対してフィルタ処理を行わないようにすることができ、参照画像の画質をより向上させることができる。
【０２８６】
なお、このALFブロック３０２やフィルタブロックフラグ３０５に関する情報は、符号化データに付加され、画像復号装置２００に供給される。これにより、画像復号装置２００のループフィルタ２０７もループフィルタ１１３と同様にフィルタ処理を行うことができ、フィルタ処理により局所的に画質が悪化する領域に対してフィルタ処理を行わないようにすることができる。結果として、復号画像の画質をさらに向上させることができる。
【０２８７】
＜４．第４の実施の形態＞
［QALFの説明］
また、第３の実施の形態において説明した、ALF制御ブロックをクアッドツリー構造としてもよい。この技術はQALF（Quad tree-based Adaptive Loop Filter）と称する。クアッドツリー構造とは、下位階層において１つ上位の階層の１つのALFブロックの領域が４分割される階層構造である。
【０２８８】
図２１にALFブロック分割を最大レイヤ数が３のクアッドツリー構造によって表現し、各ALFブロックにフィルタブロックフラグを指定する例を示す。
【０２８９】
図２１Ａは、クアッドツリー構造の根になるALFブロックであるレイヤ０を示す。クアッドツリー構造において各ALFブロックは、下位の階層において４分割されるか否かを示すブロックパーティショニングフラグを有している。図２１Ａに示されるALFブロックのブロックパーティショニングフラグの値は「１」である。つまり、このALFブロックは、下位の階層（レイヤ１）において４分割される。図２１Ｂは、そのレイヤ１を示す。すなわち、レイヤ１には、４つのALFブロックが形成される。
【０２９０】
ブロックパーティショニングフラグが「０」の場合、これより下位の階層において４分割されない。すなわち、これ以上の分割は無く、そのALFブロックに対してフィルタブロックフラグが生成される。つまり、ブロックパーティショニングフラグが「０」のALFブロックは、フィルタブロックフラグも有する。図２１Ｂに示される「０−１」の左の「０」が、そのALFブロックのブロックパーティショニングフラグを示し、右の「１」が、そのALFブロックのフィルタブロックフラグを示す。
【０２９１】
レイヤ１のブロックパーティショニングフラグが「１」の２つのALFブロックは、さらに下位の階層（レイヤ２）において４分割される。図２１Ｃは、そのレイヤ２を示す。すなわち、レイヤ２には、１０個のALFブロックが形成される。
【０２９２】
同様に、レイヤ２においてブロックパーティショニングフラグが「０」のALFブロックには、フィルタブロックフラグも割り当てられる。図２１Ｃにおいては、１つのALFブロックのブロックパーティショニングフラグが「１」である。つまり、そのALFブロックは、さらに下位の階層（レイヤ３）において４分割される。図２１Ｄは、そのレイヤ３を示す。すなわち、レイヤ３には、１３個のALFブロックが形成される。
【０２９３】
このように、クアッドツリー構造においては、ALFブロックのサイズは、その階層毎に異なる。つまり、ALFブロックは、クアッドツリー構造をとることにより、フレーム内においてその大きさを互いに異なるものとすることができる。
【０２９４】
各ALFブロックにおけるフィルタブロックフラグの制御は、第３の実施の形態の場合と同様である。つまり、フィルタブロックフラグの値が「０」のALFブロックの領域は、フィルタ処理が行われない。
【０２９５】
したがって、このようにすることにより、ループフィルタ１１３は、第３の実施の形態の場合と同様に、フィルタ処理により局所的に画質が悪化する領域に対してフィルタ処理を行わないようにすることができ、参照画像の画質をより向上させることができる。
【０２９６】
なお、第３の実施の形態の場合と同様に、この制御ブロックやフィルタブロックフラグに関する情報は、符号化データに付加され、画像復号装置２００に供給される。これにより、画像復号装置２００のループフィルタ２０７もループフィルタ１１３と同様にフィルタ処理を行うことができ、フィルタ処理により局所的に画質が悪化する領域に対してフィルタ処理を行わないようにすることができる。結果として、復号画像の画質をさらに向上させることができる。
【０２９７】
＜５．第５の実施の形態＞
［パーソナルコンピュータ］
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。この場合、例えば、図２２に示されるようなパーソナルコンピュータとして構成されるようにしてもよい。
【０２９８】
図２２において、パーソナルコンピュータ５００のCPU５０１は、ROM（Read Only Memory）５０２に記憶されているプログラム、または記憶部５１３からRAM（Random Access Memory）５０３にロードされたプログラムに従って各種の処理を実行する。RAM５０３にはまた、CPU５０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０２９９】
CPU５０１、ROM５０２、およびRAM５０３は、バス５０４を介して相互に接続されている。このバス５０４にはまた、入出力インタフェース５１０も接続されている。
【０３００】
入出力インタフェース５１０には、キーボード、マウスなどよりなる入力部５１１、CRT（Cathode Ray Tube）やLCD（Liquid Crystal Display）などよりなるディスプレイ、並びにスピーカなどよりなる出力部５１２、ハードディスクなどより構成される記憶部５１３、モデムなどより構成される通信部５１４が接続されている。通信部５１４は、インターネットを含むネットワークを介しての通信処理を行う。
【０３０１】
入出力インタフェース５１０にはまた、必要に応じてドライブ５１５が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア５２１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部５１３にインストールされる。
【０３０２】
上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
【０３０３】
この記録媒体は、例えば、図２２に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM（Compact Disc - Read Only Memory）,DVD（Digital Versatile Disc）を含む）、光磁気ディスク（MD（Mini Disc）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア５２１により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM５０２や、記憶部５１３に含まれるハードディスクなどで構成される。
【０３０４】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０３０５】
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０３０６】
また、本明細書において、システムとは、複数のデバイス（装置）により構成される装置全体を表すものである。
【０３０７】
また、以上において、１つの装置（または処理部）として説明した構成を分割し、複数の装置（または処理部）として構成するようにしてもよい。逆に、以上において複数の装置（または処理部）として説明した構成をまとめて１つの装置（または処理部）として構成されるようにしてもよい。また、各装置（または各処理部）の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置（または処理部）の構成の一部を他の装置（または他の処理部）の構成に含めるようにしてもよい。つまり、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【０３０８】
例えば、上述した画像符号化装置１００や画像復号装置２００は、任意の電子機器に適用することができる。以下にその例について説明する。
【０３０９】
＜６．第６の実施の形態＞
［テレビジョン受像機］
図２３は、本発明を適用した画像復号装置２００を用いるテレビジョン受像機の主な構成例を示すブロック図である。
【０３１０】
図２３に示されるテレビジョン受像機１０００は、地上波チューナ１０１３、ビデオデコーダ１０１５、映像信号処理回路１０１８、グラフィック生成回路１０１９、パネル駆動回路１０２０、および表示パネル１０２１を有する。
【０３１１】
地上波チューナ１０１３は、地上アナログ放送の放送波信号を、アンテナを介して受信し、復調し、映像信号を取得し、それをビデオデコーダ１０１５に供給する。ビデオデコーダ１０１５は、地上波チューナ１０１３から供給された映像信号に対してデコード処理を施し、得られたデジタルのコンポーネント信号を映像信号処理回路１０１８に供給する。
【０３１２】
映像信号処理回路１０１８は、ビデオデコーダ１０１５から供給された映像データに対してノイズ除去などの所定の処理を施し、得られた映像データをグラフィック生成回路１０１９に供給する。
【０３１３】
グラフィック生成回路１０１９は、表示パネル１０２１に表示させる番組の映像データや、ネットワークを介して供給されるアプリケーションに基づく処理による画像データなどを生成し、生成した映像データや画像データをパネル駆動回路１０２０に供給する。また、グラフィック生成回路１０１９は、項目の選択などにユーザにより利用される画面を表示するための映像データ（グラフィック）を生成し、それを番組の映像データに重畳したりすることによって得られた映像データをパネル駆動回路１０２０に供給するといった処理も適宜行う。
【０３１４】
パネル駆動回路１０２０は、グラフィック生成回路１０１９から供給されたデータに基づいて表示パネル１０２１を駆動し、番組の映像や上述した各種の画面を表示パネル１０２１に表示させる。
【０３１５】
表示パネル１０２１はLCD（Liquid Crystal Display）などよりなり、パネル駆動回路１０２０による制御に従って番組の映像などを表示させる。
【０３１６】
また、テレビジョン受像機１０００は、音声A/D（Analog/Digital)変換回路１０１４、音声信号処理回路１０２２、エコーキャンセル／音声合成回路１０２３、音声増幅回路１０２４、およびスピーカ１０２５も有する。
【０３１７】
地上波チューナ１０１３は、受信した放送波信号を復調することにより、映像信号だけでなく音声信号も取得する。地上波チューナ１０１３は、取得した音声信号を音声A/D変換回路１０１４に供給する。
【０３１８】
音声A/D変換回路１０１４は、地上波チューナ１０１３から供給された音声信号に対してA/D変換処理を施し、得られたデジタルの音声信号を音声信号処理回路１０２２に供給する。
【０３１９】
音声信号処理回路１０２２は、音声A/D変換回路１０１４から供給された音声データに対してノイズ除去などの所定の処理を施し、得られた音声データをエコーキャンセル／音声合成回路１０２３に供給する。
【０３２０】
エコーキャンセル／音声合成回路１０２３は、音声信号処理回路１０２２から供給された音声データを音声増幅回路１０２４に供給する。
【０３２１】
音声増幅回路１０２４は、エコーキャンセル／音声合成回路１０２３から供給された音声データに対してD/A変換処理、増幅処理を施し、所定の音量に調整した後、音声をスピーカ１０２５から出力させる。
【０３２２】
さらに、テレビジョン受像機１０００は、デジタルチューナ１０１６およびMPEGデコーダ１０１７も有する。
【０３２３】
デジタルチューナ１０１６は、デジタル放送（地上デジタル放送、BS（Broadcasting Satellite）／CS（Communications Satellite）デジタル放送）の放送波信号を、アンテナを介して受信し、復調し、MPEG-TS（Moving Picture Experts Group-Transport Stream）を取得し、それをMPEGデコーダ１０１７に供給する。
【０３２４】
MPEGデコーダ１０１７は、デジタルチューナ１０１６から供給されたMPEG-TSに施されているスクランブルを解除し、再生対象（視聴対象）になっている番組のデータを含むストリームを抽出する。MPEGデコーダ１０１７は、抽出したストリームを構成する音声パケットをデコードし、得られた音声データを音声信号処理回路１０２２に供給するとともに、ストリームを構成する映像パケットをデコードし、得られた映像データを映像信号処理回路１０１８に供給する。また、MPEGデコーダ１０１７は、MPEG-TSから抽出したEPG（Electronic Program Guide)データを図示せぬ経路を介してCPU１０３２に供給する。
【０３２５】
テレビジョン受像機１０００は、このように映像パケットをデコードするMPEGデコーダ１０１７として、上述した画像復号装置２００を用いる。なお、放送局等より送信されるMPEG-TSは、画像符号化装置１００によって符号化されている。
【０３２６】
MPEGデコーダ１０１７は、画像復号装置２００の場合と同様に、画像符号化装置１００より供給される符号化データから抽出したフィルタ係数を用いて、復号画像の各マクロブロックに対して、その直交変換サイズに応じたフィルタ処理を行う。したがって、MPEGデコーダ１０１７は、画像内の局所的性質に適したノイズ除去を行うことができる。
【０３２７】
MPEGデコーダ１０１７から供給された映像データは、ビデオデコーダ１０１５から供給された映像データの場合と同様に、映像信号処理回路１０１８において所定の処理が施され、グラフィック生成回路１０１９において、生成された映像データ等が適宜重畳され、パネル駆動回路１０２０を介して表示パネル１０２１に供給され、その画像が表示される。
【０３２８】
MPEGデコーダ１０１７から供給された音声データは、音声A/D変換回路１０１４から供給された音声データの場合と同様に、音声信号処理回路１０２２において所定の処理が施され、エコーキャンセル／音声合成回路１０２３を介して音声増幅回路１０２４に供給され、D/A変換処理や増幅処理が施される。その結果、所定の音量に調整された音声がスピーカ１０２５から出力される。
【０３２９】
また、テレビジョン受像機１０００は、マイクロホン１０２６、およびA/D変換回路１０２７も有する。
【０３３０】
A/D変換回路１０２７は、音声会話用のものとしてテレビジョン受像機１０００に設けられるマイクロホン１０２６により取り込まれたユーザの音声の信号を受信し、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データをエコーキャンセル／音声合成回路１０２３に供給する。
【０３３１】
エコーキャンセル／音声合成回路１０２３は、テレビジョン受像機１０００のユーザ（ユーザＡ）の音声のデータがA/D変換回路１０２７から供給されている場合、ユーザＡの音声データを対象としてエコーキャンセルを行い、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路１０２４を介してスピーカ１０２５より出力させる。
【０３３２】
さらに、テレビジョン受像機１０００は、音声コーデック１０２８、内部バス１０２９、SDRAM（Synchronous Dynamic Random Access Memory)１０３０、フラッシュメモリ１０３１、CPU１０３２、USB（Universal Serial Bus) I/F１０３３、およびネットワークI/F１０３４も有する。
【０３３３】
A/D変換回路１０２７は、音声会話用のものとしてテレビジョン受像機１０００に設けられるマイクロホン１０２６により取り込まれたユーザの音声の信号を受信し、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データを音声コーデック１０２８に供給する。
【０３３４】
音声コーデック１０２８は、A/D変換回路１０２７から供給された音声データを、ネットワーク経由で送信するための所定のフォーマットのデータに変換し、内部バス１０２９を介してネットワークI/F１０３４に供給する。
【０３３５】
ネットワークI/F１０３４は、ネットワーク端子１０３５に装着されたケーブルを介してネットワークに接続される。ネットワークI/F１０３４は、例えば、そのネットワークに接続される他の装置に対して、音声コーデック１０２８から供給された音声データを送信する。また、ネットワークI/F１０３４は、例えば、ネットワークを介して接続される他の装置から送信される音声データを、ネットワーク端子１０３５を介して受信し、それを、内部バス１０２９を介して音声コーデック１０２８に供給する。
【０３３６】
音声コーデック１０２８は、ネットワークI/F１０３４から供給された音声データを所定のフォーマットのデータに変換し、それをエコーキャンセル／音声合成回路１０２３に供給する。
【０３３７】
エコーキャンセル／音声合成回路１０２３は、音声コーデック１０２８から供給される音声データを対象としてエコーキャンセルを行い、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路１０２４を介してスピーカ１０２５より出力させる。
【０３３８】
SDRAM１０３０は、CPU１０３２が処理を行う上で必要な各種のデータを記憶する。
【０３３９】
フラッシュメモリ１０３１は、CPU１０３２により実行されるプログラムを記憶する。フラッシュメモリ１０３１に記憶されているプログラムは、テレビジョン受像機１０００の起動時などの所定のタイミングでCPU１０３２により読み出される。フラッシュメモリ１０３１には、デジタル放送を介して取得されたEPGデータ、ネットワークを介して所定のサーバから取得されたデータなども記憶される。
【０３４０】
例えば、フラッシュメモリ１０３１には、CPU１０３２の制御によりネットワークを介して所定のサーバから取得されたコンテンツデータを含むMPEG-TSが記憶される。フラッシュメモリ１０３１は、例えばCPU１０３２の制御により、そのMPEG-TSを、内部バス１０２９を介してMPEGデコーダ１０１７に供給する。
【０３４１】
MPEGデコーダ１０１７は、デジタルチューナ１０１６から供給されたMPEG-TSの場合と同様に、そのMPEG-TSを処理する。このようにテレビジョン受像機１０００は、映像や音声等よりなるコンテンツデータを、ネットワークを介して受信し、MPEGデコーダ１０１７を用いてデコードし、その映像を表示させたり、音声を出力させたりすることができる。
【０３４２】
また、テレビジョン受像機１０００は、リモートコントローラ１０５１から送信される赤外線信号を受光する受光部１０３７も有する。
【０３４３】
受光部１０３７は、リモートコントローラ１０５１からの赤外線を受光し、復調して得られたユーザ操作の内容を表す制御コードをCPU１０３２に出力する。
【０３４４】
CPU１０３２は、フラッシュメモリ１０３１に記憶されているプログラムを実行し、受光部１０３７から供給される制御コードなどに応じてテレビジョン受像機１０００の全体の動作を制御する。CPU１０３２とテレビジョン受像機１０００の各部は、図示せぬ経路を介して接続されている。
【０３４５】
USB I/F１０３３は、USB端子１０３６に装着されたUSBケーブルを介して接続される、テレビジョン受像機１０００の外部の機器との間でデータの送受信を行う。ネットワークI/F１０３４は、ネットワーク端子１０３５に装着されたケーブルを介してネットワークに接続し、ネットワークに接続される各種の装置と音声データ以外のデータの送受信も行う。
【０３４６】
テレビジョン受像機１０００は、MPEGデコーダ１０１７として画像復号装置２００を用いることにより、画像内の局所的性質に適したノイズ除去を行うことができる。その結果として、テレビジョン受像機１０００は、アンテナを介して受信する放送波信号や、ネットワークを介して取得するコンテンツデータから、より高画質な復号画像を得ることができる。
【０３４７】
＜７．第７の実施の形態＞
［携帯電話機］
図２４は、本発明を適用した画像符号化装置および画像復号装置を用いる携帯電話機の主な構成例を示すブロック図である。
【０３４８】
図２４に示される携帯電話機１１００は、各部を統括的に制御するようになされた主制御部１１５０、電源回路部１１５１、操作入力制御部１１５２、画像エンコーダ１１５３、カメラI/F部１１５４、LCD制御部１１５５、画像デコーダ１１５６、多重分離部１１５７、記録再生部１１６２、変復調回路部１１５８、および音声コーデック１１５９を有する。これらは、バス１１６０を介して互いに接続されている。
【０３４９】
また、携帯電話機１１００は、操作キー１１１９、CCD（Charge Coupled Devices）カメラ１１１６、液晶ディスプレイ１１１８、記憶部１１２３、送受信回路部１１６３、アンテナ１１１４、マイクロホン（マイク）１１２１、およびスピーカ１１１７を有する。
【０３５０】
電源回路部１１５１は、ユーザの操作により終話および電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話機１１００を動作可能な状態に起動する。
【０３５１】
携帯電話機１１００は、CPU、ROMおよびRAM等でなる主制御部１１５０の制御に基づいて、音声通話モードやデータ通信モード等の各種モードで、音声信号の送受信、電子メールや画像データの送受信、画像撮影、またはデータ記録等の各種動作を行う。
【０３５２】
例えば、音声通話モードにおいて、携帯電話機１１００は、マイクロホン（マイク）１１２１で集音した音声信号を、音声コーデック１１５９によってデジタル音声データに変換し、これを変復調回路部１１５８でスペクトラム拡散処理し、送受信回路部１１６３でデジタルアナログ変換処理および周波数変換処理する。携帯電話機１１００は、その変換処理により得られた送信用信号を、アンテナ１１１４を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号（音声信号）は、公衆電話回線網を介して通話相手の携帯電話機に供給される。
【０３５３】
また、例えば、音声通話モードにおいて、携帯電話機１１００は、アンテナ１１１４で受信した受信信号を送受信回路部１１６３で増幅し、さらに周波数変換処理およびアナログデジタル変換処理し、変復調回路部１１５８でスペクトラム逆拡散処理し、音声コーデック１１５９によってアナログ音声信号に変換する。携帯電話機１１００は、その変換して得られたアナログ音声信号をスピーカ１１１７から出力する。
【０３５４】
更に、例えば、データ通信モードにおいて電子メールを送信する場合、携帯電話機１１００は、操作キー１１１９の操作によって入力された電子メールのテキストデータを、操作入力制御部１１５２において受け付ける。携帯電話機１１００は、そのテキストデータを主制御部１１５０において処理し、LCD制御部１１５５を介して、画像として液晶ディスプレイ１１１８に表示させる。
【０３５５】
また、携帯電話機１１００は、主制御部１１５０において、操作入力制御部１１５２が受け付けたテキストデータやユーザ指示等に基づいて電子メールデータを生成する。携帯電話機１１００は、その電子メールデータを、変復調回路部１１５８でスペクトラム拡散処理し、送受信回路部１１６３でデジタルアナログ変換処理および周波数変換処理する。携帯電話機１１００は、その変換処理により得られた送信用信号を、アンテナ１１１４を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号（電子メール）は、ネットワークおよびメールサーバ等を介して、所定のあて先に供給される。
【０３５６】
また、例えば、データ通信モードにおいて電子メールを受信する場合、携帯電話機１１００は、基地局から送信された信号を、アンテナ１１１４を介して送受信回路部１１６３で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機１１００は、その受信信号を変復調回路部１１５８でスペクトラム逆拡散処理して元の電子メールデータを復元する。携帯電話機１１００は、復元された電子メールデータを、LCD制御部１１５５を介して液晶ディスプレイ１１１８に表示する。
【０３５７】
なお、携帯電話機１１００は、受信した電子メールデータを、記録再生部１１６２を介して、記憶部１１２３に記録する（記憶させる）ことも可能である。
【０３５８】
この記憶部１１２３は、書き換え可能な任意の記憶媒体である。記憶部１１２３は、例えば、RAMや内蔵型フラッシュメモリ等の半導体メモリであってもよいし、ハードディスクであってもよいし、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、またはメモリカード等のリムーバブルメディアであってもよい。もちろん、これら以外のものであってもよい。
【０３５９】
さらに、例えば、データ通信モードにおいて画像データを送信する場合、携帯電話機１１００は、撮像によりCCDカメラ１１１６で画像データを生成する。CCDカメラ１１１６は、レンズや絞り等の光学デバイスと光電変換素子としてのCCDを有し、被写体を撮像し、受光した光の強度を電気信号に変換し、被写体の画像の画像データを生成する。CCDカメラ１１１６は、その画像データを、カメラI/F部１１５４を介して、画像エンコーダ１１５３で符号化し、符号化画像データに変換する。
【０３６０】
携帯電話機１１００は、このような処理を行う画像エンコーダ１１５３として、上述した画像符号化装置１００を用いる。したがって、画像エンコーダ１０５３は、画像符号化装置１００の場合と同様に、画像内の局所的性質に適したノイズ除去を行うことができる。
【０３６１】
なお、携帯電話機１１００は、このとき同時に、CCDカメラ１１１６で撮像中にマイクロホン（マイク）１１２１で集音した音声を、音声コーデック１１５９においてアナログデジタル変換し、さらに符号化する。
【０３６２】
携帯電話機１１００は、多重分離部１１５７において、画像エンコーダ１１５３から供給された符号化画像データと、音声コーデック１１５９から供給されたデジタル音声データとを、所定の方式で多重化する。携帯電話機１１００は、その結果得られる多重化データを、変復調回路部１１５８でスペクトラム拡散処理し、送受信回路部１１６３でデジタルアナログ変換処理および周波数変換処理する。携帯電話機１１００は、その変換処理により得られた送信用信号を、アンテナ１１１４を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号（画像データ）は、ネットワーク等を介して、通信相手に供給される。
【０３６３】
なお、画像データを送信しない場合、携帯電話機１１００は、CCDカメラ１１１６で生成した画像データを、画像エンコーダ１１５３を介さずに、LCD制御部１１５５を介して液晶ディスプレイ１１１８に表示させることもできる。
【０３６４】
また、例えば、データ通信モードにおいて、簡易ホームページ等にリンクされた動画像ファイルのデータを受信する場合、携帯電話機１１００は、基地局から送信された信号を、アンテナ１１１４を介して送受信回路部１１６３で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機１１００は、その受信信号を変復調回路部１１５８でスペクトラム逆拡散処理して元の多重化データを復元する。携帯電話機１１００は、多重分離部１１５７において、その多重化データを分離して、符号化画像データと音声データとに分ける。
【０３６５】
携帯電話機１１００は、画像デコーダ１１５６において符号化画像データをデコードすることにより、再生動画像データを生成し、これを、LCD制御部１１５５を介して液晶ディスプレイ１１１８に表示させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる動画データが液晶ディスプレイ１１１８に表示される。
【０３６６】
携帯電話機１１００は、このような処理を行う画像デコーダ１１５６として、上述した画像復号装置２００を用いる。したがって、画像デコーダ１１５６は、画像復号装置２００の場合と同様に、画像内の局所的性質に適したノイズ除去を行うことができる。
【０３６７】
このとき、携帯電話機１１００は、同時に、音声コーデック１１５９において、デジタルの音声データをアナログ音声信号に変換し、これをスピーカ１１１７より出力させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる音声データが再生される。
【０３６８】
なお、電子メールの場合と同様に、携帯電話機１１００は、受信した簡易ホームページ等にリンクされたデータを、記録再生部１１６２を介して、記憶部１１２３に記録する（記憶させる）ことも可能である。
【０３６９】
また、携帯電話機１１００は、主制御部１１５０において、撮像されてCCDカメラ１１１６で得られた２次元コードを解析し、２次元コードに記録された情報を取得することができる。
【０３７０】
さらに、携帯電話機１１００は、赤外線通信部１１８１で赤外線により外部の機器と通信することができる。
【０３７１】
携帯電話機１１００は、画像エンコーダ１１５３として画像符号化装置１００を用いることにより、画像内の局所的性質に適したノイズ除去を行うことができる。その結果として、携帯電話機１１００は、より高画質な参照画像を得ることができる。したがって、携帯電話機１１００は、例えばCCDカメラ１１１６において生成された画像データを符号化して生成する符号化データを復号して得られる復号画像を高画質化することができる。
【０３７２】
また、携帯電話機１１００は、画像デコーダ１１５６として画像復号装置２００を用いることにより、画像内の局所的性質に適したノイズ除去を行うことができる。その結果として、携帯電話機１１００は、例えば、簡易ホームページ等にリンクされた動画像ファイルのデータ（符号化データ）から、より高画質な復号画像を得ることができる。
【０３７３】
なお、以上において、携帯電話機１１００が、CCDカメラ１１１６を用いるように説明したが、このCCDカメラ１１１６の代わりに、CMOS（Complementary Metal Oxide Semiconductor）を用いたイメージセンサ（CMOSイメージセンサ）を用いるようにしてもよい。この場合も、携帯電話機１１００は、CCDカメラ１１１６を用いる場合と同様に、被写体を撮像し、被写体の画像の画像データを生成することができる。
【０３７４】
また、以上においては携帯電話機１１００として説明したが、例えば、PDA（Personal Digital Assistants）、スマートフォン、UMPC（Ultra Mobile Personal Computer）、ネットブック、ノート型パーソナルコンピュータ等、この携帯電話機１１００と同様の撮像機能や通信機能を有する装置であれば、どのような装置であっても携帯電話機１１００の場合と同様に、画像符号化装置１００および画像復号装置２００を適用することができる。
【０３７５】
＜８．第８の実施の形態＞
［ハードディスクレコーダ］
図２５は、本発明を適用した画像符号化装置および画像復号装置を用いるハードディスクレコーダの主な構成例を示すブロック図である。
【０３７６】
図２５に示されるハードディスクレコーダ（HDDレコーダ）１２００は、チューナにより受信された、衛星や地上のアンテナ等より送信される放送波信号（テレビジョン信号）に含まれる放送番組のオーディオデータとビデオデータを、内蔵するハードディスクに保存し、その保存したデータをユーザの指示に応じたタイミングでユーザに提供する装置である。
【０３７７】
ハードディスクレコーダ１２００は、例えば、放送波信号よりオーディオデータとビデオデータを抽出し、それらを適宜復号し、内蔵するハードディスクに記憶させることができる。また、ハードディスクレコーダ１２００は、例えば、ネットワークを介して他の装置からオーディオデータやビデオデータを取得し、それらを適宜復号し、内蔵するハードディスクに記憶させることもできる。
【０３７８】
さらに、ハードディスクレコーダ１２００は、例えば、内蔵するハードディスクに記録されているオーディオデータやビデオデータを復号してモニタ１２６０に供給し、モニタ１２６０の画面にその画像を表示させ、モニタ１２６０のスピーカよりその音声を出力させることができる。また、ハードディスクレコーダ１２００は、例えば、チューナを介して取得された放送波信号より抽出されたオーディオデータとビデオデータ、または、ネットワークを介して他の装置から取得したオーディオデータやビデオデータを復号してモニタ１２６０に供給し、モニタ１２６０の画面にその画像を表示させ、モニタ１２６０のスピーカよりその音声を出力させることもできる。
【０３７９】
もちろん、この他の動作も可能である。
【０３８０】
図２５に示されるように、ハードディスクレコーダ１２００は、受信部１２２１、復調部１２２２、デマルチプレクサ１２２３、オーディオデコーダ１２２４、ビデオデコーダ１２２５、およびレコーダ制御部１２２６を有する。ハードディスクレコーダ１２００は、さらに、EPGデータメモリ１２２７、プログラムメモリ１２２８、ワークメモリ１２２９、ディスプレイコンバータ１２３０、OSD（On Screen Display）制御部１２３１、ディスプレイ制御部１２３２、記録再生部１２３３、D/Aコンバータ１２３４、および通信部１２３５を有する。
【０３８１】
また、ディスプレイコンバータ１２３０は、ビデオエンコーダ１２４１を有する。記録再生部１２３３は、エンコーダ１２５１およびデコーダ１２５２を有する。
【０３８２】
受信部１２２１は、リモートコントローラ（図示せず）からの赤外線信号を受信し、電気信号に変換してレコーダ制御部１２２６に出力する。レコーダ制御部１２２６は、例えば、マイクロプロセッサなどにより構成され、プログラムメモリ１２２８に記憶されているプログラムに従って、各種の処理を実行する。レコーダ制御部１２２６は、このとき、ワークメモリ１２２９を必要に応じて使用する。
【０３８３】
通信部１２３５は、ネットワークに接続され、ネットワークを介して他の装置との通信処理を行う。例えば、通信部１２３５は、レコーダ制御部１２２６により制御され、チューナ（図示せず）と通信し、主にチューナに対して選局制御信号を出力する。
【０３８４】
復調部１２２２は、チューナより供給された信号を、復調し、デマルチプレクサ１２２３に出力する。デマルチプレクサ１２２３は、復調部１２２２より供給されたデータを、オーディオデータ、ビデオデータ、およびEPGデータに分離し、それぞれ、オーディオデコーダ１２２４、ビデオデコーダ１２２５、またはレコーダ制御部１２２６に出力する。
【０３８５】
オーディオデコーダ１２２４は、入力されたオーディオデータをデコードし、記録再生部１２３３に出力する。ビデオデコーダ１２２５は、入力されたビデオデータをデコードし、ディスプレイコンバータ１２３０に出力する。レコーダ制御部１２２６は、入力されたEPGデータをEPGデータメモリ１２２７に供給し、記憶させる。
【０３８６】
ディスプレイコンバータ１２３０は、ビデオデコーダ１２２５またはレコーダ制御部１２２６より供給されたビデオデータを、ビデオエンコーダ１２４１により、例えばNTSC（National Television Standards Committee）方式のビデオデータにエンコードし、記録再生部１２３３に出力する。また、ディスプレイコンバータ１２３０は、ビデオデコーダ１２２５またはレコーダ制御部１２２６より供給されるビデオデータの画面のサイズを、モニタ１２６０のサイズに対応するサイズに変換し、ビデオエンコーダ１２４１によってNTSC方式のビデオデータに変換し、アナログ信号に変換し、ディスプレイ制御部１２３２に出力する。
【０３８７】
ディスプレイ制御部１２３２は、レコーダ制御部１２２６の制御のもと、OSD（On Screen Display）制御部１２３１が出力したOSD信号を、ディスプレイコンバータ１２３０より入力されたビデオ信号に重畳し、モニタ１２６０のディスプレイに出力し、表示させる。
【０３８８】
モニタ１２６０にはまた、オーディオデコーダ１２２４が出力したオーディオデータが、D/Aコンバータ１２３４によりアナログ信号に変換されて供給されている。モニタ１２６０は、このオーディオ信号を内蔵するスピーカから出力する。
【０３８９】
記録再生部１２３３は、ビデオデータやオーディオデータ等を記録する記憶媒体としてハードディスクを有する。
【０３９０】
記録再生部１２３３は、例えば、オーディオデコーダ１２２４より供給されるオーディオデータを、エンコーダ１２５１によりエンコードする。また、記録再生部１２３３は、ディスプレイコンバータ１２３０のビデオエンコーダ１２４１より供給されるビデオデータを、エンコーダ１２５１によりエンコードする。記録再生部１２３３は、そのオーディオデータの符号化データとビデオデータの符号化データとをマルチプレクサにより合成する。記録再生部１２３３は、その合成データをチャネルコーディングして増幅し、そのデータを、記録ヘッドを介してハードディスクに書き込む。
【０３９１】
記録再生部１２３３は、再生ヘッドを介してハードディスクに記録されているデータを再生し、増幅し、デマルチプレクサによりオーディオデータとビデオデータに分離する。記録再生部１２３３は、デコーダ１２５２によりオーディオデータおよびビデオデータをデコードする。記録再生部１２３３は、復号したオーディオデータをD/A変換し、モニタ１２６０のスピーカに出力する。また、記録再生部１２３３は、復号したビデオデータをD/A変換し、モニタ１２６０のディスプレイに出力する。
【０３９２】
レコーダ制御部１２２６は、受信部１２２１を介して受信されるリモートコントローラからの赤外線信号により示されるユーザ指示に基づいて、EPGデータメモリ１２２７から最新のEPGデータを読み出し、それをOSD制御部１２３１に供給する。OSD制御部１２３１は、入力されたEPGデータに対応する画像データを発生し、ディスプレイ制御部１２３２に出力する。ディスプレイ制御部１２３２は、OSD制御部１２３１より入力されたビデオデータをモニタ１２６０のディスプレイに出力し、表示させる。これにより、モニタ１２６０のディスプレイには、EPG（電子番組ガイド）が表示される。
【０３９３】
また、ハードディスクレコーダ１２００は、インターネット等のネットワークを介して他の装置から供給されるビデオデータ、オーディオデータ、またはEPGデータ等の各種データを取得することができる。
【０３９４】
通信部１２３５は、レコーダ制御部１２２６に制御され、ネットワークを介して他の装置から送信されるビデオデータ、オーディオデータ、およびEPGデータ等の符号化データを取得し、それをレコーダ制御部１２２６に供給する。レコーダ制御部１２２６は、例えば、取得したビデオデータやオーディオデータの符号化データを記録再生部１２３３に供給し、ハードディスクに記憶させる。このとき、レコーダ制御部１２２６および記録再生部１２３３が、必要に応じて再エンコード等の処理を行うようにしてもよい。
【０３９５】
また、レコーダ制御部１２２６は、取得したビデオデータやオーディオデータの符号化データを復号し、得られるビデオデータをディスプレイコンバータ１２３０に供給する。ディスプレイコンバータ１２３０は、ビデオデコーダ１２２５から供給されるビデオデータと同様に、レコーダ制御部１２２６から供給されるビデオデータを処理し、ディスプレイ制御部１２３２を介してモニタ１２６０に供給し、その画像を表示させる。
【０３９６】
また、この画像表示に合わせて、レコーダ制御部１２２６が、復号したオーディオデータを、D/Aコンバータ１２３４を介してモニタ１２６０に供給し、その音声をスピーカから出力させるようにしてもよい。
【０３９７】
さらに、レコーダ制御部１２２６は、取得したEPGデータの符号化データを復号し、復号したEPGデータをEPGデータメモリ１２２７に供給する。
【０３９８】
以上のようなハードディスクレコーダ１２００は、ビデオデコーダ１２２５、デコーダ１２５２、およびレコーダ制御部１２２６に内蔵されるデコーダとして画像復号装置２００を用いる。したがって、ビデオデコーダ１２２５、デコーダ１２５２、およびレコーダ制御部１２２６に内蔵されるデコーダは、画像復号装置２００の場合と同様に、画像内の局所的性質に適したノイズ除去を行うことができる。
【０３９９】
したがって、ハードディスクレコーダ１２００は、画像内の局所的性質に適したノイズ除去を行うことができる。その結果として、ハードディスクレコーダ１２００は、例えば、チューナや通信部１２３５を介して受信されるビデオデータ（符号化データ）や、記録再生部１２３３のハードディスクに記録されるビデオデータ（符号化データ）から、より高画質な復号画像を得ることができる。
【０４００】
また、ハードディスクレコーダ１２００は、エンコーダ１２５１として画像符号化装置１００を用いる。したがって、エンコーダ１２５１は、画像符号化装置１００の場合と同様に、画像内の局所的性質に適したノイズ除去を行うことができる。
【０４０１】
したがって、ハードディスクレコーダ１２００は、画像内の局所的性質に適したノイズ除去を行うことができる。その結果として、ハードディスクレコーダ１２００は、より高画質な参照画像を得ることができる。したがって、ハードディスクレコーダ１２００は、例えば、ハードディスクに記録する符号化データの復号画像を高画質化することができる。
【０４０２】
なお、以上においては、ビデオデータやオーディオデータをハードディスクに記録するハードディスクレコーダ１２００について説明したが、もちろん、記録媒体はどのようなものであってもよい。例えばフラッシュメモリ、光ディスク、またはビデオテープ等、ハードディスク以外の記録媒体を適用するレコーダであっても、上述したハードディスクレコーダ１２００の場合と同様に、画像符号化装置１００および画像復号装置２００を適用することができる。
【０４０３】
＜９．第９の実施の形態＞
［カメラ］
図２６は、本発明を適用した画像符号化装置および画像復号装置を用いるカメラの主な構成例を示すブロック図である。
【０４０４】
図２６に示されるカメラ１３００は、被写体を撮像し、被写体の画像をLCD１３１６に表示させたり、それを画像データとして、記録メディア１３３３に記録したりする。
【０４０５】
レンズブロック１３１１は、光（すなわち、被写体の映像）を、CCD/CMOS１３１２に入射させる。CCD/CMOS１３１２は、CCDまたはCMOSを用いたイメージセンサであり、受光した光の強度を電気信号に変換し、カメラ信号処理部１３１３に供給する。
【０４０６】
カメラ信号処理部１３１３は、CCD/CMOS１３１２から供給された電気信号を、Ｙ，Ｃｒ，Ｃｂの色差信号に変換し、画像信号処理部１３１４に供給する。画像信号処理部１３１４は、コントローラ１３２１の制御の下、カメラ信号処理部１３１３から供給された画像信号に対して所定の画像処理を施したり、その画像信号をエンコーダ１３４１で符号化したりする。画像信号処理部１３１４は、画像信号を符号化して生成した符号化データを、デコーダ１３１５に供給する。さらに、画像信号処理部１３１４は、オンスクリーンディスプレイ（OSD）１３２０において生成された表示用データを取得し、それをデコーダ１３１５に供給する。
【０４０７】
以上の処理において、カメラ信号処理部１３１３は、バス１３１７を介して接続されるDRAM（Dynamic Random Access Memory）１３１８を適宜利用し、必要に応じて画像データや、その画像データが符号化された符号化データ等をそのDRAM１３１８に保持させる。
【０４０８】
デコーダ１３１５は、画像信号処理部１３１４から供給された符号化データを復号し、得られた画像データ（復号画像データ）をLCD１３１６に供給する。また、デコーダ１３１５は、画像信号処理部１３１４から供給された表示用データをLCD１３１６に供給する。LCD１３１６は、デコーダ１３１５から供給された復号画像データの画像と表示用データの画像を適宜合成し、その合成画像を表示する。
【０４０９】
オンスクリーンディスプレイ１３２０は、コントローラ１３２１の制御の下、記号、文字、または図形からなるメニュー画面やアイコンなどの表示用データを、バス１３１７を介して画像信号処理部１３１４に出力する。
【０４１０】
コントローラ１３２１は、ユーザが操作部１３２２を用いて指令した内容を示す信号に基づいて、各種処理を実行するとともに、バス１３１７を介して、画像信号処理部１３１４、DRAM１３１８、外部インタフェース１３１９、オンスクリーンディスプレイ１３２０、およびメディアドライブ１３２３等を制御する。FLASH ROM１３２４には、コントローラ１３２１が各種処理を実行する上で必要なプログラムやデータ等が格納される。
【０４１１】
例えば、コントローラ１３２１は、画像信号処理部１３１４やデコーダ１３１５に代わって、DRAM１３１８に記憶されている画像データを符号化したり、DRAM１３１８に記憶されている符号化データを復号したりすることができる。このとき、コントローラ１３２１は、画像信号処理部１３１４やデコーダ１３１５の符号化・復号方式と同様の方式によって符号化・復号処理を行うようにしてもよいし、画像信号処理部１３１４やデコーダ１３１５が対応していない方式により符号化・復号処理を行うようにしてもよい。
【０４１２】
また、例えば、操作部１３２２から画像印刷の開始が指示された場合、コントローラ１３２１は、DRAM１３１８から画像データを読み出し、それを、バス１３１７を介して外部インタフェース１３１９に接続されるプリンタ１３３４に供給して印刷させる。
【０４１３】
さらに、例えば、操作部１３２２から画像記録が指示された場合、コントローラ１３２１は、DRAM１３１８から符号化データを読み出し、それを、バス１３１７を介してメディアドライブ１３２３に装着される記録メディア１３３３に供給して記憶させる。
【０４１４】
記録メディア１３３３は、例えば、磁気ディスク、光磁気ディスク、光ディスク、または半導体メモリ等の、読み書き可能な任意のリムーバブルメディアである。記録メディア１３３３は、もちろん、リムーバブルメディアとしての種類も任意であり、テープデバイスであってもよいし、ディスクであってもよいし、メモリカードであってもよい。もちろん、非接触ICカード等であっても良い。
【０４１５】
また、メディアドライブ１３２３と記録メディア１３３３を一体化し、例えば、内蔵型ハードディスクドライブやSSD（Solid State Drive）等のように、非可搬性の記憶媒体により構成されるようにしてもよい。
【０４１６】
外部インタフェース１３１９は、例えば、USB入出力端子などで構成され、画像の印刷を行う場合に、プリンタ１３３４と接続される。また、外部インタフェース１３１９には、必要に応じてドライブ１３３１が接続され、磁気ディスク、光ディスク、あるいは光磁気ディスクなどのリムーバブルメディア１３３２が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて、FLASH ROM１３２４にインストールされる。
【０４１７】
さらに、外部インタフェース１３１９は、LANやインターネット等の所定のネットワークに接続されるネットワークインタフェースを有する。コントローラ１３２１は、例えば、操作部１３２２からの指示に従って、DRAM１３１８から符号化データを読み出し、それを外部インタフェース１３１９から、ネットワークを介して接続される他の装置に供給させることができる。また、コントローラ１３２１は、ネットワークを介して他の装置から供給される符号化データや画像データを、外部インタフェース１３１９を介して取得し、それをDRAM１３１８に保持させたり、画像信号処理部１３１４に供給したりすることができる。
【０４１８】
以上のようなカメラ１３００は、デコーダ１３１５として画像復号装置２００を用いる。したがって、デコーダ１３１５は、画像復号装置２００の場合と同様に、画像内の局所的性質に適したノイズ除去を行うことができる。
【０４１９】
したがって、カメラ１３００は、画像内の局所的性質に適したノイズ除去を行うことができる。その結果として、カメラ１３００は、例えば、CCD/CMOS１３１２において生成される画像データや、DRAM１３１８または記録メディア１３３３から読み出されるビデオデータの符号化データや、ネットワークを介して取得するビデオデータの符号化データから、より高画質な復号画像を得ることができる。
【０４２０】
また、カメラ１３００は、エンコーダ１３４１として画像符号化装置１００を用いる。したがって、エンコーダ１３４１は、画像符号化装置１００の場合と同様に、画像内の局所的性質に適したノイズ除去を行うことができる。
【０４２１】
したがって、カメラ１３００は、画像内の局所的性質に適したノイズ除去を行うことができる。その結果として、カメラ１３００は、例えば、DRAM１３１８や記録メディア１３３３に記録する符号化データや、他の装置に提供する符号化データの復号画像を高画質化することができる。
【０４２２】
なお、コントローラ１３２１が行う復号処理に画像復号装置２００の復号方法を適用するようにしてもよい。同様に、コントローラ１３２１が行う符号化処理に画像符号化装置１００の符号化方法を適用するようにしてもよい。
【０４２３】
また、カメラ１３００が撮像する画像データは動画像であってもよいし、静止画像であってもよい。
【０４２４】
もちろん、画像符号化装置１００および画像復号装置２００は、上述した装置以外の装置やシステムにも適用可能である。
【０４２５】
また、マクロブロックの大きさも、１６×１６画素に限らない。例えば図１０に示される３２×３２画素のような、あらゆる大きさのマクロブロックに対して適用することが可能である。
【０４２６】
以上においては、フィルタ係数等をビットストリームに多重化(記述)するものとして説明したが、多重化する以外にも、例えば、フィルタ係数と画像データ(又はビットストリーム)とを伝送(記録)してもよい。フィルタ係数と画像データ(又はビットストリーム)とを連結する(付加する)形態もありうる。
【０４２７】
連結(付加)とは、画像データ(又はビットストリーム)とフィルタ係数とが互いにリンクされている状態（対応が取れている状態）を示すものであり、物理的な位置関係は任意である。例えば、画像データ(又はビットストリーム)とフィルタ係数とを、別の伝送路で伝送してもよい。また、画像データ(又はビットストリーム)とフィルタ係数とを、互いに別の記録媒体(又は同一の記録媒体内の別々の記録エリア)に記録してもよい。なお、画像データ(又はビットストリーム)とフィルタ係数とをリンクさせる単位は、任意であり、例えば、符号化処理単位(１フレーム、複数フレーム等)で設定してもよい。
【符号の説明】
【０４２８】
１００  画像符号化装置，  １１２  フィルタ係数算出部，  １１３  ループフィルタ，  １５１  直交変換サイズバッファ，  １５２  復号画素分類部，  １５３  入力画素分類部，  １５４  ４×４ブロック係数算出部，  １５５  ８×８ブロック係数算出部，  １６１  画素分類部，  １６２  フィルタ部（４×４），  １６３  フィルタ部（８×８），  ２００  画像復号装置，  ２０２  可逆復号部，  ２０４  逆直交変換部，  ２０７  ループフィルタ，  ２１２  イントラ予測部，  ２１３  動き予測・補償部，  ２５１  画素分類部，  ２５２  フィルタ部（４×４），  ２５３  フィルタ部（８×８）
【図１】
2011049740.tif 000011
【図２】
2011049740.tif 000012
【図３】
2011049740.tif 000013
【図４】
2011049740.tif 000014
【図５】
2011049740.tif 000015
【図６】
2011049740.tif 000016
【図７】
2011049740.tif 000017
【図８】
2011049740.tif 000018
【図９】
2011049740.tif 000019
【図１０】
2011049740.tif 000020
【図１１】
2011049740.tif 000021
【図１２】
2011049740.tif 000022
【図１３】
2011049740.tif 000023
【図１４】
2011049740.tif 000024
【図１５】
2011049740.tif 000025
【図１６】
2011049740.tif 000026
【図１７】
2011049740.tif 000027
【図１８】
2011049740.tif 000028
【図１９】
2011049740.tif 000029
【図２０】
2011049740.tif 000030
【図２１】
2011049740.tif 000031
【図２２】
2011049740.tif 000032
【図２３】
2011049740.tif 000033
【図２４】
2011049740.tif 000034
【図２５】
2011049740.tif 000035
【図２６】
2011049740.tif 000036