一般に、符号化側の動画像符号化装置では、入力した動画像のフレーム1枚ずつを原画像として符号化し、符号化処理によって生成したデータを符号化データとして出力する。復号側の動画像復号装置では、符号化側の動画像符号化装置により出力された符号化データを入力し、符号化データを復号して復号画像を生成する。
動画像符号化装置は、それ以前に処理した過去のフレームを参照し、現フレームを符号化する。また、過去のフレームを参照するために、復号側と同様の復号処理を行う。このような、符号化側において復号画像を生成し、生成した復号画像を参照して符号化する処理を符号化ループと呼び、その符号化ループ内で使用されるフィルタをループ内フィルタと呼ぶ。
動画像符号化の標準規格であるH.264/MPEG−4 AVCでは、デブロッキングフィルタと呼ばれるループ内フィルタが利用される。デブロッキングフィルタは、符号化側において、基本的な復号処理(例えば、逆量子化、逆直交変換、予測等の処理)の後に、生成された復号画像に対して適用される。また、復号側においても、生成された復号画像に対して適用される。H.264/MPEG−4 AVCの標準規格のようにブロック単位で処理する符号化方式では、ブロックの境界に歪みが生じやすい。そこで、デブロッキングフィルタを適用することにより、ブロック間の歪みを低減することができる。
デブロッキングフィルタ以外にも、復号画像またはデブロッキングフィルタを適用した後の画像に対して、適応的にループ内フィルタ(ALF:Adaptive Loop Filter)を適用する符号化方式が提案されている(例えば非特許文献1)。
図4は、従来の、ALFを利用した動画像符号化装置の構成を示すブロック図である。この動画像符号化装置101は、符号化基本部111、局所復号部112、フィルタ設計部113、フィルタリング処理最適化部114及び伝送データ生成部115を備えている。尚、復号画像に対してデブロッキングフィルタを適用する場合、デブロッキングフィルタは局所復号部112の後段に設けられるが、図4では、説明を簡単にするために、それを省略してある。以下、便宜上、デブロッキングフィルタを適用した後の画像も復号画像という。
符号化基本部111は、原画像(動画像のフレーム)を入力し、H.264/MPEG−4 AVC等の符号化方式に基づいた基本的な符号化処理を行い、符号化データを生成し、生成した符号化データを局所復号部112及び伝送データ生成部115に出力する。具体的には、符号化基本部111は、フレーム内予測またはフレーム間予測等の予測処理、直交変換処理、量子化処理等を行う。
局所復号部112は、符号化基本部111から符号化データを入力し、入力した符号化データを復号して復号画像を生成し、生成した復号画像をフィルタ設計部113に出力する。尚、局所復号部112は、生成した復号画像をフィルタ設計部113にそのまま出力するようにしたが、デブロッキングフィルタ(局所復号部112の後段に設けられたデブロッキングフィルタ)を介してフィルタ設計部113へ出力するようにしてもよい。この場合、デブロッキングフィルタは、局所復号部112から復号画像を入力し、フィルタ処理によりブロック間の歪みを低減し、フィルタ処理後の復号画像をフィルタ設計部113に出力する。
一般に、ALFを利用する符号化方式では、フィルタ設計部113及びフィルタリング処理最適化部114を備える点を特徴とする。フィルタ設計部113は、原画像を入力すると共に、局所復号部112から復号画像を入力し、これら2つの画像に基づいて、現在のフレームについてALFにて使用するフィルタを設計し、設計したフィルタの情報を新規フィルタ情報としてフィルタリング処理最適化部114に出力する。具体的には、フィルタ設計部113は、フィルタを復号画像に適用した後の画像と原画像との間の差分が小さくなるように、予め設定されたフィルタタイプのフィルタ係数値を決定することでフィルタを設計し、フィルタタイプ及びフィルタ係数値を含む新規フィルタ情報をフィルタリング処理最適化部114に出力する。この場合、異なるフィルタタイプ、すなわち異なる形状及び/またはサイズを利用することで、複数のフィルタを設計してもよい。
図5は、フィルタタイプを説明する図である。フィルタタイプは、フィルタの形状及びサイズにより特定される。図5に示すように、フィルタの形状には、例えば正方形、十字型、菱形があり、フィルタのサイズには、例えば3×3=9画素、5×5=25画素等がある。これらのフィルタタイプの形状及びサイズは、フィルタ処理の単位に対応しており、それぞれの形状及びサイズを単位にしてフィルタ処理が行われる。具体的には、その形状の中心に位置する画素におけるフィルタ適用後の値を算出するために、その周囲の画素が用いられる。例えば、図5の左上に示した、フィルタの形状が正方形であってフィルタのサイズが3×3=9画素であるフィルタタイプでは、中心の画素におけるフィルタ適用後の値を算出するために、その画素及び周囲8画素を含めた合計9画素が用いられる。
このように、フィルタ設計部113は、図5に示した異なるフィルタタイプを利用することで複数のフィルタを設計し、すなわち、異なるフィルタタイプのフィルタ毎に、フィルタを復号画像に適用した後の画像と原画像との間の差分が小さくなるようにフィルタ係数値をそれぞれ決定し、フィルタタイプ毎のフィルタ係数値を含む新規フィルタ情報を生成する。
フィルタリング処理最適化部114は、フィルタ設計部113から新規フィルタ情報(フィルタタイプ毎のフィルタ係数値等)を入力し、RD(Rate Distortion:レート歪み)基準にて画像の領域毎に、復号画像に対するフィルタリングの有無、フィルタリング有りの場合のフィルタ情報(適用するフィルタタイプ(フィルタの形状及びサイズ)及びフィルタ係数値等)の最適な選択を行うことで、フィルタリング処理を最適化し、選択した情報(画像の領域毎のフィルタリングの有無、フィルタタイプ及びフィルタ係数値等)をフィルタリング情報として伝送データ生成部115に出力する。
RD基準とは、ある選択(例えばフィルタタイプの選択)をしたときに発生する符号化ビット量(レート)、及びそのときに生成される復号画像と原画像との間の差分(歪み)を考慮して、その選択の効果を評価する基準である。一般に、符号化処理においては、符号化ビット量を大きくした場合、そのときに生成される復号画像と原画像との間の差分が小さくなることから、RD基準では、符号化ビット量を大きくする程度と、これに伴って差分が小さくなる程度とが考慮される。具体的には、フィルタリング処理最適化部114は、画像の領域毎に、新規フィルタ情報に含まれる各フィルタタイプについて、発生する符号化ビット量を算出し、そのときに生成される復号画像と原画像との間の差分を算出し、符号化ビット量と差分との加重和を算出する。その一方で、フィルタリング処理最適化部114は、フィルタを適用しない場合についても、発生する符号化ビット量を算出し、そのときに生成される復号画像と原画像との間の差分を算出し、符号化ビット量と差分との加重和を算出する。そして、フィルタリング処理最適化部114は、新規フィルタ情報に含まれる各フィルタタイプについて算出した加重和と、フィルタを適用しない場合について算出した加重和とを含めて、最小となる設定を選択する。すなわち、フィルタを適用しない場合について算出した加重和が最小となる場合は、その領域についてはフィルタリング無しを判定する。また、そうでない場合は、その領域についてはフィルタリング有りを判定し、加重和が最小となるフィルタタイプとそのときのフィルタ係数値等を選択する。このようなRD基準により、フィルタリング情報(画像の領域毎のフィルタリングの有無、フィルタタイプ及びフィルタ係数値等)が生成される。
伝送データ生成部115は、符号化基本部111から符号化データを入力すると共に、フィルタリング処理最適化部114からフィルタリング情報(画像の領域毎のフィルタリングの有無、フィルタタイプ及びフィルタ係数値等)を入力し、符号化データとフィルタリング情報とを統合して伝送データを生成し、生成した伝送データを出力する。このようにして出力された伝送データは、動画像符号化装置101から動画像復号装置へ伝送される。
非特許文献1の手法では、ALFに利用するフィルタを動画像のフレーム毎に設計する。符号化側は、設計したフィルタの情報を復号側へ伝送するため、伝送するデータ量が増加する。このため、非特許文献1の手法では、フィルタ情報の伝送に伴う伝送データ量の増加を抑制することが課題となる。そこで、設計したフィルタの情報を保存するフィルタバッファを導入し、フィルタ情報の代わりに、フィルタバッファに保存されているフィルタ情報を指定するフィルタインデックスを伝送することにより、伝送データ量の増加を抑制している(例えば非特許文献2)。
図6は、従来の、フィルタバッファを備えた動画像符号化装置の構成を示すブロック図である。この動画像符号化装置102は、符号化基本部111、局所復号部112、フィルタ設計部113、伝送データ生成部115、フィルタリング処理最適化部116及びフィルタバッファ117を備えている。図4に示した動画像符号化装置101と図6に示す動画像符号化装置102とを比較すると、動画像符号化装置102が、フィルタバッファ117を備えている点、及び動画像符号化装置101のフィルタリング処理最適化部114とは異なるフィルタリング処理最適化部116を備えている点で相違する。図6において、図4と共通する部分には図4と同一の符号を付し、その詳しい説明は省略する。
図7は、図6に示したフィルタバッファ117の構成を示す図である。フィルタバッファ117は、N個のフィルタタイプのそれぞれに対して、フィルタ設計部113により過去のフレームで設計され、かつフィルタリング処理最適化部116により最適なフィルタリング処理として選択された最大M個のフィルタに関する情報を過去フィルタ情報として保存する。具体的には、フィルタタイプ「Type1」に対し、フィルタインデックス#1〜#Mにて特定されるM個のフィルタに関する情報Fprev11(k1)〜Fprev1M(k1)を保存する。同様に、フィルタタイプ「TypeN」に対し、フィルタインデックス#1〜#Mにて特定されるM個のフィルタに関する情報FprevN1(kN)〜FprevNM(kN)を保存する。ここで、フィルタに関する情報FprevAB(kA)は、例えば、フィルタタイプ「TypeA」及びフィルタインデックス#Bのフィルタに関するkA番目のフィルタ係数値を示す。これらのフィルタタイプ、フィルタインデックス及びフィルタ情報は、フィルタリング処理最適化部116により、過去フィルタ情報として書き込まれ、読み出される。尚、復号側の動画像復号装置においても、フィルタバッファ117と同様のバッファを備えているものとする。また、フィルタタイプには、フィルタの形状及びサイズが含まれるものとし、フィルタに関する情報には、フィルタ係数値が含まれるものとする。
図6に戻って、フィルタリング処理最適化部116は、フィルタ設計部113から新規フィルタ情報(フィルタタイプ毎のフィルタ係数値等)を入力すると共に、フィルタバッファ117から過去フィルタ情報(フィルタタイプ毎のフィルタ係数値等及びフィルタインデックス)を読み出し、新規フィルタ情報及び過去フィルタ情報を用いて、図4に示したフィルタリング処理最適化部114と同様に、RD基準にて画像の領域毎に、フィルタリングの有無、適用するフィルタタイプ及びフィルタ係数値等の最適な選択を行うことで、フィルタリング処理を最適化する。そして、フィルタリング処理最適化部116は、選択したフィルタタイプ及びフィルタ係数値等の情報がフィルタ設計部113から入力した新規フィルタ情報の一部である場合、画像の領域毎のフィルタリングの有無、フィルタタイプ及びフィルタ係数値等をフィルタリング情報として伝送データ生成部115に出力する。一方、フィルタリング処理最適化部116は、選択したフィルタタイプ及びフィルタ係数値等の情報がフィルタバッファ117から読み出した過去フィルタ情報の一部である場合、画像の領域毎のフィルタリングの有無、選択したフィルタタイプ、及び、過去フィルタ情報に含まれるそのフィルタタイプ及びフィルタ係数値等に対応するフィルタインデックスをフィルタリング情報として伝送データ生成部115に出力する。
また、フィルタリング処理最適化部116は、最適なフィルタリング処理として新規フィルタを選択した場合、そのフィルタタイプ及びフィルタ係数値等をフィルタバッファ117に書き込む。この場合、フィルタバッファ117は、フィルタ係数値等を、対応するフィルタタイプの箇所に保存する。フィルタリング処理最適化部116は、新たなフィルタ係数値等を書き込む際に、フィルタバッファ117に保存されているフィルタ係数値等がその上限(フィルタタイプ毎に最大M個)を超える場合、そのフィルタタイプについて保存されているフィルタ係数値等のうち最も古いフィルタ係数値等を削除した後、新たなフィルタ係数値等を書き込む。
伝送データ生成部115は、符号化基本部111から符号化データを入力すると共に、フィルタリング処理最適化部116からフィルタリング情報(画像の領域毎のフィルタリングの有無、フィルタタイプ、フィルタ係数値等またはフィルタインデックス)を入力し、符号化データとフィルタリング情報とを統合して伝送データを生成し、動画像復号装置へ伝送する。このように、フィルタリング処理最適化部116において過去フィルタ情報が選択された場合、伝送データ生成部115は、フィルタ係数値等の代わりに、フィルタタイプ及びそのフィルタを特定するためのフィルタインデックスのみを伝送すればよい。したがって、フィルタ係数値の伝送が不要となるため、伝送データ量の増加を抑制することができる。
以下、本発明を実施するための形態について図面を用いて詳細に説明する。本発明は、ALFを利用し、フィルタバッファを導入して動画像の符号化を行う動画像符号化装置において、フィルタリング処理を最適化する際の処理負荷を低減するために、フィルタリング処理の最適化対象となるフィルタの数を削減する。フィルタは動画像のフレーム毎に設計するが、設計した全てのフィルタを最適化対象とはしない。最適化対象のフィルタを選定し、選定したフィルタに対してのみフィルタリング処理の最適化を行う。フィルタの選定にはフィルタ間の類似性を考慮する。類似したフィルタは、フィルタリング処理を適用した結果も類似していると推定できる。そこで、現フレームにおいて設計したフィルタとフィルタバッファに保存されている過去のフィルタとの間の類似度を算出し、類似度が高い場合は、過去のフィルタを現フレームで設計したフィルタの代用とし、現フレームで設計したフィルタを最適化対象から除外する。このように、フィルタリング処理の最適化を行う前に、最適化対象のフィルタを選定しその数を削減することにより、処理負荷を低減することができる。
〔動画像符号化装置〕
まず、本発明の実施形態による動画像符号化装置について説明する。図1は、動画像符号化装置の構成を示すブロック図である。この動画像符号化装置1は、符号化基本部111、局所復号部112、フィルタ設計部113、伝送データ生成部115、フィルタバッファ117、フィルタ選定部10及びフィルタリング処理最適化部20を備えている。動画像符号化装置1は、ALFを利用する装置であり、原画像を入力し、原画像の符号化データとフィルタリング情報とを統合した伝送データを生成し、生成した伝送データを出力する。
図6に示した従来の動画像符号化装置102と図1に示す動画像符号化装置1とを比較すると、両動画像符号化装置1,102共に、符号化基本部111、局所復号部112、フィルタ設計部113、伝送データ生成部115及びフィルタバッファ117を備えている点で同一である。これに対し、動画像符号化装置1は、動画像符号化装置102のフィルタリング処理最適化部116とは異なるフィルタリング処理最適化部20を備え、さらに、フィルタ設計部113とフィルタリング処理最適化部20との間にフィルタ選定部10を備えている点で相違する。
以下、本発明の実施形態による動画像符号化装置1において特徴を有するフィルタ選定部10及びフィルタリング処理最適化部20の概略について説明する。フィルタ選定部10は、フィルタ評価手段11及びフィルタ評価判別手段12を備えており、フィルタバッファ117に保存されている過去フィルタ情報を用いて、現フレームにおいて新たに設計したフィルタを評価し、評価したフィルタ各々に対して、後段のフィルタリング処理最適化部20において最適化処理を適用するか否か(最適化対象とするか否か)を判別する。
フィルタ評価手段11は、フィルタ設計部113から現フレームにおいて新たに設計されたフィルタの新規フィルタ情報(フィルタタイプ毎のフィルタ係数値等)を入力すると共に、フィルタバッファ117から過去のフィルタの過去フィルタ情報(フィルタタイプ毎のフィルタ係数値等)を読み出し、同一のフィルタタイプについて新規フィルタ情報と過去フィルタ情報とを比較し、両情報の類似度の高さに応じて新規フィルタを評価して評価値を算出し、新規フィルタ情報(フィルタタイプ毎のフィルタ係数値等)及び新規フィルタ評価値(フィルタタイプ毎の新規フィルタ評価値)をフィルタ評価判別手段12に出力する。例えば、類似度が高い場合は評価値が小さくなるように算出し、類似度が低い場合は評価値が大きくなるように算出する。
フィルタ評価判別手段12は、フィルタ評価手段11から新規フィルタ情報(フィルタタイプ毎のフィルタ係数値等)及び新規フィルタ評価値(フィルタタイプ毎の評価値)を入力し、新規フィルタ評価値に基づいて、後段のフィルタリング処理最適化部20において最適化処理を適用するか否かを判別し(新規フィルタを選定し)、新規フィルタ情報(フィルタタイプ毎のフィルタ係数値等)及び判別結果(新規フィルタのフィルタタイプ毎に最適化処理を適用するか否かを示す情報)をフィルタ選定結果としてフィルタリング処理最適化部20に出力する。例えば、新規フィルタの評価値と予め設定された閾値とを比較し、新規フィルタの評価値が閾値以上である場合は最適化処理を適用すると判別し、新規フィルタの評価値が閾値よりも小さい場合は最適化処理を適用しないと判別する。
フィルタリング処理最適化部20は、フィルタ選定部10のフィルタ評価判別手段12から新規フィルタ情報(フィルタタイプ毎のフィルタ係数値等)及び判別結果(新規フィルタのフィルタタイプ毎に最適化処理を適用するか否かを示す情報)を入力すると共に、フィルタバッファ117から過去フィルタ情報(フィルタタイプ毎のフィルタ係数値等及びフィルタインデックス)を入力し、判別結果により最適化処理を適用するとして選定された新規フィルタの新規フィルタ情報及び過去フィルタ情報を用いて、RD基準にて画像の領域毎に、フィルタリングの有無、適用するフィルタタイプ及びフィルタ係数値等の最適な選択を行うことで、フィルタリング処理を最適化する。そして、フィルタリング処理最適化部20は、選択したフィルタタイプ及びフィルタ係数値等の情報が新規フィルタ情報の一部である場合、画像の領域毎のフィルタリングの有無、フィルタタイプ及びフィルタ係数値等をフィルタリング情報として伝送データ生成部115に出力し、選択したフィルタタイプ及びフィルタ係数値等の情報が過去フィルタ情報の一部である場合、画像の領域毎のフィルタリングの有無、選択したフィルタタイプ、及び、過去フィルタ情報に含まれるそのフィルタタイプ及びフィルタ係数値等に対応するフィルタインデックスをフィルタリング情報として伝送データ生成部115に出力する。
このように、動画像符号化装置1のフィルタリング処理最適化部20は、全ての新規フィルタタ情報及び過去フィルタ情報に対して最適化処理を行うのではなく、フィルタ選定部10により選定された新規フィルタの新規フィルタ情報及び過去フィルタ情報に対してのみ最適化処理を行うようにした。これにより、最適化対象となるフィルタの数を削減したため、フィルタリング処理を最適化する際の処理負荷を低減することができ、伝送遅延の増加をなくすと共に、回路及び装置規模の大型化を防ぐことが可能となる。
〔実施例1〕
次に、実施例1の動画像符号化装置1について説明する。実施例1は、予め設定された固定の閾値T1を用いて、N個の新規フィルタのうち、フィルタリング処理最適化部20の処理対象を選定する。
図1を参照して、実施例1による動画像符号化装置1の符号化基本部111及び局所復号部112は、図4及び図6に示したこれらの構成部と同様の処理を行う。フィルタ設計部113も、図4及び図6に示した構成部と同様の処理を行う。具体的には、フィルタ設計部113は、原画像を入力すると共に、局所復号部112から復号画像を入力し、N個のフィルタタイプを使用する場合、これら2つの画像に基づいて、各フィルタタイプに対応したN個のフィルタを設計する。この場合、設計するN個のフィルタタイプには、例えば図5に示した異なる形状(正方形、菱形、十字型等)及び異なるサイズのフィルタタイプを含める。
フィルタ設計部113は、フィルタの設計に伴って、設計するフィルタを復号画像に適用した後の画像と原画像との間の差分が小さくなるように、フィルタタイプ毎にフィルタ係数値を決定する。例えば、以下の式を用いて、設計するフィルタを復号画像に適用した後の画像と原画像との間の二乗誤差を最小化するフィルタ係数値Fを決定する。
ここで、Kはフィルタ係数値の数を示し、f(k)はk番目のフィルタ係数値を示す。また、Aは、原画像の画素値と復号画像の画素値のK×K共分散行列を示し、Cは、復号画像の画素値のK×K自己相関行列を示す。
そして、フィルタ設計部113は、設計したN個の新規フィルタについて、フィルタタイプ毎のフィルタ係数値を含む情報を新規フィルタ情報としてフィルタ選定部10に出力する。
図7に示したように、フィルタバッファ117には、N個のフィルタタイプのそれぞれに対して、フィルタ設計部113により過去のフレームで設計され、かつフィルタリング処理最適化部20により最適なフィルタリング処理として選択された最大M個のフィルタに関する情報が、過去フィルタ情報として保存されている。つまり、フィルタバッファ117全体で、最大N×M個のフィルタに関する情報が保存されている。初期状態では、フィルタバッファ117には何も保存されていない。フィルタリング処理最適化部20は、最適なフィルタリング処理として新規フィルタを選択し、伝送データ生成部115に出力するフィルタリング情報を決定したとき、その新規フィルタに関するフィルタタイプ及びフィルタ係数値等の情報を過去フィルタ情報として、フィルタバッファ117に書き込む。また、フィルタリング処理最適化部20は、新たな過去フィルタ情報をフィルタバッファ117に書き込む際に、フィルタバッファ117に保存されている過去フィルタ情報がその上限(フィルタタイプ毎に最大M個)を超える場合、そのフィルタタイプについて保存されている過去フィルタ情報のうち最も古い過去フィルタ情報を削除した後、新たな過去フィルタ情報を書き込む。
フィルタ選定部10は、フィルタバッファ117に保存されている最大N×M個の過去フィルタ情報を用いて、フィルタ設計部113により設計されたN個の新規フィルタを評価し、その評価に基づいて、後段のフィルタリング処理最適化部20における処理対象となる新規フィルタを選定する。
図2は、実施例1によるフィルタ選定部10の処理を示すフローチャートである。フィルタ選定部10のフィルタ評価手段11は、フィルタ設計部113から現フレームにおいて設計されたN個の新規フィルタの情報(新規フィルタ情報)を入力すると共に、フィルタバッファ117から最大N×M個の過去フィルタ情報を読み出す(ステップS201)。そして、フィルタ評価手段11は、新規フィルタ情報及び過去フィルタ情報を用いて、新規フィルタと過去フィルタとの間の類似度を算出し(ステップS202)、類似度に基づいて、N個の新規フィルタのフィルタタイプ毎に、新規フィルタ評価値を算出する(ステップS203)。フィルタ評価手段11は、新規フィルタに類似した過去フィルタの情報がフィルタバッファ117に保存されている場合、その新規フィルタに小さい評価値を与え、新規フィルタに類似した過去フィルタの情報がフィルタバッファ117に保存されていない場合、その新規フィルタに大きい評価値を与える。
新規フィルタ評価値として、例えば、新規フィルタと過去フィルタのフィルタ係数値の誤差を利用する。フィルタ評価手段11は、新規フィルタと過去フィルタのフィルタ係数値の絶対誤差を利用する場合、以下の式により、フィルタタイプi(=1,・・・,N)の新規フィルタ評価値V
i_1を算出する。
ここで、Fprev_iは、フィルタバッファ117に保存されている過去フィルタ情報に対応するフィルタタイプiの過去フィルタの集合を示し、Kiは、新規フィルタにおけるフィルタタイプiのフィルタ係数値の個数を示す。fnew_i(k)は、フィルタタイプiの新規フィルタにおけるk番目のフィルタ係数値を示し、fprev_i_j(k)は、フィルタタイプiの過去フィルタにおけるk番目のフィルタ係数値を示す。|・|は絶対値記号を示す。
前記式(2)より、フィルタバッファ117に保存されている過去フィルタ情報に関する過去フィルタの中で、新規フィルタと過去フィルタのフィルタ係数値の誤差が最小となる値が、新規フィルタ評価値となる。
また、フィルタ評価手段11は、新規フィルタと過去フィルタのフィルタ係数値の二乗誤差を利用する場合、以下の式により、フィルタタイプi(=1,・・・,N)の新規フィルタの評価値V
i_2を算出する。
また、フィルタ評価手段11は、新規フィルタと過去フィルタのフィルタ係数値における相関の逆数を利用する場合、以下の式により、フィルタタイプi(=1,・・・,N)の新規フィルタの評価値V
i_3を算出する。
フィルタ評価手段11は、N個の新規フィルタ情報(フィルタタイプ毎のフィルタ係数値等)、及び前記式(2)〜(4)により算出したN個の新規フィルタ評価値(フィルタタイプ毎の新規フィルタ評価値)をフィルタ評価判別手段12に出力する。
フィルタ評価判別手段12は、フィルタ評価手段11により算出されたN個の新規フィルタ評価値(フィルタタイプ毎の新規フィルタ評価値)に基づいて、N個の新規フィルタのうち、フィルタリング処理最適化部20の処理対象となる新規フィルタを選定する。選定方法としては、例えば閾値を利用する。フィルタ評価判別手段12は、新規フィルタ評価値と予め設定された閾値T1とを比較し(ステップS204)、新規フィルタ評価値が閾値T1以上である場合(ステップS204:Y)、その新規フィルタをフィルタリング処理最適化部20の処理対象であると判別し(ステップS205)、新規フィルタ評価値が閾値T1よりも小さい場合(ステップS204:N)、その新規フィルタをフィルタリング処理最適化部20の処理対象でないと判別する(ステップS206)。そして、フィルタ評価判別手段12は、N個の新規フィルタ情報(フィルタタイプ毎のフィルタ係数値等)及びN個の判別結果(新規フィルタのフィルタタタイプ毎に最適化処理を適用するか否かを示す情報)をフィルタリング処理最適化部20に出力する(ステップS207)。
フィルタリング処理最適化部20は、フィルタ選定部10のフィルタ評価判別手段12からN個の新規フィルタ情報(フィルタタイプ毎のフィルタ係数値等)及びN個の判別結果(新規フィルタのフィルタタタイプ毎に最適化処理を適用するか否かを示す情報)を入力する。これにより、N個の新規フィルタの中から、処理対象とする新規フィルタを識別することができる。フィルタリング処理最適化部20による処理は、処理対象とする新規フィルタの数が減少するだけで、図6に示したフィルタリング処理最適化部116の処理と同様である。すなわち、フィルタリング処理最適化部20は、N個の判別結果が示す処理対象となる新規フィルタの新規フィルタ情報、及びフィルタバッファ117から読み出した過去フィルタ情報を用いて、RD基準にて画像の領域毎に、フィルタリングの有無、適用するフィルタタイプ及びフィルタ係数値等の最適な選択を行うことで、フィルタリング処理を最適化する。新規フィルタを選択した場合は、画像の領域毎のフィルタリングの有無、フィルタタイプ及びフィルタ係数値等をフィルタリング情報として伝送データ生成部115に出力し、前述のフィルタリング処理最適化部116と同様に、選択した新規のフィルタタイプ及びフィルタ係数値等を、フィルタバッファ117に書き込む。一方、過去フィルタを選択した場合は、画像の領域毎のフィルタリングの有無、選択したフィルタタイプ、及び、過去フィルタ情報に含まれるそのフィルタタイプ及びフィルタ係数値等に対応するフィルタインデックスを伝送データ生成部115に出力する。また、フィルタを適用しないことを選択した場合は、フィルタリング無しを伝送データ生成部115に出力する。尚、動画像復号装置においても動画像符号化装置1と同様に、新規フィルタが選択されフィルタリング情報が伝送されたときは、フィルタバッファの同じ場所にその情報が書き込まれる。
伝送データ生成部115は、図4及び図6に示した構成部と同様の処理を行い、符号化データとフィルタリング情報とを統合した伝送データを出力する。このようにして出力された伝送データは、動画像符号化装置1から動画像復号装置へ伝送される。
以上のように、実施例1の動画像符号化装置1によれば、フィルタ選定部10のフィルタ評価手段11が、フィルタ設計部113により生成された新規フィルタ情報と、フィルタバッファ117に保存されている過去フィルタ情報とを用いて、新規フィルタと過去フィルタとの間の類似度を算出し、類似度に基づいて、新規フィルタのフィルタタイプ毎に評価値を算出するようにした。そして、フィルタ評価判別手段12が、新規フィルタのフィルタタイプ毎の評価値が予め設定された閾値T1以上である場合、その新規フィルタを、フィルタリング処理最適化部20の処理対象に選定し、評価値が閾値T1よりも小さい場合、その新規フィルタをフィルタリング処理最適化部20の処理対象から除外するようにした。そして、フィルタリング処理最適化部20が、フィルタ評価判別手段12により判別された処理対象となる新規フィルタの新規フィルタ情報、及びフィルタバッファ117から読み出した過去フィルタ情報を用いて、RD基準にて画像の領域毎に、フィルタリングの有無、適用するフィルタタイプ及びフィルタ係数値等の最適な選択を行うことで、フィルタリング処理を最適化するようにした。これにより、フィルタリング処理最適化部20の処理対象となる新規フィルタの数を削減したため、フィルタリング処理を最適化する際の処理負荷を低減することができ、伝送遅延の増加をなくすと共に、回路及び装置規模の大型化を防ぐことが可能となる。
〔実施例2〕
次に、実施例2の動画像符号化装置1について説明する。前記実施例1では、予め設定された固定の閾値T1を用いて、N個の新規フィルタのうち、フィルタリング処理最適化部20の処理対象を選定するようにした。しかし、新規フィルタの適用効果が大きい場合には(新規フィルタを復号画像に適用したときに、適用後の画像と原画像との間の差分を大幅に低減することが可能な場合には)、新規フィルタをフィルタリング処理最適化部20の処理対象に含めることが望ましい。そこで、実施例2では、実施例1における固定の閾値T1を用いるのではなく、新規フィルタ毎にその適用効果に応じて変化する閾値T2を用いて、N個の新規フィルタのうち、フィルタリング処理最適化部20の処理対象を選定する。
図1を参照して、実施例2による動画像符号化装置1の符号化基本部111、局所復号部112、フィルタ選定部10のフィルタ評価手段11、フィルタリング処理最適化部20、伝送データ生成部115及びフィルタバッファ117は、実施例1と同様の処理を行う。フィルタ選定部10のフィルタ評価判別手段12及びフィルタ設計部113は、実施例1と異なる処理を行う。
図3は、実施例2によるフィルタ選定部10の処理を示すフローチャートである。フィルタ選定部10のフィルタ評価手段11は、図2に示したステップS201〜ステップS203の処理を行う(ステップS301〜ステップS303)。
フィルタ選定部10のフィルタ評価判別手段12は、フィルタ評価手段11により算出されたN個の新規フィルタ評価値(フィルタタイプ毎の新規フィルタ評価値)に基づいて、N個の新規フィルタのうち、フィルタリング処理最適化部20の処理対象となる新規フィルタを選定する際に、例えば、フィルタ設計部113から差分(復号画像と原画像との間の差分、及び、フィルタ適用後の画像(フィルタを復号画像に適用した後の画像)と原画像との間の差分)を入力する(ステップS304)。
フィルタ評価判別手段12は、入力したこれらの差分から得られる画質改善幅に基づいて、フィルタリング処理最適化部20の適用効果が大きい場合は閾値が小さくなり、適用効果が小さい場合は閾値が大きくなるように、以下の式により閾値T
2を設定する(ステップS305)。この閾値T
2は、新規フィルタ毎に設定される。
ここで、
は、フィルタ適用前の復号画像Rと原画像Oとの間の差分を示し、
は、フィルタ適用後の画像(フィルタを復号画像Rに適用した後の画像)R’と原画像Oとの間の差分を示す。フィルタ評価判別手段12は、これらの差分をフィルタ設計部113から入力するようにしたが、復号画像R及び原画像Oをフィルタ設計部113から入力し、これらの差分を求めるようにしてもよい。T
0は、予め設定された調整用パラメータを示す。
また、
は画質改善幅を示す。フィルタ評価判別手段12は、例えば画質改善幅に反比例するように、閾値T
2を設定する。すなわち、画質改善幅が大きい場合は、フィルタリング処理最適化部20の適用効果が大きいとして、閾値T
2が小さくなるように設定し、画質改善幅が小さい場合は、フィルタリング処理最適化部20の適用効果が小さいとして、閾値T
2が大きくなるように設定する。
そして、フィルタ評価判別手段12は、新規フィルタ評価値と設定した閾値T2とを比較し(ステップS306)、新規フィルタ評価値が閾値T2以上である場合(ステップS306:Y)、その新規フィルタをフィルタリング処理最適化部20の処理対象であると判別し(ステップS307)、新規フィルタ評価値が閾値T2よりも小さい場合(ステップS306:N)、その新規フィルタをフィルタリング処理最適化部20の処理対象でないと判別する(ステップS308)。そして、フィルタ評価判別手段12は、N個の新規フィルタ情報(フィルタタイプ毎のフィルタ係数値等)及びN個の判別結果(新規フィルタのフィルタタタイプ毎に最適化処理を適用するか否かを示す情報)をフィルタリング処理最適化部20に出力する(ステップS309)。
フィルタ設計部113は、実施例1の処理に加え、生成した新規フィルタ情報(フィルタタイプ毎のフィルタ係数値等)の新規フィルタ毎に、入力した原画像及び復号画像に基づいて、前記式(5)の差分をそれぞれ求め、これらの差分をフィルタ評価手段11のフィルタ評価判別手段12に出力する。尚、フィルタ評価判別手段12がこれらの差分を求める場合、フィルタ設計部113は、原画像及び復号画像をフィルタ評価判別手段12に出力する。
以上のように、実施例2の動画像符号化装置1によれば、フィルタ選定部10のフィルタ評価判別手段12が、前記式(5)により、復号画像と原画像の間の差分、及びフィルタを復号画像に適用した後の画像と原画像との間の差分から、フィルタリング処理最適化部20の適用効果が大きい場合は閾値が小さくなり、適用効果が小さい場合は閾値が大きくなるような閾値T2を設定し、新規フィルタのフィルタタイプ毎の評価値が閾値T2以上である場合、その新規フィルタを、フィルタリング処理最適化部20の処理対象に選定し、評価値が閾値T2よりも小さい場合、その新規フィルタをフィルタリング処理最適化部20の処理対象から除外するようにした。これにより、実施例1と同様に、フィルタリング処理を最適化する際の処理負荷を低減することができ、伝送遅延の増加をなくすと共に、回路及び装置規模の大型化を防ぐことが可能となる。また、閾値T2を新規フィルタ毎に変化させることで、適用効果の大きい新規フィルタがフィルタリング処理最適化部20の処理対象に選定され易くなるため、一層効果的にフィルタリング処理を最適化することができ、復号画像と原画像との間の差分を大幅に低減することが可能となる。
以上、実施例1,2を挙げて本発明を説明したが、本発明は前記実施例1,2に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。前記実施例1,2では、フィルタ選定部10のフィルタ評価手段11は、新規フィルタと過去フィルタのフィルタ係数値の絶対誤差を利用した前記式(2)による新規フィルタ評価値Vi_1、二乗誤差を利用した前記式(3)による新規フィルタ評価値Vi_2、または新規フィルタと過去フィルタのフィルタ係数値の相関の逆数を利用した前記式(4)による新規フィルタ評価値Vi_3を算出するようにしたが、これらの算出手法は例示であり、本発明はこれらの算出手法に限定されるものではない。
尚、本発明の実施例1,2による動画像符号化装置1のハードウェア構成としては、通常のコンピュータを使用することができる。動画像符号化装置1は、CPU、RAM等の揮発性の記憶媒体、ROM等の不揮発性の記憶媒体、及びインターフェース等を備えたコンピュータによって構成される。動画像符号化装置1に備えた符号化基本部111、局所復号部112、フィルタ設計部113、フィルタ選定部10、フィルタリング処理最適化部20、伝送データ生成部115及びフィルタバッファ117の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。また、これらのプログラムは、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の記憶媒体に格納して頒布することもできる。