(57)【要約】【課題】境界画素の対象を新たに斜め方向にも探索して、ブロック境界で相関性のある最適画素を見つけ、より元画像に近い再現性を達成可能とすること。【解決手段】ある水平サイズとある垂直サイズとを持つ画像を圧縮したデータを小ブロック単位で復号化する処理で、ブロックノイズを低減するための処理方法において、隣接ブロック境界画素に着目したとき境界部分のレベル差がもっとも少ない上下斜め左右方向の隣接画素を探し、さらに、同ブロック内の境界画素の隣接画素のうちもっとも差が少ない上下斜め左右方向の隣接画素を探す。【選択図】      図１
2005005865.tif 000002
【特許請求の範囲】
【請求項１】
ある水平サイズとある垂直サイズとを持つ画像を圧縮したデータを小ブロック単位で復号化する処理での、ブロックノイズを低減するための処理方法であって、
隣接ブロック境界画素に着目したとき境界部分のレベル差がもっとも少ない上下斜め左右方向の隣接画素を探し、さらに、同ブロック内の境界画素の隣接画素のうちもっとも差が少ない上下斜め左右方向の隣接画素を探すことを特徴とする画像復号化処理方法。
【請求項２】
請求項１記載において、
その隣接画素上下斜め左右の変化が閾値以下であることを検出することによりブロックノイズ補正の対象とし、ブロックノイズ補正は、そのもっとも変化が少ない画素とのフィルタリングにより、境界を滑らかにすることを特徴とする画像復号化処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、高能率画像符号化処理方式により画像を圧縮したものを表示再生する場合の、復号化処理にかかわる技術に関するものである。
【０００２】
【従来の技術】
ブロックノイズを除去する方法として、以下のような方法が知られている。
【０００３】
例えば、復号画像のブロック境界に位置する画像（ブロックの境界に位置する画像とは隣合う画素、すなわち、ブロックの水平境界は横方向の画素、ブロックの垂直境界は縦方向の画素を意味する）にフィルタリング後の値とフィルタリング前の差分値をとり、その大きさによって画像エッジであるかブロックノイズであるかを判別する。そして、ブロックノイズであれば、フィルタリングして滑らかにした後の値を出力するようにした、技術が知られている（特許文献１参照）。
【０００４】
また、ブロック境界とブロック内部の２画素の絶対差をとり、その割合をとって歪み率とし、その歪み率によってフィルタリングの係数を決定して、そのブロック全体をフィルタリングするようにした、技術が知られている（特許文献２参照）。なお、この特許文献２に記載された技術でも、やはりブロック間の水平方向の境界に関しては横方向の画素、ブロック間の垂直方向の境界に関しては縦方向の画素について、その絶対値差分をとっている。
【０００５】
【特許文献１】
特開平０２−０５７０６７号公報
【０００６】
【特許文献２】
特開平０７−０３８７６２号公報
【０００７】
【発明が解決しようとする課題】
ところが、前記特許文献１に記載された技術では、たとえば水平方向のブロック境界を考えてみると、横線がある場合には効果的であるが、斜め方向に線があった場合には、フィルタがかかり、かえって線が水平に拡散されてぼやけてしまうという問題があった。同様に、垂直方向のブロック境界を考えてみると、縦線には効果的であるが、斜め方向の線は拡散されてぼやけてしまうという問題があった。
【０００８】
また、前記特許文献２に記載された技術では、ブロックノイズが多いと判断された個所はすべてブロック内をフィルタリングしているため、内部の細かい信号まで拡散されてぼやけてしまうという問題があった。さらにまた、特許文献２に記載された技術においても、やはり水平成分は横隣の画素の対、垂直成分は縦隣の画素の対で比較しているため、斜め成分の相関性に対しては、全く考慮が払われていなかった。
【０００９】
本発明は上記の点に鑑みなされたもので、その目的とするところは、境界画素の対象を新たに斜め方向にも探索して、ブロック境界で相関性のある最適画素を見つけ、より元画像に近い再現性を達成可能とすることにある。
【００１０】
【課題を解決するための手段】
本発明では、ある水平サイズとある垂直サイズとを持つ画像を圧縮したデータを小ブロック単位で復号化する処理で、ブロックノイズを低減するための処理方法において、隣接ブロック境界画素に着目したとき境界部分のレベル差がもっとも少ない上下斜め左右方向の隣接画素を探し、さらに、同ブロック内の境界画素の隣接画素のうちもっとも差が少ない上下斜め左右方向の隣接画素を探すようにする。
まず、水平ブロック境界について考えてみる。右横に隣接ブロックがあり、その右ブロックに接する左ブロック内の一番右側の１画素に対して、その斜め上の画素、横の画素、斜め下の画素のうち、もっとも近い値の画素を選択する。さらに、その差分をとり、閾値以下であるか否かを判別する。
また、垂直ブロック境界について考えてみる。上に隣接ブロックがあり、その上ブロックに接する下ブロック内の一番上側の１画素に対して、その斜め右上の画素、真上の画素、斜め左上の画素のうち、もっとも近い値の画素を選択する。さらに、その差分をとり、閾値以下であるか否かを判別する。
そして、もっとも値の近い画素との絶対差分が閾値以下であれば、その画素と値の近い画素とのフィルタリングを行なう。フィルタリング特性は、方向、絶対値差分量により変えるようにされる。
【００１１】
【発明の実施の形態】
以下、本発明の実施の形態を、図面を用いて説明する。
【００１２】
図１〜図５は本発明の一実施形態に係り、図１は本実施形態による信号処理系（ある水平サイズとある垂直サイズとを持つ画像を圧縮したデータを小ブロック単位で復号化する処理で、ブロックノイズを低減するための画像信号処理系）の構成を示すブロック図である。図１において、１Ａ〜１Ｆは減算回路、２Ａ〜２Ｆは絶対値回路、３Ａ，３Ｂは最小値検出回路、４Ａ，４Ｂは絶対差最小値をとる画素を選択するセレクタ、５Ａ，５Ｂは隣接ブロックの絶対差最小値をとる画素との係数乗算回路、６は加算回路、７は閾値との比較回路、８はそのまま現在の画素出力かフィルタ処理値かを選択するセレクタ、９はブロック内隣接画素の絶対差最小値との係数乗算回路、１０はブロック内隣接画素の絶対差閾値との比較回路、１１はブロック内画素との係数乗算値かＡＬＬ‘０’かを選択するセレクタ、１２は補正値計算（割合加算）回路である。
【００１３】
図２、図３は本実施形態による実際の補正の様子を表しており、図２はブロック境界に斜め方向に線がない場合の様子を示し、図３はブロック境界に斜め方向に線がある場合の様子を示している。なお、図２の（ａ）および図３の（ａ）はそれぞれ入力画像を示し、図２の（ｂ）および図３の（ｂ）はそれぞれ補正処理後の出力画像を示している。
【００１４】
図２、図３に示した例では、１つのブロックは８×８の画素からなっており、そのうちのブロック境界画素とは、ブロック各辺（４辺）の８つの周辺画素のことを指す。図２、図３では  左側のブロックにおいて、破線部分ａ（０，ｉ）またはａ（７，ｉ）またはａ（ｉ，０）またはａ（ｉ，７）が境界画素であり、右側のブロックにおいて、破線部分ｂ（０，ｉ）またはｂ（７，ｉ）またはｂ（ｉ，０）またはｂ（ｉ，７）が境界画素である（ただし、ｉは０〜７の整数である）。
【００１５】
本実施形態では、境界画素のブロックノイズを補正しようとしたとき、まず、評価対象とする１つの境界画素を定義し、その定義した境界画素が含まれるブロックの隣のブロックにおいて、定義した境界画素が隣接する３つの隣接画素を求めて、この求めた３つの隣接画素の信号を前記減算回路１Ａ〜１Ｃの一方の入力端に入力すると共に、減算回路１Ａ〜１Ｃの他方の入力端には上記の定義した境界画素の信号を入力する。また、上記の定義した境界画素が含まれるブロック内において、定義した境界画素が隣接する３つの隣接画素を求めて、この求めた３つの隣接画素の信号を前記減算回路１Ｄ〜１Ｆの一方の入力端に入力すると共に、減算回路１Ｄ〜１Ｆの他方の入力端には上記の定義した境界画素の信号を入力する。そして、これにより図１の信号処理系や、これを統括管理・制御する上位コントローラによって、図４に示したような処理フローが実行される。なお、上記でいう隣接する３つの隣接画素とは、左上，上，右上、または右上，右横，右下、または左下，下，右下、または左上，左横，左下のいずれかを指す。
【００１６】
図１〜図４を用いて、本実施形態の動作を説明する。あるブロックに対してのフィルタリング処理が開始されると、まず、評価対象とする１つの境界画素が定義され、その定義した境界画素が含まれるブロックの隣のブロックにおいて、定義した境界画素が隣接する３つの隣接画素を求め、また、定義した境界画素が含まれるブロックにおいて、定義した境界画素が隣接する３つの隣接画素を求める（ステップＳ１）。例えば、図２、図３の左側のブロックの境界画素ｂ（４，０）のブロックノイズを補正しようとしたときには、図示左側のブロックにおいて隣接画素として画素ｂ（４，０）の左上（斜め上），左横，左下（斜め下）の画素ａ（３，７），ａ（４，７），ａ（５，７）が求められ、また、図示右側のブロックにおいて隣接画素として境界画素ｂ（４，０）の右上（斜め上），右横，右下（斜め下）の画素ｂ（３，１），ｂ（４，１），ｂ（５，１）が求められる。
【００１７】
次に、定義した境界画素ｂ（４，０）の信号と、隣接ブロックの隣接画素ａ（３，７），ａ（４，７），ａ（５，７）の各信号とのそれぞれのレベル差を、減算回路１Ａ〜１Ｃで求め、求めた各レベル差を対応する絶対値化２Ａ〜２Ｃでそれぞれ絶対値化したものを最小値検回路３Ａに入力して、最小の絶対値差を求める（ステップＳ２）。そして、比較回路７において、求めた最小の絶対値差を第１の閾値ｔｈ１と比較して、最小の絶対値差が第１の閾値ｔｈ１未満であるか否かを判定し（ステップＳ３）、ＮＯ判定であればステップＳ４に進み、ＹＥＳ判定であればステップＳ５に進む。
【００１８】
いま例えば、隣接ブロックの隣接画素ａ（３，７），ａ（４，７），ａ（５，７）のうち、画素ａ（５，７）が、ステップＳ１で定義した画素ｂ（４，０）との絶対値差が最小であるとすると、すなわち、
｜ａ（５，７）−ｂ（４，０）｜＝ｍｉｎ（｜ａ（３，７）−ｂ（４，０）｜，｜ａ（４，７）−ｂ（４，０）｜，｜ａ（５，７）−ｂ（４，０）｜）
であるとすると、次にこの値が、｜ａ（５，７）−ｂ（４，０）｜≧ｔｈ１のとき（ステップＳ３でＮＯ判定のとき）には、比較回路７によってセレクタ８を制御して、ステップＳ１で定義した画素ｂ（４，０）の信号をフィルタリングを行なわずに、そのまま出力する（ステップＳ４）。なおこのとき、比較回路７は比較回路１０を介してセレクタ１１を制御して、セレクタ１１を‘０’出力側に切り換える。
【００１９】
他方、｜ａ（５，７）−ｂ（４，０）｜＜ｔｈ１のとき（ステップＳ３でＹＥＡ判定のとき）には、ステップＳ１で定義した画素ｂ（４，０）の信号に対して補正（フィルタリング）が行われる。このフィルタリングを行うために、まずステップＳ５において、ステップＳ１で求めた画素ｂ（４，０）が属するブロック内の隣接画素ｂ（３，１），ｂ（４，１），ｂ（５，１）の各信号と、画素ｂ（４，０）の信号とのそれぞれのレベル差を、減算回路１Ｄ〜１Ｆで求め、求めた各レベル差を対応する絶対値化２Ｄ〜２Ｆでそれぞれ絶対値化したものを最小値検回路３Ｂに入力して、最小の絶対値差を求める。そして次に、比較回路１０において、求めた最小の絶対値差を第２の閾値ｔｈ２と比較して、最小の絶対値差が第２の閾値ｔｈ２未満であるか否かを判定して（ステップＳ６）、ＮＯ判定であればステップＳ７に進み、ＹＥＳ判定であればステップＳ８に進む。
【００２０】
いま例えば、同一ブロックの隣接画素ｂ（３，１），ｂ（４，１），ｂ（５，１）のうち、画素ｂ（３，１）が、ステップＳ１で定義した画素ｂ（４，０）との絶対値差が最小であるとすると、すなわち、
｜ｂ（３，１）−ｂ（４，０）｜＝ｍｉｎ（｜ｂ（３，１）−ｂ（４，０）｜，｜ｂ（４，１）−ｂ（４，０）｜，｜ｂ（５，１）−ｂ（４，０）｜）
であるとすると、次にこの値が、第２の閾値ｔｈ２未満であるか（ステップＳ６でＮＯ判定）、以上であるか（ステップＳ６でＹＥＳ判定）によって、ステップＳ７、ステップＳ８でのフィルタリングを異ならせる。
【００２１】
ここで、ｔｈ１＞ｔｈ２である。なぜなら、第２の閾値ｔｈ２はブロック内の画素間の差を判定する値であり、ブロック内画素間の差は、ブロックをまたがる画素間の差よりもブロックノイズは少なく、ブロックをまたがる画素間の差を判定する第１の閾値ｔｈ１よりも小さい値とすべきだからである（もし、ｔｈ２以上のレベル変化があれば、その画素は元画像そのものの情報である）。
【００２２】
｜ｂ（３，１）−ｂ（４，０）｜≧ｔｈ２のとき（ステップＳ６でＮＯ判定ののとき）には、同一ブロック内の画素ｂ（３，１）の情報は使わず、隣接ブロックの画素ａ（５，７）の情報のみを用いて、フィルタリングを行なう（ステップＳ７）。
【００２３】
｜ｂ（３，１）−ｂ（４，０）｜＜ｔｈ２のとき（ステップＳ６でＹＥＳ判定のとき）には、画素ｂ（３，１）が画素ｂ（４，０）と連続性のあるものとして、隣接ブロックの画素ａ（５，７）の情報と、同一ブロック内の画素ｂ（３，１）とを用いて、フィルタリングを行う（ステップＳ８）。
【００２４】
フィルタリングの方法についてはさまざまな方法が考えられるが、ここでは以下のようにする。
【００２５】
もし、｜ｂ（３，１）−ｂ（４，０）｜＜ｔｈ２が成立するのであれば、
2005005865.tif 000003
として補正する。ただし、ｋ１，ｋ２，ｋ３は、係数乗算回路５Ａ，５Ｂ，９の係数であり、このとき、ｋ１＋ｋ２＋ｋ３＝１である。
【００２６】
すなわち、ステップＳ８では、セレクタ４Ａ，４Ｂを制御して絶対値差最小値をとる画素（ここでは、画素ｂ（３，１）、画素ａ（５，７））をそれぞれ選択し、係数乗算回路５Ａ，５Ｂの各出力を加算した加算回路８の加算結果が出力されるように、セレクタ８を係数乗算値出力側に切り換え、また、係数乗算回路９の出力が出力されるようにセレクタ１１を係数乗算値出力側に切り換え、割合加算回路１２によって上記の（１）式の結果を出力する。
【００２７】
また、｜ｂ（３，１）−ｂ（４，０）｜≧ｔｈ２が成立するのであれば、
ｂ’（４，０）＝ｋ１＊ａ（５，７）＋ｋ２＊ｂ（４，０）…（２）式
として補正する。ただし、このとき、ｋ１＋ｋ２＝１である。
【００２８】
すなわち、ステップＳ７では、セレクタ４Ａを制御して絶対値差最小値をとる画素（ここでは、ａ（５，７））を選択し、係数乗算回路５Ａ，５Ｂの各出力を加算した加算回路８の加算結果が出力されるように、セレクタ８を係数乗算値出力側に切り換え、また、セレクタ１１を‘０’出力側に切り換えて、割合加算回路１２から上記の（２）式の結果を出力する。
【００２９】
そして、上述してきた処理を、全ての画素に対して行うまで、同様の処理を繰り返す（ステップＳ９）。
【００３０】
上述したような処理による補正結果は、図２の（ｂ）および図３の（ｂ）のようになり、斜め成分の相関性も考慮した補正がかかるので、過平滑にならずに略そのまま出力され、より元画像に近い再現性が達成可能となる。
【００３１】
図５は、ブロック境界のレベル変化が生じたときのパターンをそれぞれ示している。
【００３２】
パターン１は、ブロック境界画素の差がｔｈ１よりも小さく、ブロック内画素の差がｔｈ２よりも小さい場合で、このときにはブロックノイズがあると判断され、フィルタリングがかかる。
【００３３】
パターン２は、ブロック境界画素の差がｔｈ１よりも大きいため画像そのものの情報（映像の境界）と判断され、フィルタリングされない。
【００３４】
パターン３も、やはり画像そのものの情報（線分）と判断され、フィルタリングされない。
【００３５】
パターン４は、ブロック境界画素の差がｔｈ１よりも小さいが、ブロック内画素の差がｔｈ２よりも大きいので、ブロック内画素の情報は除外されてフィルタリングがかかる。これにより、過平滑されることなくフィルタリングがかかる。
【００３６】
【発明の効果】
以上のように本発明によれば、斜め成分の相関性も考慮したフィルタリングを可能としているので、これによって、もっとも相関性のある画素とのフィルタリングにより、従来よりも画素情報をぼやかすことがなくなる。つまり、境界画素の対象を新たに斜め方向にも探索して、ブロック境界で相関性のある最適画素を見つけるので、より元画像に近い再現性を達成すること可能となる。
さらに、その隣接画素上下斜め左右の変化が閾値以下であることを検出することにより、ブロックノイズ補正の過補正を防止でき、画像情報の詳細を失わないように処理することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る信号処理系の構成を示すブロック図である。
【図２】本発明の一実施形態による処理での、補正の様子などを示す説明図である。
【図３】本発明の一実施形態による処理での、補正の様子などを示す説明図である。
【図４】本発明の一実施形態による処理フローを示すフローチャートである。
【図５】本発明の一実施形態による、パターン別の処理の様子を示す説明図である。
【符号の説明】
１Ａ〜１Ｆ  減算回路
２Ａ〜２Ｆ  絶対値回路
３Ａ，３Ｂ  最小値検出回路
４Ａ，４Ｂ  セレクタ
５Ａ，５Ｂ  係数乗算回路
６  加算回路
７  比較回路
８  セレクタ
９  係数乗算回路
１０  比較回路
１１  セレクタ
１２  補正値計算（割合加算）回路
【図１】
2005005865.tif 000004
【図２】
2005005865.tif 000005
【図３】
2005005865.tif 000006
【図４】
2005005865.tif 000007
【図５】
2005005865.tif 000008