"符号化ストリームを復号処理して画像を生成する復号部と、前記復号部により生成されたCUCodingUnit単位の画像のフィルタ処理対象画素に対して構築されたタップの画像データと係数セットを用いてフィルタ演算を行うフィルタ演算部と、所定ブロック境界の境界方向に対して直交する方向のタップ数が最小である選択可能なフィルタサイズで前記所定ブロック境界から所定範囲内の画像のフィルタ演算を行う場合における該フィルタ演算に用いられる前記所定範囲に含まれていない領域の画像データを記憶するメモリと、前記所定ブロック境界の境界方向に対して直交する方向のタップ数が最小でないフィルタサイズが選択されている場合、前記フィルタ処理対象画素の位置に基づき前記所定範囲内に位置するタップおよび前記メモリに画像データが記憶されていないタップを判別して、前記所定範囲内および前記メモリに記憶されていない画像データを用いることなく前記フィルタ演算を行うように、前記判別されたタップに対して画像データの複写または前記フィルタ演算で用いる係数セットの変更を行うフィルタ制御部とを備える画像処理装置。前記フィルタ制御部は、前記メモリに画像データが記憶されている隣接画素の画像データを前記判別されたタップの画像データとして複写する請求項1記載の画像処理装置。前記フィルタ制御部は、前記メモリに画像データが記憶されている隣接画素の係数を変更する請求項1記載の画像処理装置。前記所定ブロック境界の境界方向に対して直交する方向は水平方向である請求項1記載の画像処理装置。前記所定範囲は、デブロッキングフィルタ処理が行われていないためにSAOSampleAdaptiveOffset処理を行うことができない画像範囲である請求項1記載の画像処理装置。符号化ストリームを復号処理して画像を生成する工程と、前記復号部により生成されたCUCodingUnit単位の画像のフィルタ処理対象画素に対して構築されたタップの画像データと係数セットを用いてフィルタ演算を行う工程と、所定ブロック境界の境界方向に対して直交する方向のタップ数が最小である選択可能なフィルタサイズで前記所定ブロック境界から所定範囲内の画像のフィルタ演算を行う場合における該フィルタ演算に用いられる前記所定範囲に含まれていない領域の画像データを記憶する工程と、前記所定ブロック境界の境界方向に対して直交する方向のタップ数が最小でないフィルタサイズが選択されている場合、前記フィルタ処理対象画素の位置に基づき前記所定範囲内に位置するタップおよび前記メモリに画像データが記憶されていないタップを判別して、前記所定範囲内および前記メモリに記憶されていない画像データを用いることなく前記フィルタ演算を行うように、前記判別されたタップに対して画像データの複写または前記フィルタ演算で用いる係数セットの変更を行う工程と含む画像処理方法。画像を符号化する際にローカル復号処理されたCUCodingUnit単位の画像のフィルタ処理対象画素に対して構築されたタップの画像データと係数セットを用いてフィルタ演算を行うフィルタ演算部と、所定ブロック境界の境界方向に対して直交する方向のタップ数が最小である選択可能なフィルタサイズで前記所定ブロック境界から所定範囲内の画像のフィルタ演算を行う場合における該フィルタ演算に用いられる前記所定範囲に含まれていない領域の画像データを記憶するメモリと、前記所定ブロック境界の境界方向に対して直交する方向のタップ数が最小でないフィルタサイズを選択する場合、前記フィルタ処理対象画素の位置に基づき前記所定範囲内に位置するタップおよび前記メモリに画像データが記憶されていないタップを判別して、前記所定範囲内および前記メモリに記憶されていない画像データを用いることなく前記フィルタ演算を行うように、前記判別されたタップに対して画像データの複写または前記フィルタ演算で用いる係数セットの変更を行うフィルタ制御部とを備える画像処理装置。前記フィルタ制御部は、前記フィルタ演算に用いた前記フィルタサイズと係数セットの情報を、前記符号化ストリームに含める請求項7記載の画像処理装置。前記フィルタ演算に用いた前記フィルタサイズは、符号化効率の良いフィルタサイズである請求項8記載の画像処理装置。画像を符号化する際にローカル復号処理されたCUCodingUnit単位の画像のフィルタ処理対象画素に対して構築されたタップの画像データと係数セットを用いてフィルタ演算を行う工程と、所定ブロック境界の境界方向に対して直交する方向のタップ数が最小である選択可能なフィルタサイズで前記所定ブロック境界から所定範囲内の画像のフィルタ演算を行う場合における該フィルタ演算に用いられる前記所定範囲に含まれていない領域の画像データを記憶する工程と、前記所定ブロック境界の境界方向に対して直交する方向のタップ数が最小でないフィルタサイズを選択する場合、前記フィルタ処理対象画素の位置に基づき前記所定範囲内に位置するタップおよび前記メモリに画像データが記憶されていないタップを判別して、前記所定範囲内および前記メモリに記憶されていない画像データを用いることなく前記フィルタ演算を行うように、前記判別されたタップに対して画像データの複写または前記フィルタ演算で用いる係数セットの変更を行う工程とを含む画像処理方法。ところで、画像をブロック単位でラスタースキャン方向に処理する場合、デブロッキングフィルタ処理における水平フィルタは、所望のブロックカレントブロックと、カレントブロックの右側に隣接するブロックの画像データを用いて行われる。また、カレントブロックのループフィルタ処理は、デブロッキングフィルタ処理、またはデブロッキングフィルタ処理とSAO処理が行われた後の画像データを用いて行われる。このため、デブロッキングフィルタ処理後の画像を用いてループフィルタ処理を行うことができるように、画像データをメモリに記憶しておく必要がある。図1は、従来のループフィルタ処理においてメモリに記憶する画像データを説明するための図である。デブロッキングフィルタ処理における水平フィルタでは、図1のAに示すように、ブロック境界から例えば4画素列分の画像データを用いてブロック境界から3画素列分のフィルタ処理後の画像データを生成する。なお、デブロッキングフィルタの処理対象画素を二重丸で示している。また、ブロック例えばLCULargestCodingUnitmとLCUm1のブロック境界をBBとして示している。適応ループフィルタでは、例えば図1のB,Cに示すように、適応ループフィルタの処理対象画素黒四角で示すに対してタップを設定して、タップの画像データを用いてフィルタ演算が行われる。タップは、例えば黒丸で示す位置と処理対象画素の位置に構築されており、図では5×5画素のタップを用いるフィルタサイズを例示している。ここで、図1のBに示すように、LCUmにおけるループフィルタ処理の対象画素がブロック境界BBから左6画素列目の画素である場合、タップはデブロッキングフィルタのフィルタ処理範囲に含まれない。したがって、ループフィルタ処理を行う画像処理装置は、デブロッキングフィルタ処理後の画像データを用いることなくループフィルタ処理が可能である。しかし、図1のCに示すように、ループフィルタ処理の対象画素がブロック境界BBから左5画素列目の画素となると、タップはデブロッキングフィルタのフィルタ処理範囲に含まれる。すなわち、ループフィルタ処理では、デブロッキングフィルタ処理後の画像データが必要となる。したがって、ループフィルタ処理を行う画像処理装置は、デブロッキングフィルタ処理後にループフィルタ処理を行うため、左7画素列目から左4画素列目までの4画素列分の画像データをメモリに記憶しておく必要がある。また、ループフィルタ処理における水平方向のタップ数が大きくなると、メモリに記憶する画像データを増やさなければならない。例えば図1のDに示すように11×5画素のタップを用いるフィルタサイズとする場合、ループフィルタ処理の対象画素がブロック境界BBから左8画素列目の位置となると、タップはデブロッキングフィルタのフィルタ処理範囲に含まれる。すなわち、ループフィルタ処理では、デブロッキングフィルタ処理後の画像データが必要となる。したがって、ループフィルタ処理を行う画像処理装置は、デブロッキングフィルタ処理後にループフィルタ処理を行うため、左13画素列目から左4画素列目までの10画素列分の画像データをメモリに記憶しなければならない。さらに、フィルタサイズを切り替えてループフィルタ処理を行う場合、水平方向のタップ数が最も大きいフィルタサイズに対応した画素列分の画像データを記憶する必要があり、容量の大きいメモリが必要となってしまう。そこで、この技術ではループフィルタ処理で用いるメモリのメモリ容量を削減できる画像処理装置と画像処理方法を提供する。この技術の第1の側面は、符号化ストリームを復号処理して画像を生成する復号部と、前記復号部により生成されたCUCodingUnit単位の画像のフィルタ処理対象画素に対して構築されたタップの画像データと係数セットを用いてフィルタ演算を行うフィルタ演算部と、所定ブロック境界の境界方向に対して直交する方向のタップ数が最小であるフィルタサイズで前記所定ブロック境界から所定範囲内の画像のフィルタ演算を行う場合における該フィルタ演算に用いられる前記所定範囲に含まれていない領域の画像データを記憶するメモリと、前記所定ブロック境界の境界方向に対して直交する方向のタップ数が最小でないフィルタサイズが選択されている場合、前記フィルタ処理対象画素の位置に基づき前記所定範囲内に位置するタップおよび前記メモリに画像データが記憶されていないタップを判別して、前記所定範囲内および前記メモリに記憶されていない画像データを用いることなく前記フィルタ演算を行うように、前記判別されたタップに対して画像データの複写または前記フィルタ演算で用いる係数セットの変更を行うフィルタ制御部とを備える画像処理装置にある。この技術においては、符号化ストリームを復号処理して生成されたCU単位の画像ループフィルタ処理を行う場合に、所定ブロック境界の境界方向に対して直交する方向、例えば右側ブロック境界に対して直交する水平方向のタップ数が最小であるフィルタサイズで右側ブロック境界から所定範囲内、例えばデブロッキングフィルタ処理のフィルタ処理範囲内、またSAOSampleAdaptiveOffset処理を行う場合、デブロッキングフィルタ処理が行われていないためにSAO処理を行うことができない画素範囲内の画像のフィルタ演算に用いられる所定範囲に含まれていない画像データがメモリに記憶される。ここで、フィルタ制御部は、右側ブロック境界方向のタップ数が最小でないフィルタサイズが選択されている場合、フィルタ処理を行う対象画素の画像位置に基づき、画像データが得られていない所定範囲内に位置するタップおよびメモリに画像データが記憶されていないタップを判別して、所定範囲内およびメモリに記憶されていない画像データを用いることなくフィルタ演算を行うように、判別されたタップに対する画像データの複写またはフィルタ演算で用いるフィルタ係数の変更が行われる。例えば、メモリに画像データが記憶されている隣接画素の画像データが判別されたタップの画像データとして複写される。または、メモリに画像データが記憶されている隣接画素の係数が変更される。この技術の第2の側面は、符号化ストリームを復号処理して画像を生成する工程と、前記復号部により生成されたCUCodingUnit単位の画像のフィルタ処理対象画素に対して構築されたタップの画像データと係数セットを用いてフィルタ演算を行うフィルタ演算部と、所定ブロック境界の境界方向に対して直交する方向のタップ数が最小であるフィルタサイズで前記所定ブロック境界から所定範囲内の画像のフィルタ演算を行う場合における該フィルタ演算に用いられる前記所定範囲に含まれていない領域の画像データを記憶する工程と、前記所定ブロック境界の境界方向に対して直交する方向のタップ数が最小でないフィルタサイズが選択されている場合、前記フィルタ処理対象画素の位置に基づき前記所定範囲内に位置するタップおよび前記メモリに画像データが記憶されていないタップを判別して、前記所定範囲内および前記メモリに記憶されていない画像データを用いることなく前記フィルタ演算を行うように、前記判別されたタップに対して画像データの複写または前記フィルタ演算で用いる係数セットの変更を行う工程と含む画像処理方法にある。この技術の第3の側面は、画像を符号化する際にローカル復号処理されたCUCodingUnit単位の画像のフィルタ処理対象画素に対して構築されたタップの画像データと係数セットを用いてフィルタ演算を行うフィルタ演算部と、所定ブロック境界の境界方向に対して直交する方向のタップ数が最小である選択可能なフィルタサイズで前記所定ブロック境界から所定範囲内の画像のフィルタ演算を行う場合における該フィルタ演算に用いられる前記所定範囲に含まれていない領域の画像データを記憶するメモリと、前記所定ブロック境界の境界方向に対して直交する方向のタップ数が最小でないフィルタサイズを選択する場合、前記フィルタ処理対象画素の位置に基づき前記所定範囲内に位置するタップおよび前記メモリに画像データが記憶されていないタップを判別して、前記所定範囲内および前記メモリに記憶されていない画像データを用いることなく前記フィルタ演算を行うように、前記判別されたタップに対して画像データの複写または前記フィルタ演算で用いる係数セットの変更を行うフィルタ制御部とを備える画像処理装置にある。この技術では、画像を符号化する際にローカル復号処理されたCU単位の画像のフィルタ処理対象画素に対して構築されたタップの画像データと係数セットを用いてフィルタ演算が行われる。また、所定ブロック境界の境界方向に対して直交する方向、例えば右側ブロック境界に対して直交する水平方向のタップ数が最小である選択可能なフィルタサイズで右側ブロック境界から所定範囲内の画像のフィルタ演算を行う場合におけるフィルタ演算に用いられる所定範囲に含まれていない領域の画像データがメモリに記憶される。フィルタ制御部は、符号化効率の良いフィルタサイズを選択してフィルタ処理を行う際に、ブロック境界方向のタップ数が最小でないフィルタサイズを選択する場合は、フィルタ処理対象画素の位置に基づき所定範囲内に位置するタップおよびメモリに画像データが記憶されていないタップを判別して、所定範囲内およびメモリに記憶されていない画像データを用いることなくフィルタ演算を行うように、判別されたタップに対して画像データの複写またはフィルタ演算で用いる係数セットの変更を行う。また、フィルタ制御部は、フィルタ演算に用いたフィルタサイズと係数セットの情報を、符号化ストリームに含めるようにする。この技術の第4の側面は、画像を符号化する際にローカル復号処理されたCUCodingUnit単位の画像のフィルタ処理対象画素に対して構築されたタップの画像データと係数セットを用いてフィルタ演算を行う工程と、所定ブロック境界の境界方向に対して直交する方向のタップ数が最小である選択可能なフィルタサイズで前記所定ブロック境界から所定範囲内の画像のフィルタ演算を行う場合における該フィルタ演算に用いられる前記所定範囲に含まれていない領域の画像データを記憶する工程と、前記所定ブロック境界の境界方向に対して直交する方向のタップ数が最小でないフィルタサイズを選択する場合、前記フィルタ処理対象画素の位置に基づき前記所定範囲内に位置するタップおよび前記メモリに画像データが記憶されていないタップを判別して、前記所定範囲内および前記メモリに記憶されていない画像データを用いることなく前記フィルタ演算を行うように、前記判別されたタップに対して画像データの複写または前記フィルタ演算で用いる係数セットの変更を行う工程とを含む画像処理方法にある。この技術によれば、メモリでは、所定ブロック境界の境界方向に対して直交する方向のタップ数が最小であるフィルタサイズで所定ブロック境界から所定範囲内の画像のフィルタ演算を行う場合における該フィルタ演算に用いられる所定範囲に含まれていない領域の画像データが記憶される。また、フィルタ制御部では、ブロック境界方向のタップ数が最小でないフィルタサイズが選択されている場合、フィルタ処理対象画素の位置に基づき所定範囲内に位置するタップおよびメモリに画像データが記憶されていないタップを判別して、所定範囲内およびメモリに記憶されていない画像データを用いることなくフィルタ演算を行うように、判別されたタップに対して画像データの複写またはフィルタ演算で用いる係数セットの変更が行われる。このため、異なるサイズのフィルタを選択的に用いてフィルタ演算を行う場合に、最小サイズのフィルタに対応させて画像データをメモリに記憶させても、最小サイズよりも大きいフィルタサイズでフィルタ演算が可能となり、適応ループフィルタ処理を行うために画像データを記憶するメモリのメモリ容量を削減できる。以下、本技術を実施するための形態について説明する。なお、説明は以下の順序で行う。1.画像符号化装置に適用した場合の構成2.画像符号化装置の動作3.画像復号装置に適用した場合の構成4.画像復号装置の動作5.ループフィルタ処理部の構成と動作6.応用例<1.画像符号化装置に適用した場合の構成>図2は、本技術の画像処理装置を画像符号化装置に適用した場合の構成を示している。画像符号化装置10は、アナログ/ディジタル変換部A/D変換部11、画面並べ替えバッファ12、減算部13、直交変換部14、量子化部15、可逆符号化部16、蓄積バッファ17、レート制御部18を備えている。さらに、画像符号化装置10は、逆量子化部21、逆直交変換部22、加算部23、デブロッキングフィルタ処理部24、SAO部25、ループフィルタ処理部26、係数メモリ27、フレームメモリ28、セレクタ29、イントラ予測部31、動き予測補償部32、予測画像最適モード選択部33を備えている。A/D変換部11は、アナログの画像信号をディジタルの画像データに変換して画面並べ替えバッファ12に出力する。画面並べ替えバッファ12は、A/D変換部11から出力された画像データに対してフレームの並べ替えを行う。画面並べ替えバッファ12は、符号化処理に係るGOPGroupofPictures構造に応じてフレームの並べ替えを行い、並べ替え後の画像データを減算部13とイントラ予測部31と動き予測補償部32に出力する。減算部13には、画面並べ替えバッファ12から出力された画像データと、後述する予測画像最適モード選択部33で選択された予測画像データが供給される。減算部13は、画面並べ替えバッファ12から出力された画像データと予測画像最適モード選択部33から供給された予測画像データとの差分である予測誤差データを算出して、直交変換部14に出力する。直交変換部14は、減算部13から出力された予測誤差データに対して、離散コサイン変換DCT;DiscreteCosineTransform、カルーネンレーベ変換等の直交変換処理を行う。直交変換部14は、直交変換処理を行うことにより得られた変換係数データを量子化部15に出力する。量子化部15には、直交変換部14から出力された変換係数データと、後述するレート制御部18からレート制御信号が供給されている。量子化部15は変換係数データの量子化を行い、量子化データを可逆符号化部16と逆量子化部21に出力する。また、量子化部15は、レート制御部18からのレート制御信号に基づき量子化パラメータ量子化スケールを切り替えて、量子化データのビットレートを変化させる。可逆符号化部16には、量子化部15から出力された量子化データと、後述するイントラ予測部31と動き予測補償部32および予測画像最適モード選択部33から予測モード情報が供給される。なお、予測モード情報には、イントラ予測またはインター予測に応じて、予測ブロックサイズを識別可能とするマクロブロックタイプ、予測モード、動きベクトル情報、参照ピクチャ情報等が含まれる。可逆符号化部16は、量子化データに対して例えば可変長符号化、または算術符号化等により可逆符号化処理を行い、符号化ストリームを生成して蓄積バッファ17に出力する。また、可逆符号化部16は、予測モード情報や後述するSAO処理に関する情報や適応ループフィルタ処理に関する情報等を可逆符号化して、符号化ストリームのヘッダ情報に付加する。蓄積バッファ17は、可逆符号化部16からの符号化ストリームを蓄積する。また、蓄積バッファ17は、蓄積した符号化ストリームを伝送路に応じた伝送速度で出力する。レート制御部18は、蓄積バッファ17の空き容量の監視を行い、空き容量に応じてレート制御信号を生成して量子化部15に出力する。レート制御部18は、例えば蓄積バッファ17から空き容量を示す情報を取得する。レート制御部18は空き容量が少なくなっているとき、レート制御信号によって量子化データのビットレートを低下させる。また、レート制御部18は蓄積バッファ17の空き容量が十分大きいとき、レート制御信号によって量子化データのビットレートを高くする。逆量子化部21は、量子化部15から供給された量子化データの逆量子化処理を行う。逆量子化部21は、逆量子化処理を行うことで得られた変換係数データを逆直交変換部22に出力する。逆直交変換部22は、逆量子化部21から供給された変換係数データの逆直交変換処理を行うことで得られたデータを加算部23に出力する。加算部23は、逆直交変換部22から供給されたデータと予測画像最適モード選択部33から供給された予測画像データを加算して復号画像データを生成して、デブロッキングフィルタ処理部24とフレームメモリ28に出力する。デブロッキングフィルタ処理部24は、画像の符号化時に生じるブロック歪みを減少させるためのフィルタ処理を行う。デブロッキングフィルタ処理部24は、加算部23から供給された復号画像データ、すなわちローカル復号処理された復号画像の画像データからブロック歪みを除去するフィルタ処理を行い、フィルタ処理後の画像データをSAO部25に出力する。SAO部25は、画像をquadtreeに分割し、それぞれの領域にどのようなオフセットを適用して符号化するかを選択する。SAO部25はデブロッキングフィルタ処理部24から供給された画像データに対してSAO処理すなわち選択したオフセット処理を行いループフィルタ処理部26に出力する。ループフィルタ処理部26は、係数メモリ27から供給された係数とSAO部25から供給された画像データを用いて、適応ループフィルタ処理以下、単にループフィルタ処理またはALF処理というを行う。ループフィルタ処理部26は、フィルタとして、例えばウィナーフィルタWienerFilterが用いられる。もちろんウィナーフィルタ以外のフィルタを用いてもよい。さらに、ループフィルタ処理部26は、タップサイズの異なる複数のフィルタを有しており、ループフィルタ処理を行う。ループフィルタ処理部26は、フィルタ処理結果をフレームメモリ28に供給し、参照画像の画像データとして記憶させる。また、ループフィルタ処理部26は、後述する最適モードの選択結果に基づき符号化効率が良好となるループフィルタ処理に用いたフィルタサイズや係数セット等を示す情報を可逆符号化部16に供給して符号化ストリームに含めるようにする。フレームメモリ28は、加算部23から供給された復号画像データとループフィルタ処理部26から供給されたフィルタ処理後の復号画像データを参照画像の画像データとして保持する。セレクタ29は、イントラ予測を行うためにフレームメモリ28から読み出されたフィルタ処理前の参照画像データをイントラ予測部31に供給する。また、セレクタ29は、インター予測を行うためフレームメモリ28から読み出されたフィルタ処理後の参照画像データを動き予測補償部32に供給する。イントラ予測部31は、画面並べ替えバッファ12から出力された符号化対象画像の画像データとフレームメモリ28から読み出したフィルタ処理前の参照画像データを用いて、候補となる全てのイントラ予測モードのイントラ予測処理を行う。さらに、イントラ予測部31は、各イントラ予測モードに対してコスト関数値を算出して、算出したコスト関数値が最小となるイントラ予測モード、すなわち符号化効率が最良となるイントラ予測モードを、最適イントラ予測モードとして選択する。イントラ予測部31は、最適イントラ予測モードで生成された予測画像データと最適イントラ予測モードに関する予測モード情報、および最適イントラ予測モードでのコスト関数値を予測画像最適モード選択部33に出力する。また、イントラ予測部31は、後述するようにコスト関数値の算出で用いる発生符号量を得るため、各イントラ予測モードのイントラ予測処理において、イントラ予測モードに関する予測モード情報を可逆符号化部16に出力する。動き予測補償部32は、マクロブロックに対応する全ての予測ブロックサイズで動き予測補償処理を行う。動き予測補償部32は、画面並べ替えバッファ12から読み出された符号化対象画像における各予測ブロックサイズの画像毎に、フレームメモリ28から読み出されたフィルタ処理後の参照画像データを用いて動きベクトルを検出する。さらに、動き予測補償部32は、検出した動きベクトルに基づいて復号画像に動き補償処理を施して予測画像の生成を行う。また、動き予測補償部32は、各予測ブロックサイズやループフィルタ処理部26のフィルタサイズや係数セット毎にコスト関数値を算出する。動き予測補償部32は、算出したコスト関数値が最小となる予測ブロックサイズやループフィルタ処理のフィルタサイズおよび係数セットを、最適インター予測モードとして選択する。動き予測補償部32は、最適インター予測モードで生成された予測画像データと最適インター予測モードに関する予測モード情報、および最適インター予測モードでのコスト関数値を予測画像最適モード選択部33に出力する。また、動き予測補償部32は、コスト関数値の算出で用いる発生符号量を得るため、各予測ブロックサイズでのインター予測処理において、インター予測モードに関する予測モード情報を可逆符号化部16に出力する。予測画像最適モード選択部33は、イントラ予測部31から供給されたコスト関数値と動き予測補償部32から供給されたコスト関数値を、マクロブロック単位で比較して、コスト関数値が少ない方を、符号化効率が最良となる最適モードとして選択する。また、予測画像最適モード選択部33は、最適モードで生成した予測画像データを減算部13と加算部23に出力する。さらに、予測画像最適モード選択部33は、最適モードの予測モード情報を可逆符号化部16に出力する。なお、予測画像最適モード選択部33は、スライス単位でイントラ予測またはインター予測を行うようにしてもよい。なお、請求項における符号化部は、予測画像データを生成するイントラ予測部31や動き予測補償部32、予測画像最適モード選択部33、減算部13、直交変換部14、量子化部15、可逆符号化部16等で構成される。<2.画像符号化装置の動作>図3は、画像符号化動作を示すフローチャートである。ステップST11において、A/D変換部11は入力された画像信号をA/D変換する。ステップST12において画面並べ替えバッファ12は、画面並べ替えを行う。画面並べ替えバッファ12は、A/D変換部11より供給された画像データを記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。ステップST13において減算部13は、予測誤差データの生成を行う。減算部13は、ステップST12で並べ替えられた画像の画像データと予測画像最適モード選択部33で選択された予測画像データとの差分を算出して予測誤差データを生成する。予測誤差データは、元の画像データに比べてデータ量が小さい。したがって、画像をそのまま符号化する場合に比べて、データ量を圧縮することができる。なお、予測画像最適モード選択部33でイントラ予測部31から供給された予測画像と動き予測補償部32からの予測画像の選択がスライス単位で行われる場合、イントラ予測部31から供給された予測画像が選択されたスライスでは、イントラ予測が行われる。また、動き予測補償部32からの予測画像が選択されたスライスでは、インター予測が行われる。ステップST14において直交変換部14は、直交変換処理を行う。直交変換部14は、減算部13から供給された予測誤差データを直交変換する。具体的には、予測誤差データに対して離散コサイン変換、カルーネンレーベ変換等の直交変換が行われ、変換係数データを出力する。ステップST15において量子化部15は、量子化処理を行う。量子化部15は、変換係数データを量子化する。量子化に際しては、後述するステップST26の処理で説明されるように、レート制御が行われる。ステップST16において逆量子化部21は、逆量子化処理を行う。逆量子化部21は、量子化部15により量子化された変換係数データを量子化部15の特性に対応する特性で逆量子化する。ステップST17において逆直交変換部22は、逆直交変換処理を行う。逆直交変換部22は、逆量子化部21により逆量子化された変換係数データを直交変換部14の特性に対応する特性で逆直交変換する。ステップST18において加算部23は、復号画像データの生成を行う。加算部23は、予測画像最適モード選択部33から供給された予測画像データと、この予測画像と対応する位置の逆直交変換後のデータを加算して、復号画像データを生成する。ステップST19においてデブロッキングフィルタ処理部24は、デブロッキングフィルタ処理を行う。デブロッキングフィルタ処理部24は、加算部23より出力された復号画像データをフィルタリングしてブロック歪みを除去する。ステップST20においてSAO部25は、適応的にオフセット処理を行う。SAO部25は、デブロッキングフィルタ処理部24より出力された画像データに対してSAO処理を行う。ステップST21においてループフィルタ処理部26は、ループフィルタ処理を行う。ループフィルタ処理部26は、デブロッキングフィルタ処理やSAO処理が行われた復号画像データをフィルタリングして、デブロッキングフィルタ処理等で残ってしまったブロック歪みや量子化による歪み等を低減する。ステップST22においてフレームメモリ28は、復号画像データを記憶する。フレームメモリ28は、デブロッキングフィルタ処理前の復号画像データとループフィルタ処理後の復号画像データを記憶する。ステップST23においてイントラ予測部31と動き予測補償部32は、それぞれ予測処理を行う。すなわち、イントラ予測部31は、イントラ予測モードのイントラ予測処理を行い、動き予測補償部32は、インター予測モードの動き予測補償処理を行う。この処理により、候補となる全ての予測モードでの予測処理がそれぞれ行われ、候補となる全ての予測モードでのコスト関数値がそれぞれ算出される。そして、算出されたコスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードが選択され、選択された予測モードで生成された予測画像とそのコスト関数および予測モード情報が予測画像最適モード選択部33に供給される。ステップST24において予測画像最適モード選択部33は、予測画像データの選択を行う。予測画像最適モード選択部33は、イントラ予測部31および動き予測補償部32より出力された各コスト関数値に基づいて、符号化効率が最良となる最適モードに決定する。さらに、予測画像最適モード選択部33は、決定した最適モードの予測画像データを選択して、減算部13と加算部23に供給する。この予測画像が、上述したように、ステップST13,ST18の演算に利用される。ステップST25において可逆符号化部16は、可逆符号化処理を行う。可逆符号化部16は、量子化部15より出力された量子化データを可逆符号化する。すなわち、量子化データに対して可変長符号化や算術符号化等の可逆符号化が行われて、データ圧縮される。このとき、上述したステップST22において可逆符号化部16に入力された予測モード情報例えばマクロブロックタイプや予測モード、動きベクトル情報、参照ピクチャ情報等を含むなども可逆符号化される。さらに、量子化データを可逆符号化して生成された符号化ストリームのヘッダ情報に、予測モード情報の可逆符号化データが付加される。ステップST26において蓄積バッファ17は、蓄積処理を行い符号化ストリームを蓄積する。この蓄積バッファ17に蓄積された符号化ストリームは適宜読み出され、伝送路を介して復号側に伝送される。ステップST27においてレート制御部18は、レート制御を行う。レート制御部18は、蓄積バッファ17で符号化ストリームを蓄積するとき、オーバーフローまたはアンダーフローが蓄積バッファ17で発生しないように、量子化部15の量子化動作のレートを制御する。次に、図3のステップST23における予測処理を説明する。予測処理では、イントラ予測処理とインター予測処理を行う。イントラ予測処理では、処理対象のブロックの画像を、候補となる全てのイントラ予測モードでイントラ予測する。なお、イントラ予測において参照される参照画像の画像データは、デブロッキングフィルタ処理部24とループフィルタ処理部26によりフィルタ処理が行われることなくフレームメモリ28に記憶されている参照画像データが用いられる。イントラ予測処理の詳細は後述するが、この処理により、候補となる全てのイントラ予測モードでイントラ予測が行われ、候補となる全てのイントラ予測モードに対してコスト関数値が算出される。そして、算出されたコスト関数値に基づいて、全てのイントラ予測モードの中から、符号化効率が最良となる1つのイントラ予測モードが選択される。インター予測処理では、フレームメモリ28に記憶されているフィルタ処理後の参照画像データを用いて、候補となる全てのインター予測モード全ての予測ブロックサイズのインター予測処理を行う。インター予測処理の詳細は後述するが、この処理により、候補となる全てのインター予測モードで予測処理が行われ、候補となる全てのインター予測モードに対してコスト関数値が算出される。そして、算出されたコスト関数値に基づいて、全てのインター予測モードの中から、符号化効率が最良となる1つのインター予測モードが選択される。次に、イントラ予測処理について図4のフローチャートを参照して説明する。ステップST31でイントラ予測部31は、各予測モードのイントラ予測を行う。イントラ予測部31は、フレームメモリ28に記憶されているフィルタ処理前の復号画像データを用いて、イントラ予測モード毎に予測画像データを生成する。ステップST32でイントラ予測部31は、各予測モードに対するコスト関数値を算出する。例えば、候補となる全ての予測モードに対して、仮に可逆符号化処理までを行い、次の式1で表されるコスト関数値を各予測モードに対して算出する。CostMode∈ΩDλR1Ωは、当該ブロック乃至マクロブロックを符号化するための候補となる予測モードの全体集合を示している。Dは、予測モードで符号化を行った場合の復号画像と入力画像との差分エネルギー歪みを示している。Rは、直交変換係数や予測モード情報等を含んだ発生符号量、λは、量子化パラメータQPの関数として与えられるラグランジュ乗数である。また、候補となる全ての予測モードに対して、予測画像の生成、および、動きベクトル情報や予測モード情報などのヘッダビットまでを算出し、次の式2で表されるコスト関数値を各予測モードに対して算出する。CostMode∈ΩDQPtoQuantQPHeaderBit2Ωは、当該ブロック乃至マクロブロックを符号化するための候補となる予測モードの全体集合を示している。Dは、予測モードで符号化を行った場合の復号画像と入力画像との差分エネルギー歪みを示している。HeaderBitは、予測モードに対するヘッダビット、QPtoQuantは、量子化パラメータQPの関数として与えられる関数である。ステップST33でイントラ予測部31は、最適イントラ予測モードを決定する。イントラ予測部31は、ステップST32において算出されたコスト関数値に基づいて、それらの中から、コスト関数値が最小値である1つのイントラ予測モードを選択して最適イントラ予測モードに決定する。次に、図5のフローチャートを参照して、インター予測処理について説明する。ステップST41で動き予測補償部32は、各予測モードに対して動きベクトルと参照画像をそれぞれ決定する。すなわち、動き予測補償部32は、各予測モードの処理対象のブロックについて、動きベクトルと参照画像をそれぞれ決定する。ステップST42で動き予測補償部32は、各予測モードに対して動き補償を行う。動き予測補償部32は、各予測モード各予測ブロックサイズについて、ステップST41で決定された動きベクトルに基づいて、参照画像に対する動き補償を行い、各予測モードについて予測画像データを生成する。ステップST43で動き予測補償部32は、各予測モードに対して動きベクトル情報の生成を行う。動き予測補償部32は、各予測モードで決定された動きベクトルについて、符号化ストリームに含める動きベクトル情報を生成する。例えば、メディアン予測等を用いて予測動きベクトルを決定して、動き予測により検出した動きベクトルと予測動きベクトルの差を示す動きベクトル情報を生成する。このようにして生成された動きベクトル情報は、次のステップST44におけるコスト関数値の算出にも用いられて、最終的に予測画像最適モード選択部33で対応する予測画像が選択された場合には、予測モード情報に含まれて可逆符号化部16へ出力される。ステップST44で動き予測補償部32は、各インター予測モードに対して、コスト関数値の算出を行う。動き予測補償部32は、上述した式1または式2を用いてコスト関数値の算出を行う。ステップST45で動き予測補償部32は、最適インター予測モードを決定する。動き予測補償部32は、ステップST44において算出されたコスト関数値に基づいて、それらの中から、コスト関数値が最小値である1つの予測モードを選択して最適インター予測モードに決定する。<3.画像復号装置に適用した場合の構成>入力画像を符号化して生成された符号化ストリームは、所定の伝送路や記録媒体等を介して画像復号装置に供給されて復号される。図6は、本技術の画像処理装置を画像復号装置に適用した場合の構成を示している。画像復号装置50は、蓄積バッファ51、可逆復号部52、逆量子化部53、逆直交変換部54、加算部55、デブロッキングフィルタ処理部56、SAO部57、ループフィルタ処理部58、画面並べ替えバッファ59、D/A変換部60を備えている。さらに、画像復号装置50は、フレームメモリ61、セレクタ62,65、イントラ予測部63、動き補償部64を備えている。蓄積バッファ51は、伝送されてきた符号化ストリームを蓄積する。可逆復号部52は、蓄積バッファ51より供給された符号化ストリームを、図2の可逆符号化部16の符号化方式に対応する方式で復号する。また、可逆復号部52は、符号化ストリームのヘッダ情報を復号して得られた予測モード情報をイントラ予測部63や動き補償部64、ループフィルタ処理の係数セットをループフィルタ処理部58に出力する。逆量子化部53は、可逆復号部52で復号された量子化データを、図2の量子化部15の量子化方式に対応する方式で逆量子化する。逆直交変換部54は、図2の直交変換部14の直交変換方式に対応する方式で逆量子化部53の出力を逆直交変換して加算部55に出力する。加算部55は、逆直交変換後のデータとセレクタ65から供給される予測画像データを加算して復号画像データを生成してデブロッキングフィルタ処理部56とフレームメモリ61に出力する。デブロッキングフィルタ処理部56は、加算部55から供給された復号画像データに対してフィルタ処理を行い、ブロック歪みを除去してSAO部57に出力する。SAO部57は、図2のSAO部25と同様に構成されており、デブロッキングフィルタ処理部56から供給された画像データに対してSAO処理を行う。すなわち、SAO部25は、quadtreeに分割された画像領域毎にどのようなオフセットを適用するか可逆復号部52によって符号化ストリームから取得したSAO処理の情報に基づき選択してオフセット処理を行う。SAO部57は、SAO処理後の画像データをループフィルタ処理部58に出力する。ループフィルタ処理部58は、図2のループフィルタ処理部26と同様に構成されており、可逆復号部52によって符号化ストリームから取得したループフィルタ情報に基づき、SAO処理後の画像データのループフィルタ処理を行う。ループフィルタ処理部58は、フィルタ処理後の画像データをフレームメモリ61に供給し蓄積させるとともに、画面並べ替えバッファ59に出力する。画面並べ替えバッファ59は、画像の並べ替えを行う。すなわち、図2の画面並べ替えバッファ12により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられて、D/A変換部60に出力される。D/A変換部60は、画面並べ替えバッファ59から供給された画像データをD/A変換し、図示せぬディスプレイに出力することで画像を表示させる。フレームメモリ61は、加算部55から供給されたフィルタ処理前の復号画像データとループフィルタ処理部58から供給されたフィルタ処理後の復号画像データとを、参照画像の画像データとして保持する。セレクタ62は、可逆復号部52から供給された予測モード情報に基づき、イントラ予測が行われた予測ブロックの復号が行われるとき、フレームメモリ61から読み出されたフィルタ処理前の参照画像データをイントラ予測部63に供給する。また、セレクタ29は、可逆復号部52から供給された予測モード情報に基づき、インター予測が行われた予測ブロックの復号が行われるとき、フレームメモリ61から読み出されたフィルタ処理後の参照画像データを動き補償部64に供給する。イントラ予測部63は、可逆復号部52から供給された予測モード情報に基づいて予測画像の生成を行い、生成した予測画像データをセレクタ65に出力する。動き補償部64は、可逆復号部52から供給された予測モード情報に基づいて、動き補償を行い、予測画像データを生成してセレクタ65に出力する。すなわち、動き補償部64は、予測モード情報に含まれる動きベクトル情報と参照フレーム情報に基づいて、参照フレーム情報で示された参照画像に対して動きベクトル情報に基づく動きベクトルで動き補償を行い、予測画像データを生成する。セレクタ65は、イントラ予測部63で生成された予測画像データを加算部55に供給する。また、セレクタ65は、動き補償部64で生成された予測画像データを加算部55に供給する。なお、請求項における復号部は、可逆復号部52、逆量子化部53、逆直交変換部54、加算部55、イントラ予測部63、動き補償部64等で構成される。<4.画像復号装置の動作>次に、図7のフローチャートを参照して、画像復号装置50で行われる画像復号動作について説明する。ステップST51で蓄積バッファ51は、伝送されてきた符号化ストリームを蓄積する。ステップST52で可逆復号部52は、可逆復号処理を行う。可逆復号部52は、蓄積バッファ51から供給される符号化ストリームを復号する。すなわち、図2の可逆符号化部16により符号化された各ピクチャの量子化データが得られる。また、可逆復号部52、符号化ストリームのヘッダ情報に含まれている予測モード情報の可逆復号を行い、得られた予測モード情報をデブロッキングフィルタ処理部56やセレクタ62,65に供給する。さらに、可逆復号部52は、予測モード情報がイントラ予測モードに関する情報である場合、予測モード情報をイントラ予測部63に出力する。また、可逆復号部52は、予測モード情報がインター予測モードに関する情報である場合、予測モード情報を動き補償部64に出力する。また、可逆復号部52は、符号化ストリームを復号して得られたループフィルタ処理の係数セットをループフィルタ処理部58に出力する。ステップST53において逆量子化部53は、逆量子化処理を行う。逆量子化部53は、可逆復号部52により復号された量子化データを、図2の量子化部15の特性に対応する特性で逆量子化する。ステップST54において逆直交変換部54は、逆直交変換処理を行う。逆直交変換部54は、逆量子化部53により逆量子化された変換係数データを、図2の直交変換部14の特性に対応する特性で逆直交変換する。ステップST55において加算部55は、復号画像データの生成を行う。加算部55は、逆直交変換処理を行うことにより得られたデータと、後述するステップST61で選択された予測画像データを加算して復号画像データを生成する。これにより元の画像が復号される。ステップST56においてデブロッキングフィルタ処理部56は、デブロッキングフィルタ処理を行う。デブロッキングフィルタ処理部56は、加算部55より出力された復号画像データのフィルタ処理を行い、復号画像に含まれているブロック歪みを除去する。ステップST57においてSAO部57は、適応的にオフセット処理を行う。SAO部25は、デブロッキングフィルタ処理部24より出力された画像データに対してSAO処理を行う。ステップST58においてループフィルタ処理部58は、ループフィルタ処理を行う。ループフィルタ処理部58は、SAO処理後の復号画像データをフィルタリングして、ブロック歪みや量子化による歪みを低減する。ステップST59においてフレームメモリ61は、復号画像データの記憶処理を行う。ステップST60においてイントラ予測部63と動き補償部64は、予測処理を行う。イントラ予測部63と動き補償部64は、可逆復号部52から供給される予測モード情報に対応してそれぞれ予測処理を行う。すなわち、可逆復号部52からイントラ予測の予測モード情報が供給された場合、イントラ予測部63は、予測モード情報に基づいてイントラ予測処理を行い、予測画像データを生成する。また、可逆復号部52からインター予測の予測モード情報が供給された場合、動き補償部64は、予測モード情報に基づき動き補償を行い、予測画像データを生成する。ステップST61において、セレクタ65は予測画像データの選択を行う。すなわち、セレクタ65は、イントラ予測部63から供給された予測画像と動き補償部64で生成された予測画像データを選択して加算部55に供給して、上述したように、ステップST55において逆直交変換部54の出力と加算させる。ステップST62において画面並べ替えバッファ59は、画像並べ替えを行う。すなわち画面並べ替えバッファ59は、図2の画像符号化装置10の画面並べ替えバッファ12により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。ステップST63において、D/A変換部60は、画面並べ替えバッファ59からの画像データをD/A変換する。この画像が図示せぬディスプレイに出力され、画像が表示される。<5.ループフィルタ処理部の構成と動作>[画像データの記憶]ここで、ループフィルタ処理部においてメモリに記憶する画像データについて説明する。LCU単位でラスタースキャン方向に処理を行う場合、デブロッキングフィルタ部では、隣接するLCUの画像データを用いてデブロッキングフィルタ処理を行うことから、LCU単位で閉じた処理とならない。また、SAO部はデブロッキングフィルタ処理後の画像データを用いており、ループフィルタ処理部はSAO処理後の画像データを用いることから、SAO部とループフィルタ処理部の処理もLCU単位で閉じた処理とならない。したがって、LCU単位でラスタースキャン方向に処理を行う場合、図8に示すように、処理対象のLCUmにおいて、右側および下側のブロック境界から斜線で示すように所定範囲の画像データをメモリに一時記憶しておく必要がある。ここで、SAO処理について説明する。SAO部のオフセットの種類としては、バンドオフセットと呼ばれるものが2種類、エッジオフセットと呼ばれるものが6種類あり、さらに、オフセットを適応しないことも可能である。そして、画像をquadtreeに分割し、それぞれの領域に、上述したどのオフセットの種類により符号化するかを選択することができる。次に、図9を参照して、quadtree構造について説明する。例えば、画像符号化装置10では、図9のAに示されるように、領域0が分割されていない状態を示すLevel0分割深度0のコスト関数値J0が計算される。また、領域0が4つの領域1乃至4に分割された状態を示すLevel1分割深度0のコスト関数値J1,J2,J3,J4が計算される。そして、図9のBに示されるように、コスト関数値が比較され、J0>J1J2J3J4により、コスト関数値が小さいLevel1の分割領域Partitionsが選択される。同様にして、図9のCに示されるように、領域0が16個の領域5乃至20に分割された状態を示すLevel2分割深度2のコスト関数値J5乃至J20が計算される。そして、図9のDに示されるように、コスト関数値がそれぞれ比較され、J1<J5J6J9J10により、領域1においては、Level1の分割領域Partitionsが選択される。J2>J7J8J11J12により、領域2においては、Level2の分割領域が選択される。J3>J13J14J17J18により、領域3においては、Level2の分割領域が選択される。J4>J15J16J19J20により、領域4においては、Level1の分割領域が選択される。その結果、quadtree構造における図9のDに示される最終的なquadtree領域Partitionsが決定される。そして、quadtree構造の決定された領域毎に、2種類のバンドオフセット、6種類のエッジオフセット、およびオフセットなしの全てについてコスト関数値が算出され、どのオフセットにより符号化されるのかが決定される。例えば、図9のEに示すように、領域1に対しては、EO4、すなわち、エッジオフセットのうちの4種類目が決定されている。領域7に対しては、OFF、すなわち、オフセットなしが決定されており、領域8に対しては、EO2、すなわち、エッジオフセットのうちの2種類目が決定されている。領域11および12に対しては、OFF、すなわち、オフセットなしが決定されている。また、領域13に対しては、BO1、すなわち、バンドオフセットのうちの1種類目が決定されており、領域14に対しては、EO2、すなわち、エッジオフセットのうちの2種類目が決定されている。領域17に対しては、BO2、すなわち、バンドオフセットのうちの2種類目が決定されており、領域18に対しては、BO1、すなわち、バンドオフセットのうちの1種類目が決定されている。領域4に対しては、EO1、すなわち、エッジオフセットのうちの1種類目が決定されている。次に、図10を参照して、エッジオフセットの詳細について説明する。エッジオフセットにおいては、当該画素値と、当該画素値に隣接する隣接画素値の比較が行われ、これに対応したカテゴリに対して、オフセット値が伝送されることになる。エッジオフセットには、図10のA乃至Dに示される4つの1次元パターンと、図10のEおよびFに示される2つの2次元パターンが存在し、それぞれ、図11に示されるカテゴリでオフセットが伝送される。図10のAは、当該画素Cに対して、隣接画素が左右の1次元に配置されている、すなわち、図10のAのパターンに対して0度をなしている1D0degreeパターンを表している。図10のBは、当該画素Cに対して、隣接画素が上下の1次元に配置されている、すなわち、図10のAのパターンに対して90度をなしている1D90degreeパターンを表している。図10のCは、当該画素Cに対して、隣接画素が左上と右下の1次元に配置されている、すなわち、図10のAのパターンに対して135度をなしている1D135degreeパターンを表している。図10のDは、当該画素Cに対して、隣接画素が右上と左下の1次元に配置されている、すなわち、図10のAのパターンに対して45度をなしている1D135degreeパターンを表している。図10のEは、当該画素Cに対して、隣接画素が上下左右2次元に配置されている、すなわち、当該画素Cに対して交差している2Dcrossパターンを表している。図10のFは、当該画素Cに対して、隣接画素が右上左下、左上右下の2次元に配置されている、すなわち、当該画素Cに対して斜めに交差している2Ddiagonalパターンを表している。図11のAは、1次元パターンの規則一覧表Classificationrulefor1Dpatternsを示している。図10のA乃至Dのパターンは、図11のAに示されるような5種類のカテゴリに分類され、そのカテゴリによりオフセットが算出されて、復号部に送られる。当該画素Cの画素値が2つの隣接画素の画素値より小さい場合、カテゴリ1に分類される。当該画素Cの画素値が一方の隣接画素の画素値より小さくて、他方の隣接画素の画素値と一致する場合、カテゴリ2に分類される。当該画素Cの画素値が一方の隣接画素の画素値より大きくて、他方の隣接画素の画素値と一致する場合、カテゴリ3に分類される。当該画素Cの画素値が2つの隣接画素の画素値より大きい場合、カテゴリ4に分類される。以上のどれでもない場合、カテゴリ0に分類される。図11のBは、2次元パターンの規則一覧表Classificationrulefor2Dpatternsを示している。図10のEおよびFのパターンは、図11のBに示されるような7種類のカテゴリに分類され、そのカテゴリによりオフセットが復号部に送られる。当該画素Cの画素値が4つの隣接画素の画素値より小さい場合、カテゴリ1に分類される。当該画素Cの画素値が3つの隣接画素の画素値より小さくて、4番目の隣接画素の画素値と一致する場合、カテゴリ2に分類される。当該画素Cの画素値が3つの隣接画素の画素値より小さくて、4番目の隣接画素の画素値より大きい場合、カテゴリ3に分類される。当該画素Cの画素値が3つの隣接画素の画素値より大きくて、4番目の隣接画素の画素値より小さい場合、カテゴリ4に分類される。当該画素Cの画素値が3つの隣接画素の画素値より大きくて、4番目の隣接画素の画素値と一致する場合、カテゴリ5に分類される。当該画素Cの画素値が4つの隣接画素の画素値より大きい場合、カテゴリ6に分類される。以上のどれでもない場合、カテゴリ0に分類される。以上のように、エッジオフセットにおいては、3×3画素の判定処理が行われることから、SAO部では、判定処理にデブロッキングフィルタのフィルタ処理対象画素が含まれる画素位置となるとオフセット処理を進めることができない。また、その後、デブロッキングフィルタでフィルタ処理が行われた場合、SAO部は、デブロッキングフィルタのフィルタ処理範囲のフィルタ処理後の画素を用いて判定処理を行う。したがって、SAO部は、デブロッキングフィルタ処理後にSAO処理を行うことができるように画像データを記憶しておく必要がある。さらに、ループフィルタ処理部は、ループフィルタ処理のタップ範囲にSAO部で処理が行われていない画素が含まれる画素位置となるとループフィルタ処理を進めることができない。また、その後、SAOで処理が行われた場合、ループフィルタ処理部は、SAO28で処理された画素を用いてループフィルタ処理を行う。したがって、ループフィルタ処理部は、SAO部で処理された画像データを記憶しておく必要がある。図12は、ループフィルタ処理部で選択可能なフィルタのタップを例示している。例えば、ループフィルタ処理部では、図12のAに示す水平方向のフィルタサイズが5タップであるフィルタと図12のBに示す水平方向のフィルタサイズが11タップであるフィルタの何れかコスト関数値が少なくなるタップを用いてフィルタ処理を行う。水平方向のフィルタサイズが5タップである場合の各タップをTa0~Ta16とする。また、水平方向のフィルタサイズが11タップである場合の各タップをTb0~Tb14とする。また、以下の説明では、タップTa0の画像データをPa0とする。同様にタップTa1~Ta16,Tb0~Tb14の画像データをPa1~Pa16,Pb0~Pb14とする。図13は、デブロッキングフィルタ処理とSAO処理が行われる場合、図12に示すタップサイズとされたフィルタを用いてループフィルタ処理を行うためにメモリに記憶する画素の範囲を示している。デブロッキングフィルタ処理部は、例えば4タップでブロック境界のフィルタ処理を行う場合、図13のAに示すように、右側ブロック境界BBから左4画素列分の範囲の画像データをメモリに記憶する必要がある。なお、図13のAにおいて二重丸印は、デブロッキングフィルタの処理対象画素であってデブロッキングフィルタ処理DF処理が行われていないことを示している。SAO部は、判定処理にデブロッキングフィルタのフィルタ処理対象画素が含まれる画素位置となると処理を進めることができない。すなわち、図13のBに示すように、右側ブロック境界BBから左5画素列目の位置まで処理を進めることができるが、左4画素列目の位置では、破線で示すように3×3画素の判定処理の範囲内にデブロッキングフィルタのフィルタ処理対象画素が含まれる。このため、SAO部は左4画素列目の位置に処理を進めることができない。したがって、デブロッキングフィルタ処理後に、右側ブロック境界BBに対して左4画素列目の位置から処理を進めることができるように、SAO部で処理が行われている左5画素列目の位置の画像データをメモリに記憶する必要がある。なお、図13のBにおいて、丸印の中にバツ印が示されている画素は、デブロッキングフィルタ処理が行われていないためにSAO処理を行うことができない画素を示している。ループフィルタ処理部は、例えばタップが5×5画素である場合、タップ内にSAO部で処理されていない画素が含まれる画素位置となると処理を進めることができない。すなわち、図13のCに示すように、右側ブロック境界BBから左7画素列目の位置まで処理を進めることができるが、左6画素列目の位置では、5×5画素のタップ内にSAO部で処理されていない画素が含まれることから処理を進めることができない。したがって、デブロッキングフィルタ処理後に、左6画素列目の位置から処理を進めることができるように、SAO部で処理が行われている左8画素列目から左5画素列目までの4画素列分の画像データをメモリに記憶する必要がある。また、ループフィルタ処理部は、例えばタップが11×5画素である場合、タップ内にSAO部で処理されていない画素が含まれる画素位置となると処理を進めることができない。すなわち、図13のDに示すように、右側ブロック境界BBから左10画素列目の位置まで処理を進めることができるが、左9画素列目の位置では、11×5画素のタップ内にSAO部で処理されていない画素が含まれることから処理を進めることができない。したがって、デブロッキングフィルタ処理後に、左9画素列目の位置から処理を進めることができるように、SAO部で処理が行われている左14画素列目から左5画素列目までの10画素列分の画像データをメモリに記憶する必要がある。なお、図13のC,Dにおいて、丸印の中に印が示されている画素は、デブロッキングフィルタ処理が行われていないことによるSAO処理後の画像データが入力されないため、ループフィルタ処理を行うことができない画素を示している。ここで、例えばLCUのサイズが64×64画素である場合、図13のDに示すように11×5画素のタップでは、右側ブロック境界BBに対して左9画素列目の位置から処理を進めるためには、輝度および色差データを合わせて1280バイト程度のメモリ容量が必要となる。この場合のメモリ容量は、5×5画素のタップで必要となるメモリ容量の2.5倍である。また、5×5画素のタップが選択された場合には、768バイトのメモリ容量が未使用となる。このように、フィルタサイズが大きいと画像データを記憶するメモリの容量を大ききしなければならない。また、最小サイズのフィルタが選択された場合、未使用のメモリ領域が生じることになる。そこで、ループフィルタ処理部は、所定ブロック境界の境界方向に対して直交する方向、例えば右側ブロック境界に対して直交する水平方向のタップ数が最小でないフィルタサイズが選択されている場合、フィルタ処理対象画素の位置に基づき右側ブロック境界から所定範囲内に位置するタップおよびメモリに画像データが記憶されていないタップを判別して、所定範囲内およびメモリに記憶されていない画像データを用いることなくフィルタ演算を行うように、判別されたタップに対して画像データの複写またはフィルタ演算で用いる係数セットの変更を行う。[ループフィルタ処理部の構成]図2に示す画像符号化装置10のループフィルタ処理部26と図6に示す画像復号装置のループフィルタ処理部58は、同等の構成および動作とされており、本技術の画像処理装置に相当する。ループフィルタ処理部は、画像を符号化する際にローカル復号処理されたブロック単位の画像や符号化ストリームを復号処理して生成されたブロック単位の画像に対して、デブロッキング処理およびSAO処理が行われた画像の処理対象画素に対してタップの構築と係数セットの構築を行い、タップの画像データと係数セットを用いてフィルタ演算を行う。また、所定ブロック境界の境界方向に対して直交する方向のタップ数が最小でないフィルタサイズが選択される場合は、画像データの複写または係数セットを変更してフィルタ演算を行う。[ループフィルタ処理部の構成]図14は、ループフィルタ処理部26の構成を例示している。ループフィルタ処理部26は、メモリ261、タップ構築部262、係数構築部263、フィルタ演算部264、フィルタ制御部269を備えている。SAO部25から出力された画像データは、メモリ261とタップ構築部262に供給される。メモリ261は、フィルタ制御部269からの制御信号に基づき、所定ブロック境界の境界方向に対して直交する方向のタップ数が最小である選択可能なフィルタサイズで所定ブロック境界から所定範囲内の画像のフィルタ演算を行う場合における該フィルタ演算に用いられる所定範囲に含まれていない領域の画像データを記憶する。例えば水平方向のタップ数が最小で5画素であるフィルタサイズで右側ブロック境界からSAO処理が行われていない範囲内の画像のフィルタ演算を行う場合に、このフィルタ演算に用いられるSAO処理済みの画像データを記憶する。また、メモリ261は、制御信号に基づき記憶している画像データを読み出してタップ構築部262に出力する。タップ構築部262は、SAO部25から供給された画像データやメモリ261に記憶されている画像データを用いて、ループフィルタの処理対象画素を基準としてタップを構築する。タップの構築では、フィルタサイズの異なる複数のフィルタが選択可能とされている。タップ構築部262は、構築したタップの画像データをフィルタ演算部264に出力する。係数構築部263は、係数メモリ27からフィルタ演算に用いる係数を読み出して、タップ構築部262で構築したタップに対応する係数を決定して、各タップの係数からなる係数セットを構築する。係数構築部263は、構築した係数セットをフィルタ演算部264に出力する。フィルタ演算部264は、タップ構築部262から供給されたタップの画像データと係数構築部263から供給された係数を用いて演算を行い、ループフィルタ処理後の画像データを生成する。フィルタ制御部269は、制御信号をメモリ261に供給して、メモリ261への画像データの記憶および記憶されている画像データの読み出しを制御する。また、フィルタ制御部269はループフィルタ処理に用いるフィルタの選択を行う。さらに、フィルタ制御部269は、処理位置判定部2691を有しており、ループフィルタ処理を行う画素位置の判定結果に基づきタップ構築部262や係数構築部263の制御を行う。フィルタ制御部269は、ブロック境界方向のタップ数が最小でないサイズのフィルタを選択する場合、フィルタ処理対象画素の位置に基づき所定範囲内に位置するタップおよびメモリ261に画像データが記憶されていないタップを判別して、所定範囲内およびメモリ261に記憶されていない画像データを用いることなくフィルタ演算を行うように、判別されたタップに対して画像データの複写またはフィルタ演算で用いる係数セットの変更を行う。例えば、フィルタ制御部269は、タップの位置がSAO処理の行われていない画素位置である場合、SAO処理が行われている画像データをSAO処理の行われていない画素位置の画像データとして複写する。また、タップ位置がメモリ261に画像データの記憶されていない画素位置である場合、フィルタ制御部269は、メモリ261に記憶されている画像データを画像データの記憶されていない画素位置の画像データとして複写する。また、画像復号装置のループフィルタ処理部57では、符号化ストリームに含まれているループフィルタ処理に関する情報に基づきフィルタサイズの選択や係数セットの設定を行う。[ループフィルタ処理部の動作]図15,16は、ループフィルタ処理部26の動作を示すフローチャートである。ステップST71でループフィルタ処理部26は、対象画像位置の初期化を行ってステップST72に進む。ステップST72でループフィルタ処理部26は、対象画素位置を決定する。ループフィルタ処理部26は、ループフィルタ処理を行う画素の位置を対象画素位置としてステップST73に進む。ステップST73でループフィルタ処理部26は、フィルタサイズが5×5画素であるか判別する。ループフィルタ処理部26は、5×5画素のフィルタを用いる場合にステップST86に進み、11×5画素のフィルタを用いる場合にステップST74に進む。ステップST74でループフィルタ処理部26は、対象画素位置が入力境界から左に5画素列目であるか判別する。ループフィルタ処理部26は、SAO処理が行われてループフィルタ処理部26に画像データが入力される画素と、デブロッキングフィルタ処理が行われていないためにSAO処理を行うことができずループフィルタ処理部26にSAO処理後の画像データを入力することができない画素との境界を入力境界とする。ループフィルタ処理部26は、対象画素位置が入力境界から左5画素列目である場合にはST75に進み、対象画素位置が入力境界から左5画素列目よりも左側または右側に位置する場合にはST76に進む。ステップST75でループフィルタ処理部26は、タップ右端から1画素分に対して画像データを複写する。ループフィルタ処理部26は、SAO処理が行われていない画素位置となるタップ右端から1画素の画像データとして、例えば左側に隣接するSAO処理済みの画素の画像データを複写してST86に進む。ステップST76でループフィルタ処理部26は、対象画素位置が入力境界から左4画素列目であるか判別する。ループフィルタ処理部26は、対象画素位置が入力境界から左4画素列目である場合にはST77に進む。また、ループフィルタ処理部26は、対象画素位置が入力境界から左5画素列目よりも左側または入力境界から左4画素列目よりも右側に位置する場合にはST78に進む。ステップST77でループフィルタ処理部26は、タップ右端から2画素分に対して画像データを複写する。ループフィルタ処理部26は、SAO処理が行われていない画素位置となるタップ右端から2画素分の画像データとして、例えば左側に隣接するSAO処理済みの画素の画像データを複写してST86に進む。ステップST78でループフィルタ処理部26は、対象画素位置が入力境界から左3画素列目であるか判別する。ループフィルタ処理部26は、対象画素位置が入力境界から左3画素列目である場合にはST79に進む。また、ループフィルタ処理部26は、対象画素位置が入力境界から左5画素列目よりも左側または入力境界から左3画素列目よりも右側に位置する場合にはST80に進む。ステップST79でループフィルタ処理部26は、タップ右端から3画素分に対して画像データを複写する。ループフィルタ処理部26は、SAO処理が行われていない画素位置となるタップ右端から3画素分の画像データとして、例えば左側に隣接するSAO処理済みの画素の画像データを複写してST86に進む。ステップST80でループフィルタ処理部26は、対象画素位置が入力境界から左2画素列目であるか判別する。ループフィルタ処理部26は、対象画素位置が入力境界から左2画素列目である場合にはST81に進む。また、ループフィルタ処理部26は、対象画素位置が入力境界から左5画素列目よりも左側または入力境界から左2画素列目よりも右側に位置する場合にはST82に進む。ステップST81でループフィルタ処理部26は、タップ左端から3画素分に対して画像データを複写する。ループフィルタ処理部26は、画像データが記憶されていない画素位置となるタップ左端から3画素分の画像データとして、例えば右側に隣接する画素の記憶されている画像データを複写してST86に進む。ステップST82でループフィルタ処理部26は、対象画素位置が入力境界から左1画素列目であるか判別する。ループフィルタ処理部26は、対象画素位置が入力境界から左1画素列目である場合にはST83に進む。また、ループフィルタ処理部26は、対象画素位置が入力境界から左5画素列目よりも左側または入力境界よりも右側に位置する場合にはST84に進む。ステップST83でループフィルタ処理部26は、タップ左端から2画素分に対して画像データを複写する。ループフィルタ処理部26は、画像データが記憶されていない画素位置となるタップ左端から2画素の画像データとして、例えば右側に隣接する画素の記憶されている画像データを複写してST86に進む。ステップST84でループフィルタ処理部26は、対象画素位置が入力境界から右1画素列目であるか判別する。ループフィルタ処理部26は、対象画素位置が入力境界から右1画素列目である場合にはST85に進む。また、ループフィルタ処理部26は、対象画素位置が入力境界から左5画素列目よりも左側または入力境界から右1画素列目よりも右側に位置する場合にはST86に進む。ステップST85でループフィルタ処理部26は、タップ左端から1画素分に対して画像データを複写する。ループフィルタ処理部26は、画像データが記憶されていない画素位置となるタップ左端から1画素の画像データとして、例えば右側に隣接する画素の記憶されている画像データを複写してST86に進む。ステップST86でループフィルタ処理部26は、フィルタ演算を行う。ループフィルタ処理部26は、ステップST74乃至ステップST85の処理を行うことで、水平方向のタップサイズが11画素の場合でも、SAO処理が行われていない位置や画像データが記憶されていない位置となる各タップの画像データを決定できる。したがって、ループフィルタ処理部26は、各タップの画像データとフィルタ係数を用いて演算を行い、対象画素位置のフィルタ処理後の画像データを算出してステップST87に進む。ステップST87でループフィルタ処理部26は、対象画素位置が入力境界から左3画素列目である処理を完了したか判別する。ループフィルタ処理部26は、入力境界から左3画素列目のループフィルタ処理を完了した場合には当該ブロックのループフィルタ処理を終了する。その後、ループフィルタ処理部26は、隣接するブロックの画像データを用いたデブロッキングフィルタ処理とデブロッキングフィルタ処理後の画像データを用いたSAO処理を行い、入力境界から右側に位置する画像データが入力された場合に、入力境界から左2画素列目の位置からループフィルタ処理を行う。ステップST88でループフィルタ処理部26は、対象画素位置を移動する。ループフィルタ処理部26は、対象画素位置の次の画素位置に移動してステップST72に戻る。図17,18は、タップ構築部262の動作を例示している。なお、図17は、対象画素位置が入力境界IBから左3画素列目右側ブロック境界BBから左7画素列目となるまでの処理を例示している。また、図18は、入力境界IBの右側に位置する画素の画像データが入力されて、対象画素位置が入力境界IBの左2画素列目右側ブロック境界BBから左6画素列目から右2画素列目右側ブロック境界BBから左3画素列目となるまでの処理を示している。図17のAは、フィルタサイズが11×5画素のタップ数であり、対象画素位置が入力境界IBから左6画素列目右側ブロック境界BBから左10画素列目の位置である場合を例示している。対象画素位置が入力境界IBから左6画素列目の位置である場合、各タップの画像データはSAO処理が行われている。したがって、画像データの複写を行うことなくフィルタ演算を行う。図17のBは、フィルタサイズが11×5画素のタップ数であり、対象画素位置が入力境界IBから左5画素列目右側ブロック境界BBから左9画素列目の位置である場合を例示している。対象画素位置が入力境界IBから左5画素列目の位置である場合、タップ右端から1画素目の位置はSAO処理が行われていない画素の位置である。したがって、上述のステップST75の処理を行い、タップ右端から1画素の画像データPb12として、左側に隣接するSAO処理済みの画素の画像データPb11を複写してフィルタ演算を行う。図17のCは、フィルタサイズが11×5画素のタップ数であり、対象画素位置が入力境界IBから左4画素列目右側ブロック境界BBから左8画素列目の位置である場合を例示している。対象画素位置が入力境界IBから左4画素列目の位置である場合、タップ右端から2画素目までの位置はSAO処理が行われていない画素の位置である。したがって、上述のステップST77の処理を行い、タップ右端から2画素目までの画像データPb11,Pb12として、左側に隣接するSAO処理済みの画素すなわちタップ右端から3画素目の画像データPb10を複写してフィルタ演算を行う。図17のDは、フィルタサイズが11×5画素のタップ数であり、対象画素位置が入力境界IBから左3画素列目右側ブロック境界BBから左7画素列目の位置である場合を例示している。対象画素位置が入力境界IBから左3画素列目の位置である場合、タップ右端から3画素目までの位置はSAO処理が行われていない画素の位置である。したがって、上述のステップST79の処理を行い、タップ右端から3画素目までの画像データPb10,Pb11,Pb12として、左側に隣接するSAO処理済みの画素すなわちタップ右端から4画素目の画像データPb9を複写してフィルタ演算を行う。なお、図17のEは、フィルタサイズが5×5画素のタップ数であり、対象画素位置が入力境界IBから左3画素列目右側ブロック境界BBから左7画素列目の位置である場合を例示している。対象画素位置が入力境界IBから左に3列目の位置である場合、各タップの画像データはSAO処理が行われている。このように、11×5画素のタップ数であるフィルタが選択されても、画像データを複写することで、5×5画素のタップ数である最小サイズのフィルタで処理が可能な画素位置までフィルタ処理を進めることができる。図18のAは、フィルタサイズが11×5画素のタップ数であり、対象画素位置が入力境界IBから左2画素列目右側ブロック境界BBから左6画素列目の位置である場合を例示している。対象画素位置が入力境界IBから左2画素列目の位置である場合、タップ左端から3画素目までの画像データはメモリに記憶されておらず、4画素目から7画素目までの画像データはメモリに記憶されている。また、8画素目から11画素目までの画像データはSAO処理が行われてSAO部25から供給される。したがって、ループフィルタ処理部26は、画像データが記憶されていない画素位置となるタップ左端から3画素目までの画像データPb2,Pb3,Pb4として、右側に隣接するタップ左端から4画素目の記憶されている画像データPb5を複写してフィルタ演算を行う。図18のBは、フィルタサイズが11×5画素のタップ数であり、対象画素位置が入力境界IBから左1画素列目右側ブロック境界BBから左5画素列目の位置である場合を例示している。対象画素位置が入力境界IBから左1画素列目の位置である場合、タップ左端から2画素目までの画像データはメモリに記憶されておらず、3画素目から6画素目までの画像データはメモリに記憶されている。また、7画素目から11画素目までの画像データはSAO処理が行われてSAO部25から供給される。したがって、ループフィルタ処理部26は、画像データが記憶されていない画素位置となるタップ左端から2画素目までの画像データPb2,Pb3として、右側に隣接するタップ左端から3画素目の記憶されている画像データPb4を複写してフィルタ演算を行う。図18のCは、フィルタサイズが11×5画素のタップ数であり、対象画素位置が入力境界IBから右1画素列目右側ブロック境界BBから左4画素列目の位置である場合を例示している。対象画素位置が入力境界IBから右1画素列目の位置である場合、タップ左端から1画素目までの画像データはメモリに記憶されておらず、2画素目から5画素目までの画像データはメモリに記憶されている。また、6画素目から11画素目までの画像データはSAO処理が行われてSAO部25から供給される。したがって、ループフィルタ処理部26は、画像データが記憶されていない画素位置となるタップ左端から1画素の画像データPb2として、右側に隣接するタップ左端から2画素目の記憶されている画像データPb3を複写してフィルタ演算を行う。図18のDは、フィルタサイズが11×5画素のタップ数であり、対象画素位置が入力境界IBから右2画素列目右側ブロック境界BBから左3画素列目の位置である場合を例示している。対象画素位置が入力境界IBから右2画素列目の位置である場合、タップ左端から4画素目までの画像データはメモリに記憶されており、5画素目から11画素目までの画像データはSAO処理が行われてSAO部25から供給される。したがって、ループフィルタ処理部26は、画像データの複写を行うことなくフィルタ演算を行う。なお、図18のEは、フィルタサイズが5×5画素のタップ数であり、対象画素位置が入力境界IBから左2画素列目右側ブロック境界BBから左3画素列目の位置である場合を例示している。対象画素位置が入力境界IBから左2画素列目の位置である場合、タップ左端から4画素目までの画像データはメモリに記憶されており、5画素目の画像データはSAO処理が行われてSAO部25から供給される。したがって、ループフィルタ処理部26は、SAO部25でSAO処理が行われた画像データを用いてフィルタ演算を行うことができる。このように、画像データを複写して用いるようにすれば、画像データを記憶するメモリが最小のタップサイズに対応させて設けられていても、フィルタサイズに係らず最小のフィルタサイズと等しい画素位置までフィルタ処理を進めることができる。また、その後SAO処理が行われた画像データが入力された場合、右側に隣接する画素位置から再びフィルタ処理をフィルタサイズに係らず継続できる。したがって、画像データを記憶するメモリのメモリ容量を最小のフィルタサイズに対応させて設けておけば、フィルタサイズが大きい場合でも画像データを複写することでフィルタサイズが最小の場合と同様にフィルタ処理を行うことができる。例えば、11×5画素のタップ数であるフィルタを用いる場合でも、左8画素列目から左5画素列目までの4画素列分の画像データを用いてループフィルタ処理を行うことができる。また、上述の実施の形態では、画像データが記憶されていない画素位置のタップやSAO処理が行われていない画素位置のタップの画像データとして、記憶されているまたはSAO処理が行われている画像データを複写した。しかし、ループフィルタ処理部は、フィルタ係数を変更して、画像データを複写した場合と同様なフィルタ演算結果を得られるようにしてもよい。例えば、図17において、タップTb11画像データPb11のタップに対するフィルタ係数をFb11、タップTb12画像データPb12のタップに対するフィルタ係数をFb12とする。ここで、図17のBに示す場合、フィルタ係数Fb12を0に変更する。また、フィルタ係数Fb11は、画像データPb11を画像データPb12として複写した場合と同様なフィルタ演算結果となる係数、例えばFb11Fb12に変更する。このようにすれば、フィルタ係数を変更して、画像データを複写した場合と同様なフィルタ演算結果を得ることができる。さらに、上述の実施の形態では、水平方向のサイズが異なるタップを選択的に用いてループフィルタ処理を行う場合を例示したが、垂直方向のサイズが異なるタップを選択的に用いてループフィルタ処理を行う場合に、同様な処理を行ってもよい。この場合、垂直方向のサイズが最小のタップに応じてラインメモリのメモリ容量を設定しても、垂直方向のサイズが最小でないタップの場合には画像データの複写またはフィルタ係数の変更を行うことでループフィルタ処理を行うことができる。また、上述の実施の形態におけるフィルタのタップ数やタップ配置、サイズの異なるフィルタの数等は例示であって、実施の形態に限られない。さらに、本明細書において、ブロックおよびマクロブロックとの用語は、HEVCの文脈における符号化単位CU:CodingUnit、予測単位PU:PredictionUnit、変換単位TU:TransformUnitをも含むものとする。また、上述した一連の処理はハードウェア、またはソフトウェア、または両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させる。または、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることも可能である。例えば、プログラムは記録媒体としてのハードディスクやROMReadOnlyMemoryに予め記録しておくことができる。または、プログラムはフレキシブルディスク、CD-ROMCompactDiscReadOnlyMemory,MOMagnetoopticalディスク,DVDDigitalVersatileDisc、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的または永続的に格納記録しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LANLocalAreaNetwork、インターネットといったネットワークを介して、コンピュータに有線で転送する。コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。<6.応用例>本技術の画像処理装置を用いた上述の実施形態に係る画像符号化装置10および画像復号装置50は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、およびセルラー通信による端末への配信等における送信機若しくは受信機、光ディスク、磁気ディスクおよびフラッシュメモリなどの媒体に画像を記録する記録装置、または、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。[第1の応用例]図19は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置90は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース部909を有している。さらに、テレビジョン装置90は、制御部910、ユーザインタフェース部911等を有している。チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。すなわち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置90における伝送手段としての役割を有する。デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリームおよび音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPGElectronicProgramGuideなどの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。デコーダ904は、デマルチプレクサ903から入力される映像ストリームおよび音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタンまたはカーソルなどのGUIGraphicalUserInterfaceの画像を生成し、生成した画像を出力画像に重畳してもよい。表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス例えば、液晶ディスプレイ、プラズマディスプレイまたはOLEDなどの映像面上に映像または画像を表示する。音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換および増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。外部インタフェース部909は、テレビジョン装置90と外部機器またはネットワークとを接続するためのインタフェースである。例えば、外部インタフェース部909を介して受信される映像ストリームまたは音声ストリームが、デコーダ904により復号されてもよい。すなわち、外部インタフェース部909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置90における伝送手段としての役割を有する。制御部910は、CPUCentralProcessingUnitなどのプロセッサ、並びにRAMRandomAccessMemoryおよびROMReadOnlyMemoryなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、およびネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置90の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部911から入力される操作信号に応じて、テレビジョン装置90の動作を制御する。ユーザインタフェース部911は、制御部910と接続される。ユーザインタフェース部911は、例えば、ユーザがテレビジョン装置90を操作するためのボタンおよびスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース部909および制御部910を相互に接続する。このように構成されたテレビジョン装置90において、デコーダ904は、上述した実施形態に係る画像復号装置50の機能を有する。それにより、テレビジョン装置90での画像の復号に際して、ループフィルタ処理を行うために画像データを記憶するメモリのメモリ容量を削減できる。[第2の応用例]図20は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機92は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、およびバス933を備える。アンテナ921は、通信部922に接続される。スピーカ924およびマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、および制御部931を相互に接続する。携帯電話機92は、音声通話モード、データ通信モード、撮影モードおよびテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メールまたは画像データの送受信、画像の撮像、およびデータの記録などの動作を行う。音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化および変調し、送信信号を生成する。そして、通信部922は、生成した送信信号をアンテナ921を介して基地局図示せずへ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅しおよび周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調および復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張しおよびD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化および変調し、送信信号を生成する。そして、通信部922は、生成した送信信号をアンテナ921を介して基地局図示せずへ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅しおよび周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調および復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929の記憶媒体に記憶させる。記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAMまたはフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、またはメモリカードなどの外部装着型の記憶媒体であってもよい。また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記録再生部929の記憶媒体に記憶させる。また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化および変調し、送信信号を生成する。そして、通信部922は、生成した送信信号をアンテナ921を介して基地局図示せずへ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅しおよび周波数変換し、受信信号を取得する。これら送信信号および受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調および復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリームおよび音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張しおよびD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。このように構成された携帯電話機92において、画像処理部927は、上述した実施形態に係る画像符号化装置10および画像復号装置50の機能を有する。それにより、携帯電話機92での画像の符号化および復号に際して、ループフィルタ処理を行うために画像データを記憶するメモリのメモリ容量を削減できる。[第3の応用例]図21は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置94は、例えば、受信した放送番組の音声データおよび映像データを符号化して記録媒体に記録する。また、記録再生装置94は、例えば、他の装置から取得される音声データおよび映像データを符号化して記録媒体に記録してもよい。また、記録再生装置94は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタおよびスピーカ上で再生する。このとき、記録再生装置94は、音声データおよび映像データを復号する。記録再生装置94は、チューナ941、外部インタフェース部942、エンコーダ943、HDDHardDiskDrive944、ディスクドライブ945、セレクタ946、デコーダ947、OSDOnScreenDisplay部948、制御部949、およびユーザインタフェース部950を備える。チューナ941は、アンテナ図示せずを介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。すなわち、チューナ941は、記録再生装置94における伝送手段としての役割を有する。外部インタフェース部942は、記録再生装置94と外部機器またはネットワークとを接続するためのインタフェースである。外部インタフェース部942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、またはフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース部942を介して受信される映像データおよび音声データは、エンコーダ943へ入力される。すなわち、外部インタフェース部942は、記録再生装置94における伝送手段としての役割を有する。エンコーダ943は、外部インタフェース部942から入力される映像データおよび音声データが符号化されていない場合に、映像データおよび音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。HDD944は、映像および音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD944は、映像および音声の再生時に、これらデータをハードディスクから読み出す。ディスクドライブ945は、装着されている記録媒体へのデータの記録および読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスクDVD-Video、DVD-RAM、DVD-R、DVD-RW、DVDR、DVDRW等またはBlu-ray登録商標ディスクなどであってよい。セレクタ946は、映像および音声の記録時には、チューナ941またはエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944またはディスクドライブ945へ出力する。また、セレクタ946は、映像および音声の再生時には、HDD944またはディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。デコーダ947は、符号化ビットストリームを復号し、映像データおよび音声データを生成する。そして、デコーダ947は、生成した映像データをOSD部948へ出力する。また、デコーダ904は、生成した音声データを外部のスピーカへ出力する。OSD部948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD部948は、表示する映像に、例えばメニュー、ボタンまたはカーソルなどのGUIの画像を重畳してもよい。制御部949は、CPUなどのプロセッサ、並びにRAMおよびROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、およびプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置94の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部950から入力される操作信号に応じて、記録再生装置94の動作を制御する。ユーザインタフェース部950は、制御部949と接続される。ユーザインタフェース部950は、例えば、ユーザが記録再生装置94を操作するためのボタンおよびスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。このように構成された記録再生装置94において、エンコーダ943は、上述した実施形態に係る画像符号化装置10の機能を有する。また、デコーダ947は、上述した実施形態に係る画像復号装置50の機能を有する。それにより、記録再生装置94での画像の符号化および復号に際して、ループフィルタ処理を行うために画像データを記憶するメモリのメモリ容量を削減できる。[第4の応用例]図22は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置96は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。撮像装置96は、光学ブロック961、撮像部962、カメラ信号処理部963、画像処理部964、表示部965、外部インタフェース部966、メモリ967、メディアドライブ968、OSD部969、制御部970、ユーザインタフェース部971、およびバス972を備える。光学ブロック961は、フォーカスレンズおよび絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCDまたはCMOSなどのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号をカメラ信号処理部963へ出力する。カメラ信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。カメラ信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。画像処理部964は、カメラ信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース部966またはメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース部966またはメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、カメラ信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD部969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。OSD部969は、例えばメニュー、ボタンまたはカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。外部インタフェース部966は、例えばUSB入出力端子として構成される。外部インタフェース部966は、例えば、画像の印刷時に、撮像装置96とプリンタとを接続する。また、外部インタフェース部966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスクまたは光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置96にインストールされ得る。さらに、外部インタフェース部966は、LANまたはインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。すなわち、外部インタフェース部966は、撮像装置96における伝送手段としての役割を有する。メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、または半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブまたはSSDSolidStateDriveのような非可搬性の記憶部が構成されてもよい。制御部970は、CPUなどのプロセッサ、並びにRAMおよびROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、およびプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置96の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部971から入力される操作信号に応じて、撮像装置96の動作を制御する。ユーザインタフェース部971は、制御部970と接続される。ユーザインタフェース部971は、例えば、ユーザが撮像装置96を操作するためのボタンおよびスイッチなどを有する。ユーザインタフェース部971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。バス972は、画像処理部964、外部インタフェース部966、メモリ967、メディアドライブ968、OSD部969、および制御部970を相互に接続する。このように構成された撮像装置96において、画像処理部964は、上述した実施形態に係る画像符号化装置10および画像復号装置50の機能を有する。それにより、撮像装置96での画像の符号化および復号に際して、ループフィルタ処理を行うために画像データを記憶するメモリのメモリ容量を削減できる。さらに、本技術は、上述した実施形態に限定して解釈されるべきではない。この実施形態は、例示という形態で本技術を開示しており、本技術の要旨を逸脱しない範囲で当業者が実施形態の修正や代用をなし得ることは自明である。すなわち、本技術の要旨を判断するためには、特許請求の範囲を参酌すべきである。なお、本技術の画像処理装置は以下のような構成も取ることができる。1符号化ストリームを復号処理して画像を生成する復号部と、前記復号部により生成されたCUCodingUnit単位の画像のフィルタ処理対象画素に対して構築されたタップの画像データと係数セットを用いてフィルタ演算を行うフィルタ演算部と、所定ブロック境界の境界方向に対して直交する方向のタップ数が最小であるフィルタサイズで前記所定ブロック境界から所定範囲内の画像のフィルタ演算を行う場合における該フィルタ演算に用いられる前記所定範囲に含まれていない領域の画像データを記憶するメモリと、前記所定ブロック境界の境界方向に対して直交する方向のタップ数が最小でないフィルタサイズである場合、前記フィルタ処理対象画素の位置に基づき前記所定範囲内に位置するタップおよび前記メモリに画像データが記憶されていないタップを判別して、前記所定範囲内および前記メモリに記憶されていない画像データを用いることなく前記フィルタ演算を行うように、前記判別されたタップに対して画像データの複写または前記フィルタ演算で用いる係数セットの変更を行うフィルタ制御部とを備える画像処理装置。2前記フィルタ制御部は、前記メモリに画像データが記憶されている隣接画素の画像データを前記判別されたタップの画像データとして複写する1に記載の画像処理装置。3前記フィルタ制御部は、前記メモリに画像データが記憶されている隣接画素の係数を変更する1に記載の画像処理装置。4前記所定ブロック境界の境界方向に対して直交する方向は水平方向である1乃至3の何れかに記載の画像処理装置。5前記所定範囲は、デブロッキングフィルタ処理が行われていないためにSAO処理を行うことができない画像範囲である1乃至4の何れかに記載の画像処理装置。6画像を符号化する際にローカル復号処理されたCUCodingUnit単位の画像のフィルタ処理対象画素に対して構築されたタップの画像データと係数セットを用いてフィルタ演算を行うフィルタ演算部と、所定ブロック境界の境界方向に対して直交する方向のタップ数が最小であるフィルタサイズで前記所定ブロック境界から所定範囲内の画像のフィルタ演算を行う場合における該フィルタ演算に用いられる前記所定範囲に含まれていない領域の画像データを記憶するメモリと、前記所定ブロック境界の境界方向に対して直交する方向のタップ数が最小でないフィルタサイズである場合、前記フィルタ処理対象画素の位置に基づき前記所定範囲内に位置するタップおよび前記メモリに画像データが記憶されていないタップを判別して、前記所定範囲内および前記メモリに記憶されていない画像データを用いることなく前記フィルタ演算を行うように、前記判別されたタップに対して画像データの複写または前記フィルタ演算で用いる係数セットの変更を行うフィルタ制御部とを備える画像処理装置。7前記フィルタ制御部は、前記フィルタ演算に用いた前記フィルタサイズと係数セットの情報を、前記符号化ストリームに含める6に記載の画像処理装置。8前記フィルタ演算に用いた前記フィルタサイズは、符号化効率の良いフィルタサイズである6または7の何れかに記載の画像処理装置。"