(57)【要約】【課題】符号化対象画像から予測画像を減算した予測残差を符号化する際に、予測によって符号量が増大する可能性を低減する。【解決手段】ループフィルタ部１２０は、復号画像Ｄｅｃ’に作用する適応フィルタ１２２のフィルタ係数の値を設定するフィルタ係数設定部１２３を備えている。フィルタ係数設定部１２３は、特定のフィルタ係数を特定の値に拘束するという拘束条件の下で、上記特定のフィルタ係数以外のフィルタ係数の値を、適応フィルタ１２２から出力される復号画像Ｄｅｃ”の原画像Ｏｒｇに対する誤差を最小化するように設定する。【選択図】図１
2012065120.tif 000002
【特許請求の範囲】
【請求項１】
復号画像に作用する適応フィルタの各フィルタ係数の値を設定するフィルタ係数設定装置であって、
特定フィルタ係数の値を特定値に設定するという拘束条件下で、上記適応フィルタの上記特定フィルタ係数以外の各フィルタ係数の値を、上記適応フィルタから出力される出力画像の原画像に対する誤差を最小化するように設定する、
ことを特徴とするフィルタ係数設定装置。
【請求項２】
上記適応フィルタの各フィルタ係数の値であって、上記適応フィルタから出力される出力画像の原画像に対する誤差を最小化する値を導出する導出手段と、
上記適応フィルタの少なくとも１つのフィルタ係数の値を、上記導出手段が導出した値以外の値に変更する変更手段と、
上記変更手段により値が変更されたフィルタ係数を上記特定フィルタ係数とし、該フィルタ係数の上記変更手段により変更された後の値を上記特定値とする拘束条件下で、上記適応フィルタの上記特定フィルタ係数以外の各フィルタ係数の値を、上記適応フィルタから出力される出力画像の原画像に対する誤差を最小化するように設定する設定手段と、を備えている、
ことを特徴とする請求項１に記載のフィルタ係数設定装置。
【請求項３】
上記導出手段は、
上記原画像と上記復号画像とに基づいて相関行列を生成する生成手段と、
上記生成手段によって生成された相関行列を含む正規方程式を解くことによって、上記適応フィルタの各フィルタ係数の値を算出する第１の算出手段とにより構成され、
上記設定手段は、
上記生成手段によって生成された相関行列を、上記変更手段がどのフィルタ係数の値をどのような値に変更したかに応じて更新する更新手段と、
上記更新手段によって更新された相関行列を含む正規方程式を解くことによって、上記特定フィルタ係数以外の各フィルタ係数の値を算出する第２の算出手段とにより構成されている、ことを特徴とする請求項２に記載のフィルタ係数設定装置。
【請求項４】
上記変更手段は、上記適応フィルタの各フィルタ係数について、上記導出手段が導出した値が予め定められた範囲外にある場合、上記導出手段が導出した値を上記範囲内にある値に変更するものである、
ことを特徴とする２または３に記載のフィルタ係数設定装置。
【請求項５】
上記変更手段は、上記適応フィルタの各フィルタ係数について、上記導出手段が導出した値を量子化するものである、
ことを特徴とする請求項２または３に記載のフィルタ係数設定装置。
【請求項６】
上記変更手段は、上記適応フィルタの参照領域の中心画素に係るフィルタ係数について、上記導出手段が導出した値が予め定められた範囲外にある場合、上記導出手段が導出した値を上記範囲内にある値に変更するものである、
ことを特徴とする請求項２または３に記載のフィルタ係数設定装置。
【請求項７】
上記適応フィルタの各フィルタ係数の値であって、上記適応フィルタから出力される出力画像の原画像に対する誤差を最小化する値を導出する導出手段と、
上記適応フィルタを上記適応フィルタよりもタップ数の少ない他の適応フィルタとして利用するために、上記他の適応フィルタのフィルタ係数として利用するフィルタ係数以外のフィルタの値を０に設定するという拘束条件下で、上記他の適応フィルタのフィルタ係数として利用するフィルタ係数を、上記適応フィルタから出力される出力画像の原画像に対する誤差を最小化するように設定する設定手段と、を備えている、
ことを特徴とする請求項１に記載のフィルタ係数設定装置。
【請求項８】
請求項１から６までの何れか１項に記載のフィルタ係数設定装置を備え、上記フィルタ係数設定装置にて設定されたフィルタ係数を含む符号化データを生成する、
ことを特徴とする画像符号化装置。
【請求項９】
復号画像に作用する適応フィルタの各フィルタ係数の値を設定するフィルタ係数設定方法であって、
特定フィルタ係数の値を特定値に設定するという拘束条件下で、上記適応フィルタの上記特定フィルタ係数以外の各フィルタ係数の値を、上記適応フィルタから出力される出力画像の原画像に対する誤差を最小化するように設定する、
ことを特徴とするフィルタ係数設定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、適応フィルタのフィルタ係数を設定するフィルタ係数設定装置およびフィルタ係数設定方法に関する。また、そのようなフィルタ係数設定装置を備えた画像符号化装置に関する。
【背景技術】
【０００２】
動画像を効率的に伝送または記録するために、動画像を符号化する動画像符号化装置、及び、動画像を復号する動画像復号装置が広く用いられている。代表的な動画像符号化方式としては、例えば、Ｈ．２６４／ＭＰＥＧ−４．ＡＶＣ（非特許文献１）や、ＶＣＥＧ（Video Coding Expert Group）における共同開発用コーデックであるＫＴＡソフトウェアに採用されている方式などが挙げられる。
【０００３】
このような符号化方式において、動画像を構成する画像（ピクチャ）は、画像を分割することにより得られるスライス、スライスを分割することにより得られるＬＣＵ（最大符号化単位）、ＬＣＵを分割することにより得られるＣＵ（符号化単位）、ＣＵを分割することにより得られるＴＵ（変換単位）およびＰＵ（予測単位）などからなる階層構造により管理される。
【０００４】
また、このような符号化方式においては、通常、入力画像を符号化／復号化することによって得られる局所復号画像に基づいて予測画像が生成され、当該予測画像と入力画像との差分画像（「残差画像」または「予測残差」と呼ぶこともある）が量子化／符号化される。また、予測画像の生成方法としては、画面間予測（インター予測）、および、画面内予測（イントラ予測）と呼ばれる方法が知られている。
【０００５】
また、復号画像または復号画像に対してブロックノイズ低減処理を施して得られる画像に対して、適応的に設定されたフィルタ係数群を用いたフィルタ処理を施すことによって、ノイズが低減された復号画像（ノイズ低減済復号画像）を生成する適応的ループフィルタ（Adaptive Loop Filter）（以下単に「適応フィルタ」とも呼ぶ）と呼ばれる技術も知られており、インター予測においては、当該適応フィルタが出力するノイズ低減済復号画像を参照画像として予測画像を生成することもできる。
【０００６】
非特許文献２には、復号画像にＡＬＦ（Adaptive Loop）と呼ばれる適応フィルタを作用させることによって、復号画像の精度を向上させる技術が開示されている。ＡＬＦは、復号画像に作用する線形フィルタであり、そのフィルタ係数は、最小２乗法を用いて適応フィルタの出力画像の原画像に対する誤差を最小化するように設定される。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】「Recommendation ITU-T H.264」,Telecommunication Standardization Sector of ITU,03/2009
【非特許文献２】「VCEG-AI18」,Telecommunication Standardization Sector,35th Meeting:Berlin,Germany,07/2008
【発明の概要】
【発明が解決しようとする課題】
【０００８】
動画像符号化装置は、ＡＬＦのフィルタ係数を、クリップ処理や量子化などの後処理を施したうえで、動画像復号装置に提供する。クリップ処理を施すのは、絶対値が大きなフィルタ係数を符号化するためには、符号長の長い符号を用いることが必要であり、符号化効率が低下してしまうからである。
【０００９】
しかしながら、ＡＬＦのフィルタ係数にクリップ処理や量子化などの後処理を施すと、フィルタ係数が適応的に決定された値とは別の値に変更され、フィルタ係数の最適性が損なわれる。つまり、ＡＬＦの出力画像は、原画像を最適近似するものでなくなる。このため、ＡＬＦの出力画像を参照して生成される予測画像の精度が低下し、これにより符号化効率の悪化を招く。
【００１０】
本発明は、上記の課題に鑑みてなされたものであり、その目的は、クリップ処理や量子化などの後処理を施すことにより損なわれたフィルタ係数の最適性を、少なくとも部分的に回復することが可能なフィルタ係数設定装置およびフィルタ係数設定方法を実現することにある。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本発明に係るフィルタ係数設定装置は、復号画像に作用する適応フィルタの各フィルタ係数の値を設定するフィルタ係数設定装置であって、特定フィルタ係数の値を特定値に設定するという拘束条件下で、上記適応フィルタの上記特定フィルタ係数以外の各フィルタ係数の値を、上記適応フィルタから出力される出力画像の原画像に対する誤差を最小化するように設定する、ことを特徴とする。
【００１２】
また、上記課題を解決するために、本発明に係るフィルタ係数設定方法は、復号画像に作用する適応フィルタの各フィルタ係数の値を設定するフィルタ係数設定方法であって、特定フィルタ係数の値を特定値に設定するという拘束条件下で、上記適応フィルタの上記特定フィルタ係数以外の各フィルタ係数の値を、上記適応フィルタから出力される出力画像の原画像に対する誤差を最小化するように設定する、ことを特徴とする。
【００１３】
上記構成によれば、クリップ処理や量子化などの後処理の結果、上記特定フィルタ係数が上記特定値に変更され、上記フィルタ係数の最適性が損なわれた場合であっても、その変更結果を活かしたまま、上記フィルタ係数の最適性を少なくとも部分的に回復することができる。これにより符号化効率の向上を図ることができる。
【００１４】
本発明のフィルタ係数設定装置は、上記適応フィルタの各フィルタ係数の値であって、上記適応フィルタから出力される出力画像の原画像に対する誤差を最小化する値を導出する導出手段と、上記適応フィルタの少なくとも１つのフィルタ係数の値を、上記導出手段が導出した値以外の値に変更する変更手段と、上記変更手段により値が変更されたフィルタ係数を上記特定フィルタ係数とし、該フィルタ係数の上記変更手段により変更された後の値を上記特定値とする拘束条件下で、上記適応フィルタの上記特定フィルタ係数以外の各フィルタ係数の値を、上記適応フィルタから出力される出力画像の原画像に対する誤差を最小化するように設定する設定手段と、を備えている、ことが望ましい。
【００１５】
上記構成によれば、上記変更手段により上記特定フィルタ係数が上記特定値に変更され、上記フィルタ係数の最適性が損なわれた場合であっても、その変更結果を活かしたまま、上記フィルタ係数の最適性を少なくとも部分的に回復することができる。
【００１６】
本発明のフィルタ係数設定装置において、上記導出手段は、上記原画像と上記復号画像とに基づいて相関行列を生成する生成手段と、上記生成手段によって生成された相関行列を含む正規方程式を解くことによって、上記適応フィルタの各フィルタ係数の値を算出する第１の算出手段とにより構成され、上記設定手段は、上記生成手段によって生成された相関行列を、上記変更手段がどのフィルタ係数の値をどのような値に変更したかに応じて更新する更新手段と、上記更新手段によって更新された相関行列を含む正規方程式を解くことによって、上記特定フィルタ係数以外の各フィルタ係数の値を算出する第２の算出手段とにより構成されている、ことが望ましい。
【００１７】
上記構成によれば、上記設定手段によるフィルタ係数の設定処理を、上記導出手段によるフィルタ係数の導出処理に用いた相関行列を用いて実行することができる。すなわち、設定処理と導出処理との各々において相関行列を算出する場合と比べて、演算量の削減を図ることができる。
【００１８】
本発明のフィルタ係数設定装置において、上記変更手段は、上記適応フィルタの各フィルタ係数について、上記導出手段が導出した値が予め定められた範囲外にある場合、上記導出手段が導出した値を上記範囲内にある値に変更するものである、ことが望ましい。
【００１９】
予め定められた範囲外にあるフィルタ係数の値を該範囲内の値に変更するクリップ処理によって、大きな絶対値をもつフィルタ係数を符号化する必要がなくなる。このため、より短い符号を用いてフィルタ係数を符号化することが可能になる。上記の構成によれば、このようなクリップ処理の効果を活かしつつ、上記フィルタ係数の最適性を少なくとも部分的に回復することができる。
【００２０】
本発明のフィルタ係数設定装置において、上記変更手段は、上記適応フィルタの各フィルタ係数について、上記導出手段が導出した値を量子化するものである、ことが望ましい。
【００２１】
フィルタ係数を量子化することによって、より短い符号を用いてフィルタ係数を符号化することが可能になる。上記の構成によれば、このような量子化処理の効果を活かしつつ、上記フィルタ係数の最適性を少なくとも部分的に回復することができる。例えば、フィルタ係数を８ビット以下に量子化する場合であっても、フィルタ係数を８ビット以上に量子化する場合と同様の符号化効率を得ることができる。
【００２２】
本発明のフィルタ係数設定装置において、上記変更手段は、上記適応フィルタの参照領域の中心画素に係るフィルタ係数について、上記導出手段が導出した値が予め定められた範囲外にある場合、上記導出手段が導出した値を上記範囲内にある値に変更するものである、ことが望ましい。
【００２３】
上記適応フィルタの参照領域の中心画素に係るフィルタ係数が所定の範囲内にない場合、主観画質が低下することが知られている。上記の構成によれば、このような主観画質の低下を避けつつ、上記フィルタ係数の最適性を少なくとも部分的に回復することができる。
【００２４】
本発明のフィルタ係数設定装置は、上記適応フィルタの各フィルタ係数の値であって、上記適応フィルタから出力される出力画像の原画像に対する誤差を最小化する値を導出する導出手段と、上記適応フィルタを上記適応フィルタよりもタップ数の少ない他の適応フィルタとして利用するために、上記他の適応フィルタのフィルタ係数として利用するフィルタ係数以外のフィルタの値を０に設定するという拘束条件下で、上記他の適応フィルタのフィルタ係数として利用するフィルタ係数を、上記適応フィルタから出力される出力画像の原画像に対する誤差を最小化するように設定する設定手段と、を備えている、ことが望ましい。
【００２５】
上記構成によれば、適応フィルタのタップ数の切り替えを、簡便に行なうことができる。
【００２６】
なお、上記フィルタ係数設定装置を備えた画像符号化装置も本発明の範疇に含まれる。
【発明の効果】
【００２７】
以上のように、本発明においては、特定フィルタ係数の値を特定値に設定するという拘束条件下で、適応フィルタの上記特定フィルタ係数以外の各フィルタ係数の値を、上記適応フィルタから出力される出力画像の原画像に対する誤差を最小化するように設定する。したがって、クリップ処理や量子化などの後処理の結果、上記特定フィルタ係数が上記特定値に変更され、上記フィルタ係数の最適性が損なわれた場合であっても、その変更結果を活かしたまま、上記フィルタ係数の最適性を少なくとも部分的に回復することができる。
【図面の簡単な説明】
【００２８】
【図１】図２に示す動画像符号化装置が備えているループフィルタ部の構成を示すブロック図である。
【図２】本発明の実施形態を示すものであり、動画像符号化装置の構成を示すブロック図である。
【図３】図１に示すループフィルタ処理部が備えているフィルタ係数設定部の構成を示すブロック図である。
【図４】図３に示すフィルタ係数設定部におけるフィルタ係数設定処理の流れを示すフローチャートである。
【図５】本発明の第１の変形例を示すものであり、フィルタ係数設定部の構成を示すブロック図である。
【図６】本発明の第１の変形例を示すものであり、図５に示すフィルタ係数設定部におけるフィルタ係数設定処理の流れを示すフローチャートである。
【図７】本発明の第２の変形例を示すものであり、ループフィルタ部の構成を示すブロック図である。
【図８】本発明の第２の変形例を示すものであり、図７に示すループフィルタ部におけるフィルタ係数設定処理の流れを示すフローチャートである。
【図９】図２に示す動画像符号化装置によって生成される符号化データのデータ構造を示す図である。
【図１０】本発明の実施形態を示すものであり、動画像復号装置の構成を示すブロック図である。
【図１１】本発明の第３の変形例を説明するための図である。（ａ）は、９タップの適応フィルタのフィルタ係数と７タップの適応フィルタのフィルタ係数とを表し、（ｂ）は、９タップの適応フィルタと５タップの適応フィルタとを表し、（ｃ）は、対称性を有する９タップの適応フィルタのフィルタ係数と７タップの適応フィルタのフィルタ係数とを表す。
【図１２】本発明の第３の変形例を示すものであり、フィルタ係数設定部の構成を示すブロック図である。
【図１３】図３に示すフィルタ係数設定部が備えている最小２乗解算出部の構成を示すブロック図である。
【発明を実施するための形態】
【００２９】
〔動画像符号化装置について〕
本実施形態に係る画像符号化装置２について、図２を参照して説明する。図２は、動画像符号化装置２の構成を示すブロック図である。
【００３０】
動画像符号化装置２は、図２に示すように、予測部１１１、変換部１１２、量子化部１１３、可変長符号化部１１４、逆量子化部１１５、逆変換部１１６、フレームメモリ１１７、減算部１１８、加算部１１９、および、ループフィルタ部１２０を備えている。動画像符号化装置２は、動画像を構成する各フレームを変換単位ＴＵ毎に符号化する。動画像符号化装置２の各部が１の変換単位ＴＵを符号化する際の動作について、図２を参照して説明すれば以下のとおりである。
【００３１】
予測部１１１は、イントラ予測またはインター予測によって、原画像Ｏｒｇ＝｛Ｏｒｇ（ｘ，ｙ）｜（ｘ，ｙ）∈ＴＵ｝を近似する予測画像Ｐｒｅｄ＝｛Ｐｒｅｄ（ｘ，ｙ）｜（ｘ，ｙ）∈ＴＵ｝を生成する。ここで、Ｏｒｇ（ｘ、ｙ）は、画素（ｘ、ｙ）における原画像Ｏｒｇの画素値を表し、Ｐｒｅｄ（ｘ、ｙ）は、画素（ｘ、ｙ）における予測画像Ｐｒｅｄの画素値を表す。変換単位ＴＵが複数の予測単位｛ＰＵ１，ＰＵ２，…，ＰＵＮ｝により構成されている場合、予測部１１１は、予測画像Ｐｒｅｄを予測単位ＰＵｉ毎に生成する。予測部１１１にて生成された予測画像Ｐｒｅｄは、減算部１１８および加算部１１９に供給される。また、予測部１１１は、イントラ予測の場合は予測モード、インター予測の場合は動きベクトルを示す予測パラメータＰＰを、予測単位ＰＵｉ毎に可変長符号化部１１４に供給する。
【００３２】
減算部１１８は、原画像Ｏｒｇから予想画像Ｐｒｅｄを減算することによって、予測残差Ｒｅｓ＝｛Ｒｅｓ（ｘ，ｙ）｜（ｘ，ｙ）∈ＴＵ｝を生成する。ここで、Ｒｅｓ（ｘ、ｙ）＝Ｏｒｇ（ｘ，ｙ）−Ｐｒｅｄ（ｘ，ｙ）である。減算部１１８にて生成された予測残差Ｒｅｓは、変換部１１２に供給される。
【００３３】
変換部１１２は、空間領域の予測残差Ｒｅｓ＝｛Ｒｅｓ（ｘ，ｙ）｜（ｘ，ｙ）∈ＴＵ｝にＤＣＴ変換（離散コサイン変換）を施すことによって、周波数領域の予測残差Ｒｅｓ’＝｛Ｒｅｓ’（ｕ，ｖ）｜（ｕ，ｖ）∈Ω｝を生成する。ここで、Ωは、２次元周波数空間である。周波数領域の予測残差Ｒｅｓ’の各要素Ｒｅｓ’（ｕ，ｖ）は、ＤＣＴ係数と呼ばれる。変換部１１２にて生成された周波数領域の予測残差Ｒｅｓ’は、量子化部１１３に供給される。
【００３４】
量子化部１１３は、ＤＣＴ係数Ｒｅｓ’（ｕ，ｖ）を量子化することによって、量子化されたＤＣＴ係数Ｒｅｓ”（ｕ，ｖ）＝［Ｒｅｓ’（ｕ，ｖ）／ＱＰ］からなる量子化予測残差Ｒｅｓ”＝｛Ｒｅｓ”（ｕ，ｖ）｜（ｕ，ｖ）∈Ω｝を生成する。ここで、ＱＰは、量子化ステップを表し、［・］は、・を超えない最大の整数値を表す。量子化部１１３にて生成された量子化予測残差Ｒｅｓ”は、可変長符号化部１１４および逆量子化部１１５に供給される。
【００３５】
可変長符号化部１１４は、量子化予測残差Ｒｅｓ”を可変長符号を用いて符号化することによって、符号化データを生成する。この際、上述した予測部１１１から供給される予測パラメータＰＰ、および、後述するループフィルタ部１２０から供給されるフィルタパラメータＦＰを符号化して、符号化データに含める。可変長符号化部１１４にて生成された符号化データは、後述する動画像復号装置１などに送信される。
【００３６】
逆量子化部１１５は、量子化されたＤＣＴ係数Ｒｅｓ”（ｕ，ｖ）を逆量子化することによって、周波数領域の予測残差Ｒｅｓ’を復元する。逆量子化部１１５にて復元される周波数領域の予測残差｛Ｒｅｓ”（ｕ，ｖ）×ＱＰ｜（ｕ，ｖ）∈Ω｝は、量子化ノイズを除いて復元しようとする周波数領域の予測残差Ｒｅｓ’に一致するので、図２ではこれをＲｅｓ’と示している。逆量子化部１１５にて復元された周波数領域の予測残差Ｒｅｓ’は、逆変換部１１６に供給される。
【００３７】
逆変換部１１６は、復元された周波数領域の予測残差Ｒｅｓ’に逆ＤＣＴ変換（逆離散コサイン変換）を施すことによって、空間領域の予測残差Ｒｅｓを復元する。逆変換部１１６によって復元される空間領域の予測残差は、量子化ノイズを除いて復元しようとする空間領域の予測残差Ｒｅｓに一致するので、図２ではこれをＲｅｓと示している。逆変換部１１６にて復元された空間領域の予測残差Ｒｅｓは、加算部１１９に供給される。
【００３８】
加算部１１９は、復元された予測残差Ｒｅｓに予測画像Ｐｒｅｄを加算することによって、復号画像Ｄｅｃ＝｛Ｄｅｃ（ｘ，ｙ）｜（ｘ，ｙ）∈ＴＵ｝を生成する。ここで、Ｄｅｃ（ｘ，ｙ）＝Ｒｅｓ（ｘ，ｙ）＋Ｐｒｅｄ（ｘ，ｙ）である。加算部１１９にて生成された復号画像Ｄｅｃは、量子化ノイズを除いて原画像Ｏｒｇに一致する。加算部１１９にて生成された復号画像Ｄｅｃは、フレームメモリ１１７に格納される。なお、動画像符号化装置２内で生成される復号画像Ｄｅｃは、局所復号画像と呼ばれる。
【００３９】
ループフィルタ部１２０は、フレームメモリ１１７に格納された復号画像Ｄｅｃに作用する。ループフィルタ部１２０は、後述するようにデブロッキングフィルタ１２１と適応フィルタ１２２とを含み、これらのフィルタを用いて復号画像Ｄｅｃに含まれる量子化ノイズを除去する。ループフィルタ部１２０により量子化ノイズが除去された復号画像Ｄｅｃ”は、同じフレーム内の他の変換単位ＴＵ’（イントラ予測の場合）、あるいは、異なるフレーム内の同じ（同じ位置を占める）変換単位ＴＵ（インター予測の場合）を符号化する際に原画像Ｏｒｇ’から減算する予測画像Ｐｒｅｄ’を生成するために利用される。
【００４０】
なお、ループフィルタ部１２０は、適応フィルタ１２２のフィルタ係数の値をフィルタ係数設定単位Ｕ毎に設定する。そして、設定したフィルタ係数の値を示すフィルタパラメータＦＰを、フィルタ係数設定単位Ｕ毎に可変長符号化部１１４に供給する。ここで、適応フィルタ１２２のフィルタ係数は、特定の拘束条件の下で、復号画像Ｄｅｃ”の画素値Ｄｅｃ”（ｘ，ｙ）と原画像Ｏｒｇの画素値Ｏｒｇ（ｘ，ｙ）との差の２乗和Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２を最小化するように適応的に設定される。
【００４１】
なお、本実施形態においては、適応フィルタのフィルタ係数の値をスライス毎に設定し、フィルタパラメータＦＰを符号化データのスライスヘッダに含める構成を想定するが、本発明はこれに限定されない。すなわち、フィルタ係数設定単位Ｕは、ＬＣＵ（最大符号化単位）、ＣＵ（符号化単位）、リーフ（最小符号化単位）、ＴＵ（変換単位）、ＰＵ（予測単位）の何れであってもよい。
【００４２】
（ループフィルタ部の詳細）
次に、図２に示す動画像符号化装置２が備えているループフィルタ部１２０の詳細について、図１を参照して説明する。図１は、ループフィルタ部１２０の構成を示すブロック図である。
【００４３】
ループフィルタ部１２０は、図１に示すように、デブロッキングフィルタ１２１、適応フィルタ１２２、フィルタ係数設定部１２３、および、フィルタ係数保存部１２４を備えている。各部の動作について図１を参照して説明すれば以下のとおりである。
【００４４】
デブロッキングフィルタ１２１は、復号画像Ｄｅｃに作用する非線形フィルタであり、ＴＵ（変換単位）境界で発生するブロックノイズを低減するように構成されている。ただし、デブロッキングフィルタ１２１は、ＴＵ境界で発生するブロックノイズの他に、ＬＣＵ（最大符号化単位）境界、ＣＵ（符号化単位）境界、リーフ（最小符号化単位）境界、および、ＰＵ（予測単位）境界の少なくとも何れかで発生するブロックノイズを低減するように構成されていてもよい。デブロッキングフィルタ１２１から出力される復号画像Ｄｅｃ’は、適応フィルタ１２２に供給される。
【００４５】
適応フィルタ１２２は、復号画像Ｄｅｃ’（デブロッキングフィルタ１２１の出力画像）に作用する線形フィルタである。適応フィルタ１２２の参照画素数（入力画素数）をＮとすると、適応フィルタ１２２から出力される復号画像Ｄｅｃ”の画素値Ｄｅｃ”（ｘ，ｙ）は、Ｄｅｃ”（ｘ，ｙ）＝ａ０×Ｄｅｃ’０（ｘ，ｙ）＋ａ１×Ｄｅｃ’１（ｘ，ｙ）＋…＋ａＮ−１×Ｄｅｃ’Ｎ−１（ｘ，ｙ）＋ａＮと表せる。ここで、｛Ｄｅｃ’０（ｘ，ｙ），Ｄｅｃ’１（ｘ，ｙ），…，Ｄｅｃ’Ｎ−１（ｘ，ｙ）｝は、画素値Ｄｅｃ”（ｘ，ｙ）を導出するために適応フィルタ１２２が参照する復号画像Ｄｅｃ’の画素値の集合である。ａ０，ａ１，…，ａＮ−１，ａＮは、フィルタ係数と呼ばれる。また、ａＮは、オフセットとも呼ばれる。適応フィルタ１２２から出力される復号画像Ｄｅｃ”は、フレームメモリ１１７に格納され、予測画像Ｐｒｅｄ’を生成するために予測部１１１により参照される。
【００４６】
なお、画素値Ｄｅｃ”（ｘ，ｙ）を導出するために適応フィルタ１２２が参照する画素値の集合｛Ｄｅｃ’０（ｘ，ｙ），Ｄｅｃ’１（ｘ，ｙ），…，Ｄｅｃ’Ｎ−１（ｘ，ｙ）｝は、復号画像Ｄｅｃ’において画素（ｘ，ｙ）を含む領域Ｒ（以下、「参照領域Ｒ」と呼ぶ）に属する各画素の画素値からなる集合であり、｛Ｄｅｃ’（ｐ，ｑ）｜（ｐ，ｑ）∈Ｒ｝と表現することができる。ここで、Ｄｅｃ’（ｐ，ｑ）は、復号画像Ｄｅｃ’の画素（ｐ，ｑ）における画素値である。
【００４７】
例えば、参照領域Ｒが画素（ｘ，ｙ）を中心とするＭ×Ｍ画素の正方形領域である場合、｛Ｄｅｃ’０（ｘ，ｙ），Ｄｅｃ’１（ｘ，ｙ），…，Ｄｅｃ’Ｎ−１（ｘ，ｙ）｝＝｛Ｄｅｃ’（ｐ，ｑ）｜ｘ−（Ｍ−１）／２≦ｐ≦ｘ＋（Ｍ−１）／２，ｙ−（Ｍ−１）／２≦ｑ≦ｙ＋（Ｍ−１）／２｝である（Ｎ＝Ｍ×Ｍ）。また、参照領域Ｒが画素（ｘ，ｙ）を左上隅の頂点とするＭ×Ｍ画素の正方形領域である場合、｛Ｄｅｃ’０（ｘ，ｙ），Ｄｅｃ’１（ｘ，ｙ），…，Ｄｅｃ’Ｎ−１（ｘ，ｙ）｝＝｛Ｄｅｃ’（ｐ，ｑ）｜ｘ≦ｐ≦ｘ＋Ｍ−１，ｙ≦ｑ≦ｙ＋Ｍ−１｝である（Ｎ＝Ｍ×Ｍ）。また、参照領域Ｒが画素（ｘ，ｙ）を中心とする菱形領域である場合、｛Ｄｅｃ’０（ｘ，ｙ），Ｄｅｃ’１（ｘ，ｙ），…，Ｄｅｃ’Ｎ−１（ｘ，ｙ）｝＝｛Ｄｅｃ’（ｐ，ｑ）｜ｄｉｓ（（ｐ，ｑ），（ｘ，ｙ））≦Ｔｈ｝である。ここで、ｄｉｓ（（ｐ，ｑ），（ｘ，ｙ））は、画素（ｐ，ｑ）と画素（ｘ，ｙ）との間の市街地距離（マンハッタン距離）を表し、Ｔｈは予め定められた閾値を表す。ただし、参照領域Ｒは、画素（ｘ，ｙ）を含む領域であれば何でもよく、ここに例示したものに限らない。
【００４８】
フィルタ係数設定部１２３は、特定の拘束条件の下で、復号画像Ｄｅｃ”の画素値Ｄｅｃ”（ｘ，ｙ）と原画像Ｏｒｇの画素値Ｏｒｇ（ｘ，ｙ）との差の２乗和Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２を最小化するよう、フィルタ係数ａ０，ａ１，…，ａＮの値を設定する。ここで、Σは、（ｘ，ｙ）∈Ｕ（フィルタ係数設定単位）に関する和である。具体的には、フィルタ係数ａ０，ａ１，…，ａＮの値を、以下に説明する２回の最小２乗法により設定する。
【００４９】
まず、１回目の最小２乗法により、Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２を最小化するように、フィルタ係数ａ０，ａ１，…，ａＮの値を設定する。Σは、（ｘ，ｙ）∈Ｕ（フィルタ係数設定単位）に関する和である。ここでは、フィルタ係数ａ０，ａ１，…，ａＮに対して拘束条件を課さない。
【００５０】
なお、Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２を最小化するフィルタ係数ａ０，ａ１，…，ａＮは、正規方程式（１）を解くことにより得られる。
【００５１】
【数１】
2012065120.tif 000003
【００５２】
ここで、Ｘ（ｘ，ｙ）は、Ｘ＝（Ｄｅｃ’０（ｘ，ｙ），Ｄｅｃ’１,…,Ｄｅｃ’Ｎ−１（ｘ，ｙ）,１）ｔにより定義されるベクトルであり、Ｙは、Ｙ＝Ｏｒｇ（ｘ，ｙ）により定義されるスカラーであり、θは、θ＝（ａ０，ａ１，…，ａＮ）ｔにより定義されるベクトルである。また、（１）の両辺に現れるΣは、何れも（ｘ，ｙ）∈Ｕに関する和である。
【００５３】
（２）および（３）式により定義される相関行列ＭおよびＶを用いれば、正規方程式（１）は、（４）式のように書き変えることができる。なお、（２）および（３）式に現れるΣは、何れも（ｘ，ｙ）∈Ｕに関する和である。
【００５４】
【数２】
2012065120.tif 000004
【００５５】
【数３】
2012065120.tif 000005
【００５６】
【数４】
2012065120.tif 000006
【００５７】
次に、１回目の最小２乗法により設定されたフィルタ係数ａ０，ａ１，…，ａＮのうち、値が閾値−ｃを下回るフィルタ係数ａｍはｃｍ＝−ｃにクリップし、値が閾値ｃを上回るフィルタ係数ａｍはｃｍ＝ｃにクリップする。ここで、ｃは、正の定数であり、例えば２である。
【００５８】
このようなクリップ処理を施すのは、絶対値が大きなフィルタ係数を符号化するためには、符号長の長い符号を用いる必要があり、符号化効率が低下してしまうからである。また、大きすぎるフィルタ係数は、画質を劣化させる虞があるからである。ところが、このようなクリップ処理によって、フィルタ係数の最適性が損なわれる。つまり、適応フィルタ１２２から出力される復号画像Ｄｅｃ”は、ａｍ＝ｃｍという条件下で原画像Ｏｒｇを最良近似するものではなくなる。そこで、２回目の最小２乗法により、クリップ処理により損なわれた最適性を部分的に回復する。
【００５９】
すなわち、２回目の最小２乗法により、クリップされた各フィルタ係数ａｍがａｍ＝ｃｍを満たすという拘束条件の下で、Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２を最小化するよう、フィルタ係数ａ０，ａ１，…，ａＮの値を設定する。Σは、（ｘ，ｙ）∈Ｕ（フィルタ係数設定単位）に関する和である。換言すれば、Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２＋Σｍ∈ＢＩＮＤλ｜ａｍ−ｃｍ｜２を最小化するよう、フィルタ係数ａ０，ａ１，…，ａＮの値を設定する。ここで、λは、未定定数であり、十分大きな値に設定しておけばよい。また、ＢＩＮＤは、拘束をかける成分を指定するインデックスの集合であり、ここではクリップされた係数の集合を意味する。
【００６０】
なお、Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２＋Σｍ∈ＢＩＮＤλ｜ａｍ−ｃｍ｜２を最小化するフィルタ係数ａ０，ａ１，…，ａＮは、正規方程式（５）を解くことにより得られる。ここで、相関行列Ｍ’は、（２）式により定義される相関行列Ｍのｍｍ成分ＭｍｍをＭｍｍ＋λに置き換えて得られる行列であり、相関行列（ベクトル）Ｖ’は、（３）式により定義される相関行列（ベクトル）Ｖのｍ成分をＶｍ＋λｃｍに置き換えて得られる行列（ベクトル）である。
【００６１】
【数５】
2012065120.tif 000007
【００６２】
２回目の最小２乗法により、適応フィルタ１２２から出力される復号画像Ｄｅｃ”は、ａｍ＝ｃｍという条件下で原画像Ｏｒｇを最良近似するものとなる。すなわち、クリップ処理により損なわれた最適性が少なくとも部分的に回復される。これにより、クリップ処理を施さない場合に生じるデメリットを回避しつつ、符号化効率を向上させることができる。
【００６３】
フィルタ係数設定部１２３は、このようにして設定したフィルタ係数ａ０，ａ１，…，ａＮの値をフィルタ係数保存部１２４に保存する。上述した適応フィルタ１２２は、フィルタ係数保存部１２４に保存されたフィルタ係数ａ０，ａ１，…，ａＮを、復号画像Ｄｅｃ”の画素値Ｄｅｃ”（ｘ，ｙ）を導出するために利用する。
【００６４】
なお、本実施形態においては、適応フィルタ１２２をデブロッキング処理後の復号画像Ｄｅｃ’に作用させているが、本発明はこれに限定されない。すなわち、適応フィルタ１２２をデブロッキング処理前の復号画像Ｄｅｃに作用させてもよい。また、デブロッキングフィルタ１２１を省略する構成を採用してもよい。
【００６５】
（フィルタ係数設定部の詳細）
次に、図１に示すループフィルタ部１２０が備えているフィルタ係数設定部１２３の構成例について、図３および図４を参照して説明する。図３は、フィルタ係数設定部１２３の構成例を示すブロック図であり、図４は、フィルタ係数設定部１２３におけるフィルタ係数設定処理の構成例を示すフローチャートである。
【００６６】
フィルタ係数設定部１２３は、図３に示すように、相関行列算出部１２３ａ、相関行列保存部１２３ｂ、最小２乗解算出部１２３ｃ、クリップ部１２３ｄ、拘束条件設定部１２３ｅ、および、量子化部１２３ｆを備えている。フィルタ係数設定部１２３の各部の動作について、図４を参照して説明すれば以下のとおりである。
【００６７】
ステップＳ１：相関行列算出部１２３ａが、相関行列ＭおよびＶを算出する。算出すべき相関行列ＭおよびＶは、それぞれ、上述した（２）および（３）式により定義されるものである。
【００６８】
ステップＳ２：ステップＳ１にて算出した相関行列ＭおよびＶを相関行列保存部１２３ｂに保存する。
【００６９】
ステップＳ３：最小２乗解算出部１２３ｃが、相関行列保存部１２３ｂに保存されている相関行列ＭおよびＶに関する正規方程式（４）を解き、ベクトルθ＝（ａ０，ａ１，…，ａＮ）を得る。このステップが、上述した１回目の最小２乗法に対応する。最小２乗解算出部１２３ｃは、得られたベクトルθ＝（ａ０，ａ１，…，ａＮ）をクリップ部１２３ｄに提供する。
【００７０】
ステップＳ４：ステップＳ３にて得られたベクトルθの各成分（フィルタ係数ａ０，ａ１，…，ａＮの各値）に対して、クリップ部１２３ｄがクリップ処理を施す。具体的には、ａｍ＜−ｃであれば、フィルタ係数ａｍをｃｍ＝−ｃに設定し、ａｍ＞ｃであれば、フィルタ係数ａｍをｃｍ＝ｃに設定する。クリップ部１２３ｄは、どのフィルタ係数（ｍ）をどの値（ｃm）にクリップしたかを示すクリップ情報を拘束条件設定部１２３ｅに提供する。
【００７１】
ステップＳ５：拘束条件設定部１２３ｅが、クリップ部１２３ｄから提供されたクリップ情報に基づいて、相関行列保存部１２３ｂに保存されている相関行列ＭおよびＶを書き変える。具体的には、フィルタ係数ａｍが値ｃｍにクリップされた場合、相関行列保存部１２３ｂに保存されている相関行列Ｍのｍｍ成分ＭｍｍをＭｍｍ＋λに書き換え、相関行列保存部１２３ｂに保存されている相関行列（ベクトル）Ｖのｍ成分Ｖｍを（Ｖｍ＋λｃm）に書き換える。複数のフィルタ係数ａｍがクリップされた場合には、各々に対応する書き換えを行う。
【００７２】
ステップＳ６：最小２乗解算出部１２３ｃが相関行列保存部１２３ｂに保存されている相関行列Ｍ’およびＶ’に関する正規方程式（５）を解き、ベクトルθ’＝（ａ０，ａ１，…，ａＮ）を得る。このステップが、上述した２回目の最小２乗法に対応する。最小２乗解算出部１２３ｃは、得られたベクトルθ’＝（ａ０，ａ１，…，ａＮ）をクリップ部１２３ｄに提供する。
【００７３】
ステップＳ７：ステップＳ６にて得られたベクトルθ’の各成分（フィルタ係数ａ０，ａ１，…，ａＮの各々）に対して、クリップ部１２３ｄがクリップ処理を施す。クリップ処理の内容は、スッテプＳ４と同様である。クリップ部１２３は、クリップ処理済みのフィルタ係数ａ０，ａ１，…，ａＮを、量子化部１２３ｆに提供する。
【００７４】
ステップＳ８：量子化部１２３ｆが、クリップ処理済みのフィルタ係数ａ０，ａ１，…，ａＮを量子化し、フィルタ係数保存部１２４に格納する。
【００７５】
図４に示したアルゴリズムにおいては、正規方程式（５）に現れる相関行列Ｍ’およびＶ’の各成分を、正規方程式（４）に現れる相関行列ＭおよびＶから流用している。このため、正規方程式（５）に現れる相関行列Ｍ’およびＶ’の各成分を新たに算出および保存する場合に比べて、計算時間およびメモリ使用量を削減することができる。
【００７６】
なお、ここでは、相関方程式を必ず２回解くアルゴリズムについて説明したが、これに限定されない。例えば、ステップＳ３にて得られたベクトルθの全ての成分が−ｃ以上＋ｃ以下であれば、ステップＳ４〜Ｓ７までをスキップして、ステップＳ３にて得られたベクトルθを直ちに量子化するようにしてもよい。また、ステップＳ７にて新たにクリップされるフィルタ係数がなくなるまで、ステップＳ５〜ステップＳ７を繰り返し実行するようにしてもよい。
【００７７】
図３および図４においては、クリップされたフィルタ係数ａｍをクリップ後の値ｃｍに拘束し、２回目の最小２乗法によって他のフィルタ係数ａｋ（ｋ≠ｍ）の値を調整する構成について説明したが、本発明はこれに限定されない。すなわち、拘束するフィルタ係数ａｍと拘束する値ｃｍとを変更することにより、各種目的に応じたフィルタ係数の最適化を実現することができる。以下、このような変形例について説明する。
【００７８】
（変形例１）
フィルタ係数ａ０，ａ１，…，ａＮは、量子化／逆量子化したうえで利用される。量子化は非可逆過程であるため、量子化／逆量子化によってフィルタ係数の最適性が損なわれる。量子化ステップを小さくすれば、量子化の非可逆性に伴う量子化誤差は小さくなるが、量子化ステップを小さくすると、フィルタパラメータＦＰの符号量が増大してしまう。このため、量子化ステップの大きさは、通常、フィルタ係数が８ビット程度になるように設定される。この場合、フィルタ係数の最適性が損なわれることに起因して無視できない程度に符号化効率が低下する可能性がある。
【００７９】
本変形例は、非拘束フィルタ係数として予め定められたフィルタ係数ａｋ以外のフィルタ係数ａｍ（ｍ≠ｋ）をクリップ／量子化／逆量子化後の値ｃｍに拘束し、２回目の最小２乗法によって非拘束フィルタ係数として予め定められたフィルタ係数ａｋの値を調整することによって、量子化によって損なわれたフィルタ係数の最適性を回復するものである。
【００８０】
図５は、フィルタ係数設定部１２３の構成例を示すブロック図であり、図６は、フィルタ係数設定部１２３におけるフィルタ係数設定処理の構成例を示すフローチャートである。
【００８１】
フィルタ係数設定部１２３は、図５に示すように、相関行列算出部１２３ａ、相関行列保存部１２３ｂ、最小２乗解算出部１２３ｃ、クリップ部１２３d、拘束条件設定部１２３ｅ、量子化部１２３ｆ、および、逆量子化部１２３ｇを備えている。すなわち、図５に示すフィルタ係数設定部１２３は、逆量子化部１２３ｇが追加されている点で、図３に示すフィルタ係数設定部１２３と異なる。
【００８２】
フィルタ係数設定部１２３の各部の動作について、図６を参照して説明すれば以下のとおりである。
【００８３】
ステップＳ１：相関行列算出部１２３ａが、相関行列ＭおよびＶを算出する。算出すべき相関行列ＭおよびＶは、それぞれ、上述した（２）および（３）式により定義されるものである。
【００８４】
ステップＳ２：ステップＳ１にて算出した相関行列ＭおよびＶを相関行列保存部１２３ｂに保存する。
【００８５】
ステップＳ３：最小２乗解算出部１２３ｃが、相関行列保存部１２３ｂに保存されている相関行列ＭおよびＶに関する正規方程式（４）を解き、ベクトルθ＝（ａ０，ａ１，…，ａＮ）を得る。最小２乗解算出部１２３ｃは、得られたベクトルθ＝（ａ０，ａ１，…，ａＮ）をクリップ部１２３ｄに提供する。
【００８６】
ステップＳ４：ステップＳ３にて得られたベクトルθの各成分（フィルタ係数ａ０，ａ１，…，ａＮの各値）に対して、クリップ部１２３ｄがクリップ処理を施す。具体的には、ａｍ＜−ｃであれば、フィルタ係数ａｍをｃｍ＝−ｃに設定し、ａｍ＞ｃであれば、フィルタ係数ａｍをｃｍ＝ｃに設定する。クリップ部１２３は、クリップ処理済みのフィルタ係数ａ０，ａ１，…，ａＮを量子化部１２３ｆに提供する。
【００８７】
ステップＳ１１：量子化部１２３ｆが、クリップ処理済みのフィルタ係数ａ０，ａ１，…，ａＮの各々を量子化する。フィルタ係数ａｉを量子化するとは、量子化されたフィルタ係数ａ’ｉ＝［ａｉ／δ］を導出することを指す。ここで、δは、量子化ステップを表し、［・］は、・を超えない最大の整数値を表す。例えば、量子化ステップδを２ｃ／２５６（２ｃはクリップ済みのフィルタ係数のダイナミックレンジ）に設定すれば、量子化されたフィルタ係数ａ’０，ａ’１，…，ａ’Ｎは、８ビットの整数になる。量子化部１２３ｆは、量子化されたフィルタ係数ａ’０，ａ’１，…，ａ’Ｎを逆量子化部１２３ｇに提供する。
【００８８】
ステップＳ１２：逆量子化部１２３ｇが、量子化されたフィルタ係数ａ’０，ａ’１，…，ａ’Ｎの各々を逆量子化する。量子化されたフィルタ係数ａ’ｉを逆量子化するとは、逆量子化されたフィルタ係数ｃi＝ａ’ｉ×δを導出することを指す。ここで、δは、量子化の際に用いられた量子化ステップδと同じものである。なお、量子化の際に剰余の切捨てが行なわれているため、［ａｉ／δ］＝ａｉ／δとなる例外的なケースを除いてａｉ≠ｃiである。逆量子化部１２３ｇは、逆量子化されたフィルタ係数ｃ０，ｃ１，…，ｃＮを拘束条件設定部１２３ｅに提供する。
【００８９】
ステップＳ１３：拘束条件設定部１２３ｅが、逆量子化されたフィルタ係数ｃ０，ｃ１，…，ｃＮに基づいて、相関行列保存部１２３ｂに保存されている相関行列ＭおよびＶを書き変える。具体的には、予め定められたフィルタ係数ａｋ以外のフィルタ係数ａｍ（ｍ≠ｋ）をクリップ／量子化／逆量子化後の値ｃｍに拘束するために、ｍ≠ｋとなる各ｍについて、相関行列保存部１２３ｂに保存されている相関行列Ｍのｍｍ成分Ｍｍｍを（Ｍｍｍ＋λ）に書き換え、相関行列保存部１２３ｂに保存されている相関行列（ベクトル）Ｖのｍ成分Ｖｍを（Ｖｍ＋λｃｍ）に書き換える。
【００９０】
ステップＳ６：最小２乗解算出部１２３ｃが、相関行列保存部１２３ｂに保存されている相関行列Ｍ’およびＶ’に関する正規方程式（５）を解き、ベクトルθ’＝（ａ０，ａ１，…，ａＮ）を得る。最小２乗解算出部１２３ｃは、得られたベクトルθ’＝（ａ０，ａ１，…，ａＮ）をクリップ部１２３ｄに提供する。
【００９１】
ステップＳ７：ステップＳ６にて得られたベクトルθ’の各成分（フィルタ係数ａ０，ａ１，…，ａＮの各々）に対して、クリップ部１２３ｄがクリップ処理を施す。クリップ処理の内容は、スッテプＳ４と同様である。クリップ部１２３は、クリップ処理済みのフィルタ係数ａ０，ａ１，…，ａＮを、量子化部１２３ｆに提供する。
【００９２】
ステップＳ８：量子化部１２３ｆが、クリップ処理済みのフィルタ係数ａ０，ａ１，…，ａＮを量子化し、フィルタ係数保存部１２４に格納する。
【００９３】
なお、量子化部１２３ｆは、（１）量子化されたフィルタ係数が５ビットになるように、（２）量子化されたフィルタ係数が８ビットになるように、あるいは、（３）量子化されたフィルタ係数のうち精度の要求されるもの（例えば参照領域Ｒの中心画素の画素値に係る係数である中心係数およびオフセット）は８ビットになり、かつ、それ以外のものは５ビットになるように、クリップ処理済みのフィルタ係数ａ０，ａ１，…，ａＮを量子化する。
【００９４】
なお、非拘束にするフィルタ係数の個数は、特に限定されないが、例えば、２個である。オフセットａＮと中心係数ａＮ−１（参照領域Ｒの中心画素の画素値に係る係数）とを非拘束にした場合、非拘束にするフィルタ係数の個数が２個であっても、符号化効率が向上するという効果が実験により確かめられている。
【００９５】
（変形例２）
適応フィルタ１２２を、復号画像Ｄｅｃ’を入力とする１入力構成から、復号画像Ｄｅｃと復号画像Ｄｅｃ’とを入力とする２入力構成に置き換えることができる。このような置き換えがなされたループフィルタ部１２０の構成を図７に示す。
【００９６】
図７に示すループフィルタ部１２０においては、デブロッキングフィルタ１２１を作用させる前の復号画像Ｄｅｃとデブロッキングフィルタ１２１を作用させた後の復号画像Ｄｅｃ’とが適応フィルタ１２２に入力されている。この場合、適応フィルタ１２２から出力される復号画像Ｄｅｃ”の画素値Ｄｅｃ”（ｘ，ｙ）は、Ｄｅｃ”（ｘ，ｙ）＝Σａｉ×Ｄｅｃｉ（ｘ，ｙ）＋Σａｊ×Ｄｅｃ’ｊ（ｘ，ｙ）＋ａ２Ｎと表せる。
【００９７】
ここで、右辺第１項に現れる｛Ｄｅｃ０（ｘ，ｙ），Ｄｅｃ１（ｘ，ｙ），…，ＤｅｃＮ−１（ｘ，ｙ）｝は、画素値Ｄｅｃ”（ｘ，ｙ）を導出するために適応フィルタ１２２が参照する復号画像Ｄｅｃの画素値の集合であり、右辺第２項に現れる｛Ｄｅｃ’Ｎ（ｘ，ｙ），Ｄｅｃ’Ｎ＋１（ｘ，ｙ），…，Ｄｅｃ’２Ｎ−１（ｘ，ｙ）｝は、画素値Ｄｅｃ”（ｘ，ｙ）を導出するために適応フィルタ１２２が参照する復号画像Ｄｅｃ’の画素値の集合である。なお、右辺第１項のΣは、ｉ＝０からＮ−１までの和であり、右辺第２項のΣは、ｊ＝Ｎから２Ｎ−１までの和である。
【００９８】
フィルタ係数設定部１２３は、オフセットａ２Ｎを含めて２Ｎ＋１個あるフィルタ係数の値を、特定の拘束条件の下でΣ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２を最小化するよう設定する。Σは、（ｘ，ｙ）∈Ｕ（フィルタ係数設定単位）に関する和である。設定すべきフィルタ係数の数が増えているだけで、フィルタ係数設定方法の基本に変わるところはない。
【００９９】
このような構成を採用する場合、デブロッキングフィルタ１２１を作用させた後の復号画像Ｄｅｃ’の中心画素に係るフィルタ係数ａ２Ｎ−１が主観画質を左右することが実験的に確かめられている。より具体的に言うと、フィルタ係数ａ２Ｎ−１が０．８未満であると、視聴者は「画質が悪い」と判断する傾向がある。とくに、フィルタ係数ａ２Ｎ−１が０．８未満であるループフィルタ部１２０をイントラフレームに作用させた場合、この傾向が顕著である。また、量子化ステップＱＰが大きければ大きいほど、この傾向が顕著になる。
【０１００】
このような主観画質の低下を回避するためには、クリップされたフィルタ係数ａｍをクリップ後の値ｃｍに拘束すると共に、復号画像Ｄｅｃ’の中心画素に係るフィルタ係数ａ２Ｎ−１の値を０．８以上の値に拘束し、２回目の最小２乗法によって他のフィルタ係数ａｋ（ｋ≠ｍ，２Ｎ−１）の値を調整する構成を採用すればよい。
【０１０１】
本変形例は、図３に示すフィルタ係数設定部１２３を、図８に示すフローチャートに従って動作させることによって実現することができる。本変形例におけるフィルタ係数設定部１２３の各部の動作について、図８を参照して説明すれば以下のとおりである。
【０１０２】
ステップＳ１：相関行列算出部１２３ａが、相関行列ＭおよびＶを算出する。算出すべき相関行列ＭおよびＶは、それぞれ、上述した（２）および（３）式により定義されるものである。
【０１０３】
ステップＳ２：ステップＳ１にて算出した相関行列ＭおよびＶを相関行列保存部１２３ｂに保存する。
【０１０４】
ステップＳ３：最小２乗解算出部１２３ｃが、相関行列保存部１２３ｂに保存されている相関行列ＭおよびＶに関する正規方程式（４）を解き、ベクトルθ＝（ａ０，ａ１，…，ａ２Ｎ）を得る。このステップが、上述した１回目の最小２乗法に対応する。最小２乗解算出部１２３ｃは、得られたベクトルθ＝（ａ０，ａ１，…，ａ２Ｎ）をクリップ部１２３ｄに提供する。
【０１０５】
ステップＳ４：ステップＳ３にて得られたベクトルθの各成分（フィルタ係数ａ０，ａ１，…，ａ２Ｎの各値）に対して、クリップ部１２３ｄがクリップ処理を施す。具体的には、ａｍ＜−ｃであれば、フィルタ係数ａｍをｃｍ＝−ｃに設定し、ａｍ＞ｃであれば、フィルタ係数ａｍをｃｍ＝ｃに設定する。クリップ部１２３ｄは、どのフィルタ係数（ｍ）をどの値（ｃm）にクリップしたかを示すクリップ情報を拘束条件設定部１２３ｅに提供する。
【０１０６】
ステップＳ５：拘束条件設定部１２３ｅが、クリップ部１２３ｄから提供されたクリップ情報に基づいて、相関行列保存部１２３ｂに保存されている相関行列ＭおよびＶを書き変える。具体的には、フィルタ係数ａｍが値ｃｍにクリップされた場合、相関行列保存部１２３ｂに保存されている相関行列Ｍのｍｍ成分ＭｍｍをＭｍｍ＋λに書き換え、相関行列保存部１２３ｂに保存されている相関行列（ベクトル）Ｖのｍ成分Ｖｍを（Ｖｍ＋λｃm）に書き換える。複数のフィルタ係数ａｍがクリップされた場合には、各々に対応する書き換えを行う。
【０１０７】
ステップＳ２１：更に、拘束条件設定部１２３ｅは、ａ２Ｎ-１＜０．８であれば、相関行列保存部１２３ｂに保存されている相関行列Ｍの（２Ｎ−１，２Ｎ−１）成分Ｍ２Ｎ-１，２Ｎ−１をＭ２Ｎ-１，２Ｎ−１＋λに書き換え、相関行列保存部１２３ｂに保存されている相関行列（ベクトル）Ｖの２Ｎ-１成分Ｖ２Ｎ-１を（Ｖ２Ｎ-１＋λ×０．８）に書き換える。ａ２Ｎ-１≧０．８であれば、相関行列ＭおよびＶの書き替えを行わない。
【０１０８】
ステップＳ６：最小２乗解算出部１２３ｃが相関行列保存部１２３ｂに保存されている相関行列Ｍ’およびＶ’に関する正規方程式（５）を解き、ベクトルθ’＝（ａ０，ａ１，…，ａ２Ｎ）を得る。このステップが、上述した２回目の最小２乗法に対応する。最小２乗解算出部１２３ｃは、得られたベクトルθ’＝（ａ０，ａ１，…，ａ２Ｎ）をクリップ部１２３ｄに提供する。
【０１０９】
ステップＳ７：ステップＳ６にて得られたベクトルθ’の各成分（フィルタ係数ａ０，ａ１，…，ａ２Ｎの各々）に対して、クリップ部１２３ｄがクリップ処理を施す。クリップ処理の内容は、スッテプＳ４と同様である。クリップ部１２３は、クリップ処理済みのフィルタ係数ａ０，ａ１，…，ａ２Ｎを、量子化部１２３ｆに提供する。
【０１１０】
ステップＳ８：量子化部１２３ｆが、クリップ処理済みのフィルタ係数ａ０，ａ１，…，ａ２Ｎを量子化し、フィルタ係数保存部１２４に格納する。
【０１１１】
なお、ここでは、復号画像Ｄｅｃ’の中心画素に係るフィルタ係数ａ２Ｎ−１の値を常に０．８以上に拘束する構成について説明したが、これに限定されるものではない。例えば、対象フレームがイントラフレームである場合に限って、あるいは、量子化ステップ（又は量子化パラメータ）が予め定められた閾値以上である場合に限って、フィルタ係数ａ２Ｎ−１の値を常に０．８以上に拘束する構成を採用してもよい。主観画質の顕著な低下が生じるのは、対処フレームがイントラフレームである場合、あるいは、量子化ステップ（又は量子化パラメータ）が大きいときに限られるからである。また、ここでは拘束値として０．８を用いたが、拘束値として１以下の他の値を用いてもよい。また、拘束値が可変である場合には、拘束値を量子化ステップに応じて（より具体的には、量子化ステップが大きくなるほど拘束値が大きくなるように）設定するとよい。
【０１１２】
（応用例）
非特許文献２に記載のＡＬＦでは、適応フィルタのタップ数を適応的に増減させる構成が採用されている。これは、タップ数を増やして予測画像の精度を高くした方が符号化効率の向上が期待できる場合と、タップ数を減らして符号化データに含めるフィルタ係数の個数を少なくした方が符号化効率の向上が期待できる場合とがあるためである。しかしながら、適応フィルタのタップ数を適応的に増減させる構成が採用する場合、タップ数を変更する度に変更後のタップ数に応じた相関行列を生成することになるので、演算能力の低い動画像符号化装置への実装が困難であるという問題があった。
【０１１３】
上述したフィルタ係数設定方法を応用すれば、そのつど相関行列を生成し直すことなくタップ数を変更することができる。Ｔｍａｘタップの適応フィルタ１２２のフィルタ係数を設定する際に生成した相関行列ＭおよびＶを、Ｔタップ（Ｔ＜Ｔｍａｘ）の適応フィルタ１２２のフィルタ係数を設定する際に流用することができるからである。
【０１１４】
例えば、９タップの適応フィルタ１２２は、図１１（ａ）に示すように、オフセットを除いて８１個のフィルタ係数ａ０，ａ１，…，ａ80をもつ。これらのフィルタ係数ａ０，ａ１，…，ａ80は、相関行列ＭおよびＶを用いて、Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２を最小化するように設定されたものである。
【０１１５】
例えば、タップ数を９から７に変更する場合、９タップの適応フィルタ１２２のフィルタ係数ａ０，ａ１，…，ａ80のうち、図１１（ａ）において最外周に配置された３２個のフィルタ係数を除く４９個のフィルタ係数を、７タップの適応フィルタ１２２のフィルタ係数であると見做す。そして、タップ数を９から７に変更するときには、最外周に配置された３２個のフィルタ係数を０に拘束したうえで、これらのフィルタ係数を除く４９個のフィルタ係数を、Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２を最小化するように設定する。
【０１１６】
これら４９個のフィルタ係数を設定する際に必要となる処理は、相関行列Ｍの３２個の対角成分を書き換える処理と、正規方程式（５）を解く処理とである。したがって、新たに４９×４９個の要素をもつ相関行列を生成する場合と比べて、演算量を格段に減らすことができる。なお、相関行列Ｖの更新は不要である。なぜなら、更新すべき値が０だからである。
【０１１７】
また、タップ数を９から５に変更する場合、９タップの適応フィルタ１２２のフィルタ係数ａ０，ａ１，…，ａ80のうち、図１１（ｂ）において最外周に配置された３２個のフィルタ係数と最外周の内側に配置された２４個のフィルタ係数とを除く２５個のフィルタ係数を、５タップの適応フィルタ１２２のフィルタ係数であると見做す。そして、タップ数を９から５に変更するときには、最外周に配置された３２個のフィルタ係数と最外周の内側に配置された２４個のフィルタ係数とを０に拘束したうえで、これらのフィルタ係数を除く２５個のフィルタ係数を、Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２を最小化するように設定する。
【０１１８】
これら４９個のフィルタ係数を設定する際に必要となる処理は、相関行列Ｍの５６個の対角成分を書き換える処理と、正規方程式（５）を解く処理とである。したがって、新たに２５×２５個の要素をもつ相関行列を生成する場合と比べて、演算量を格段に減らすことができる。なお、相関行列Ｖの更新は不要である。なぜなら、更新すべき値が０だからである。
【０１１９】
なお、ここでは、フィルタ係数の対称性を考慮せずに全てのフィルタ係数を設定する構成について説明したが、これに限定されるものではない。例えば、９タップの適応フィルタ１２２が回転対称性（ａｉ＝ａ８０−ｉ）をもつ場合には、図１１（ｃ）に示すように、オフセットを除いて４１個のフィルタ係数ａ０，ａ１，…，ａ４０を設定すればよい。
【０１２０】
タップ数を９から７に変更する場合、９タップの適応フィルタ１２２のフィルタ係数ａ０，ａ１，…，ａ４０のうち、図１１（ｃ）において最外周（下辺を除く）に配置された１６個のフィルタ係数を除く２５個のフィルタ係数を、７タップの適応フィルタ１２２のフィルタ係数であると見做す。そして、タップ数を９から７に変更するときには、最外周に配置された１６個のフィルタ係数を０に拘束したうえで、これらのフィルタ係数を除く２５個のフィルタ係数を、Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２を最小化するように設定する。タップ数を９から５に減らす場合も同様である。
【０１２１】
図１２は、本応用例に適したフィルタ係数設定部１２３の構成例を示すブロック図である。図１２に示すフィルタ係数設定部１２３は、相関行列算出部１２３ａ、相関行列保存部１２３ｂ、最小２乗解算出部１２３ｃ、クリップ部１２３d、拘束条件設定部１２３ｅ、量子化部１２３ｆを備えている。
【０１２２】
図１２に示すフィルタ係数設定部１２３は、適応フィルタ１２２のタップ数を指定するタップ数指定情報を拘束条件設定部１２３ｅに入力できるようになっている点で、図３に示すフィルタ係数設定部１２３と異なる。タップ数指定情報の供給源は特に限定されないが、例えば、符号化方法を制御する符号化方法制御部を動画像符号化装置２が備えている場合には、これをタップ数指定情報の供給源とするとよい。
【０１２３】
この場合、符号化方法制御部は、まず、最大タップ数Ｔｍａｘを指定するタップ数指定情報を渡すことによって、Ｔｍａｘタップの適応フィルタ１２２のフィルタ係数ａ０，ａ１，…，ａＴmax×Ｔmaxを設定するよう、フィルタ係数設定部１２３に指示する。この指示を受けたフィルタ係数設定部１２３は、（１ａ）相関行列算出部１２３ａにて相関行列ＭおよびＶを算出し、（２ａ）相関行列ＭおよびＶを相関行列保存部１２３ｂに保存し、（３ａ）最小２乗解算出部１２３ｃにて相関行列ＭおよびＶに関する正規方程式を解き、（４ａ）クリップ部１２３ｄにてフィルタ係数ａ０，ａ１，…，ａＴmax×Ｔmaxをクリップし、（５ａ）量子化部１２３ｆにてフィルタ係数ａ０，ａ１，…，ａＴmax×Ｔmaxを量子化する。
【０１２４】
続いて、符号化方法制御部は、最大タップ数Ｔｍａｘよりも小さいタップ数Ｔを指定するタップ数指定情報を渡すことによって、Ｔタップの適応フィルタ１２２のフィルタ係数ａ０，ａ１，…，ａＴ×Ｔを設定するよう、フィルタ係数設定部１２３に指示する。この指示を受けたフィルタ係数設定部１２３は、（１ｂ）拘束条件設定部１２３ｅにより相関行列ＭをＭ’に更新し、（２ｂ）最小２乗解算出部１２３ｃにて相関行列Ｍ’およびＶに関する正規方程式を解き、（３ｂ）クリップ部１２３ｄにてフィルタ係数ａ０，ａ１，…，ａＴ×Ｔをクリップし、（４ｂ）量子化部１２３ｆにてフィルタ係数ａ０，ａ１，…，ａＴ×Ｔを量子化する。
【０１２５】
なお、上記の手順に、図３、図５を用いて説明したフィルタ係数の拘束を組み合わせることが可能である。すなわち、（１ｂ）において、（４ａ）でクリップされたフィルタ係数、および／または、（５ａ）で量子化されたフィルタ係数を拘束したうえで、拘束条件設定部１２３ｅにより相関行列ＭをＭ’に更新する処理を行ってもよい。
【０１２６】
（最小２乗解算出部の詳細）
最後に、最小２乗解算出部１２３ｃの詳細について、図１３を参照して説明する。図１３（ａ）は、基本的な最小２乗解算出部１２３ｃの構成を示すブロック図であり、図１３（ｂ）は、改良された最小２乗解算出部１２３ｃの構成を示すブロック図である。
【０１２７】
図１３（ａ）に示す最小２乗解算出部１２３ｃは、１回目の最小２乗法において、２乗誤差Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２を最小化するフィルタ係数ａ０，ａ１，…，ａＮを得るために、行列解算出部１２３０にて正規方程式（４）をθについて解く。また、２回目の最小２乗法において、２乗誤差Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２＋Σｍ∈ＢＩＮＤλ｜ａｍ−ｃｍ｜２を最小化するフィルタ係数ａ０，ａ１，…，ａＮを得るために、行列解算出部１２３０にて正規方程式（５）をθについて解く。ここで、正規方程式（４）および（５）を解くためのアルゴリズムとしては、例えば、ガウスの消去法やＬＵ分解法を用いることができる。なお、相関行列Ｍに逆行列が存在しない場合など、解が算出できない場合には、中心係数を１、それ以外のフィルタ係数を０に設定する。すなわち、フィルタ係数ａｉ＝１（ｉ＝Ｎ−１）、ａｉ＝０（ｉ＝それ以外）とする。
【０１２８】
図１３（ｂ）に示す最小２乗解算出部１２３ｃは、２乗誤差Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２を最小化するフィルタ係数ａ０，ａ１，…，ａＮを求める代わりに、正則化項Σi∈REG λreg｜ａi｜２を加えた、Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２＋Σi∈REGλreg｜ａi｜２を最小化するフィルタ係数ａ０，ａ１，…，ａＮを求める。また、２乗誤差Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２＋Σｍ∈ＢＩＮＤλ｜ａｍ−ｃｍ｜２を最小化するフィルタ係数ａ０，ａ１，…，ａＮを求める代わりに、正則化項Σi∈REGλreg｜ａi｜２を加えた、Σ｜Ｏｒｇ（ｘ，ｙ）−Ｄｅｃ”（ｘ，ｙ）｜２＋Σｍ∈ＢＩＮＤλ｜ａｍ−ｃｍ｜２＋Σi∈REGλreg｜ａi｜２を最小化するフィルタ係数ａ０，ａ１，…，ａＮを求める。つまり、２回の最小２乗法の代わりに２回の正則化最小２乗法を適用することによって、フィルタ係数ａ０，ａ１，…，ａＮの最適化を図る。なお、ＲＥＧは、正則化をかける成分を指定するインデックスの集合を意味する。ここでは、中心係数ａＮ−１およびオフセットａＮ以外の成分に正則化をかけるものとする。つまり、集合ＲＥＧ＝｛０，１，…，Ｎ−２｝とする。なお、変形例２のように中心係数が複数存在する場合には、１つの中心係数とオフセット以外の成分に正則化をかける。例えば、変形例２では、デブロッキングフィルタ１２１に入力される復号画像Ｄｅｃの画素値の中心係数には正則化をかけ、デブロッキングフィルタ１２１から出力される復号画像Ｄｅｃ’には正則化をかけない。一方のみに正則化をかけることにより、中心係数同士が近く線形従属になる問題と正則化により２乗誤差が大きくなる問題を回避できる。
【０１２９】
このような動作を行うため、図１３（ｂ）に示す最小２乗解算出部１２３ｃは、行列解算出部１２３０に加え、正則化コスト算出部１２３１および正則化部１２３２を備えている。
【０１３０】
正則化コスト算出部１２３１は、相関行列Ｍの対角成分Ｍｍｍまたは相関行列（ベクトル）Ｖの成分Ｖｍの値を参照し、（６）式または（７）式に従って、正則化コストλregを定める。
【０１３１】
【数６】
2012065120.tif 000008
【０１３２】
【数７】
2012065120.tif 000009
【０１３３】
ここで、ｋは、予め定められた定数である。発明者の実験によると、ｋを１０−１６以上に設定したときに正則化の効果が生じ、ｋを１０−７以上10−９以下に設定したときに正則化の効果が最も高くなる。なお、（６）式および（７）式は、相関行列ＭおよびＶの各要素の値がほぼ等しいことを考慮して、相関行列ＭおよびＶの各要素の値をそれぞれ１つの成分で代表させているが、これに限定されるものではない。例えば、（６）式におけるＭooを、相関行列Ｍの各対角成分の他の代表値（例えば対角成分の平均値）に置き換えたり、（７）式におけるＶoを、相関行列（ベクトル）Ｖの各成分の他の代表値（例えば各成分の平均値）に置き換えたりしてもよい。
【０１３４】
正則化部１２３２は、正則化コスト算出部１２３１により算出された正則化コストλregを用いて、相関行列Ｍ（１回目の最小２乗法）およびＭ’（２回目の最小２乗法）を正規化する。例えば、１回目の最小２乗法においては、各ｉ∈｛０，１，…，Ｎ−２｝について、相関行列Ｍの対角成分Ｍi，iをＭi，i＋λregに置き換え、２回目の最小２乗法においては、各ｉ∈｛０，１，…，Ｎ−２｝について、相関行列Ｍ’の対角成分Ｍ’i，iをＭ’i，i＋λregに置き換える。行列解算出部１２３０は、１回目の最小２乗法においては、正則化された相関行列Ｍ（上記の置き換えが為された相関行列）を含む正規方程式（４）をθについて解き、２回目の最小２乗法においては、正則化された相関行列Ｍ’を含む正規方程式（５）をθについて解く。
【０１３５】
このように中心係数を除くフィルタ係数を０に近づけるような正則化を行うことによって、算出されるフィルタ係数が大きくなることを防ぐことができる。これによりフィルタ係数の符号量を抑えることができる。また、適応フィルタ１２２が参照する復号画像Ｄｅｃ’の画素値が互いに線形従属もしくはそれに近い場合には、相関行列Ｖの逆行列が定まらない問題が生じるが、正則化を行うことによって、このような問題の発生を回避することができる。特に、変形例２では、デブロッキングフィルタ１２１に入力される復号画像Ｄｅｃの画素値と、デブロッキングフィルタ１２１から出力される復号画像Ｄｅｃ’の画素値とが極めて近くなることがあることから、このような問題が生じやすい。また、１フレーム内で領域毎に異なるフィルタを用いる場合など、フィルタ係数設定単位Ｕが小さい領域となる場合にも、このような問題が生じやすい。
【０１３６】
正則化の強さの決定や、正則化の対象となるパラメータの選択は、適用する技術領域、目的毎に特有の方法を必要とする。特に画像符号化装置および画像復号装置における、適応フィルタに適用する場合においては、上述したように、１）相関行列Ｍの対角成分もしくは相関行列（ベクトル）Ｖの成分に比例するコストを用いること、２）中心係数にコストをかけないこと（中心係数が複数存在する場合には、１つの中心係数にはコストをかけないこと）が重要である。第１の条件によって、適応する画像や領域の大きさ（フィルタ係数設定単位Ｕ）によらずコストを算出することができるという効果が補償される。また、第２の条件から、一般に０に近くない中心係数の値を正則化で抑え込むことによって、２乗誤差が大きくなるという問題を避けることができる。なお、拘束条件設定部１２３ｅで拘束条件を設定する場合には、拘束条件を設定したフィルタ係数以外のフィルタ係数に正則化コストを加えることが好ましい。また２条件を満たせばオフセットに正則化をかけることも可能である。また、係数によらず固定のλregを用いる例を説明したが、（８）式、（９）式の従って係数（インデックスｉ）により異なるλiを用いることもできる。
【０１３７】
【数８】
2012065120.tif 000010
【０１３８】
【数９】
2012065120.tif 000011
【０１３９】
〔符号化データについて〕
次に、動画像符号化装置２によって生成される符号化データのデータ構造について、図９を参照して説明する。符号化データは、シーケンスレイヤ、ＧＯＰ（Group Of Pictures）レイヤ、ピクチャレイヤ、スライスレイヤ、及び、最大符号化単位（LCU:Largest Coding Unit）レイヤからなる階層構造を有している。
【０１４０】
符号化データにおけるピクチャレイヤ以下の階層の構造を図９に示す。図９（ａ）〜（ｇ）は、それぞれ、ピクチャレイヤＰ、スライスレイヤＳ、ＬＣＵレイヤＬＣＵ、ＬＣＵヘッダＬＣＵＨ、インター予測（画面間予測）パーティションの予測パラメータＰＰ、イントラ予測（画面内予測）パーティションの予測パラメータＰＰ、フィルタパラメータＦＰの構造を示す図である。
【０１４１】
（ピクチャレイヤ）
ピクチャレイヤＰは、対象ピクチャを復号するために動画像復号装置１（後述）が参照するデータの集合である。ピクチャレイヤＰは、図９（ａ）に示すように、ピクチャヘッダＰＨ、及び、スライスレイヤＳ1〜ＳNsを含んでいる（ＮsはピクチャレイヤＰに含まれるスライスレイヤの総数）。
【０１４２】
ピクチャヘッダＰＨには、対象ピクチャの復号方法を決定するために動画像復号装置１が参照する符号化パラメータ群が含まれている。例えば、動画像符号化装置２が符号化の際に用いた可変長符号化のモードを示す符号化モード情報（entoropy_coding_mode_flag）は、ピクチャヘッダＰＨに含まれる符号化パラメータの一例である。
【０１４３】
（スライスレイヤ）
ピクチャレイヤＰに含まれる各スライスレイヤＳは、対象スライスを復号するために動画像復号装置１が参照するデータの集合である。スライスレイヤＳは、図９（ｂ）に示すように、スライスヘッダＳＨ、及び、ＬＣＵレイヤＬＣＵ1〜ＬＣＵNc（ＮcはスライスＳに含まれるＬＣＵの総数）を含んでいる。
【０１４４】
スライスヘッダＳＨには、対象スライスの復号方法を決定するために動画像復号装置１が参照する符号化パラメータ群が含まれる。スライスタイプを指定するスライスタイプ指定情報（slice_type）は、スライスヘッダＳＨに含まれる符号化パラメータの一例である。また、スライスヘッダＳＨには、ループフィルタ部１２０によって設定されたフィルタ係数ａ０，ａ１，…，ａＮを表すフィルタパラメータＦＰが含まれる。
【０１４５】
なお、スライスタイプ指定情報により指定可能なスライスタイプとしては、（１）符号化の際にイントラ予測のみを用いるＩスライス、（２）符号化の際に単方向予測、又は、イントラ予測を用いるＰスライス、（３）符号化の際に単方向予測、双方向予測、又は、イントラ予測を用いるＢスライスなどが挙げられる。
【０１４６】
（ＬＣＵレイヤ）
スライスレイヤＳに含まれる各ＬＣＵレイヤＬＣＵは、対象ＬＣＵを復号するために動画像復号装置１が参照するデータの集合である。各ＬＣＵは、複数の符号化単位（CU:Coding Unit）に４分木分割される。各ＣＵのサイズは、符号化データのシーケンスパラメータセットＳＰＳに含まれる、ＬＣＵのサイズおよび階層深度（hierarchical depth）によって定められる。
【０１４７】
例えば、ＬＣＵのサイズが１２８×１２８画素であって、最大階層深度が５である場合には、当該ＬＣＵに含まれるＣＵは、５種類のサイズ、すなわち、１２８×１２８画素、６４×６４画素、３２×３２画素、１６×１６画素、および、８×８画素の何れかをとり得る。
【０１４８】
（予測単位（ＰＵ）について）
それ以上分割することができないＣＵ（ＣＵのリーフ）は予測単位（PU:Prediction Unit）として取り扱われる。各ＰＵについて、予測タイプ、および、パーティションへの分割（PU Splitting）が規定され、予測画像は、パーティション毎に生成される。また、予測タイプとしては、イントラ予測およびインター予測の何れか一方が選択可能であり、各ＰＵのパーティションへの分割は、当該ＰＵについて選択された予測タイプに応じて定められる。以下では、イントラ予測が適用されるＰＵをイントラＰＵとも呼称し、インター予測が適用されるＰＵをインターＰＵとも呼称する。
【０１４９】
イントラＰＵは、２Ｎ×２Ｎ画素、および、Ｎ×Ｎ画素の２種類のパーティションに分割することが可能である。一方で、インターＰＵは、２Ｎ×２Ｎ画素、２Ｎ×Ｎ画素、Ｎ×２Ｎ画素、およびＮ×Ｎ画素の４つの対称的分割（symmetric splittings）、並びに、２Ｎ×ｎＵ画素、２Ｎ×ｎＤ画素、ｎＬ×２Ｎ画素、およびｎＲ×２Ｎ画素の４つの非対称的分割（asymmetric splittings）により、合計８種類のパーティションに分割することが可能である。ここで、Ｎの具体的な値は、当該ＰＵが属するＣＵのサイズによって規定され、ｎＵ、ｎＤ、ｎＬ、および、ｎＲの具体的な値は、Ｎの値に応じて定められる。
【０１５０】
例えば、１２８×１２８画素のＣＵは、１２８×１２８画素、および、６４×６４画素のイントラ予測パーティションへ分割することが可能であると共に、１２８×１２８画素、１２８×６４画素、６４×１２８画素、６４×６４画素、１２８×３２画素、１２８×９６画素、３２×１２８画素、および、９６×１２８画素のインター予測パーティションへ分割することも可能である。
【０１５１】
（変換単位（ＴＵ）について）
また、それ以上分割することができないＣＵ（ＣＵのリーフ）は、１または複数の変換単位（TU:Transform Unit）へ分割することが可能である。ここで、変換単位とは、ＤＣＴ変換および量子化の単位である。ＣＵのリーフは、２分木分割により、ＴＵに分割される。ＴＵのとり得る最大のサイズ、および当該２分木分割の最大深度（maximum depth）を示す情報は、符号化データに含まれる。各ＴＵは、例えば、６４×６４画素から２×２画素までのサイズをとり得る。
【０１５２】
図９（ｃ）に示すように、ＬＣＵレイヤＬＣＵは、（１）スキップフラグＳＫＩＰ、（２）ＬＣＵヘッダＬＣＵＨ、（３）各パーティションに割り付けられた予測パラメータＰＰ1〜ＰＰNP、及び、（４）各ＴＵに割り付けられた量子化予測残差（上述した量子化予測残差Ｒｅｓ”を符号化したもの）ＱＤ1〜ＱＤNbを含んでいる。ここで、Ｎpは、対象ＬＣＵに含まれるパーティションの総数を表し、Ｎbは、対象ＬＣＵに含まれるＴＵの総数を表す。スキップフラグＳＫＩＰの値が１の場合、すなわち、対象ＬＣＵにスキップモードが適用されている場合、そのＬＣＵレイヤにおけるＬＣＵヘッダＬＣＵＨ、予測パラメータＰＰ1〜ＰＰNP、及び、量子化予測残差ＱＤ1〜ＱＤNbは省略される。
【０１５３】
（ＬＣＵヘッダ）
ＬＣＵヘッダＬＣＵＨには、対象ＬＣＵの復号方法を決定するために動画像復号装置１が参照する符号化パラメータが含まれる。具体的には、図９（ｄ）に示すように、対象ＬＣＵのＬＣＵタイプを指定するＬＣＵタイプ指定情報ＬＣＵＴ（mb_type）、符号化ブロックパターンを指定するＣＢＰ（coded_block_pattern）、量子化ステップの大きさを指定する量子化パラメータ差分Δｑｐ（mb_qp_delta）が含まれる。ＬＣＵタイプ指定情報ＬＣＵＴは、予測単位指定情報ＰＴと変換単位指定情報ＴＴとを含む。
【０１５４】
予測単位指定情報ＰＴは、対象ＬＣＵのパーティションへの分割パターン（すなわち、対象ＬＣＵに含まれる各パーティションのサイズ、及び、対象ＬＣＵ内での位置）と、動画像符号化装置２が各パーティションにおける予測画像を生成する際に用いた予測方法（Ｌ０単方向予測、Ｌ１単方向予測、双方向予測、イントラ予測など）を指定する。
【０１５５】
一方、変換単位指定情報ＴＴは、対象ＬＣＵのＴＵへの分割パターン（すなわち、対象ＬＣＵに含まれる各ＴＵのサイズ、及び、対象ＬＣＵ内での位置）を指定する。なお、以下では、ＴＵをブロックとも称する。
【０１５６】
量子化パラメータ差分Δｑｐは、対象ＬＣＵにおける量子化パラメータｑｐと、そのＬＣＵの直前に符号化されたＬＣＵにおける量子化パラメータｑｐ’との差分ｑｐ−ｑｐ’である。
【０１５７】
（量子化予測残差および予測パラメータ）
ＬＣＵレイヤＬＣＵに含まれる各量子化予測残差ＱＤnは、動画像符号化装置２が以下の処理１〜３を対象ブロックに施すことによって生成した符号化データである。処理１：符号化対象画像から予測画像を減算した予測残差をＤＣＴ変換（Discrete Cosine Transform）する。処理２：処理１にて得られたＤＣＴ係数を量子化する。処理３：処理２にて量子化されたＤＣＴ係数を可変長符号化する。上述した量子化パラメータｑｐは、動画像符号化装置２がＤＣＴ係数を量子化する際に用いた量子化ステップＱＰの大きさを表す（ＱＰ＝２qp/6）。
【０１５８】
ＬＣＵレイヤＬＣＵに含まれる予測パラメータＰＰのうち、インター予測によって予測画像が生成されるインター予測パーティションに関する予測パラメータＰＰは、図９（ｅ）に示すように、参照画像インデックスＲＩと、推定動きベクトルインデックスＰＭＶＩと、動きベクトル残差ＭＶＤとを含んでいる。
【０１５９】
ＬＣＵレイヤＬＣＵに含まれる予測パラメータＰＰのうち、イントラ予測によって予測画像が生成されるイントラ予測パーティションに関する予測パラメータＰＰは、図９（ｆ）に示すように、予測インデックスＰＩを含んでいる。ここで、予測インデックスＰＩは、対象パーティションについてのイントラ予測方法（予測モード）を指定するためのインデックスである。なお、符号化データを生成する動画像符号化装置２は、対象パーティションの周辺のパーティションの予測インデックスに基づいて、当該対象パーティションについての予測インデックスの推定値を算出し、当該推定値と当該対象パーティションについての予測インデックスとが同じであるか否かを示すフラグを符号化データに含める構成としてもよい。このような構成とすることにより、当該推定値と当該対象パーティションについての予測インデックスとが同じである場合には、当該対象パーティションについての予測インデックスの符号化を省略することができる。
【０１６０】
（フィルタパラメータＦＰ）
また、符号化データに含まれるスライスヘッダＳＨには、動画像符号化装置２のループフィルタ部１２０によって設定されたフィルタ係数ａ０，ａ１，…，ａＮを表すフィルタパラメータＦＰが含まれる。フィルタパラメータＦＰの構成について概略的に説明すれば以下の通りである。なお、フィルタパラメータＦＰの構成については、動画像復号装置１の説明において詳述する。
【０１６１】
フィルタパラメータＦＰには、動画像復号装置１の備えるループフィルタをスライス毎に制御するために参照されるフィルタ制御情報（入力画像指定情報）、および、フィルタ係数群１〜フィルタ係数群Ｎfが含まれる（Ｎfは、フィルタパラメータＦＰに含まれるフィルタ係数群の総数）。各フィルタ係数群は、フィルタ係数およびオフセットから構成される。ここで、各フィルタ係数およびオフセットは、そのまま符号化されていてもよいし、予測値との差分として符号化（予測符号化）されていてもよい。
【０１６２】
フィルタ制御情報は、動画像復号装置１の備えるループフィルタへの入力画像を指定するための情報である。なお、動画像復号装置１の備えるループフィルタは、復号画像のノイズを除去するためのデブロッキングフィルタ部を備えており、フィルタ制御情報には、このデブロッキングフィルタ部のオンオフを指定する情報も含まれる。
【０１６３】
また、フィルタ制御情報は、例えば、ループフィルタへの入力画像の組み合わせを指定する情報（ループフィルタモード）であってもよいし、複数の入力画像の各々について、ループフィルタに入力するか否かを指定するフラグより構成される情報であってもよい。また、入力画像の候補が複数存在する場合には、適応的フィルタ処理に恒常的に用いられるデフォルト入力画像を指定する情報、および、適応的フィルタ処理に追加的に用いられる追加入力画像を指定する情報を含む構成としてもよい。
【０１６４】
なお、フィルタ制御情報をスライスヘッダに含めずに、シーケンスについてのヘッダ情報であるシーケンスヘッダに含める構成とし、動画像復号装置１の備えるループフィルタをシーケンス毎に制御する構成としてもよい。この場合には、シーケンス全体に対して、ループフィルタへの入力画像の数が規定されるため、シーケンス全体の復号において、適応的フィルタ処理に用いられるメモリサイズを削減することができる。
【０１６５】
〔動画像復号装置について〕
次に、本実施形態に係る画像復号装置１について、図１０を参照して説明する。図１０は、動画像復号装置１の構成を示すブロック図である。
【０１６６】
動画像復号装置１は、図１０に示すように、可変長符号復号部１０１、逆量子化部１０２、逆変換部１０３、予測部１０４、加算部１０５、フレームメモリ１０６、および、ループフィルタ部１０７を備えている。ループフィルタ部１０７は、デブロッキングフィルタ１０７ａ、適応フィルタ１０７ｂ、および、フィルタ係数保存部１０７ｃを含む。
【０１６７】
動画像復号装置１は、動画像を構成する各フレームを変換単位ＴＵ毎に復号する。動画像復号装置１の各部が１の変換単位ＴＵを復号する際の動作について、図１０を参照して説明すれば以下のとおりである。
【０１６８】
可変長符号復号部１０１は、符号化データから量子化予測残差Ｒｅｓ”を復号し、得られた量子化予測残差Ｒｅｓ”を逆量子化部１０２に供給する。また、符号化データから予測パラメータＰＰを復号し、得られた予測パラメータＰＰを予測部１０４に供給する。また、符号化データからフィルタパラメータＦＰを復号し、得られたフィルタパラメータＦＰをフィルタ係数保存部１０７ｃに格納する。なお、可変長符号復号部１０１にて復号されたフィルタパラメータＦＰに含まれるフィルタ係数は、５ビットであってもよいし、８ビットであってもよい。
【０１６９】
逆量子化部１０２は、量子化されたＤＣＴ係数Ｒｅｓ”（ｕ，ｖ）を逆量子化することによって、周波数領域の予測残差Ｒｅｓ’を復元する。逆量子化部１０２にて復元された周波数領域の予測残差Ｒｅｓ’は、逆変換部１０３に供給される。
【０１７０】
逆変換部１０３は、復元された周波数領域の予測残差Ｒｅｓ’に逆ＤＣＴ変換（逆離散コサイン変換）を施すことによって、空間領域の予測残差Ｒｅｓを復元する。逆変換部１０３にて復元された空間領域の予測残差Ｒｅｓは、加算部１０５に供給される。
【０１７１】
予測部１０４は、予測パラメータＰＰに従って、予測画像Ｐｒｅｄ＝｛Ｐｒｅｄ（ｘ，ｙ）｜（ｘ，ｙ）∈ＴＵ｝を生成する。予測部１０４にて生成された予測画像Ｐｒｅｄは、加算部１０５に供給される。
【０１７２】
加算部１０５は、復元された予測残差Ｒｅｓに予測画像Ｐｒｅｄを加算することによって、復号画像Ｄｅｃ＝｛Ｄｅｃ（ｘ，ｙ）｜（ｘ，ｙ）∈ＴＵ｝を生成する。加算部１０５にて生成された復号画像Ｄｅｃは、フレームメモリ１０６に格納される。
【０１７３】
ループフィルタ部１０７は、フレームメモリ１０６に格納された復号画像Ｄｅｃに作用する。ループフィルタ部１０７は、デブロッキングフィルタ１０７ａと適応フィルタ１０７ｂとを含み、これらのフィルタを用いて復号画像Ｄｅｃに含まれる量子化ノイズを除去する。適応フィルタ１０７ｂは、自身のフィルタ係数をフィルタ係数保存部１０７ｃに格納されたフィルタパラメータＦＰを参照して設定する。
【０１７４】
ループフィルタ部１０７により量子化ノイズが除去された復号画像Ｄｅｃ”は、同じフレーム内の他の変換単位ＴＵ’（イントラ予測の場合）、あるいは、異なるフレーム内の同じ（同じ位置を占める）変換単位ＴＵ（インター予測の場合）を符号化する際に予測残差Ｒｅｓに加算する予測画像Ｐｒｅｄ’を生成するために利用される。
【０１７５】
上述したとおり、可変長符号復号部１０１にて復号されたフィルタパラメータＦＰに含まれるフィルタ係数は、５ビットであってもよいし、８ビットであってもよい。このように、量子化精度の低いフィルタ係数であっても復号画像Ｄｅｃの精度の保てるのは、動画像符号化装置２において実行される２回の最小２乗法によって量子化精度の低さに見合ったフィルタ係数の最適化が図られているためである。例えば、フィルタ係数のうち精度の要求されるもの（例えば中心係数およびオフセット）は８ビット、それ以外のものは５ビットとすることが可能である。
【０１７６】
〔プログラムおよび記録媒体について〕
最後に、上述した動画像復号装置１および動画像符号化装置２の各ブロックは、集積回路（ＩＣチップ）上に形成された論理回路によってハードウェア的に実現してもよいし、ＣＰＵ（Central Processing Unit）を用いてソフトウェア的に実現してもよい。
【０１７７】
後者の場合、上記各装置は、各機能を実現するプログラムの命令を実行するＣＰＵ、上記プログラムを格納したＲＯＭ（Read Only Memory）、上記プログラムを展開するＲＡＭ（Random Access Memory）、上記プログラムおよび各種データを格納するメモリ等の記憶装置（記録媒体）などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである上記各装置の制御プログラムのプログラムコード（実行形式プログラム、中間コードプログラム、ソースプログラム）をコンピュータで読み取り可能に記録した記録媒体を、上記各装置に供給し、そのコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【０１７８】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ類、フロッピー（登録商標）ディスク／ハードディスク等の磁気ディスクやＣＤ−ＲＯＭ／ＭＯ／ＭＤ／ＤＶＤ／ＣＤ−Ｒ等の光ディスクを含むディスク類、ＩＣカード（メモリカードを含む）／光カード等のカード類、マスクＲＯＭ／ＥＰＲＯＭ／ＥＥＰＲＯＭ／フラッシュＲＯＭ等の半導体メモリ類、あるいはＰＬＤ（Programmable logic device）やＦＰＧＡ（Field Programmable Gate Array）等の論理回路類などを用いることができる。
【０１７９】
また、上記各装置を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークは、プログラムコードを伝送可能であればよく、特に限定されない。例えば、インターネット、イントラネット、エキストラネット、ＬＡＮ、ＩＳＤＮ、ＶＡＮ、ＣＡＴＶ通信網、仮想専用網（Virtual Private Network）、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、この通信ネットワークを構成する伝送媒体も、プログラムコードを伝送可能な媒体であればよく、特定の構成または種類のものに限定されない。例えば、ＩＥＥＥ１３９４、ＵＳＢ、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ（Asymmetric Digital Subscriber Line）回線等の有線でも、ＩｒＤＡやリモコンのような赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＩＥＥＥ８０２．１１無線、ＨＤＲ（High Data Rate）、ＮＦＣ（Near Field Communication）、ＤＬＮＡ（Digital Living Network Alliance）、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。
【０１８０】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【０１８１】
本発明は、適応フィルタを用いた動画像符号化装置および動画像復号装置に好適に利用することができる。ただし、適応フィルタを用いたものであれば、動画像符号化装置および動画像復号装置に限らず、静止画像符号化装置および静止画像復号装置を含む画像符号化装置および画像復号装置全般に広く適用することができる。
【符号の説明】
【０１８２】
２  動画像符号化装置（画像符号化装置）
１１１      予測部
１１２      変換部
１１３      量子化部
１１４      可変長符号化部
１１５      逆量子化部
１１６      逆変換部
１１７      フレームメモリ
１１８      減算部
１１９      加算部
１２０      ループフィルタ部
１２１          デブロッキングフィルタ
１２２          適応フィルタ
１２３          フィルタ係数設定部（フィルタ係数設定装置）
１２３ａ            相関行列算出部（導出手段を構成する生成手段）
１２３ｂ            相関行列保存部
１２３ｃ            最小２乗解算出部（導出手段を構成する第１の算出手段、
設定手段を構成する第２の算出手段）
１２３ｄ            クリップ部（変更手段の一例）
１２３ｅ            拘束条件設定手段（設定手段の一部、更新手段）
１２３ｆ            量子化部（変更手段の一例）
１２３０            行列解算出部
１２３１            正則化コスト算出部
１２３２            正則化部
１２４          フィルタ係数保存部
１  動画像復号装置
１０１      可変長符号復号部
１０２      逆量子化部
１０３      逆変換部
１０４      予測部
１０５      加算部
１０６      フレームメモリ
１０７      ループフィルタ部
【図１】
2012065120.tif 000012
【図２】
2012065120.tif 000013
【図３】
2012065120.tif 000014
【図４】
2012065120.tif 000015
【図５】
2012065120.tif 000016
【図６】
2012065120.tif 000017
【図７】
2012065120.tif 000018
【図８】
2012065120.tif 000019
【図９】
2012065120.tif 000020
【図１０】
2012065120.tif 000021
【図１１】
2012065120.tif 000022
【図１２】
2012065120.tif 000023
【図１３】
2012065120.tif 000024