"ループフィルタとして,テンプレートマッチングによりテンプレート類似度に応じた重みと探索点における画素値の加重和によって対象画素のノイズを除去するデノイズフィルタと,ブロック歪みを除去するデブロッキングフィルタとを,ブロックごとに適応選択して用いることにより,予測符号化された画像の復号画像に対するノイズを除去し,画像を符号化する画像符号化方法であって,前記デノイズフィルタが適応選択されたブロックにおける該フィルタが適用される画素数を計測し,ブロックごとに順次計測された画素数の合計を算出するステップと,前記画素数の合計と,所定のデノイズフィルタ許容合計画素数とを比較するステップと,前記画素数の合計が,前記所定のデノイズフィルタ許容合計画素数を超えた場合に,そのブロック以降のブロックに対して,前記デノイズフィルタの適用を打ち切り,前記デブロッキングフィルタを適用するステップとを実行することを特徴とする画像符号化方法。請求項1記載の画像符号化方法において,前記ブロックごとに順次計測された画素数の合計を算出するステップでは,前記デノイズフィルタが適応選択されたブロックについて,前記デブロッキングフィルタを適用した場合との比較による相対的な符号化のコストが小さい順のブロックの順番で画素数の合計を算出することを特徴とする画像符号化方法。ループフィルタとして,テンプレートマッチングによりテンプレート類似度に応じた重みと探索点における画素値の加重和によって対象画素のノイズを除去するデノイズフィルタと,ブロック歪みを除去するデブロッキングフィルタとを,ブロックごとに適応選択して用いることにより,予測符号化された画像の復号画像に対するノイズを除去し,画像を符号化する画像符号化方法であって,前記デノイズフィルタが適応選択されたブロックの該フィルタが適用される各画素におけるテンプレートの構成画素数と探索形状内の探索点数とから演算量を計測し,ブロックごとに順次計測された演算量の合計を算出するステップと,前記演算量の合計と,所定のデノイズフィルタ許容合計演算量とを比較するステップと,前記演算量の合計が,前記所定のデノイズフィルタ許容合計演算量を超えた場合に,そのブロック以降のブロックに対して,前記デノイズフィルタの適用を打ち切り,前記デブロッキングフィルタを適用するステップとを実行することを特徴とする画像符号化方法。請求項3記載の画像符号化方法において,前記ブロックごとに順次計測された演算量の合計を算出するステップでは,前記デノイズフィルタが適応選択されたブロックについて,前記デブロッキングフィルタを適用した場合との比較による相対的な符号化のコストが小さい順のブロックの順番で演算量の合計を算出することを特徴とする画像符号化方法。ループフィルタとして,テンプレートマッチングによりテンプレート類似度に応じた重みと探索点における画素値の加重和によって対象画素のノイズを除去するデノイズフィルタと,ブロック歪みを除去するデブロッキングフィルタとを,ブロックごとに適応選択して用いることにより,予測符号化された画像の復号画像に対するノイズを除去し,画像を符号化する画像符号化装置であって,前記デノイズフィルタが適応選択されたブロックにおける該フィルタが適用される画素数を計測し,ブロックごとに順次計測された画素数の合計を算出する手段と,前記画素数の合計と,所定のデノイズフィルタ許容合計画素数とを比較する手段と,前記画素数の合計が,前記所定のデノイズフィルタ許容合計画素数を超えた場合に,そのブロック以降のブロックに対して,前記デノイズフィルタの適用を打ち切り,前記デブロッキングフィルタを適用する手段とを備えることを特徴とする画像符号化装置。ループフィルタとして,テンプレートマッチングによりテンプレート類似度に応じた重みと探索点における画素値の加重和によって対象画素のノイズを除去するデノイズフィルタと,ブロック歪みを除去するデブロッキングフィルタとを,ブロックごとに適応選択して用いることにより,予測符号化された画像の復号画像に対するノイズを除去し,画像を符号化する画像符号化装置であって,前記デノイズフィルタが適応選択されたブロックの該フィルタが適用される各画素におけるテンプレートの構成画素数と探索形状内の探索点数とから演算量を計測し,ブロックごとに順次計測された演算量の合計を算出する手段と,前記演算量の合計と,所定のデノイズフィルタ許容合計演算量とを比較する手段と,前記演算量の合計が,前記所定のデノイズフィルタ許容合計演算量を超えた場合に,そのブロック以降のブロックに対して,前記デノイズフィルタの適用を打ち切り,前記デブロッキングフィルタを適用する手段とを備えることを特徴とする画像符号化装置。請求項1から請求項4までのいずれか1項に記載の画像符号化方法を,コンピュータに実行させるための画像符号化プログラム。前述のように次世代映像符号化標準方式のHighEfficiencyVideoCodingのHMには,符号化歪を除去するためにデブロッキングフィルタによるデノイズフィルタが搭載されているが,上記NLMフィルタをHMに導入すれば,従来のデブロッキングフィルタよりも符号化効率を高めることができる。しかし,NLMフィルタは演算量が膨大であり,非特許文献3に記載のようにブロックごとにNLMフィルタ適用の有無をRD最適化によって決定し,さらに例えば画素ごとにNLMフィルタの演算負荷が異なる手法を用いると,符号化対象画像ごとにNLMフィルタによる演算量が大きく変動し,復号装置の演算量見積りが困難になるという欠点が存在する。すなわち,次のような課題が存在する。所定サイズのブロックごとにNLMフィルタの有無をRD最適化によって決定すると,特に画面内予測のみで構成されるIntraスライスは発生符号量の割には画像が歪みやすく,その歪みを除去するために画面全体におけるNLMフィルタの選択比率は高くなる。実際にRD最適化を行った場合,フレームによっては画面全体の9割以上がNLMフィルタの適用対象となり,復号装置の計算複雑度がNLMフィルタ導入前のものと比較して5~6割増しになるものも確認されている。一方,フレーム間予測が用いられるInterスライスは,前フレームでNLMフィルタが適用された画像が参照可能であるため,当該フレームでNLMフィルタを適用する必要がないブロックが多数発生し,Intraスライスと比較してNLMフィルタの選択比率は低くなる。このようにフレームごとに大きく演算量が変化してしまうと,復号装置における演算量の見積りが困難になるという問題が生じる。例えば,デコーダの回路設計者がFullHD解像度のリアルタイムデコーダを設計しようとした際,NLMフィルタによる演算量の見積もりができないため,最悪値である画面全体にNLMフィルタが適用された場合でも確実にデコード可能なように設計しなければならない。このため,回路規模が大きくなったり,フレームによってデコード完了までの時間にばらつきが生じてしまうおそれがある。本発明は,以上の課題の解決を図り,NLMフィルタによる演算量の変動を指定値以下に抑制することを目的とする。本発明は,上記課題を解決するため,符号化装置にて閾値を設定し,NLMフィルタが適用される画素数もしくはNLMフィルタの合計演算量の上限を制限することを特徴とする。なお,画素数における各演算量とは,探索形状を構成する画素数とテンプレート形状を構成する画素数を乗算した値を用いる。1フィルタが適用される画素数の上限を制限する場合ブロックごとにNLMフィルタ適用の有無を参照してブロック内のNLMフィルタ適用画素数をカウントし,所定の上限に達した時点で処理を終了し,以降のブロックや画素にはNLMフィルタを適用しない。例えば,次のようにしてフィルタが適用される画素数の上限を制限する。NLMフィルタの適用を許可する上限の画素数をN,合計適用画素数M初期値=0を設定し,所定サイズのブロックごとにNLMフィルタ適用の有無をRD最適化にて選択する。このとき,RD最適化にてNLMフィルタを適用することが選択されたブロックに限り,ブロック内部でNLMフィルタが適用される画素数XをカウントしてMに加算する。ここで,MがNを超えたとき,以降のブロックについてはNLMフィルタを適用しないものとする。つまりNLMフィルタの適用を許可する画素数の上限値を符号化装置に設定すると,最悪値でもその上限を超えることはないので,NLMフィルタによって増加する復号装置の最大演算量を見積もることができるようになる。ここで,画素数を計測する場合には,各画素のフィルタ演算量は同一もしくは最大演算量のものを用いることを想定している。各ブロックにおいて,NLMフィルタを適用する画素はあらかじめ定めていてもよい。NLMフィルタは,例えばブロックの全画素に適用されることもあり,また,ブロックの境界に近い部分の画素にだけ適用されることもある。2フィルタの合計演算量の上限を制限する場合ブロックごとにNLMフィルタ適用の有無を参照してブロック内のNLMフィルタ適用画素数における各演算量をカウントし,所定の上限に達した時点で処理を終了し,以降のブロックや画素にはNLMフィルタを適用しない。例えば,次のようにしてフィルタの演算量の上限を制限する。NLMフィルタの上限演算量をN,合計演算量M初期値=0を設定し,所定サイズのブロックごとにNLMフィルタ適用の有無をRD最適化にて選択する。このとき,RD最適化にてNLMフィルタを適用することが選択されたブロックに限り,ブロック内部でNLMフィルタが適用される各画素における演算量XをカウントしてMに加算する。ここで,MがNを超えたとき,以降のブロックについてはNLMフィルタを適用しないものとする。つまりNLMフィルタの上限演算量を符号化装置に設定すると,最悪値でもその上限を超えることはないので,NLMフィルタによって増加する復号装置の最大演算量を見積もることができるようになる。以上のように,上記処理1または2により,従来はRD最適化によってブロックごとに最適化が行われていたため,符号化対象画像ごとにNLMフィルタによる演算量が大きく変動していたものを,所定の演算量以下に抑制することができる。これにより,復号装置の最大演算量が見積もれるようになる。本発明によれば,映像符号化におけるループフィルタ処理において,フィルタを適用する画素数もしくは合計演算量の上限を設定することにより,NLMフィルタによる演算量の変動を抑制し,最大演算量を指定値以下に抑制することができる。したがって,復号装置における設計の許容度が向上する。以下,図面を用いながら,本発明の実施の形態を説明する。映像符号化装置の構成図1は,本発明が適用される符号化装置の構成例を示す図である。本発明は,例えば図1に示すような映像符号化装置に適用されるが,これは一例であり,本発明は,必ずしも図1に示すような装置構成のものに限定されるわけではない。図1に示す映像符号化装置において,原画像記憶部101は,符号化対象となる入力シーケンスの全画像の記憶部であり,順次,各フレームの符号化対象画像を出力する。この例では,ループフィルタA部200におけるNLMフィルタを用いたデノイズフィルタ処理において,ノイズ除去の強度を表すデノイズ係数は原画像と比較して符号化効率が最適なデノイズ係数を決定し,デノイズ係数オーバーヘッドとして符号化してビットストリームに加えるものとする。NLMフィルタにおける探索形状およびテンプレート形状は固定としてもよく,また,そのいずれか一方または双方をユーザ設定などで外部から与えるようにしてもよい。いずれかの形状を外部から与えた場合,デノイズ係数と同様にオーバーヘッドとして符号化して復号装置に伝送する必要がある。ブロックサイズ決定部102は,所定のCodingUnitをどのブロックサイズに分割して符号化を実行するかを決定し,対象ブロックとブロックサイズを出力する。予測サイズ決定部103は,対象ブロックの画素値を予測するブロックの予測サイズを決定し,対象ブロックと予測サイズを出力する。予測手法決定部104は,対象ブロックの画素値予測を行う上で,画面内予測/フレーム間予測の各手法の中で最も符号化効率の高い手法を決定し,その手法を用いた際の予測ブロックと予測情報を出力する。予測サイズ決定部103にて出力された対象ブロックは,予測ブロックとの差分値が計算され差分ブロックとなる。変換サイズ決定部105は,差分ブロックを分割する変換サイズを決定し,分割した変換サイズごとの差分ブロックと変換サイズを出力する。離散コサイン変換部106では,差分ブロックに対して離散コサイン変換を適用し,DCT係数を出力する。量子化部107では,DCT係数に対して量子化を行い,量子化後DCT係数を出力する。逆量子化部108では,量子化後DCT係数に対して逆量子化を行い,DCT係数に戻す。逆離散コサイン変換部109では,DCT係数に対して逆離散コサイン変換を適用し,復号差分ブロックを出力する。復号差分ブロックは予測ブロックと加算合成され,部分復号画像となる。復号画像記憶部110は,部分復号画像を格納し,復号装置側でも参照可能な画像を格納しておく記憶部である。画面内予測部111は,復号画像記憶部110に格納されている部分復号画像を参照し,予測ブロックと予測情報とを出力する。ループフィルタA部200は,復号画像と原画像とを参照し,NLMフィルタによるデノイズフィルタ処理と,例えば次世代映像符号化標準方式のHighEfficiencyVideoCodingの雛形であるHM等に搭載されているデブロッキングフィルタによるデブロッキングフィルタ処理とを,ブロックごとに符号化コストの比較によって切り替えて,符号化歪みを軽減したフィルタ後復号画像を生成する。また,前記切り替えのために必要な情報は,オーバーヘッドとして符号化するものとする。特に,このループフィルタA部200の部分が従来技術と異なる。ループフィルタB部114では,フィルタ後復号画像に対して原画像に近づけるようにALFAdaptiveLoopFilterと呼ばれるフィルタ処理を行い,ALF後復号画像とALF係数を出力する。フレームバッファ115は,ALF後復号画像を格納しておく記憶部である。フレーム間予測部116は,フレームバッファ115を参照し,予測ブロックと予測情報とを出力する。シーケンス情報符号化部117は,映像の縦横画素数など,入力シーケンス固有の情報を符号化の後,ビットストリーム記憶部125に対してシーケンス情報オーバーヘッドを出力する。ブロックサイズ符号化部118は,ブロックサイズ決定部102から予測サイズを受け取り,符号化の後,ブロックサイズオーバーヘッドを出力する。予測サイズ符号化部119は,予測サイズ決定部103から予測サイズを受け取り,符号化の後,予測サイズオーバーヘッドを出力する。予測情報符号化部120は,予測手法決定部104から予測情報を受け取り,符号化の後,予測情報オーバーヘッドを出力する。変換サイズ符号化部121は,変換サイズ決定部105から変換サイズを受け取り,符号化の後,変換サイズオーバーヘッドを出力する。量子化後DCT係数符号化部122は,量子化部107から量子化後DCT係数を受け取り,符号化の後,DCTオーバーヘッドを出力する。ALF係数符号化部124は,ALF係数を受け取り,符号化の後,ALFオーバーヘッドを出力する。ビットストリーム記憶部125は,各オーバーヘッドを格納しておく記憶部であり,シーケンス全体の符号化が終了すると,符号化結果のビットストリームを出力する。符号化情報記憶部126は,復号装置側でも参照可能な符号化情報を格納しておく記憶部である。この符号化情報記憶部126が記憶する符号化情報は,ループフィルタA部200やその他の各部から参照され,使用される。映像符号化装置の処理フロー図2および図3は,図1に示す映像符号化装置の処理フローチャートを示している。映像符号化装置は,以下の処理を行う。まず,ステップS101にて,入力シーケンスを原画像記憶部101に格納する。次に,ステップS102にて,シーケンス情報を符号化してビットストリーム記憶部125に格納する。次に,ステップS103にて,符号化対象の全フレームに対するステップS117までのループ処理を行う。次に,ステップS104にて,符号化対象画像の全CodingUnitCUに対するステップS114までのループ処理を行う。次に,ステップS105にて,ブロックサイズを決定し,符号化してビットストリーム記憶部125に格納する。次に,ステップS106にて,予測サイズを決定し,符号化してビットストリーム記憶部125に格納する。次に,ステップS107にて,画面内/フレーム間予測の各予測ブロックの中で,最も符号化効率が高い手法と対象ブロックの差分値を計算する。次に,ステップS108にて,予測情報をビットストリーム記憶部125に格納する。次に,ステップS109にて,変換サイズを決定し,符号化してビットストリーム記憶部125に格納する。次に,ステップS110にて,離散コサイン変換DCTを行う。次に,ステップS111にて,量子化を行い,量子化後DCT係数を符号化してビットストリーム記憶部125に格納する。次に,ステップS112にて,逆量子化と逆離散コサイン変換を行う。次に,ステップS113にて,ステップS107にて適用された予測ブロックと逆変換後の復号差分ブロックとを加算合成する。次に,ステップS114にて,復号画像記憶部110に加算合成した部分復号画像を格納する。符号化対象画像の全CUに対するループ処理が終了すると,ステップS115にて,ループフィルタA部200が,復号画像に符号化歪みを軽減するためのフィルタ処理を施す。この処理の詳細については,図6,図8を用いて後述する。次に,ステップS116にて,ALFAdaptiveLoopFilterを実行し,ALF係数を符号化してビットストリーム記憶部125に格納する。次に,ステップS117にて,ALF後復号画像をフレームバッファ115に格納する。符号化対象の全フレームに対するループ処理が終了すると,ステップS118にて,ビットストリームを出力して処理を終了する。ループフィルタA部の構成例図4は,図1に示す符号化装置におけるループフィルタA部200とそれに関連する部分の構成例を示している。図4において,原画像記憶部101,復号画像記憶部110,ビットストリーム記憶部125,符号化情報記憶部126は,図1に示すものと同じであり,他の部分がループフィルタA部200の構成要素となっている。原画像記憶部101は,図1で説明したように符号化対象となる入力シーケンスの全画像の記憶部であり,各フレームの符号化対象画像を保持している。復号画像記憶部110は,時空間予測と逆量子化,逆変換後に再構成される復号画像を格納している記憶部である。ビットストリーム記憶部125は,符号化結果のビットストリームが格納される記憶部である。符号化情報記憶部126は,復号装置側でも参照可能な符号化情報を格納しておく記憶部である。この符号化情報記憶部126が記憶する符号化情報は,各部から参照され使用される。デノイズ係数決定部201は,復号画像と原画像とを参照し,符号化効率が最適となるデノイズ係数を決定し,デノイズ係数を出力する。デノイズフィルタ処理部202は,復号画像を参照し,復号画像におけるデノイズの対象画素に対する比較元となるテンプレートと,デノイズ対象画像における探索形状内の探索先となる各探索点に対するテンプレートとのテンプレートマッチングを行い,テンプレート類似度に応じた重みと当該探索点における画素値の加重和によって対象画素のノイズを除去する画像処理方法を用いて,復号画像のノイズを除去するフィルタであり,このフィルタ処理により,符号化歪みを軽減したフィルタ後復号画像を生成する。デブロッキングフィルタ処理部203は,復号画像と符号化情報を参照し,ブロック境界を平滑化した画像を生成する。フィルタ適応選択部210は,デノイズフィルタを適用した画像とデブロッキングフィルタを適用した画像について,所定サイズのブロックごとにRDコストを算出し,符号化効率の高い方を1ビットのフラグを用いて選択する選択部である。特に,このフィルタ適応選択部210が従来技術と異なる。詳しい実施例については図5,図7を用いて後述する。デノイズ係数符号化部204は,デノイズ係数決定部201で決定されたデノイズ係数を受け取り,符号化の後,デノイズ係数オーバーヘッドを出力する。フィルタ情報符号化部205は,フィルタ適応選択部210から出力されるブロックごとのフィルタ適用判定ビット群を受け取り,フィルタ適用判定ビット群オーバーヘッドを出力する。これら各オーバーヘッドはビットストリーム記憶部125に格納される。フィルタ適応選択部の第1の例図5に,フィルタ適応選択部の第1の例を示す。第1の例は,デノイズフィルタが適用される画素数の上限を制限する場合の例である。ここでは,フィルタ対象ブロックに対してテンプレートマッチングを用いたデノイズフィルタを適用するか,一般的な符号化装置でループフィルタとして用いられているデブロッキングフィルタを適用するかを,符号化のコストを比較して低コストのほうに決定するが,以下では,このコストとしてSSDを用いる例を説明する。符号化のコストとしてSADを用いることもでき,また,さらに発生符号量を考慮したRDコストを用いることもできる。後述する第2の例も同様である。ブロックSSD算出部211では,前述したデノイズフィルタ処理部202が出力した画像におけるブロックと原画像における同位置のブロックとのSSDと,デブロッキングフィルタ処理部203が出力した画像におけるブロックと原画像における同位置のブロックとのSSDを算出し,ブロックごとにSSDが低い手法を選択し,どちらを選択したかを示すビットとSSDとブロック番号とを含むリストを作成する。SSD差分順ソート部212では,まず,上記リストにて選択された手法のブロックにおける上記SSDと,デブロッキングフィルタ処理部203が出力した画像のブロックにおける上記SSD間のSSD差分を求める。このSSD差分は,ブロックSSD算出部211においてデブロッキングフィルタを適用したときのSSDが選択されている場合には,0の値となり,デノイズフィルタを適用したときのSSDが選択されている場合には,負の値となる。この負の値の絶対値が大きいほど,換言すればSSD差分が低いほど,デノイズフィルタを適用したときのノイズ削減効果が大きいことになる。続いて,算出されたSSD差分について昇順にソートする。すなわち,SSD差分が低い順になるように並び替える。なお,SSD差分の絶対値についてソートしてもよく,この場合には降順にソートすることになるが,実質的な処理内容はまったく同様である。ブロック選択部213では,ソート情報をSSD差分が低い順に参照し,デノイズフィルタ処理部202が出力した画像におけるブロックがSSD算出部211にて選択されていた場合には,フィルタが適用された画素数をカウントする。このとき,カウント結果の画素数が所定のデノイズフィルタ許容合計画素数を超えたかどうかを,SSD差分が低い順のブロックごとに判定する。カウント結果の画素数がデノイズフィルタ許容合計画素数を超えたとき,当該ブロックおよび後続のブロックすべてのフィルタを,デノイズフィルタからデブロッキングフィルタに変更する。すなわち,デノイズフィルタ処理部202が出力した画像におけるブロックが,強制的にデブロッキングフィルタ処理部203が出力した画像におけるブロックに置き換わるように,ブロックごとの適用フィルタを明示するビット情報フィルタ適用判定ビットというを変更する。すべてのブロックにおけるフィルタ選択が終了すると,フィルタ適用判定ビット群を出力する。フィルタ後画像生成部214では,ブロックごとの適用フィルタを明示するフィルタ適用判定ビットを参照してフィルタ後の画像を生成し,フィルタ後復号画像を出力する。第1の例の処理フロー図6は,第1の例によるループフィルタA部の処理フローチャートである。ループフィルタA部200は,復号画像を参照してループフィルタB部114にフィルタ後復号画像を受け渡すまでに以下の手順に従った処理を実行する。まず,ステップS201にて,復号画像と原画像を用いて符号化効率が最適になるデノイズ係数を算出し,デノイズ係数を符号化してビットストリーム記憶部125に格納する。次に,ステップS202にて,ブロックごとのループ処理により,各ブロックについてステップS203~S205の処理を行う。ステップS203では,復号画像に対して,ステップS201で算出したデノイズ係数を用いてデノイズフィルタの処理を実行し,コストSSDを算出する。ステップS204では,復号画像に対して,デブロッキングフィルタを適用し,コストSSDを算出する。次に,ステップS205にて,ステップS203で算出したコストとステップS204で算出したコストとを比較し,コストの低いフィルタを選択し,フィルタ適用判定ビットをコストの低いほうに設定する。ステップS206では,終了判定処理により,以上のステップS203~S205の処理をブロックが終了するまで繰り返す。次に,ステップS207にて,ブロックごとにフィルタ適用判定ビットのリストに設定された手法におけるブロックのコストと,デブロッキングフィルタ後のブロックのコスト間の差分を計算し,コスト差分の昇順にソートする。次に,ステップS208にて,コストの低い順にフィルタ適用判定ビットを参照してデノイズフィルタ適用対象のブロックを選択し,デノイズフィルタが適用される画素数をカウントする。ステップS209では,カウント結果の画素数がデノイズフィルタ許容合計画素数を超えたかどうかを判定し,超えた場合にはステップS211へ,超えていない場合にはステップS210へ進む。ステップS210では,コスト順にソートした結果のすべてのブロックに対する処理が終了したかどうかを判定し,終了した場合にはステップS212へ進み,終了していない場合にはステップS208へ戻って,次にコストの低いブロックについて同様に処理を繰り返す。ステップS211では,デノイズフィルタ許容合計画素数を超えたブロックと,その後のブロックのフィルタ適用判定ビットを,すべてデブロッキングフィルタに書き換える。すなわち,それ以降のブロックについては,デノイズフィルタの適用を打ち切る。ステップS212では,フィルタ適用判定ビットに従って,デノイズフィルタまたはデブロッキングフィルタ適用後の画像を生成し,ループフィルタB部114に出力する。また,フィルタ適用判定ビット群を符号化し,ビットストリーム記憶部125に出力する。フィルタ適応選択部の第2の例図7に,フィルタ適応選択部の第2の例を示す。第2の例は,デノイズフィルタの合計演算量の上限を制限する場合の例である。フィルタ適応選択部210′において,ブロックSSD算出部221,SSD差分順ソート部222,フィルタ後画像生成部224が行う処理は,それぞれ図5で説明した第1の例におけるブロックSSD算出部211,SSD差分順ソート部212,フィルタ後画像生成部214が行う処理とまったく同様である。第2の例では,ブロック選択部223が,第1の例のブロック選択部213と異なるので,この部分だけ説明する。ブロック選択部223では,SSD差分順ソート部222がソートしたソート情報をSSDが低い順に参照し,デノイズフィルタ処理部202が出力した画像におけるブロックがブロックSSD算出部221にて選択されていた場合には,フィルタが適用された画素における演算量をカウントする。このとき,カウント結果の演算量が所定のデノイズフィルタ許容合計演算量を超えたかどうかを,SSDが低い順のブロックごとに判定する。カウント結果の演算量がデノイズフィルタ許容合計演算量を超えたとき,当該ブロックおよび後続のブロックすべてのフィルタを,デノイズフィルタからデブロッキングフィルタに変更する。すなわち,デノイズフィルタ処理部202が出力した画像におけるブロックが,強制的にデブロッキングフィルタ処理部203が出力した画像におけるブロックに置き換わるように,フィルタ適用判定ビットを変更する。すべてのブロックにおけるフィルタ選択が終了すると,ブロックごとの適用フィルタを明示するフィルタ適用判定ビットを出力する。第2の例の処理フロー図8は,第2の例によるループフィルタA部の処理フローチャートである。ループフィルタA部200は,復号画像を参照してループフィルタB部114にフィルタ後復号画像を受け渡すまでに以下の手順を行う。ステップS301からステップS307までの処理は,図6で説明したステップS201からステップS207までの処理と同様である。ステップS308では,コストの低い順にフィルタ適用判定ビットを参照してデノイズフィルタ適用対象のブロックを選択し,デノイズフィルタが適用される画素に対する演算量をカウントする。ステップS309では,カウント結果の演算量がデノイズフィルタ許容合計演算量を超えたかどうかを判定し,超えた場合にはステップS311へ,超えていない場合にはステップS310へ進む。ステップS310以降の処理は,図6で説明したステップS210以降の処理と同様である。以上の第1の例または第2の例のようにデノイズフィルタ許容合計画素数もしくはデノイズフィルタ許容合計演算量を設定することで,デノイズフィルタによって画質を大きく高められるブロックは担保しつつ,復号装置における演算量を見積もることが可能になる。復号装置では,符号化装置が出力するビットストリーム中のフィルタ適用判定ビット群を復号し,これを参照することにより,ブロックごとにデノイズフィルタの有無を切り替えて処理すればよい。[ソフトウェアプログラムを用いた場合の構成例]以上の符号化の処理は,コンピュータとソフトウェアプログラムとによっても実現することができ,そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも,ネットワークを通して提供することも可能である。図9は,本発明をコンピュータとソフトウェアプログラムとを用いて実施する場合のシステムの構成例を示している。本システムは,プログラムを実行するCPU50と,CPU50がアクセスするプログラムやデータが格納されるRAM等のメモリ51と,符号化対象の映像信号を記憶する映像信号記憶部52と,本発明の実施形態で説明した処理をCPU50に実行させるためのプログラムが格納されたプログラム記憶装置53と,符号化結果のビットストリームを記憶する符号化ストリーム記憶部54とがバスで接続された構成になっている。プログラム記憶装置53は,本発明を用いて映像信号を符号化するための画像符号化プログラム531を格納している。本システムが映像信号記憶部52に格納されている映像信号を符号化する際に,画像符号化プログラム531がメモリ51にロードされ,CPU50は,メモリ51にロードされた画像符号化プログラム531の命令を逐次フェッチして実行し,映像信号記憶部52に格納されている映像信号を,本発明の実施形態で説明した手法により符号化して,符号化結果のビットストリームを符号化ストリーム記憶部54に格納する。または,ネットワークアダプタ等のインタフェースを介して,ビットストリームを外部装置に出力してもよい。"