(57)【要約】      （修正有）【課題】復号・伸張後にＤＣＴ単位ブロック境界に残存するブロックひずみを除去するポストフィルタ処理を効率的に行う。【解決手段】  画像信号における画素値の変化度合を示す評価値を算出し、この算出した評価値を用いてフィルタ係数に対し演算処理を行い、この演算処理したフィルタ係数を用いて上記画像信号の画素に対するフィルタ処理を行うようにした。【選択図】図３
2005198100.tif 000002
【特許請求の範囲】
【請求項１】
画像信号に対するフィルタ処理に用いるフィルタ係数を記憶するフィルタ係数記憶部と、
上記画像信号における画素値の変化度合を示す評価値を算出する空間周波数評価値算出部と、
この空間周波数評価値算出部が算出した評価値を用いて上記フィルタ係数記憶部のフィルタ係数に対し演算処理を行うフィルタ係数演算部と、
このフィルタ係数演算部が演算処理したフィルタ係数を用いて上記画像信号の画素に対するフィルタ処理を行うフィルタ処理部とを備えたことを特徴とする画像処理装置。
【請求項２】
請求項１記載の画像処理装置において、空間周波数評価値算出部が算出する評価値は、ブロック境界をまたがる画素ベクトルに対するアダマール変換係数であることを特徴とする画像処理装置。
【請求項３】
請求項１ないし２記載の画像処理装置において、フィルタ係数演算部は空間周波数評価値算出部が出力する評価値とフィルタ係数記憶部に記憶されたフィルタ係数とに基づき、デフォルトで定めるフィルタ係数か、フィルタ処理を無効とするフィルタ係数のいずれかのフィルタ係数を上記フィルタ処理部に出力することを特徴とする画像処理装置。
【請求項４】
請求項１ないし３記載の画像処理装置において、フィルタ係数演算部は、空間周波数評価値算出部が出力する評価値に対して所定の有効桁数を定め、該有効桁数の範囲内で評価値の値がゼロかゼロ以外かを判定することによってフィルタ係数を演算するファクタを定めるフィルタ係数加工ファクタ算出部を備えることを特徴とするデジタル画像復号装置。
【請求項５】
画像信号に対するフィルタ処理に用いるフィルタ係数を記憶するフィルタ係数記憶部と、
上記画像信号における画素値の変化度合を示す評価値を算出する空間周波数評価値算出部と、
この空間周波数評価値算出部が算出した評価値を用いて上記フィルタ係数記憶部のフィルタ係数の組の中から使用するフィルタ係数を選択するフィルタ係数選択設定部と、
このフィルタ係数選択設定部が選択したフィルタ係数を用いて上記画像信号の画素に対するフィルタ処理を行うフィルタ処理部とを備えたことを特徴とする画像処理装置。
【請求項６】
請求項５記載の画像処理装置において、空間周波数評価値算出部が算出する評価値は、ブロック境界をまたがる画素ベクトルに対するアダマール変換係数であることを特徴とする画像処理装置。
【請求項７】
請求項５ないし６記載の画像処理装置において、フィルタ係数選択設定部は、空間周波数評価値算出部が出力する評価値に対して所定の有効桁数を定め、該有効桁数の範囲内で評価値の値がゼロかゼロ以外かを判定することによってフィルタ係数を選択するファクタを定めるフィルタ係数選択ファクタ算出部を備えることを特徴とするデジタル画像復号装置。
【請求項８】
請求項１ないし７記載の画像処理装置において、上記画像信号は、デジタル画像信号を所定のブロック単位に圧縮符号化して得た圧縮データを復号して得た画像信号であることを特徴とする画像処理装置。
【請求項９】
画像信号における画素値の変化度合を示す評価値を算出するステップと、
この算出された評価値を用いて上記画像信号に対するフィルタ処理に用いるフィルタ係数に対し演算処理を行うステップと、
このフィルタ演算処理されたフィルタ係数を用いて上記画像信号の画素に対するフィルタ処理を行うステップとを備えたことを特徴とする画像処理方法。
【請求項１０】
請求項９記載の画像処理方法において、上記評価値は、ブロック境界をまたがる画素ベクトルに対するアダマール変換係数であることを特徴とする画像処理方法。
【請求項１１】
請求項９ないし１０記載の画像処理方法において、算出された評価値とフィルタ係数とに基づき、デフォルトで定めるフィルタ係数か、フィルタ処理を無効とするフィルタ係数のいずれかのフィルタ係数を出力する演算処理を行い、このフィルタ係数を用いてフィルタ処理を行うことを特徴とする画像処理方法。
【請求項１２】
請求項９ないし１１記載の画像処理方法において、算出された評価値に対して所定の有効桁数を定め、該有効桁数の範囲内で評価値の値がゼロかゼロ以外かを判定することによってフィルタ係数を演算するファクタを定めるステップを備えることを特徴とするデジタル画像復号方法。
【請求項１３】
画像信号における画素値の変化度合を示す評価値を算出するステップと、
この空間周波数評価値算出部が算出した評価値を用いてフィルタ係数の組の中から使用するフィルタ係数を選択するステップと、
この選択されたフィルタ係数を用いて上記画像信号の画素に対するフィルタ処理を行うステップとを備えたことを特徴とする画像処理方法。
【請求項１４】
請求項１３記載の画像処理方法において、上記評価値は、ブロック境界をまたがる画素ベクトルに対するアダマール変換係数であることを特徴とする画像処理方法。
【請求項１５】
請求項１３ないし１４記載の画像処理方法において、算出された評価値に対して所定の有効桁数を定め、該有効桁数の範囲内で評価値の値がゼロかゼロ以外かを判定することによってフィルタ係数を選択するファクタを定めるステップを備えることを特徴とするデジタル画像復号方法。
【請求項１６】
計算機を、画像信号に対するフィルタ処理に用いるフィルタ係数を記憶するフィルタ係数記憶手段と、
上記画像信号における画素値の変化度合を示す評価値を算出する空間周波数評価値算出手段と、
この空間周波数評価値算出手段が算出した評価値を用いて上記フィルタ係数記憶部のフィルタ係数に対し演算処理を行うフィルタ係数演算手段と、
このフィルタ係数演算手段が演算処理したフィルタ係数を用いて上記画像信号の画素に対するフィルタ処理を行うフィルタ処理手段として機能させるための画像処理プログラム。
【請求項１７】
計算機を、画像信号に対するフィルタ処理に用いるフィルタ係数を記憶するフィルタ係数記憶手段と、
上記画像信号における画素値の変化度合を示す評価値を算出する空間周波数評価値算出手段と、
この空間周波数評価値算出手段が算出した評価値を用いて上記フィルタ係数記憶部のフィルタ係数の組の中から使用するフィルタ係数を選択するフィルタ係数選択設定手段と、
このフィルタ係数選択設定手段が選択したフィルタ係数を用いて上記画像信号の画素に対するフィルタ処理を行うフィルタ処理手段として機能させるための画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子情報化された画像の画質改善に関し、特に、静止画像・動画像の圧縮符号化／復号に伴う画質劣化の改善に関する。
【背景技術】
【０００２】
従来、MPEGやITU-T H.26xなどの国際標準映像符号化方式では、映像信号の各フレームを、輝度信号１６×１６画素、対応する色差信号８×８画素分をまとめたブロックデータ(マクロブロックと呼ぶ)を単位として、動き補償技術および直交変換・変換係数量子化技術に基づいて圧縮する方法が採用されている。
【０００３】
動き補償技術とは、ビデオフレーム間に存在する高い相関を利用してマクロブロックごとに時間方向の信号の冗長度を削減する技術であり、過去に符号化済みのフレームを参照画像としてメモリ内に蓄積しておき、参照画像中の所定の探索範囲内で、動き補償予測の対象となっている現マクロブロックと最も差分電力の小さいブロック領域を探索して、現マクロブロックの空間位置と探索結果ブロックの空間位置とのずれを動きベクトルとして符号化する技術である。
【０００４】
一方、直交変換・変換係数の量子化は、空間方向に残存する画像信号の冗長度を削減する技術であり、直交変換には変換係数の電力集中度の最適性からＤＣＴ(離散コサイン変換)が広く用いられている。一般に、画像信号にＤＣＴを施すと低周波成分に係数が集中することが知られており、この性質を利用して画像の波形表現上重要な周波数成分を効率よく符号表現できる。また、係数の視覚的な重要度に応じて量子化処理を上手に設計することによって、圧縮による画質劣化を抑えつつ高い圧縮率での符号化が行えることがわかっている。
【０００５】
しかしながら、ＤＣＴによる圧縮では、本質的に、高い圧縮率のケースでは視覚的に重要な係数もある程度は量子化によってその再現性を犠牲にせざるを得ないため、復号画像にはそれに伴う固有の画像劣化が現れることも知られている。特に、上記のような既存の標準技術では、８ｘ８画素のブロックを単位としてＤＣＴを行うことが多く、波形表現に使用される基底がブロック境界で断絶され、かつ基底の表現精度が量子化により制限されてしまうため、ブロック間に視覚的に不連続な波形が現れる。（図７参照）
これは一般にブロックひずみ、ないしはブロックノイズと呼ばれ、ＤＣＴを用いる符号化では不可避かつ重大度の高い劣化として認識されている。
【０００６】
この劣化を低減するための工夫として、標準で規定される映像フレーム復号処理が完了した後で、復号されたフレーム画像に対する後処理としてブロック境界の不連続性を積極的な演算によって除去するポストフィルタ処理がある。MPEG-4ビジュアル標準(ISO/IEC 14496-2)では、標準規格範囲外の技術として、参考情報という形式で推奨ポストフィルタ処理を規定している。この処理について以下簡単に説明する。
【０００７】
このフィルタは、MPEG-4ビデオデコーダから出力される復号画像信号に対し、ＤＣＴ処理単位となる８×８画素ブロック領域のエッジ部分に対して施される。図８にブロック境界の様子を示す。
【０００８】
フィルタ処理においては、ブロック境界の周辺の状況に応じて２つのモードを使い分ける。２つのモードとは、ブロック境界をはさむ２つのブロック間での画素変化が平坦な場合のモード(ＤＣオフセットモード)と、逆に画素変化が激しい場合のモード(デフォルトモード)である。
ブロック間の画素変化が平坦な場合は、境界に強めのローパスフィルタを施しても、フィルタ処理された画素の値はその他の隣接画素と極端に異ならないが、ブロック間の画素変化が激しい場合は隣接画素とかなり変わってきてしまうことがある。そのために上記２つのモードを用意している。
【０００９】
(1)  ステップ１：フィルタモード選択
各水平・垂直のフィルタ処理対象箇所に対して、以下の手順により、モード選択を行う。eq_cntは、ブロック境界をはさむブロック間での画素変化の激しさを定量化する量である。
【００１０】
eq_cnt = φ (v0-v1) +φ(v1-v2) +φ(v2-v3) +φ(v3-v4) +φ(v4-v5) +φ(v5-v6)
+φ(v6-v7) +φ(v7-v8) +φ(v8-v9),
ただし、φ(γ) = (|γ | ≦ THR1 ならば１、さもなくば０)
If (eq_cnt  ≧  THR2)
ＤＣオフセットモード選択
else
デフォルトモード選択
閾値THR1, THR2は実際の運用で定まる定数である。
【００１１】
(2)  ステップ２：デフォルトモードにおけるポストフィルタ処理
デフォルトモードでは、ブロック境界周辺の画素を用いて空間周波数情報を生成し、それに基づいて適応的に非線形フィルタ処理を施す。フィルタ処理対象画素は図8のv4とv5であり、以下の手順によってこれらをv4' と v5'に置換する。
【００１２】
v4' = v4-d,
v5' = v5+d,
d = CLIP(5・(a3,0'− a3,0)//8, 0, (v4−v5)/2) ・δ (|a3,0| < QP)
a3,0' = SIGN(a3,0) ・MIN(|a3,0|, |a3,1|, |a3,2|).
a3,0, a3,1, a3,2は空間周波数情報であり、近似ＤＣＴカーネル[2 -5 5 -2] との内積（・）によって下式で算出する。//は四捨五入を示す。
【００１３】
a3,0 = ([2 -5 5 -2] ・ [v3 v4 v5 v6]T ) // 8,
a3,1 = ([2 -5 5 -2] ・ [v1 v2 v3 v4]T ) // 8,
a3,2 = ([2 -5 5 -2] ・ [v5 v6 v7 v8]T ) // 8.
CLIP(x,p,q) は、入力x をp とqを上下限とする値にクリップする関数であり、QPは、v5 が属するマクロブロックで使用される量子化ステップパラメータである。関数(condition)は"condition" が満足されれば１、さもなくば0を返す。本処理から明らかなように、デフォルトモードでは、v4 と v5の値を慎重に非線形選択し、その他周辺画素との際立った違いが発生しないようにフィルタ処理が行われる。
【００１４】
(3)ステップ３：ＤＣオフセットモードにおけるポストフィルタ処理
ＤＣオフセットモードでは、フィルタ処理対象の画素と周辺画素との間に画素値変化があまりないと考えられるため、より強い線形フィルタ処理(９タップのＦＩＲフィルタ)が適用される。ただし、フィルタ処理を適用するか否かについては、量子化ステップパラメータとフィルタ処理対象画素の最大値に基づいて適応的に選択する。
【００１５】
max = MAX (v1, v2, v3, v4, v5, v6, v7, v8),
min = MIN (v1, v2, v3, v4, v5, v6, v7, v8),
if ( |max−min| < 2・QP ) {
2005198100.tif 000003
}
else
フィルタ処理を実施しない
以上の手順によりブロック境界に現れるブロックひずみを適応的に除去する技術が上記従来技術として開示されている。
【００１６】
【非特許文献１】MPEG-4ビジュアル標準(ISO/IEC 14496-2) Annex F
【発明の開示】
【発明が解決しようとする課題】
【００１７】
従来のようなポストフィルタ処理は、フィルタ処理対象領域ごとに多くの非線形・判断処理を伴うため、これらの処理を効率的に実行できないＣＰＵないしは演算命令が限られる機能限定コプロセッサでは実現することが困難である。モバイル映像端末などの消費電力の制約が厳しいハードウエアでは、さらに演算ステップ数の削減も必要となる。
【００１８】
本発明は、少ない処理でフィルタ処理を実現することを目的とする。
【課題を解決するための手段】
【００１９】
本発明では、画像信号における画素値の変化度合を示す評価値を算出し、この算出した評価値を用いてフィルタ係数に対し演算処理を行い、この演算処理したフィルタ係数を用いて上記画像信号の画素に対するフィルタ処理を行うようにしたものである。
【発明の効果】
【００２０】
本発明によれば、効率的に少ない処理でフィルタ処理を実現することができる。
【発明を実施するための最良の形態】
【００２１】
実施の形態１．
本実施の形態１では、映像の各フレーム画像をマクロブロックの単位に分割し、さらに、マクロブロックが８×８画素ブロックの単位でＤＣＴを行って符号化された動画像圧縮データを入力として、同データを復号・伸張した後、ＤＣＴブロック境界に残存するブロックひずみを除去するポストフィルタ処理を施して再生画像を得る動画像復号装置に適用した場合について説明する。
【００２２】
本実施の形態における画像処理装置の特徴は、各フレームの局所的な画像の性質に適応可能なポストフィルタ処理を、加減算およびビット演算のみを用いて簡易に実現する点にある。本実施の形態１における動画像復号装置の構成を図１に示す。同図における動画像復号装置は、可変長復号部２７、逆量子化部１８、逆直交変換部１９、加算器５５、切替器５４、動き補償部７、フレームメモリ３を有している。
【００２３】
(1)復号装置の動作概要
次に、図１に示す実施の形態１の動画像復号装置の動作を説明する。
【００２４】
図１に示した復号装置では、動画像圧縮データ１を受け取ると、可変長復号部２にてエントロピー復号処理が行われ、動きベクトル３、符号化モード情報４、直交変換係数データ５、量子化ステップパラメータ６などが復元される。
【００２５】
直交変換係数データ５、量子化ステップパラメータ６は、逆量子化部７と逆直交変換部８によって復号される。
【００２６】
また、切替器９は、符号化モード情報４が動き予測モードを示している場合は、動き補償部１０において、動きベクトル３と符号化モード情報４とに基づいてフレームメモリ１１中の参照画像から予測画像１２を生成して出力する一方、イントラモードを示している場合は、０を出力する。動き予測モードでは、逆直交変換部８の出力は、従来技術に述べた動き補償予測の結果の予測誤差信号であるので、動きベクトル３を用いて参照画像から符号化側で生成したものと同じ予測画像１２を生成し、加算部１３において逆直交変換部８の出力と加算することで復号画像１４を再現する。イントラモードは参照画像をまったく利用せずにフレーム内符号化された場合であり、この場合は、切替器９の出力がゼロであるため、逆直交変換部８の出力がそのまま復号画像１４となる。復号画像１４は以降のフレームの予測画像生成に用いられるため、フレームメモリ１１に格納される。
【００２７】
復号画像１４はまた、ポストフィルタ処理部１５におけるポストフィルタ処理を経て表示用メモリ１６に格納され、所定の表示タイミング１７をトリガとして表示デバイス１８に出力される。表示タイミング１７には、復号装置の上位制御部が生成するフレーム表示時刻や、符動画像圧縮データ中に含まれる各フレームの表示タイムスタンプなどが用いられることがある。表示デバイス１８への出力の際、デバイスの仕様に応じて、適宜色空間変換(ＹＵＶ→ＲＧＢ変換など)が行われる。
【００２８】
(2)ポストフィルタ処理部の詳細動作
本発明の画像処理装置に対応するポストフィルタ処理部１５の内部構成を図２に示す。図２に示すように、本実施の形態のポストフィルタ処理部１５は、処理単位の画像データを格納するバッファ１９、バッファ１９から処理対象箇所ごとに所定の画素データを取り出し、処理対象箇所の空間周波数状態を評価する値（画素値の変化度合を示す評価値）を算出する空間周波数状態評価値算出部２０、空間周波数状態評価値算出部２０の出力を用いてフィルタ係数メモリ２３に格納されるデフォルトのフィルタ係数を加工するファクタを算出するフィルタ係数加工ファクタ算出部２１、フィルタ係数加工ファクタ算出部２１の出力に基づいて、フィルタ係数メモリ２３に格納されるフィルタ係数を加工処理するフィルタ係数加工処理部２２、フィルタ係数加工処理部２２の出力である加工されたフィルタ係数を用いてフィルタ処理を実行するフィルタ処理部２４、とから構成される。
【００２９】
フィルタ係数加工ファクタ算出部２１、フィルタ係数加工処理部２２により、フィルタ係数演算部が構成されるものである。
【００３０】
また、ポストフィルタ処理の処理フローを図３に示す。
以下、図２および図３をもとにポストフィルタ処理部１５の詳細動作を説明する。
【００３１】
(2)-1  フィルタ処理対象画素
本実施の形態におけるポストフィルタ処理の対象となる画素は、図４に示すようなp2およびp3、すなわち、ブロックの境界にある隣接する画素とする。バッファ１９には、図４に示す２４画素×２４画素からなる画像データが格納されるものとする(ステップS1)。
【００３２】
このエリアは、フィルタ処理対象のマクロブロック（図４の右下の太線で囲まれている４つのブロックからなる16画素×16ラインエリア）を包含しており、さらにフィルタ処理に必要な周辺画素データを追加したものである。フィルタ処理は図４の太線で示される４つの８×８ブロックの境界全てに対して行われるため、p2およびp3は水平ラインに沿って３２箇所、垂直ラインに沿って３２箇所の計６４箇所定義される。
【００３３】
(2)-2  空間周波数状態評価値の算出
次いで、バッファ１９中から、空間周波数状態評価値を計算するのに用いる画素値p1〜p4を取り出す(ステップS2)。
【００３４】
空間周波数状態評価値C(n), 1<=n<=3を下式により求める(ステップS3)。
【００３５】
C(n)は4次のアダマール変換のDC成分以外に相当し、画素値p1〜p4のベクトル内に含まれる周波数成分の指標を与えるものである。これらは、ステップS2で取り出した画素値より加減算のみで計算できる。
【００３６】
C(1) = p1 - p2 + p3 - p4;
C(2) = p1 + p2 - p3 - p4;
C(3) = p1 - p2 - p3 + p4;
【００３７】
(2)-３  フィルタ係数加工ファクタの算出
続いて、(2)-２で求めたC(n)を用いて、フィルタ係数メモリ２３に格納されるデフォルトのフィルタ係数に対して、それを加工するためのファクタ c を算出する(ステップS4)。c は下式で求め、結果は0または1となる。
c  =  ( C(1)/TH(1) != 0 ) | ( C(2)/TH(2) != 0 ) | ( C(3)/TH(3) !=0 );
例えば、C(1)/TH(1) != 0 は C(1)/TH(1)が0でない場合に値が１となることを示し、| はOR演算を示すものである。
【００３８】
この処理は除算および条件判定を伴うが、以下の処理に置き換えることにより、ビット演算のみで計算可能である。
１）  TH(n)はビットシフトで置き換え可能な２のべき乗とする。
２）  C(n)/TH(n)の有効桁数を A(n)とし、MSB側のA(n)の最上位からLSB側に至るまで１ビットずつビットシフトを行い、それぞれ0x1とのANDを行った結果をすべてORする。
３）C(n)/TH(n)のそれぞれのnについての結果をORする。
【００３９】
したがって、ステップS4はすべての計算をビット演算(シフト、AND、OR)のみで実行できる。
【００４０】
(2)-4  フィルタ係数の加工とフィルタ処理の実行
本実施の形態では、デフォルトのフィルタを例えば[ 1, 3, 8, 3, 1 ]の5タップFIRフィルタと定義する。これがフィルタ係数メモリ２３に格納されるものとする。(2)-3で算出したフィルタ係数加工ファクタ c を用いて、実際に使用するフィルタ係数を以下のように加工する(ステップS5)。
【００４１】
フィルタ係数：  [ 1>>c, 3>>(c<<1), 8<<c, 3>>(c<<1), 1>>c ]
例えば >>cは右へｃビットシフトすることを示す。
【００４２】
この結果として、フィルタ係数は、c=0では[ 1, 3, 8, 3, 1 ]となってデフォルト係数のまま、c = 1では[0, 0, 16, 0, 0]となってフィルタOFFと等価な係数となる。つまり、本実施の形態では、空間周波数状態評価値が所定の値よりも大きい場合はフィルタが自動的にOFFになり、さもなくば5タップFIRフィルタが施されることになる。
【００４３】
上記加工されたフィルタ係数を用いて、p2およびp3のフィルタ処理を実行する(ステップS6)。実行された結果は、バッファ１９中の画像データ中のフィルタ処理対象画素に書き戻されて出力される。
【００４４】
以上の(2)−２〜(2)−４の処理を、(2)−1で述べた各フィルタ処理対象箇所ごとに実行する。
【００４５】
以上の構成によるポストフィルタ処理によれば、図３から明らかなように、適応化処理も含めすべてのプロセスを簡易な演算子(加減算およびビット演算)のみで条件分岐無しに実行できる。したがって条件分岐命令を持たない簡易な演算専用コプロセッサへの実装も容易となる。条件分岐が利用可能な汎用CPUであっても、必要最低限の条件分岐を使用することで実装を効率化することが可能である。
【００４６】
なお、本実施の形態では、フィルタ加工結果がフィルタON/OFFとなる設計例を示しているが、デフォルトのフィルタ係数やフィルタ加工ファクタ c を用いたさまざまな加工式を定義することで、フィルタの強弱を調整するように設計することも可能である。フィルタ係数加工ファクタ c を1ビットでなく、多値表現可能としてさらなる微調整を行えるように設計することも考えられる。
【００４７】
さらに、本実施の形態ではフィルタ処理対象をp2およびp3としたが、演算性能にゆとりがあれば、さらにその周辺もフィルタ処理対象としたり、空間周波数状態評価値の算出の際により多くのサンプルを使用して高次のアダマール変換を実行して評価値の精度を高めるように設計してもよいし、空間周波数状態評価値の算出をDCTなど他の空間―周波数変換を利用して実現してもよいのは言うまでもない。また、本実施の形態における空間周波数状態評価値を利用して従来例に述べたMPEG-4推奨ポストフィルタにおけるDCオフセット・デフォルトモードの選択を行うように構成することもできる。本実施の形態は、輝度信号、色差信号のいずれにも適用可能であり、いずれか一方にフィルタ処理を行ってもよいし、両者に処理を行ってもよい。
【００４８】
実施の形態２．
本実施の形態２では、実施の形態１におけるポストフィルタ処理部１５の別の構成について述べる。
【００４９】
本実施の形態では、画像処理装置としてのポストフィルタ処理部１５の動作を、手順(2)−４においてフィルタ係数をデフォルト値から加工するのでなく、手順(2)−３で算出した加工ファクタのとりうる値の分だけテーブルとしてフィルタ係数を保持しておき、(2)−３で算出した加工ファクタを要素とするフィルタ係数を取り出して使用するように構成するようにしている。これにより、手順(2)-4で必要となるビット演算をスキップすることが可能となる。本実施の形態では、実施の形態１に対してポストフィルタ処理部だけが異なるので、ポストフィルタ処理部１５の動作についてのみ説明する。
【００５０】
ポストフィルタ処理部の詳細動作
本実施の形態におけるポストフィルタ処理部１５の内部構成を図５に示す。同図に示すように、本実施の形態のポストフィルタ処理部１５は、処理単位の画像データを格納するバッファ１９、バッファ１９から処理対象箇所ごとに所定の画素データを取り出し、処理対象箇所の空間周波数状態を評価する値を計算する空間周波数状態評価値算出部２０、空間周波数状態評価値算出部２０の出力を用いてフィルタ係数メモリ２３に格納されるデフォルトのフィルタ係数を選択するファクタを算出するフィルタ係数選択ファクタ算出部２５、フィルタ係数選択ファクタ算出部２５の出力に基づいて、フィルタ係数メモリ２７に格納されるフィルタ係数の組の中から使用するフィルタ係数を選択するフィルタ係数選択処理部２６、フィルタ係数選択処理部２６の出力であるフィルタ係数を用いてフィルタ処理を実行するフィルタ処理部２４、とから構成される。
【００５１】
フィルタ係数選択ファクタ算出部２５、フィルタ係数選択処理部２６により、フィルタ係数選択設定部が構成されるものである。
【００５２】
この実施例におけるポストフィルタ処理の処理フローを図６に示す。
【００５３】
以下、図５および図６をもとにポストフィルタ処理部１５の詳細動作を説明する。
【００５４】
(1)フィルタ処理対象画素
実施の形態１における(2)−１に記載の内容と同じである。
【００５５】
(2)空間周波数状態評価値の算出
実施の形態１における(2)−２に記載の処理と同じである(ステップS2、S3)。空間周波数状態評価値算出部２０で実施される。
【００５６】
(3)フィルタ係数選択ファクタの算出
実施の形態１における(2)−３に記載の、フィルタ係数加工ファクタ算出処理と同じである(ステップS4)。フィルタ係数選択ファクタ算出部２５で実施される。本ステップで算出される加工ファクタ c を、以下、本実施例ではフィルタ係数選択ファクタとして用いる。
【００５７】
(4)フィルタ係数の選択とフィルタ処理の実行
本実施の形態では、フィルタ係数メモリ２７に、上記(3)の手順で算出されるフィルタ係数選択ファクタのとりうる値の数だけの組のフィルタ係数を記憶しておき、フィルタ係数選択ファクタの値を要素とするフィルタ係数を取り出すことにより、フィルタ係数を選択する(ステップS7)。これは、フィルタ係数選択部２６で実施される。
【００５８】
例えば、フィルタ係数メモリ２７に記憶するフィルタ係数をcoeff_set [2] = { [ 1, 3, 8, 3, 1 ]、[ 0, 0, 16, 0, 0 ] } としておけば、c=0では[ 1, 3, 8, 3, 1 ]、c=1では[ 0, 0, 16, 0, 0 ]が選択されるため、実施の形態１と等価の結果が得られる。フィルタ係数メモリ２７に使用できるメモリサイズがある程度確保可能であれば、フィルタ係数選択ファクタの取りうる値の範囲を広げて、フィルタ係数メモリ２７の内容を適切に設定することにより、実施の形態１のように演算によって決定されるフィルタ係数の組よりも柔軟性の高いフィルタ選択が可能となり、より画像の局所的な性質に適応させたフィルタ処理を行うことができる。
【００５９】
上記選択されたフィルタ係数を用いて、p2およびp3のフィルタ処理を実行する(ステップS6)。実行された結果は、バッファ１９中の画像データ中のフィルタ処理対象画素に書き戻されて出力される。
【００６０】
以上の(2)〜(4)の処理を、(1)で述べた各フィルタ処理対象箇所ごとに実行する。
【００６１】
以上の構成によるポストフィルタ処理によれば、図６から明らかなように、適応化処理も含めすべてのプロセスを簡易な演算子(加減算およびビット演算)のみで条件分岐無しに実行できる。したがって条件分岐命令を持たない簡易な演算専用コプロセッサへの実装も容易となる。条件分岐が利用可能な汎用CPUであっても、必要最低限の条件分岐を使用することで実装を効率化することが可能である。
【００６２】
なお、本実施の形態では、フィルタ選択結果がフィルタON/OFFとなる設計例を示しているが、デフォルトのフィルタ係数の組やフィルタ係数選択ファクタ c のとりうる値を多値表現とすることで、フィルタの強弱を調整するように設計することも可能である。また、フィルタ係数選択ファクタ c の値に応じて、フィルタのタップ数を制御するように設計することもできる。例えば、フィルタ係数選択ファクタが c = 0のときに7タップFIRを、c = 1のときに5タップFIRを選択するように設計することができる。これは、フィルタ係数選択ファクタ c の値からフィルタタップ数を一意に導く計算式を定義すればよく、上記の例では、tap number = (c<<1) + 5 とすることでタップ数を導くことができる。フィルタタップ数はフィルタの周波数特性を制御するファクタとなるため、これによってもフィルタ処理結果を制御可能である。
【００６３】
さらに、本実施の形態ではフィルタ処理対象をp2およびp3としたが、演算性能にゆとりがあれば、さらにその周辺もフィルタ処理対象としたり、空間周波数状態評価値の算出の際により多くのサンプルを使用して高次のアダマール変換を実行して評価値の精度を高めるように設計してもよいし、空間周波数状態評価値の算出をDCTなど他の空間―周波数変換を利用して実現してもよいのは言うまでもない。また、本実施の形態における空間周波数状態評価値を利用して従来例に述べたMPEG-4推奨ポストフィルタにおけるDCオフセット・デフォルトモードの選択を行うように構成することもできる。本実施の形態は、輝度信号、色差信号のいずれにも適用可能であり、いずれか一方にフィルタ処理を行ってもよいし、両者に処理を行ってもよい。
【００６４】
以上説明したようにすることにより、フィルタON/OFFないし係数の調整を簡易な加減算・ビット演算、ないしはテーブル参照のみで実現できるので、従来技術のようにフィルタ処理対象領域ごとに多くの非線形・判断処理を伴うことがない。したがって、フィルタ対象画素領域の画素変化の度合（激しさ）を示す指標に基いて適応的にフィルタ処理を行うアルゴリズムを、汎用ＣＰＵないしはコプロセッサが少ないステップ数で実現可能な演算のみで実現可能な、簡易なポストフィルタ構成方法を提供することができる。
【００６５】
汎用ＣＰＵのみならず演算命令が限られる機能制限コプロセッサにおいても画像の局所的な性質に適応したポストフィルタ処理が可能である。
【００６６】
なお、本発明は、ＤＣＴを用いる動画像復号装置や方法、静止画復号装置や方法等全般に対して適用可能である。
【図面の簡単な説明】
【００６７】
【図１】実施の形態における動画像復号装置の構成を示した構成図である。
【図２】実施の形態におけるポストフィルタ処理部１５の内部構成を示した構成図である。
【図３】実施の形態におけるポストフィルタ処理部１５の処理フローを示したフローチャートである。
【図４】実施の形態におけるポストフィルタ処理部１５によるフィルタ処理対象画素を説明する説明図である。
【図５】実施の形態におけるポストフィルタ処理部１５の内部構成を示した構成図である。
【図６】実施の形態１におけるポストフィルタ処理部１５の処理フローを示したフローチャートである。
【図７】DCT符号化に伴うブロックひずみを説明する説明図である。
【図８】MPEG-4ビジュアル標準で推奨されるポストフィルタ処理の処理対象画素を説明する説明図である。
【符号の説明】
【００６８】
１５  ポストフィルタ処理部
２０  空間周波数状態評価値算出部
２１  フィルタ係数加工ファクタ算出部
２２  フィルタ係数加工処理部２２
２３  フィルタ係数メモリ
２４  フィルタ処理部
２５  フィルタ係数選択ファクタ算出部
２６  フィルタ係数選択部
２７  フィルタ係数メモリ
【図１】
2005198100.tif 000004
【図２】
2005198100.tif 000005
【図３】
2005198100.tif 000006
【図４】
2005198100.tif 000007
【図５】
2005198100.tif 000008
【図６】
2005198100.tif 000009
【図７】
2005198100.tif 000010
【図８】
2005198100.tif 000011