(57)【要約】  ブロック境界線における歪みを除去するが、オリジナル画像の輪郭線がブロック境界線と一致した場合は歪みの除去程度を調整し、画質を向上させる。適応フィルタは、高域通過フィルタによりブロック境界近傍の画素の重みを計算するステップと、その重みによりブロック境界近傍の画素に関する調整された値を決定するステップとからなる。ブロック境界近傍の画素値は調整され、ブロック歪みを除去する。低域通過フィルタが、フィルタ処理された値を決定するためブロック境界近傍の画素に適用される。ブロック境界近傍の画素に関する調整された値は、元の画素値とフィルタ値との加重和を求めることにより決定される。高域通過フィルタはブロック境界近傍の画素の鮮明度を認識し、低域通過フィルタはブロック境界近傍の画素間の差異を減少させるため、適応フィルタは調整された値を出力し、この値はブロック歪みを除去し、画像の鮮明度を保持する。
2009044549.tif 000002
【特許請求の範囲】
【請求項１】
ブロック歪みを除去する方法であって、
隣接する２つのブロックの境界線を挟む第１画素および第２画素の画素値をそれぞれ受け、第１画素および第２画素の高域通過フィルタ値をそれぞれ求め、
第１画素および第２画素の高域通過フィルタ値に基づき、第１画素および第２画素の重みをそれぞれ求め、
第１画素および第２画素の低域通過フィルタ値をそれぞれ求め、
第１画素および第２画素の重みに基づき、第１画素および第２画素の低域通過フィルタ値の調整値を、それぞれ求め、
ブロック歪みを除去するブロック歪除去方法。
【請求項２】
前記第１画素の調整値は、その画素の画素値と低域通過フィルタ値との間の内分点又は外分点いずれか一方であり、第２画素の調整値は、その画素の画素値と低域通過フィルタ値との間の内分点又は外分点いずれか他方である、請求項１記載のブロック歪除去方法。
【請求項３】
更に、ブロック歪みが存在するか否かを検出し、
ブロック歪みが存在する場合は、調整値を用い、ブロック歪みが存在しない場合は、元の画素値を用いる、請求項１記載のブロック歪除去方法。
【請求項４】
ブロック歪みを除去する装置であって、
隣接する２つのブロックの境界線を挟む第１画素および第２画素の画素値をそれぞれ受け、第１画素および第２画素の高域通過フィルタ値をそれぞれ求める高域通過フィルタと、
第１画素および第２画素の高域通過フィルタ値に基づき、第１画素および第２画素の重みをそれぞれ求める重み計算ユニットと、
第１画素および第２画素の低域通過フィルタ値をそれぞれ求める低域通過フィルタと、
第１画素および第２画素の重みに基づき、第１画素および第２画素の低域通過フィルタ値の調整値を、それぞれ求める加重和計算ユニットと、
を設け、ブロック歪みを除去するブロック歪除去装置。
【請求項５】
前記第１画素の調整値は、その画素の画素値と低域通過フィルタ値との間の内分点又は外分点いずれか一方であり、第２画素の調整値は、その画素の画素値と低域通過フィルタ値との間の内分点又は外分点いずれか他方である、請求項４記載のブロック歪除去装置。
【請求項６】
更に、ブロック歪みが存在するか否かを検出する検出ユニットを設け、
ブロック歪みが存在する場合は、調整値を用い、ブロック歪みが存在しない場合は、元の画素値を用いる、請求項４記載のブロック歪除去装置。
【請求項７】
請求項１に記載のブロック歪除去方法をコンピュータにより実行可能とするプログラム。
【請求項８】
請求項４に記載のブロック歪除去装置を組み込んだ集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、適応フィルタを用いることによって、画像の質を向上させ、ブロック境界近傍における画素に関する調整された値を計算する装置および方法に関連する。さらに詳細には、本発明は、ブロック歪みを除去する適応フィルタに関連する。ブロック歪みは、例えばＪＰＥＧファイルのように、静止画像が圧縮されたとき、もしくは例えばＭＰＥＧファイルのように、ビデオが圧縮されたときに発生する。これらの圧縮された画像は、映画、放送番組、およびマルチメディア・ストリーミングにおいて幅広く用いられている。本発明はブロック歪みを有する画像を受け取り、その後、前記適応フィルタを用いることによって画像の質を高め、ブロック境界近傍の画素に関する調整された値を求める。適応フィルタは、重みを計算するための高域通過フィルタと、ブロック境界近傍の画素の不連続性を減少させるフィルタ値を計算するための低域通過フィルタとからなる。適応フィルタは、元の画素値とフィルタ値との加重和を計算することによって、調整された値を決定する。本発明は、ＤＶＤプレイヤ、デジタル・カメラなどの画像処理装置、コンピュータプログラム、およびＬＣＤ、ＰＤＰ、およびＣＲＴなどの画像表示装置において用いることが可能である。
【背景技術】
【０００２】
特許文献１の従来例は、複数のブロックを用いて、動画像を符号化する方法を開示している。この方法はブロック境界周辺のＳ０、Ｓ１、Ｓ２の画素のセットを決定するステップと、モード決定値を取得した後、ブロック歪みの程度にしたがって、デフォルト・モードもしくはＤＣオフセット・モードとして、非ブロック化モードを選択的に決定するステップと、デフォルト・モードが決定される場合、４ポイントＤＣＴカーネルを用いて、画素ごとにブロック境界周辺の周波数情報を取得するステップと、ブロック境界に属する非連続の要素の大きさを、周波数ドメイン中のブロック境界の周囲に属する非連続の要素の最小の大きさに置き換えるステップと、この置き換えステップを空間ドメインに適用するステップと、ＤＣオフセット・モードが決定される場合、このＤＣオフセット・モードを実行することが必要かどうかを判定するステップと、このステップによってＤＣオフセット・モードを実行することが必要だと判定されると、円滑な領域においてブロック歪みを除去するステップとからなる。この従来例の処理を表すフローチャートが図１に示されている。
【特許文献１】米国特許６２４０１３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
この従来例は、２つのモード、すなわちデフォルト・モードとＤＣオフセット・モードとを用いることによって、ブロック歪みを形成する画素値を調整する。このデフォルト・モードにおいて、画素ごとのブロック境界周辺の周波数情報は、４ポイントＤＣＴカーネルを用いることによって取得される。このブロック境界に属する非連続の要素の大きさは、周波数ドメインにおけるブロック境界の周囲に属する非連続の要素の最小の大きさに置き換えられる。ＤＣオフセット・モードにおいて、低域通過フィルタリングが実行される。デフォルト・モードにおいては、境界画素値のみが補償される。このように、デフォルト・モードは、写真における設定などの非常に円滑な領域におけるブロック歪みを除去するには十分ではない。したがって、円滑な領域におけるブロック歪みは、ＤＣオフセット・モードによって除去される。【０００４】
この従来例は、ＤＣＴに基づくフィルタもしくは低域通過フィルタを、ブロック境界に沿った画素に適用して、非常に円滑な領域による不連続性を滑らかにする。低域通過フィルタは非常に円滑な領域において用いられ、ＤＣＴに基づくフィルタは他の種類の領域において用いられる。ブロック境界周辺の画素間の差異は、このようなフィルタを用いることによって減少するため、不連続性は減少し、ブロック歪みを除去することが可能となる。しかしながら、ＤＣＴに基づくフィルタもしくは低域通過フィルタは異常な不連続性を減少させるだけでなく、画素間の自然な変化をも除去する。画素間の自然な変化を除去した結果、鮮明度が失われる。この従来例はＤＣＴに基づくフィルタもしくは低域通過フィルタを用いて、ブロック歪み、不鮮明な状態を除去する。その結果、画像の価値が低下する。【０００５】
ブロック境界に沿って画素の値が異常な不連続性を形成するとき、ブロック境界においてブロック歪みが生じる。従来の方法は、ＤＣＴに基づくフィルタもしくは低域通過フィルタをブロック境界に沿った画素に適用して、不連続性を円滑にする。しかしながら、ＤＣＴに基づくフィルタもしくは低域通過フィルタは異常な不連続性を減少させるだけでなく、画素間の自然な変化をも除去する。ブロック歪みを除去する従来の方法によって、画像は不鮮明になり、かつ画像の質が悪化する。
【課題を解決するための手段】
【０００６】
本発明においては、適応フィルタを用いることによって、ブロック境界近傍における異常な不連続性を減少させる。適応フィルタにおいて、ブロック境界近傍における画素の重みは高域通過フィルタを用いることによって求められ、ブロック境界近傍における画素に関する調整された値は重みを用いて求められる。ブロック境界の各側の画素に適用された高域通過フィルタは、ブロック境界近傍の画素の特徴を認識する。注目画素と、その両隣にある画素との明るさレベルを結んだ線が、逆Ｖ字型である場合は、高域通過フィルタ値は正の値になる一方、Ｖ字型である場合は、高域通過フィルタ値は負の値になる。高域通過フィルタ値の絶対値が大きくなる程逆Ｖ字型またはＶ字型の折れ角度がより鋭角であることを示す。なお、注目画素は、ブロック境界線に隣接した位置にある画素である。なお、視覚的に理解しやすいこともあり、「逆Ｖ字型」、「Ｖ字型」と定義したが、注目画素と、その両隣にある画素とを滑らかに結ぶ近似曲線もしくは近似直線である関数の２回微分値が負の場合を逆Ｖ字型といい、２回微分値が正の場合をＶ字型ということもできる。この場合、逆Ｖ字型、Ｖ字型の折れ角度がより鋭角とは、２回微分値の絶対値がより大きいということを示すことになる。
その後、連続的な画素の鮮明度は、高域通過フィルタの出力のレベルによって認識することが可能となる。高域通過フィルタの出力のレベルは、連続的な画素の変化の程度を意味している。高レベルの出力は、ピークを形成する高い鮮明度を意味している。反対に、低レベルの出力は、ピークではない形状を形成する低い鮮明度を意味している。高域通過フィルタの出力によれば、画素間の自然な変化および異常な不連続性が算定される。適応フィルタは、高域通過フィルタを用いて求められる重みを用いることによって、ブロック境界近傍の画素に関する調整された値を計算する。ブロック境界近傍の画素に関する調整された値が計算されると、適応フィルタによって、重みを介してブロック境界近傍の画素の特徴が認識され、検討される。
【発明の効果】
【０００７】
したがって、本発明は異常な不連続性を減少させ、ブロック境界近傍の自然な変化を保持する。画像の質は、ブロック歪みを除去するときに、向上することが可能となる。
オリジナル画像において、輪郭線と垂直に隣接する２つの画素の明るさレベルは、大きな差を示す。係る輪郭線が、ブロックとブロックの境界線と一致した場合、ブロック歪みを除去する低域通過フィルタにより、輪郭線がグラディエーションのある、なめらかな明るさ変化に変えられると、輪郭線がぼやけてしまい、オリジナル画像の鮮明度が損なわれる。しかし、本発明においては、ブロックとブロックの境界線に輪郭線が一致していると思われる場合には、低域通過フィルタのフィルタ値を調整し、輪郭線がぼやけないようにすることができる。
【図面の簡単な説明】
【０００８】
【図１】従来例の処理を示すフローチャートである。
【図２】本発明のブロック歪みを減少させる装置を示すブロック図である。
【図３】本発明の適応フィルタ２００の演算フローを示すフローチャートである。
【図４】本発明のブロック歪みを減少させる装置の別の例を示すブロック図である。
【図５】本発明のブロック歪みを減少させる装置における図４の例の演算フローを示すフローチャートである。
【図６】本発明のブロック歪みを減少させる装置における第１の実施形態を示すブロック図である。
【図７】連続的な水平画素からなる入力画像データの例を示す模式図である。
【図８】本発明の適応フィルタ６００の演算フローを示すフローチャートである。
【図９Ａ】本発明の高域通過フィルタの符号を示す模式図である。
【図９Ｂ】本発明の高域通過フィルタの符号を示す模式図である。
【図１０Ａ】本発明の高域通過フィルタの鮮明度を示す模式図である。
【図１０Ｂ】本発明の高域通過フィルタの鮮明度を示す模式図である。
【図１１Ａ】本発明の低域通過フィルタの動作を示す模式図である。
【図１１Ｂ】本発明の低域通過フィルタの動作を示す模式図である。
【図１１Ｃ】本発明の低域通過フィルタの動作を示す模式図である。
【図１１Ｄ】本発明の低域通過フィルタの動作を示す模式図である。
【図１１Ｅ】本発明の低域通過フィルタの動作を示す模式図である。
【図１１Ｆ】本発明の低域通過フィルタの動作を示す模式図である。
【図１２Ａ】本発明の適応フィルタの動作を示す模式図である。
【図１２Ｂ】本発明の適応フィルタの動作を示す模式図である。
【図１２Ｃ】本発明の適応フィルタの動作を示す模式図である。
【図１２Ｄ】本発明の適応フィルタの動作を示す模式図である。
【図１２Ｅ】本発明の適応フィルタの動作を示す模式図である。
【図１２Ｆ】本発明の適応フィルタの動作を示す模式図である。
【図１３】本発明においてブロック歪みを除去する動作を示す模式図である。
【図１４】本発明においてブロック歪みを除去する動作を示す模式図である。
【図１５】本発明においてブロック歪みを除去する動作を示す模式図である。
【図１６】本発明のブロック歪みを減少させる装置におけるブロック図である。
【図１７】本発明のブロック歪みを減少させる装置における図１６の例の演算フローを示すフローチャートである。
【符号の説明】
【０００９】
２００  適応フィルタ
２０１  計算ユニット
２０２  決定ユニット
４０２  検出ユニット
４０３  スイッチ
６０３  高域通過フィルタ
６０４  重み計算ユニット
６０５  低域通過フィルタ
６０６  加重和計算ユニット
【発明を実施するための最良の形態】
【００１０】
ブロック歪みを除去する装置は、図２に示されるブロック図を参照して以下に説明される。ブロック歪みを除去する装置は、調整された値を計算する適応フィルタ２００からなる。適応フィルタ２００はさらに、高域通過フィルタによって重みを計算する計算ユニット２０１と、重みを用いることによって、ブロック境界近傍の画素値を決定する決定ユニット２０２とからなる。【００１１】
適応フィルタ２００は入力画像データを受け取り、調整された値を出力する。適応フィルタ２００において、計算ユニット２０１は、ブロック境界を横切って配置される複数の画素に適用される高域通過フィルタの出力を用いることによって、ブロック境界近傍の画素の重みを計算する。画素の重みは決定ユニット２０２に出力される。決定ユニット２０２は、入力画像データおよび計算ユニット２０１の出力を受け取り、元の画素値と画素の重みとを用いることによって、調整された値を決定する。【００１２】
適応フィルタ２００の演算フローは図３に示される。ブロック境界近傍の画素の重みは、ステップ３０１において高域通過フィルタを用いることによって計算される。ステップ３０１において計算された重みは、ステップ３０２においてブロック境界近傍の画素に関する調整された値を決定するために用いられる。【００１３】
ブロック歪みを除去する装置はさらに、図４に示される検出ユニット４０２およびスイッチ４０３からなる。適応フィルタ２００は、出力を除いて図２の前述の適応フィルタ２００と同一であり、スイッチ４０３に接続している。検出ユニット４０２は入力画像データを受け取り、ブロック歪みを形成するノイズ画素を検出する。検出ユニット４０２の出力はスイッチ４０３に接続される。スイッチ４０３は、入力画像データ、適応フィルタ２００の出力、および検出ユニット４０２の出力を受け取る。スイッチ４０３は、検出ユニット４０２の出力に従って、入力画像データの元の画素値もしくは適応フィルタ２００から出力される調整された値を出力する。ブロック歪みを形成するノイズ画素が検出ユニット４０２によって検出されると、スイッチ４０３は調整された値を出力する。そうでなければ、スイッチ４０３は元の画素値を出力する。【００１４】
図５に演算フローを示す。ブロック境界近傍の画素に関する調整された値は、ステップ５０１において適応フィルタ２００を用いることによって、計算される。検出ユニット４０２は、ステップ５０２において、ブロック歪みを形成するノイズ画素を検出する。スイッチ４０３の演算は、ステップ５０３、５０４、および５０５を参照する。２つのステップは、画素がノイズ画素であるかどうかを確認することによって、ステップ５０３において分離する。ノイズ画素が検出されると、ステップ５０４に進み、さらに、調整された値を出力する。そうでなければ、ステップ５０５に進み、さらに元の画素値を出力する。さらに、ステップ５０１およびステップ５０２の順番は処理の結果に影響を及ぼさないため、ステップ５０１およびステップ５０２の順番は交換することが可能であるし、また、２つのステップは同時に演算することも可能である。【００１５】
（第１の実施形態）
本発明の第１の実施形態は図６および図８を参照して、説明される。第１の実施形態のブロック図が図６に示される。第１の実施形態は、調整された値を計算するための適応フィルタ２００からなる。適応フィルタ２００はさらに、重みを計算する計算ユニット２０１と、重みを用いて、ブロック境界近傍の画素値を決定する決定ユニット２０２とからなる。【００１６】
適応フィルタ２００は入力画像を受け取って、調整された値を出力する。適応フィルタ２００において、計算ユニット２０１は入力画像データを受け取り、ブロック境界を横切って配置される複数の画素に適用される高域通過フィルタの出力を用いることによって、ブロック境界近傍の画素の重みを計算する。計算ユニット２０１は、重みを決定ユニット２０２に出力する。決定ユニット２０２は、入力画像データと計算ユニット２０１から出力された重みを受け取り、ブロック境界近傍の画素の加重和を計算することによって、調整された値を決定する。【００１７】
計算ユニット２０１はさらに、高域通過フィルタ６０３および重み計算ユニット６０４からなる。高域通過フィルタ６０３は入力画像データを受け取り、ブロック境界の各側の画素をフィルタ処理して、重み計算ユニット６０４に出力する。画素を水平および垂直にフィルタ処理する高域通過フィルタ６０３の係数からなるベクトルを、それぞれ式（１）および（２）で示す。
［−１  ２  −１］                                          （１）
2009044549.tif 000003
【００１８】
図７は、水平方向に隣接する２つのブロックの境界線と、その境界線に対し左垂直方向に並んだ画素Ｍ０，Ｍ１，Ｍ２，Ｍ３、及び右垂直方向に並んだ画素Ｎ０，Ｎ１，Ｎ２，Ｎ３が示されている。また、Ｐ０，Ｐ１，Ｐ２，Ｐ３は、それぞれ画素Ｍ０，Ｍ１，Ｍ２，Ｍ３の明るさレベルを示し、Ｑ０，Ｑ１，Ｑ２，Ｑ３は、それぞれ画素Ｎ０，Ｎ１，Ｎ２，Ｎ３の明るさレベルを示す。【００１９】
高域通過フィルタ６０３は、ある注目画素と、それに隣接する両隣（左右、又は上下）の隣接画素との明るさレベルの差分を強調した高域通過フィルタ値ＨＰＦを出力する。この実施の形態では、高域通過フィルタ値ＨＰＦ（Ｘｉ）の一般式は、式（３）で示される。
ＨＰＦ（Ｘi）＝［−１  ２  −１］［Ｌ(i-1)  Ｌi  Ｌ(i+1)］Ｔ
＝(-1)*Ｌ(i-1)+(2)*Ｌi+(-1)*Ｌ(i+1)                （３）
【００２０】
ここで、Ｌiは注目画素の明るさレベル、Ｌ(i-1)、Ｌ(i+1)は、注目画素に隣接する両隣（左右、又は上下）の隣接画素の明るさレベルを示す。
図７において、注目画素を、境界線に隣接する画素であるとした場合、画素Ｍ０の高域通過フィルタ値ＨＰＦ（Ｍ０）は、式（４）で決定され、画素Ｎ０の高域通過フィルタ値ＨＰＦ（Ｎ０）は、式（５）で決定される。
ＨＰＦ（ＭＯ）＝［−１  ２  −１］［Ｐ１  Ｐ０  Ｑ０］Ｔ    （４）
ＨＰＦ（ＮＯ）＝［−１  ２  −１］［Ｐ０  Ｑ０  Ｑ１］Ｔ    （５）
【００２１】
重み計算ユニット６０４は高域通過フィルタ６０３の出力を受け取り、式（６）、（７）、（８）および（９）によって重みを計算する。
ＡＭ０＝（ＨＰＦ（Ｍ０）＋ＨＰＦ（Ｎ０））／ＨＰＦ（Ｍ０）    （６）
ＡＮ０＝（ＨＰＦ（Ｎ０）＋ＨＰＦ（Ｍ０））／ＨＰＦ（Ｎ０）    （７）
ＡＭｉ＝１，if i ≠ ０                                        （８）
ＡＮｉ＝１，if i ≠ ０                                        （９）
ここでＡＭｉは画素Ｍｉの重みを表し、ＨＰＦ（Ｍｉ）は画素Ｍｉにおいて高域通過フィルタ６０３の出力である高域通過フィルタ値ＨＰＦ（Ｍｉ）を表している。重みは、調整された値を決定するための決定ユニット２０２に出力される。画素Ｍ０の重みは、式（６）を用いることによって決定され、画素Ｎ０の重みは、式（７）を用いることによって決定される。式（８）は、Ｍ１，Ｍ２，Ｍ３，・・・の重みは１であることを示し、式（９）は、Ｎ１，Ｎ２，Ｎ３，・・・の重みは１であることを示す。【００２２】
連続的な垂直の画素の演算は、連続的な水平画素の例と類似している。記述が冗長になるので、ここでは繰り返さない。
注目画素と、その両隣にある画素との明るさレベルを結んだ線が、逆Ｖ字型である場合は、高域通過フィルタ値は正の値になる一方、Ｖ字型である場合は、高域通過フィルタ値は負の値になる。高域通過フィルタ値の絶対値が大きくなる程逆Ｖ字型またはＶ字型の折れ角度がより鋭角であることを示す。なお、注目画素は、ブロック境界線に隣接した位置にある画素である。【００２３】
決定ユニット２０２はさらに、低域通過フィルタ６０５と加重和計算ユニット６０６からなる。低域通過フィルタ６０５は入力画像データを受信し、ブロック境界近傍における画素に適用され、フィルタ処理された値を決定する。画素を水平にまた垂直にフィルタ処理するための低域通過フィルタ６０５の係数からなるベクトルは、式（１０ａ）および（１０ｂ）に示されるとおりである。
（１／４）［１  ２  １］                                  （１０ａ）
2009044549.tif 000004
【００２４】
低域通過フィルタ６０５は、ある注目画素と、それに隣接する両隣（左右、又は上下）の隣接画素との明るさレベルの差分を低減した低域通過フィルタ値ＬＰＦを出力する。この実施の形態では、低域通過フィルタ値ＬＰＦ（Ｘｉ）の一般式は、式（１１）で示される。
ＬＰＦ（Ｘi）＝（１／４）［１  ２  １］［Ｌ(i-1)  Ｌi  Ｌ(i+1)］Ｔ
＝（１／４）｛(1)*Ｌ(i-1)+(2)*Ｌi+(1)*Ｌ(i+1)｝  （１１）
ここでＬＰＦ（Ｍ０）は式（１２）によって決定され、ＬＰＦ（Ｎ０）は式（１３）によって決定される。
ＬＰＦ（ＭＯ）＝（１／４）［１  ２  １］［Ｐ１  Ｐ０  Ｑ０］Ｔ （１２）
ＬＰＦ（ＮＯ）＝（１／４）［１  ２  １］［Ｐ０  Ｑ０  Ｑ１］Ｔ （１３）
【００２５】
加重和計算ユニット６０６は、入力画像データと、低域通過フィルタ６０５の出力であるフィルタ処理された値と、重み計算ユニット６０４の出力である重みを受け取り、元の画素値とフィルタ処理された値との加重和を式（１４）に基づいて計算することによって、調整された値を決定する。
ＹＫ’＝ＹＫ＊ＡＫ  ＋  ＬＰＦ（Ｋ）＊（１−ＡＫ）            （１４）
【００２６】
ここでＹＫ’は画素Ｋに関する調整された明るさレベルを示し、ＹＫは画素Ｋの元の明るさレベルを示し、ＡＫは重み計算ユニット６０４の出力である画素Ｋの重みを示している。また、ＬＰＦ（Ｋ）は、画素Ｋのフィルタ処理された値を示し、画素Ｋにおける低域通過フィルタ６０５の出力である。従って、Ｍ０，Ｎ０における調整された明るさレベルは、次式で表される。
Ｙ（Ｍ０）’＝Ｙ（Ｍ０）＊ＡＭ０＋ＬＰＦ（Ｍ０）＊（１−ＡＭ０） （１５）
Ｙ（Ｎ０）’＝Ｙ（Ｎ０）＊ＡＮ０＋ＬＰＦ（Ｎ０）＊（１−ＡＮ０） （１６）
【００２７】
ここで、具体的数値を用いて、図６の高域通過フィルタ６０３でなされる式（４）、（５）を用いた計算、重み計算ユニット６０４でなされる式（６）、（７）を用いた計算、低域通過フィルタ６０５でなされる式（１２）、（１３）を用いた計算、加重和計算ユニット６０６でなされる式（１４）を、図１２Ａの例を用いて説明する。
図１２Ａにおいて、画素Ｍ０とＮ０の間にブロックの境界線が存在する。また、明るさレベルが、Ｐ１で１６０，Ｐ０で２００，Ｑ０で８０，Ｑ１で４０であったとする。画素Ｍ０の明るさレベルＰ０と、画素Ｎ０の明るさレベルＱ０との差は比較的大きいので、ブロックの境界線に一致してオリジナル画像の輪郭線が存在していると思われる。
高域通過フィルタ６０３では、式（４）、（５）に基づき次の計算が行われる。
ＨＰＦ（Ｍ０）＝［−１  ２  −１］［１６０  ２００  ８０)］Ｔ
＝(-1)*(１６０)+(2)*（２００）+(-1)*（８０）
＝−１６０＋４００−８０  ＝１６０          （１７）
ＨＰＦ（Ｎ０）＝［−１  ２  −１］［２００  ８０  ４０)］Ｔ
＝(-1)*(２００)+(2)*（８０）+(-1)*（４０）
＝−２００＋１６０−４０  ＝−８０          （１８）
【００２８】
これら２つのＨＰＦ値は重み計算ユニット６０４に送られ、式（６）、（７）を用いて次の計算がなされる。
ＡＭ０＝（ＨＰＦ（Ｍ０）＋ＨＰＦ（Ｎ０））／ＨＰＦ（Ｍ０）
＝  （１６０  ＋（−８０））／４  ＝２０                （１９）
ＡＮ０＝（ＨＰＦ（Ｎ０）＋ＨＰＦ（Ｍ０））／ＨＰＦ（Ｎ０）
＝（（−８０）＋  １６０）／（−２）＝８０／（−２）＝−４０ （２０）
【００２９】
一方、低域通過フィルタ６０５では、式（１２）、（１３）に基づき次の計算が行われる。
ＬＰＦ（Ｍ０）＝（１／４）［１  ２  １］［１６０  ２００  ８０］Ｔ
＝（１／４）｛(1)*(１６０)+(2)*（２００）+(1)*(８０)｝
＝  （１／４）＊６４０＝１６０                  （２１）
ＬＰＦ（Ｎ０）＝（１／４）［１  ２  １］［２００  ８０  ４０］Ｔ
＝（１／４）｛(1)*(２００)+(2)*（８０）+(1)*(４０)｝
＝  （１／４）＊４００＝１００                  （２２）
【００３０】
上記式（１９）、（２１）を式（１５）に代入すると、次の値が得られる。
Ｙ（Ｍ０）’＝２００＊（１／２）  ＋  １６０＊（１−（１／２））
＝１８０                                      （２３）
Ｙ（Ｎ０）’＝８０＊（−１）  ＋  １００＊（１−（−１））
＝１２０                                      （２４）
【００３１】
図１２Ａにおいて、式（２３）で得られたＹ（Ｍ０）’＝１８０は、黒い４角形「■」の印で示され、式（２４）で得られたＹ（Ｎ０）’＝１２０は、白抜きの４角形「□」の印で示されている。また、図１２Ａにおいて、式（２１）で得られたＬＰＦ（Ｍ０）＝１６０は、黒い菱形「◆」の印で示され、式（２２）で得られたＬＰＦ（Ｎ０）＝１００は、白抜き菱形「◇」の印で示されている。
なお、上記式（１４）で示される調整された明るさレベルは、境界に隣接する画素Ｍ０，Ｍ１以外の画素、すなわち画素Ｍ１，Ｍ２，Ｍ３，・・・，Ｑ１，Ｑ２，Ｑ３，・・・においては、式（８）、（９）によりＡＫ＝１であるので、常にＹＫ’＝ＹＫとなり、入力値がそのまま出力値となる。【００３２】
適応フィルタ２００の演算フローは図８に示される。適応フィルタ２００は、ステップ８０１において高域通過フィルタによって重みを計算する。ステップ８０１はさらに、上述したように、高域通過フィルタ６０３および重み計算ユニット６０４を用いて実行される。ステップ８０１において決定された重みを用いて、ステップ８０２において調整された値を決定する。ステップ８０２はさらに、ステップ８０３およびステップ８０４からなる。ステップ８０３において、低域通過フィルタ６０５は入力画像データを受け取り、ブロック境界近傍の画素のフィルタ処理された値を決定する。ステップ８０４において、加重和計算ユニット６０６は、式（１４）を参照して、元の画素値とフィルタ処理された値との加重和を計算し、調整された和を決定する。【００３３】
本発明の数学的および幾何学的な特性および利点は、以下に記載するとおりである。ブロック境界の各側の画素に適用される高域通過フィルタは、ブロック境界近傍の連続的な画素の特徴を認識する。まず、連続的な画素によって形成された曲線の形状は、高域通過フィルタの符号（＋／−）によって認識することが可能である。
注目画素と、その両隣にある画素との明るさレベルを結んだ線が、逆Ｖ字型である場合は、高域通過フィルタ値は正の値になる一方（図９Ａ）、Ｖ字型である場合は、高域通過フィルタ値は負の値になる（図９Ｂ）。高域通過フィルタ値の絶対値が大きくなる程逆Ｖ字型またはＶ字型の折れ角度がより鋭角であることを示す。なお、注目画素は、ブロック境界線に隣接した位置にある画素である。連続的な画素の明るさレベルの変化度は、高域通過フィルタの出力の程度によって認識することが可能となる。高域通過フィルタの出力のレベルは、連続的な画素の変化の程度を意味している。図１０Ａに示すように、高域通過フィルタの出力のレベルが高レベルの場合は、ピークを形成する如く、明るさレベルの変化度が激しいことを意味している。反対に、図１０Ｂに示すように、高域通過フィルタの出力のレベルが低レベルの場合は、ピークではなく、明るさレベルの緩やかな変化を意味している。ここでは、ピークを形成する如く、明るさレベルの変化度が激しい程、出力画像の鮮明度が高いと言える。【００３４】
ブロック境界近傍の画素に適用される低域通過フィルタは、低域フィルタ処理されたＬＰＦ値を決定し、近接した画素間の画素値の差異を減少させる。図１１Ａ、図１１Ｂ、図１１Ｃ、図１１Ｄ、図１１Ｅ、および図１１Ｆは、元の画素値とＬＰＦフィルタ処理された値間における比較例を示している。元の画素値には、黒丸「●」の印が付されている。画素Ｍ０の低域フィルタ処理されたＬＰＦ値には、黒い菱形「◆」の印が付されている。画素Ｎ０の低域フィルタ処理されたＬＰＦ値には、白抜き菱形「◇」の印が付されている。図１１Ａないし図１１Ｆに示されるように、画素Ｍ０と画素Ｎ０のフィルタ処理された値は、低域通過フィルタを画素に適用することによって、元の画素値よりも、互いに近接している。ブロック境界の各側間における画素の差異が減少しているため、ブロック歪みもまた減少することが可能となる。【００３５】
しかしながら、低域通過フィルタを使用することによって、ブロック歪みを減少させるだけでなく、鮮明度も減少させる。本発明においては、高域通過フィルタを用いることにより、ブロック境界近傍の連続的な画素の特徴を認識する。また、低域通過フィルタを用いることにより、ブロック境界の各側間における画素値の差異を減少させる。したがって、ブロック歪みも減少させることが可能となり、またオリジナル画像に明るさレベルの変化度が大きい場合、その明るさレベルの変化度を損なうことなく保持することも可能となる。【００３６】
図１２Ａ、図１２Ｂ、図１２Ｃ、図１２Ｄ、図１２Ｅ、および図１２Ｆは、フィルタ処理されたＬＰＦ値と調整されたＹＫ’値とのいくつかの比較例を示している。元の画素値には、黒丸「●」の印が付されている。画素Ｍ０の低域フィルタ処理されたＬＰＦ値には、黒い菱形「◆」の印が付されている。画素Ｎ０の低域フィルタ処理されたＬＰＦ値には、白抜き菱形「◇」の印が付されている。画素Ｍ０の調整されたＹＫ’値には、黒い４角形「■」の印が付され、画素Ｎ０の調整されたＹＫ’値には、白抜きの４角形「□」の印が付されている。【００３７】
調整されたＹＫ’値は、元の画素値とフィルタ処理された値との加重和を計算することによって決定される。加重和の計算に用いられる重みは、高域通過フィルタによって決定される。したがって、対応する画素の高域通過フィルタの出力が、ブロック境界の他の側における画素の高域通過フィルタの出力より高い場合、画素Ｍ０および画素Ｎ０の調整された値は、フィルタ処理された値より、対応する元の画素値により近い。反対に、対応する画素の高域通過フィルタの出力が、ブロック境界の他の側における画素の高域通過フィルタの出力より低い場合、画素Ｍ０および画素Ｎ０の調整された値は、フィルタ処理された値より、対応する元の画素値から遠い。【００３８】
図１２Ａ、図１２Ｃに示されるケースにおいては、画素Ｍ０の高域通過フィルタの出力は画素Ｎ０の高域通過フィルタの出力の絶対値より高い。そのため画素Ｍ０の調整された値は、フィルタ処理された値より、対応する元の画素値により近い。また、画素Ｎ０の高域通過フィルタの出力の絶対値は画素Ｍ０の高域通過フィルタの出力より低い。そのため画素Ｎ０の調整された値は、フィルタ処理された値より、対応する元の画素値から遠い。画素Ｍ０の高域通過フィルタの出力の絶対値が画素Ｎ０の高域通過フィルタの出力より低いという反対のケースが図１２Ｂ、図１２Ｅに示されている。説明が冗長になるのでここでは繰り返さない。図１２Ｄおよび図１２Ｆに示されるケースにおいては、画素Ｍ０の高域通過フィルタの出力の絶対値は画素Ｎ０の高域通過フィルタの出力の絶対値と同一であるため、画素Ｍ０および画素Ｎ０の調整された値は、フィルタ処理された値と同一である。【００３９】
図６に示すブロック図を、別のアルゴリズムで説明すると次のようになる。
まず、画素Ｍ０，Ｎ０における画素値Ｐ０，Ｑ０を求める。
続いて、画素Ｍ０，Ｎ０における低域通過フィルタ値ＬＰＦ（Ｍ０）、ＬＰＦ（Ｎ０）を求め、更に、画素Ｍ０，Ｎ０における高域通過フィルタ値ＨＰＦ（Ｍ０）、ＨＰＦ（Ｎ０）を求める。
高域通過フィルタ値の絶対値｜ＨＰＦ（Ｍ０）｜、｜ＨＰＦ（Ｎ０）｜を比較し、大きい方と小さい方を特定する。この比較は、図１２Ａの場合で言えば、角度Ｐ１・Ｐ０・Ｑ０と、角度Ｐ０・Ｑ０・Ｑ１の比較に相当し、角度が小さい方（より鋭角である方）が、高域通過フィルタ値の絶対値が大きい方に相当する。【００４０】
高域通過フィルタ値の絶対値が大きい方については、例えば図１２Ａの場合では画素Ｍ０の方については、画素値Ｐ０と低域通過フィルタ値ＬＰＦ（Ｍ０）との間の内分点に調整された値Ｙ（Ｍ０）’が位置するように設定され、高域通過フィルタ値の絶対値が小さい方については、例えば図１２Ａの場合では画素Ｎ０の方については、画素値Ｑ０と低域通過フィルタ値ＬＰＦ（Ｎ０）との外側で、ＬＰＦ（Ｎ０）よりの外分点に調整された値Ｙ（Ｍ０）’が位置するように設定される。
図１２Ａにおいて説明すると、ＬＰＦ（Ｍ０）とＹ（Ｍ０）’との間の距離は、ＬＰＦ（Ｎ０）とＹ（Ｎ０）’との間の距離に大略等しく、両絶対値｜ＨＰＦ（Ｍ０）｜、｜ＨＰＦ（Ｎ０）｜の差に応じて変化する。例えば、差が大きくなれば距離も大きくなり、小さくなれば小さくなるよう変化する。別の例として、上記距離は、段階的に変わるようにしてもよいし、常に一定量変わるようにしても良い。【００４１】
上記式（１）から（１６）は、上記アルゴリズムを満たすものである。
なお、図４の検出ユニット４０２は、例えば、境界線を挟んで隣接する２つの画素Ｍ０，Ｎ０の画素値Ｐ０，Ｑ０を比較し、画素値の差の絶対値｜Ｐ０−Ｑ０｜が所定の閾値以下の場合は、スイッチ４０３を端子ｂに接続して元の画素値、または調整前の画素値を出力する一方、所定の閾値より大きい場合は、スイッチ４０３を端子ａに接続して調整された値を出力する。【００４２】
別の例として、検出ユニット４０２は、高域通過フィルタ値の絶対値｜ＨＰＦ（Ｍ０）｜、｜ＨＰＦ（Ｎ０）｜を受け、いずれか一方の絶対値が所定値以上の場合は、スイッチ４０３を端子ａに接続し、いずれの絶対値も所定値未満の場合は、スイッチ４０３を端子ｂに接続するようにしても良い。
更に、検出ユニット４０２は、上記２つの例を組み合わせて用いるようにしても良いし、別の判断基準に基づきスイッチ４０３を切り替えるようにしても良い。
以上の説明においては、境界線を挟んで隣接する隣同士の画素Ｍ０，Ｎ０について調整する説明をしたが、境界線に近傍する画素Ｍ１，Ｍ２，Ｍ３，Ｑ１，Ｑ２，Ｑ３についても調整を行うようにしても良い。【００４３】
ブロック歪みの３つの例が、図１３、図１４、および図１５に示される。元の画素の値には、黒丸「●」の印が付されている。調整された値には、白抜きの丸「○」の印が付されている。画素Ｍ０および画素Ｎ０における元の画素値間の異常な差異は、ブロック境界において垂直なブロック歪みを形成する。鮮明度は、高域通過フィルタによって決定することが可能である。図１３および図１４の例では、画素Ｍ０の鮮明度は、画素Ｎ０の鮮明度より高い鮮明度を有する。そのため、調整された値Ｐ０’は、低域通過フィルタによって決定されるフィルタ処理された値より、対応する元の値に近い。一方、調整された値Ｑ０’は、フィルタ処理された値より、対応する元の値から遠い。図１５の例では、画素Ｍ０および画素Ｎ０は、同じ鮮明度を有する。そのため、調整された値Ｐ０’およびＱ０’はフィルタ処理された値と同一となる。さらに調整された値Ｐ１’、Ｐ２’、Ｐ３’、Ｑ１’、Ｑ２’およびＱ３’が決定されて、異常な不連続性をなくす。【００４４】
ブロック境界の各側における鮮明度は、高域通過フィルタと元の画素値とフィルタ処理された値との加重和を計算することによって決定されるブロック境界近傍の画素に関する調整された値によって、重みの計算を通して決定されるため、本発明はブロック歪みを除去し、鮮明度を保持する。【００４５】
図１６は、図２，図４，図６を一つにまとめたものである。図１６に示す回路を一つ又は複数の集積回路に組み込むことも可能である。
又図１７は、図３，図５を一つにまとめたものである。本発明をコンピュータプログラムで実行することも可能である。
（その他変形例）
なお、本発明を上記実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる。【００４６】
（１）上記の各装置は、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭ、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記ＲＡＭまたはハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。【００４７】
（２）上記の各装置を構成する構成要素の一部または全部は、１個のシステムＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ：大規模集積回路）から構成されているとしてもよい。システムＬＳＩは、複数の構成部を１個のチップ上に集積して製造された超多機能ＬＳＩであり、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどを含んで構成されるコンピュータシステムである。前記ＲＡＭには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、システムＬＳＩは、その機能を達成する。【００４８】
（３）上記の各装置を構成する構成要素の一部または全部は、各装置に脱着可能なＩＣカードまたは単体のモジュールから構成されているとしてもよい。前記ＩＣカードまたは前記モジュールは、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどから構成されるコンピュータシステムである。前記ＩＣカードまたは前記モジュールは、上記の超多機能ＬＳＩを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ＩＣカードまたは前記モジュールは、その機能を達成する。このＩＣカードまたはこのモジュールは、耐タンパ性を有するとしてもよい。【００４９】
（４）本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＢＤ（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ）、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。【００５０】
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
また、前記プログラムまたは前記デジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。【００５１】
（５）上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
【産業上の利用可能性】
【００５２】
本発明は、ブロック歪みを減少させる方法および装置に利用できる。
【図１】
2009044549.tif 000005
【図２】
2009044549.tif 000006
【図３】
2009044549.tif 000007
【図４】
2009044549.tif 000008
【図５】
2009044549.tif 000009
【図６】
2009044549.tif 000010
【図７】
2009044549.tif 000011
【図８】
2009044549.tif 000012
【図９Ａ】
2009044549.tif 000013
【図９Ｂ】
2009044549.tif 000014
【図１０Ａ】
2009044549.tif 000015
【図１０Ｂ】
2009044549.tif 000016
【図１１Ａ】
2009044549.tif 000017
【図１１Ｂ】
2009044549.tif 000018
【図１１Ｃ】
2009044549.tif 000019
【図１１Ｄ】
2009044549.tif 000020
【図１１Ｅ】
2009044549.tif 000021
【図１１Ｆ】
2009044549.tif 000022
【図１２Ａ】
2009044549.tif 000023
【図１２Ｂ】
2009044549.tif 000024
【図１２Ｃ】
2009044549.tif 000025
【図１２Ｄ】
2009044549.tif 000026
【図１２Ｅ】
2009044549.tif 000027
【図１２Ｆ】
2009044549.tif 000028
【図１３】
2009044549.tif 000029
【図１４】
2009044549.tif 000030
【図１５】
2009044549.tif 000031
【図１６】
2009044549.tif 000032
【図１７】
2009044549.tif 000033
【手続補正書】
【提出日】平成21年4月7日(2009.4.7)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、適応フィルタを用いることによって、画像の質を向上させ、ブロック境界近傍における画素に関する調整された値を計算する装置および方法に関連する。さらに詳細には、本発明は、ブロック歪みを除去する適応フィルタに関連する。ブロック歪みは、例えばＪＰＥＧファイルのように、静止画像が圧縮されたとき、もしくは例えばＭＰＥＧファイルのように、ビデオが圧縮されたときに発生する。これらの圧縮された画像は、映画、放送番組、およびマルチメディア・ストリーミングにおいて幅広く用いられている。本発明はブロック歪みを有する画像を受け取り、その後、前記適応フィルタを用いることによって画像の質を高め、ブロック境界近傍の画素に関する調整された値を求める。適応フィルタは、重みを計算するための高域通過フィルタと、ブロック境界近傍の画素の不連続性を減少させるフィルタ値を計算するための低域通過フィルタとからなる。適応フィルタは、元の画素値とフィルタ値との加重和を計算することによって、調整された値を決定する。本発明は、ＤＶＤプレイヤ、デジタル・カメラなどの画像処理装置、コンピュータプログラム、およびＬＣＤ、ＰＤＰ、およびＣＲＴなどの画像表示装置において用いることが可能である。
【背景技術】
【０００２】
特許文献１の従来例は、複数のブロックを用いて、動画像を符号化する方法を開示している。この方法はブロック境界周辺のＳ０、Ｓ１、Ｓ２の画素のセットを決定するステップと、モード決定値を取得した後、ブロック歪みの程度にしたがって、デフォルト・モードもしくはＤＣオフセット・モードとして、非ブロック化モードを選択的に決定するステップと、デフォルト・モードが決定される場合、４ポイントＤＣＴカーネルを用いて、画素ごとにブロック境界周辺の周波数情報を取得するステップと、ブロック境界に属する非連続の要素の大きさを、周波数ドメイン中のブロック境界の周囲に属する非連続の要素の最小の大きさに置き換えるステップと、この置き換えステップを空間ドメインに適用するステップと、ＤＣオフセット・モードが決定される場合、このＤＣオフセット・モードを実行することが必要かどうかを判定するステップと、このステップによってＤＣオフセット・モードを実行することが必要だと判定されると、円滑な領域においてブロック歪みを除去するステップとからなる。この従来例の処理を表すフローチャートが図１に示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許６２４０１３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
この従来例は、２つのモード、すなわちデフォルト・モードとＤＣオフセット・モードとを用いることによって、ブロック歪みを形成する画素値を調整する。このデフォルト・モードにおいて、画素ごとのブロック境界周辺の周波数情報は、４ポイントＤＣＴカーネルを用いることによって取得される。このブロック境界に属する非連続の要素の大きさは、周波数ドメインにおけるブロック境界の周囲に属する非連続の要素の最小の大きさに置き換えられる。ＤＣオフセット・モードにおいて、低域通過フィルタリングが実行される。デフォルト・モードにおいては、境界画素値のみが補償される。このように、デフォルト・モードは、写真における設定などの非常に円滑な領域におけるブロック歪みを除去するには十分ではない。したがって、円滑な領域におけるブロック歪みは、ＤＣオフセット・モードによって除去される。
【０００５】
この従来例は、ＤＣＴに基づくフィルタもしくは低域通過フィルタを、ブロック境界に沿った画素に適用して、非常に円滑な領域による不連続性を滑らかにする。低域通過フィルタは非常に円滑な領域において用いられ、ＤＣＴに基づくフィルタは他の種類の領域において用いられる。ブロック境界周辺の画素間の差異は、このようなフィルタを用いることによって減少するため、不連続性は減少し、ブロック歪みを除去することが可能となる。しかしながら、ＤＣＴに基づくフィルタもしくは低域通過フィルタは異常な不連続性を減少させるだけでなく、画素間の自然な変化をも除去する。画素間の自然な変化を除去した結果、鮮明度が失われる。この従来例はＤＣＴに基づくフィルタもしくは低域通過フィルタを用いて、ブロック歪み、不鮮明な状態を除去する。その結果、画像の価値が低下する。
【０００６】
ブロック境界に沿って画素の値が異常な不連続性を形成するとき、ブロック境界においてブロック歪みが生じる。従来の方法は、ＤＣＴに基づくフィルタもしくは低域通過フィルタをブロック境界に沿った画素に適用して、不連続性を円滑にする。しかしながら、ＤＣＴに基づくフィルタもしくは低域通過フィルタは異常な不連続性を減少させるだけでなく、画素間の自然な変化をも除去する。ブロック歪みを除去する従来の方法によって、画像は不鮮明になり、かつ画像の質が悪化する。
【課題を解決するための手段】
【０００７】
本発明においては、適応フィルタを用いることによって、ブロック境界近傍における異常な不連続性を減少させる。適応フィルタにおいて、ブロック境界近傍における画素の重みは高域通過フィルタを用いることによって求められ、ブロック境界近傍における画素に関する調整された値は重みを用いて求められる。ブロック境界の各側の画素に適用された高域通過フィルタは、ブロック境界近傍の画素の特徴を認識する。注目画素と、その両隣にある画素との明るさレベルを結んだ線が、逆Ｖ字型である場合は、高域通過フィルタ値は正の値になる一方、Ｖ字型である場合は、高域通過フィルタ値は負の値になる。高域通過フィルタ値の絶対値が大きくなる程逆Ｖ字型またはＶ字型の折れ角度がより鋭角であることを示す。なお、注目画素は、ブロック境界線に隣接した位置にある画素である。なお、視覚的に理解しやすいこともあり、「逆Ｖ字型」、「Ｖ字型」と定義したが、注目画素と、その両隣にある画素とを滑らかに結ぶ近似曲線もしくは近似直線である関数の２回微分値が負の場合を逆Ｖ字型といい、２回微分値が正の場合をＶ字型ということもできる。この場合、逆Ｖ字型、Ｖ字型の折れ角度がより鋭角とは、２回微分値の絶対値がより大きいということを示すことになる。
その後、連続的な画素の鮮明度は、高域通過フィルタの出力のレベルによって認識することが可能となる。高域通過フィルタの出力のレベルは、連続的な画素の変化の程度を意味している。高レベルの出力は、ピークを形成する高い鮮明度を意味している。反対に、低レベルの出力は、ピークではない形状を形成する低い鮮明度を意味している。高域通過フィルタの出力によれば、画素間の自然な変化および異常な不連続性が算定される。適応フィルタは、高域通過フィルタを用いて求められる重みを用いることによって、ブロック境界近傍の画素に関する調整された値を計算する。ブロック境界近傍の画素に関する調整された値が計算されると、適応フィルタによって、重みを介してブロック境界近傍の画素の特徴が認識され、検討される。
【発明の効果】
【０００８】
したがって、本発明は異常な不連続性を減少させ、ブロック境界近傍の自然な変化を保持する。画像の質は、ブロック歪みを除去するときに、向上することが可能となる。
オリジナル画像において、輪郭線と垂直に隣接する２つの画素の明るさレベルは、大きな差を示す。係る輪郭線が、ブロックとブロックの境界線と一致した場合、ブロック歪みを除去する低域通過フィルタにより、輪郭線がグラディエーションのある、なめらかな明るさ変化に変えられると、輪郭線がぼやけてしまい、オリジナル画像の鮮明度が損なわれる。しかし、本発明においては、ブロックとブロックの境界線に輪郭線が一致していると思われる場合には、低域通過フィルタのフィルタ値を調整し、輪郭線がぼやけないようにすることができる。
【図面の簡単な説明】
【０００９】
【図１】従来例の処理を示すフローチャートである。
【図２】本発明のブロック歪みを減少させる装置を示すブロック図である。
【図３】本発明の適応フィルタ２００の演算フローを示すフローチャートである。
【図４】本発明のブロック歪みを減少させる装置の別の例を示すブロック図である。
【図５】本発明のブロック歪みを減少させる装置における図４の例の演算フローを示すフローチャートである。
【図６】本発明のブロック歪みを減少させる装置における第１の実施形態を示すブロック図である。
【図７】連続的な水平画素からなる入力画像データの例を示す模式図である。
【図８】本発明の適応フィルタ６００の演算フローを示すフローチャートである。
【図９Ａ】本発明の高域通過フィルタの符号を示す模式図である。
【図９Ｂ】本発明の高域通過フィルタの符号を示す模式図である。
【図１０Ａ】本発明の高域通過フィルタの鮮明度を示す模式図である。
【図１０Ｂ】本発明の高域通過フィルタの鮮明度を示す模式図である。
【図１１Ａ】本発明の低域通過フィルタの動作を示す模式図である。
【図１１Ｂ】本発明の低域通過フィルタの動作を示す模式図である。
【図１１Ｃ】本発明の低域通過フィルタの動作を示す模式図である。
【図１１Ｄ】本発明の低域通過フィルタの動作を示す模式図である。
【図１１Ｅ】本発明の低域通過フィルタの動作を示す模式図である。
【図１１Ｆ】本発明の低域通過フィルタの動作を示す模式図である。
【図１２Ａ】本発明の適応フィルタの動作を示す模式図である。
【図１２Ｂ】本発明の適応フィルタの動作を示す模式図である。
【図１２Ｃ】本発明の適応フィルタの動作を示す模式図である。
【図１２Ｄ】本発明の適応フィルタの動作を示す模式図である。
【図１２Ｅ】本発明の適応フィルタの動作を示す模式図である。
【図１２Ｆ】本発明の適応フィルタの動作を示す模式図である。
【図１３】本発明においてブロック歪みを除去する動作を示す模式図である。
【図１４】本発明においてブロック歪みを除去する動作を示す模式図である。
【図１５】本発明においてブロック歪みを除去する動作を示す模式図である。
【図１６】本発明のブロック歪みを減少させる装置におけるブロック図である。
【図１７】本発明のブロック歪みを減少させる装置における図１６の例の演算フローを示すフローチャートである。
【発明を実施するための形態】
【００１０】
ブロック歪みを除去する装置は、図２に示されるブロック図を参照して以下に説明される。ブロック歪みを除去する装置は、調整された値を計算する適応フィルタ２００からなる。適応フィルタ２００はさらに、高域通過フィルタによって重みを計算する計算ユニット２０１と、重みを用いることによって、ブロック境界近傍の画素値を決定する決定ユニット２０２とからなる。
【００１１】
適応フィルタ２００は入力画像データを受け取り、調整された値を出力する。適応フィルタ２００において、計算ユニット２０１は、ブロック境界を横切って配置される複数の画素に適用される高域通過フィルタの出力を用いることによって、ブロック境界近傍の画素の重みを計算する。画素の重みは決定ユニット２０２に出力される。決定ユニット２０２は、入力画像データおよび計算ユニット２０１の出力を受け取り、元の画素値と画素の重みとを用いることによって、調整された値を決定する。
【００１２】
適応フィルタ２００の演算フローは図３に示される。ブロック境界近傍の画素の重みは、ステップ３０１において高域通過フィルタを用いることによって計算される。ステップ３０１において計算された重みは、ステップ３０２においてブロック境界近傍の画素に関する調整された値を決定するために用いられる。
【００１３】
ブロック歪みを除去する装置はさらに、図４に示される検出ユニット４０２およびスイッチ４０３からなる。適応フィルタ２００は、出力を除いて図２の前述の適応フィルタ２００と同一であり、スイッチ４０３に接続している。検出ユニット４０２は入力画像データを受け取り、ブロック歪みを形成するノイズ画素を検出する。検出ユニット４０２の出力はスイッチ４０３に接続される。スイッチ４０３は、入力画像データ、適応フィルタ２００の出力、および検出ユニット４０２の出力を受け取る。スイッチ４０３は、検出ユニット４０２の出力に従って、入力画像データの元の画素値もしくは適応フィルタ２００から出力される調整された値を出力する。ブロック歪みを形成するノイズ画素が検出ユニット４０２によって検出されると、スイッチ４０３は調整された値を出力する。そうでなければ、スイッチ４０３は元の画素値を出力する。
【００１４】
図５に演算フローを示す。ブロック境界近傍の画素に関する調整された値は、ステップ５０１において適応フィルタ２００を用いることによって、計算される。検出ユニット４０２は、ステップ５０２において、ブロック歪みを形成するノイズ画素を検出する。スイッチ４０３の演算は、ステップ５０３、５０４、および５０５を参照する。２つのステップは、画素がノイズ画素であるかどうかを確認することによって、ステップ５０３において分離する。ノイズ画素が検出されると、ステップ５０４に進み、さらに、調整された値を出力する。そうでなければ、ステップ５０５に進み、さらに元の画素値を出力する。さらに、ステップ５０１およびステップ５０２の順番は処理の結果に影響を及ぼさないため、ステップ５０１およびステップ５０２の順番は交換することが可能であるし、また、２つのステップは同時に演算することも可能である。
【００１５】
（第１の実施形態）
本発明の第１の実施形態は図６および図８を参照して、説明される。第１の実施形態のブロック図が図６に示される。第１の実施形態は、調整された値を計算するための適応フィルタ２００からなる。適応フィルタ２００はさらに、重みを計算する計算ユニット２０１と、重みを用いて、ブロック境界近傍の画素値を決定する決定ユニット２０２とからなる。
【００１６】
適応フィルタ２００は入力画像を受け取って、調整された値を出力する。適応フィルタ２００において、計算ユニット２０１は入力画像データを受け取り、ブロック境界を横切って配置される複数の画素に適用される高域通過フィルタの出力を用いることによって、ブロック境界近傍の画素の重みを計算する。計算ユニット２０１は、重みを決定ユニット２０２に出力する。決定ユニット２０２は、入力画像データと計算ユニット２０１から出力された重みを受け取り、ブロック境界近傍の画素の加重和を計算することによって、調整された値を決定する。
【００１７】
計算ユニット２０１はさらに、高域通過フィルタ６０３および重み計算ユニット６０４からなる。高域通過フィルタ６０３は入力画像データを受け取り、ブロック境界の各側の画素をフィルタ処理して、重み計算ユニット６０４に出力する。画素を水平および垂直にフィルタ処理する高域通過フィルタ６０３の係数からなるベクトルを、それぞれ式（１）および（２）で示す。
［−１  ２  −１］                                          （１）
2009044549.tif 000034
【００１８】
図７は、水平方向に隣接する２つのブロックの境界線と、その境界線に対し左垂直方向に並んだ画素Ｍ０，Ｍ１，Ｍ２，Ｍ３、及び右垂直方向に並んだ画素Ｎ０，Ｎ１，Ｎ２，Ｎ３が示されている。また、Ｐ０，Ｐ１，Ｐ２，Ｐ３は、それぞれ画素Ｍ０，Ｍ１，Ｍ２，Ｍ３の明るさレベルを示し、Ｑ０，Ｑ１，Ｑ２，Ｑ３は、それぞれ画素Ｎ０，Ｎ１，Ｎ２，Ｎ３の明るさレベルを示す。
【００１９】
高域通過フィルタ６０３は、ある注目画素と、それに隣接する両隣（左右、又は上下）の隣接画素との明るさレベルの差分を強調した高域通過フィルタ値ＨＰＦを出力する。この実施の形態では、高域通過フィルタ値ＨＰＦ（Ｘｉ）の一般式は、式（３）で示される。
ＨＰＦ（Ｘi）＝［−１  ２  −１］［Ｌ(i-1)  Ｌi  Ｌ(i+1)］Ｔ
＝(-1)*Ｌ(i-1)+(2)*Ｌi+(-1)*Ｌ(i+1)                （３）
【００２０】
ここで、Ｌiは注目画素の明るさレベル、Ｌ(i-1)、Ｌ(i+1)は、注目画素に隣接する両隣（左右、又は上下）の隣接画素の明るさレベルを示す。
図７において、注目画素を、境界線に隣接する画素であるとした場合、画素Ｍ０の高域通過フィルタ値ＨＰＦ（Ｍ０）は、式（４）で決定され、画素Ｎ０の高域通過フィルタ値ＨＰＦ（Ｎ０）は、式（５）で決定される。
ＨＰＦ（ＭＯ）＝［−１  ２  −１］［Ｐ１  Ｐ０  Ｑ０］Ｔ    （４）
ＨＰＦ（ＮＯ）＝［−１  ２  −１］［Ｐ０  Ｑ０  Ｑ１］Ｔ    （５）
【００２１】
重み計算ユニット６０４は高域通過フィルタ６０３の出力を受け取り、式（６）、（７）、（８）および（９）によって重みを計算する。
ＡＭ０＝（ＨＰＦ（Ｍ０）＋ＨＰＦ（Ｎ０））／ＨＰＦ（Ｍ０）    （６）
ＡＮ０＝（ＨＰＦ（Ｎ０）＋ＨＰＦ（Ｍ０））／ＨＰＦ（Ｎ０）    （７）
ＡＭｉ＝１，if i ≠ ０                                        （８）
ＡＮｉ＝１，if i ≠ ０                                        （９）
ここでＡＭｉは画素Ｍｉの重みを表し、ＨＰＦ（Ｍｉ）は画素Ｍｉにおいて高域通過フィルタ６０３の出力である高域通過フィルタ値ＨＰＦ（Ｍｉ）を表している。重みは、調整された値を決定するための決定ユニット２０２に出力される。画素Ｍ０の重みは、式（６）を用いることによって決定され、画素Ｎ０の重みは、式（７）を用いることによって決定される。式（８）は、Ｍ１，Ｍ２，Ｍ３，・・・の重みは１であることを示し、式（９）は、Ｎ１，Ｎ２，Ｎ３，・・・の重みは１であることを示す。
【００２２】
連続的な垂直の画素の演算は、連続的な水平画素の例と類似している。記述が冗長になるので、ここでは繰り返さない。
注目画素と、その両隣にある画素との明るさレベルを結んだ線が、逆Ｖ字型である場合は、高域通過フィルタ値は正の値になる一方、Ｖ字型である場合は、高域通過フィルタ値は負の値になる。高域通過フィルタ値の絶対値が大きくなる程逆Ｖ字型またはＶ字型の折れ角度がより鋭角であることを示す。なお、注目画素は、ブロック境界線に隣接した位置にある画素である。
【００２３】
決定ユニット２０２はさらに、低域通過フィルタ６０５と加重和計算ユニット６０６からなる。低域通過フィルタ６０５は入力画像データを受信し、ブロック境界近傍における画素に適用され、フィルタ処理された値を決定する。画素を水平にまた垂直にフィルタ処理するための低域通過フィルタ６０５の係数からなるベクトルは、式（１０ａ）および（１０ｂ）に示されるとおりである。
（１／４）［１  ２  １］                                  （１０ａ）
2009044549.tif 000035
【００２４】
低域通過フィルタ６０５は、ある注目画素と、それに隣接する両隣（左右、又は上下）の隣接画素との明るさレベルの差分を低減した低域通過フィルタ値ＬＰＦを出力する。この実施の形態では、低域通過フィルタ値ＬＰＦ（Ｘｉ）の一般式は、式（１１）で示される。
ＬＰＦ（Ｘi）＝（１／４）［１  ２  １］［Ｌ(i-1)  Ｌi  Ｌ(i+1)］Ｔ
＝（１／４）｛(1)*Ｌ(i-1)+(2)*Ｌi+(1)*Ｌ(i+1)｝  （１１）
ここでＬＰＦ（Ｍ０）は式（１２）によって決定され、ＬＰＦ（Ｎ０）は式（１３）によって決定される。
ＬＰＦ（ＭＯ）＝（１／４）［１  ２  １］［Ｐ１  Ｐ０  Ｑ０］Ｔ （１２）
ＬＰＦ（ＮＯ）＝（１／４）［１  ２  １］［Ｐ０  Ｑ０  Ｑ１］Ｔ （１３）
【００２５】
加重和計算ユニット６０６は、入力画像データと、低域通過フィルタ６０５の出力であるフィルタ処理された値と、重み計算ユニット６０４の出力である重みを受け取り、元の画素値とフィルタ処理された値との加重和を式（１４）に基づいて計算することによって、調整された値を決定する。
ＹＫ’＝ＹＫ＊ＡＫ  ＋  ＬＰＦ（Ｋ）＊（１−ＡＫ）            （１４）
【００２６】
ここでＹＫ’は画素Ｋに関する調整された明るさレベルを示し、ＹＫは画素Ｋの元の明るさレベルを示し、ＡＫは重み計算ユニット６０４の出力である画素Ｋの重みを示している。また、ＬＰＦ（Ｋ）は、画素Ｋのフィルタ処理された値を示し、画素Ｋにおける低域通過フィルタ６０５の出力である。従って、Ｍ０，Ｎ０における調整された明るさレベルは、次式で表される。
Ｙ（Ｍ０）’＝Ｙ（Ｍ０）＊ＡＭ０＋ＬＰＦ（Ｍ０）＊（１−ＡＭ０） （１５）
Ｙ（Ｎ０）’＝Ｙ（Ｎ０）＊ＡＮ０＋ＬＰＦ（Ｎ０）＊（１−ＡＮ０） （１６）
【００２７】
ここで、具体的数値を用いて、図６の高域通過フィルタ６０３でなされる式（４）、（５）を用いた計算、重み計算ユニット６０４でなされる式（６）、（７）を用いた計算、低域通過フィルタ６０５でなされる式（１２）、（１３）を用いた計算、加重和計算ユニット６０６でなされる式（１４）を、図１２Ａの例を用いて説明する。
図１２Ａにおいて、画素Ｍ０とＮ０の間にブロックの境界線が存在する。また、明るさレベルが、Ｐ１で１６０，Ｐ０で２００，Ｑ０で８０，Ｑ１で４０であったとする。画素Ｍ０の明るさレベルＰ０と、画素Ｎ０の明るさレベルＱ０との差は比較的大きいので、ブロックの境界線に一致してオリジナル画像の輪郭線が存在していると思われる。
高域通過フィルタ６０３では、式（４）、（５）に基づき次の計算が行われる。
ＨＰＦ（Ｍ０）＝［−１  ２  −１］［１６０  ２００  ８０)］Ｔ
＝(-1)*(１６０)+(2)*（２００）+(-1)*（８０）
＝−１６０＋４００−８０  ＝１６０          （１７）
ＨＰＦ（Ｎ０）＝［−１  ２  −１］［２００  ８０  ４０)］Ｔ
＝(-1)*(２００)+(2)*（８０）+(-1)*（４０）
＝−２００＋１６０−４０  ＝−８０          （１８）
【００２８】
これら２つのＨＰＦ値は重み計算ユニット６０４に送られ、式（６）、（７）を用いて次の計算がなされる。
ＡＭ０＝（ＨＰＦ（Ｍ０）＋ＨＰＦ（Ｎ０））／ＨＰＦ（Ｍ０）
＝  （１６０  ＋（−８０））／４  ＝２０                （１９）
ＡＮ０＝（ＨＰＦ（Ｎ０）＋ＨＰＦ（Ｍ０））／ＨＰＦ（Ｎ０）
＝（（−８０）＋  １６０）／（−２）＝８０／（−２）＝−４０ （２０）
【００２９】
一方、低域通過フィルタ６０５では、式（１２）、（１３）に基づき次の計算が行われる。
ＬＰＦ（Ｍ０）＝（１／４）［１  ２  １］［１６０  ２００  ８０］Ｔ
＝（１／４）｛(1)*(１６０)+(2)*（２００）+(1)*(８０)｝
＝  （１／４）＊６４０＝１６０                  （２１）
ＬＰＦ（Ｎ０）＝（１／４）［１  ２  １］［２００  ８０  ４０］Ｔ
＝（１／４）｛(1)*(２００)+(2)*（８０）+(1)*(４０)｝
＝  （１／４）＊４００＝１００                  （２２）
【００３０】
上記式（１９）、（２１）を式（１５）に代入すると、次の値が得られる。
Ｙ（Ｍ０）’＝２００＊（１／２）  ＋  １６０＊（１−（１／２））
＝１８０                                      （２３）
Ｙ（Ｎ０）’＝８０＊（−１）  ＋  １００＊（１−（−１））
＝１２０                                      （２４）
【００３１】
図１２Ａにおいて、式（２３）で得られたＹ（Ｍ０）’＝１８０は、黒い４角形「■」の印で示され、式（２４）で得られたＹ（Ｎ０）’＝１２０は、白抜きの４角形「□」の印で示されている。また、図１２Ａにおいて、式（２１）で得られたＬＰＦ（Ｍ０）＝１６０は、黒い菱形「◆」の印で示され、式（２２）で得られたＬＰＦ（Ｎ０）＝１００は、白抜き菱形「◇」の印で示されている。
なお、上記式（１４）で示される調整された明るさレベルは、境界に隣接する画素Ｍ０，Ｍ１以外の画素、すなわち画素Ｍ１，Ｍ２，Ｍ３，・・・，Ｑ１，Ｑ２，Ｑ３，・・・においては、式（８）、（９）によりＡＫ＝１であるので、常にＹＫ’＝ＹＫとなり、入力値がそのまま出力値となる。
【００３２】
適応フィルタ２００の演算フローは図８に示される。適応フィルタ２００は、ステップ８０１において高域通過フィルタによって重みを計算する。ステップ８０１はさらに、上述したように、高域通過フィルタ６０３および重み計算ユニット６０４を用いて実行される。ステップ８０１において決定された重みを用いて、ステップ８０２において調整された値を決定する。ステップ８０２はさらに、ステップ８０３およびステップ８０４からなる。ステップ８０３において、低域通過フィルタ６０５は入力画像データを受け取り、ブロック境界近傍の画素のフィルタ処理された値を決定する。ステップ８０４において、加重和計算ユニット６０６は、式（１４）を参照して、元の画素値とフィルタ処理された値との加重和を計算し、調整された和を決定する。
【００３３】
本発明の数学的および幾何学的な特性および利点は、以下に記載するとおりである。ブロック境界の各側の画素に適用される高域通過フィルタは、ブロック境界近傍の連続的な画素の特徴を認識する。まず、連続的な画素によって形成された曲線の形状は、高域通過フィルタの符号（＋／−）によって認識することが可能である。
注目画素と、その両隣にある画素との明るさレベルを結んだ線が、逆Ｖ字型である場合は、高域通過フィルタ値は正の値になる一方（図９Ａ）、Ｖ字型である場合は、高域通過フィルタ値は負の値になる（図９Ｂ）。高域通過フィルタ値の絶対値が大きくなる程逆Ｖ字型またはＶ字型の折れ角度がより鋭角であることを示す。なお、注目画素は、ブロック境界線に隣接した位置にある画素である。連続的な画素の明るさレベルの変化度は、高域通過フィルタの出力の程度によって認識することが可能となる。高域通過フィルタの出力のレベルは、連続的な画素の変化の程度を意味している。図１０Ａに示すように、高域通過フィルタの出力のレベルが高レベルの場合は、ピークを形成する如く、明るさレベルの変化度が激しいことを意味している。反対に、図１０Ｂに示すように、高域通過フィルタの出力のレベルが低レベルの場合は、ピークではなく、明るさレベルの緩やかな変化を意味している。ここでは、ピークを形成する如く、明るさレベルの変化度が激しい程、出力画像の鮮明度が高いと言える。
【００３４】
ブロック境界近傍の画素に適用される低域通過フィルタは、低域フィルタ処理されたＬＰＦ値を決定し、近接した画素間の画素値の差異を減少させる。図１１Ａ、図１１Ｂ、図１１Ｃ、図１１Ｄ、図１１Ｅ、および図１１Ｆは、元の画素値とＬＰＦフィルタ処理された値間における比較例を示している。元の画素値には、黒丸「●」の印が付されている。画素Ｍ０の低域フィルタ処理されたＬＰＦ値には、黒い菱形「◆」の印が付されている。画素Ｎ０の低域フィルタ処理されたＬＰＦ値には、白抜き菱形「◇」の印が付されている。図１１Ａないし図１１Ｆに示されるように、画素Ｍ０と画素Ｎ０のフィルタ処理された値は、低域通過フィルタを画素に適用することによって、元の画素値よりも、互いに近接している。ブロック境界の各側間における画素の差異が減少しているため、ブロック歪みもまた減少することが可能となる。
【００３５】
しかしながら、低域通過フィルタを使用することによって、ブロック歪みを減少させるだけでなく、鮮明度も減少させる。本発明においては、高域通過フィルタを用いることにより、ブロック境界近傍の連続的な画素の特徴を認識する。また、低域通過フィルタを用いることにより、ブロック境界の各側間における画素値の差異を減少させる。したがって、ブロック歪みも減少させることが可能となり、またオリジナル画像に明るさレベルの変化度が大きい場合、その明るさレベルの変化度を損なうことなく保持することも可能となる。
【００３６】
図１２Ａ、図１２Ｂ、図１２Ｃ、図１２Ｄ、図１２Ｅ、および図１２Ｆは、フィルタ処理されたＬＰＦ値と調整されたＹＫ’値とのいくつかの比較例を示している。元の画素値には、黒丸「●」の印が付されている。画素Ｍ０の低域フィルタ処理されたＬＰＦ値には、黒い菱形「◆」の印が付されている。画素Ｎ０の低域フィルタ処理されたＬＰＦ値には、白抜き菱形「◇」の印が付されている。画素Ｍ０の調整されたＹＫ’値には、黒い４角形「■」の印が付され、画素Ｎ０の調整されたＹＫ’値には、白抜きの４角形「□」の印が付されている。
【００３７】
調整されたＹＫ’値は、元の画素値とフィルタ処理された値との加重和を計算することによって決定される。加重和の計算に用いられる重みは、高域通過フィルタによって決定される。したがって、対応する画素の高域通過フィルタの出力が、ブロック境界の他の側における画素の高域通過フィルタの出力より高い場合、画素Ｍ０および画素Ｎ０の調整された値は、フィルタ処理された値より、対応する元の画素値により近い。反対に、対応する画素の高域通過フィルタの出力が、ブロック境界の他の側における画素の高域通過フィルタの出力より低い場合、画素Ｍ０および画素Ｎ０の調整された値は、フィルタ処理された値より、対応する元の画素値から遠い。
【００３８】
図１２Ａ、図１２Ｃに示されるケースにおいては、画素Ｍ０の高域通過フィルタの出力は画素Ｎ０の高域通過フィルタの出力の絶対値より高い。そのため画素Ｍ０の調整された値は、フィルタ処理された値より、対応する元の画素値により近い。また、画素Ｎ０の高域通過フィルタの出力の絶対値は画素Ｍ０の高域通過フィルタの出力より低い。そのため画素Ｎ０の調整された値は、フィルタ処理された値より、対応する元の画素値から遠い。画素Ｍ０の高域通過フィルタの出力の絶対値が画素Ｎ０の高域通過フィルタの出力より低いという反対のケースが図１２Ｂ、図１２Ｅに示されている。説明が冗長になるのでここでは繰り返さない。図１２Ｄおよび図１２Ｆに示されるケースにおいては、画素Ｍ０の高域通過フィルタの出力の絶対値は画素Ｎ０の高域通過フィルタの出力の絶対値と同一であるため、画素Ｍ０および画素Ｎ０の調整された値は、フィルタ処理された値と同一である。
【００３９】
図６に示すブロック図を、別のアルゴリズムで説明すると次のようになる。
まず、画素Ｍ０，Ｎ０における画素値Ｐ０，Ｑ０を求める。
続いて、画素Ｍ０，Ｎ０における低域通過フィルタ値ＬＰＦ（Ｍ０）、ＬＰＦ（Ｎ０）を求め、更に、画素Ｍ０，Ｎ０における高域通過フィルタ値ＨＰＦ（Ｍ０）、ＨＰＦ（Ｎ０）を求める。
高域通過フィルタ値の絶対値｜ＨＰＦ（Ｍ０）｜、｜ＨＰＦ（Ｎ０）｜を比較し、大きい方と小さい方を特定する。この比較は、図１２Ａの場合で言えば、角度Ｐ１・Ｐ０・Ｑ０と、角度Ｐ０・Ｑ０・Ｑ１の比較に相当し、角度が小さい方（より鋭角である方）が、高域通過フィルタ値の絶対値が大きい方に相当する。
【００４０】
高域通過フィルタ値の絶対値が大きい方については、例えば図１２Ａの場合では画素Ｍ０の方については、画素値Ｐ０と低域通過フィルタ値ＬＰＦ（Ｍ０）との間の内分点に調整された値Ｙ（Ｍ０）’が位置するように設定され、高域通過フィルタ値の絶対値が小さい方については、例えば図１２Ａの場合では画素Ｎ０の方については、画素値Ｑ０と低域通過フィルタ値ＬＰＦ（Ｎ０）との外側で、ＬＰＦ（Ｎ０）よりの外分点に調整された値Ｙ（Ｍ０）’が位置するように設定される。
図１２Ａにおいて説明すると、ＬＰＦ（Ｍ０）とＹ（Ｍ０）’との間の距離は、ＬＰＦ（Ｎ０）とＹ（Ｎ０）’との間の距離に大略等しく、両絶対値｜ＨＰＦ（Ｍ０）｜、｜ＨＰＦ（Ｎ０）｜の差に応じて変化する。例えば、差が大きくなれば距離も大きくなり、小さくなれば小さくなるよう変化する。別の例として、上記距離は、段階的に変わるようにしてもよいし、常に一定量変わるようにしても良い。
【００４１】
上記式（１）から（１６）は、上記アルゴリズムを満たすものである。
なお、図４の検出ユニット４０２は、例えば、境界線を挟んで隣接する２つの画素Ｍ０，Ｎ０の画素値Ｐ０，Ｑ０を比較し、画素値の差の絶対値｜Ｐ０−Ｑ０｜が所定の閾値以下の場合は、スイッチ４０３を端子ｂに接続して元の画素値、または調整前の画素値を出力する一方、所定の閾値より大きい場合は、スイッチ４０３を端子ａに接続して調整された値を出力する。
【００４２】
別の例として、検出ユニット４０２は、高域通過フィルタ値の絶対値｜ＨＰＦ（Ｍ０）｜、｜ＨＰＦ（Ｎ０）｜を受け、いずれか一方の絶対値が所定値以上の場合は、スイッチ４０３を端子ａに接続し、いずれの絶対値も所定値未満の場合は、スイッチ４０３を端子ｂに接続するようにしても良い。
更に、検出ユニット４０２は、上記２つの例を組み合わせて用いるようにしても良いし、別の判断基準に基づきスイッチ４０３を切り替えるようにしても良い。
以上の説明においては、境界線を挟んで隣接する隣同士の画素Ｍ０，Ｎ０について調整する説明をしたが、境界線に近傍する画素Ｍ１，Ｍ２，Ｍ３，Ｑ１，Ｑ２，Ｑ３についても調整を行うようにしても良い。
【００４３】
ブロック歪みの３つの例が、図１３、図１４、および図１５に示される。元の画素の値には、黒丸「●」の印が付されている。調整された値には、白抜きの丸「○」の印が付されている。画素Ｍ０および画素Ｎ０における元の画素値間の異常な差異は、ブロック境界において垂直なブロック歪みを形成する。鮮明度は、高域通過フィルタによって決定することが可能である。図１３および図１４の例では、画素Ｍ０の鮮明度は、画素Ｎ０の鮮明度より高い鮮明度を有する。そのため、調整された値Ｐ０’は、低域通過フィルタによって決定されるフィルタ処理された値より、対応する元の値に近い。一方、調整された値Ｑ０’は、フィルタ処理された値より、対応する元の値から遠い。図１５の例では、画素Ｍ０および画素Ｎ０は、同じ鮮明度を有する。そのため、調整された値Ｐ０’およびＱ０’はフィルタ処理された値と同一となる。さらに調整された値Ｐ１’、Ｐ２’、Ｐ３’、Ｑ１’、Ｑ２’およびＱ３’が決定されて、異常な不連続性をなくす。
【００４４】
ブロック境界の各側における鮮明度は、高域通過フィルタと元の画素値とフィルタ処理された値との加重和を計算することによって決定されるブロック境界近傍の画素に関する調整された値によって、重みの計算を通して決定されるため、本発明はブロック歪みを除去し、鮮明度を保持する。
【００４５】
図１６は、図２，図４，図６を一つにまとめたものである。図１６に示す回路を一つ又は複数の集積回路に組み込むことも可能である。
又図１７は、図３，図５を一つにまとめたものである。本発明をコンピュータプログラムで実行することも可能である。
（その他変形例）
なお、本発明を上記実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
【００４６】
（１）上記の各装置は、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭ、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記ＲＡＭまたはハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
【００４７】
（２）上記の各装置を構成する構成要素の一部または全部は、１個のシステムＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ：大規模集積回路）から構成されているとしてもよい。システムＬＳＩは、複数の構成部を１個のチップ上に集積して製造された超多機能ＬＳＩであり、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどを含んで構成されるコンピュータシステムである。前記ＲＡＭには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、システムＬＳＩは、その機能を達成する。
【００４８】
（３）上記の各装置を構成する構成要素の一部または全部は、各装置に脱着可能なＩＣカードまたは単体のモジュールから構成されているとしてもよい。前記ＩＣカードまたは前記モジュールは、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどから構成されるコンピュータシステムである。前記ＩＣカードまたは前記モジュールは、上記の超多機能ＬＳＩを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ＩＣカードまたは前記モジュールは、その機能を達成する。このＩＣカードまたはこのモジュールは、耐タンパ性を有するとしてもよい。
【００４９】
（４）本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＢＤ（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ）、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。
【００５０】
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
また、前記プログラムまたは前記デジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
【００５１】
（５）上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
【産業上の利用可能性】
【００５２】
本発明は、ブロック歪みを減少させる方法および装置に利用できる。
【符号の説明】
【００５３】
２００  適応フィルタ
２０１  計算ユニット
２０２  決定ユニット
４０２  検出ユニット
４０３  スイッチ
６０３  高域通過フィルタ
６０４  重み計算ユニット
６０５  低域通過フィルタ
６０６  加重和計算ユニット
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ブロック歪みを除去する方法であって、
隣接する２つのブロックの境界線を挟む第１画素および第２画素の画素値をそれぞれ受け、第１画素および第２画素の高域通過フィルタ値をそれぞれ求め、
第１画素および第２画素の高域通過フィルタ値に基づき、第１画素および第２画素の重みをそれぞれ求め、
第１画素および第２画素の低域通過フィルタ値をそれぞれ求め、
第１画素および第２画素の重みに基づき、第１画素および第２画素の低域通過フィルタ値の調整値を、それぞれ求め、
ブロック歪みを除去するブロック歪除去方法。
【請求項２】
前記第１画素の調整値は、その画素の画素値と低域通過フィルタ値との間の内分点又は外分点いずれか一方であり、第２画素の調整値は、その画素の画素値と低域通過フィルタ値との間の内分点又は外分点いずれか他方である、請求項１記載のブロック歪除去方法。
【請求項３】
更に、ブロック歪みが存在するか否かを検出し、
ブロック歪みが存在する場合は、調整値を用い、ブロック歪みが存在しない場合は、元の画素値を用いる、請求項１記載のブロック歪除去方法。
【請求項４】
ブロック歪みを除去する装置であって、
隣接する２つのブロックの境界線を挟む第１画素および第２画素の画素値をそれぞれ受け、第１画素および第２画素の高域通過フィルタ値をそれぞれ求める高域通過フィルタと、
第１画素および第２画素の高域通過フィルタ値に基づき、第１画素および第２画素の重みをそれぞれ求める重み計算ユニットと、
第１画素および第２画素の低域通過フィルタ値をそれぞれ求める低域通過フィルタと、
第１画素および第２画素の重みに基づき、第１画素および第２画素の低域通過フィルタ値の調整値を、それぞれ求める加重和計算ユニットと、
を設け、ブロック歪みを除去するブロック歪除去装置。
【請求項５】
前記第１画素の調整値は、その画素の画素値と低域通過フィルタ値との間の内分点又は外分点いずれか一方であり、第２画素の調整値は、その画素の画素値と低域通過フィルタ値との間の内分点又は外分点いずれか他方である、請求項４記載のブロック歪除去装置。
【請求項６】
更に、ブロック歪みが存在するか否かを検出する検出ユニットを設け、
ブロック歪みが存在する場合は、調整値を用い、ブロック歪みが存在しない場合は、元の画素値を用いる、請求項４記載のブロック歪除去装置。
【請求項７】
請求項１に記載のブロック歪除去方法をコンピュータにより実行可能とするプログラム。
【請求項８】
請求項４に記載のブロック歪除去装置を組み込んだ集積回路。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2009044549.tif 000036
【図２】
2009044549.tif 000037
【図３】
2009044549.tif 000038
【図４】
2009044549.tif 000039
【図５】
2009044549.tif 000040
【図６】
2009044549.tif 000041
【図７】
2009044549.tif 000042
【図８】
2009044549.tif 000043
【図９Ａ】
2009044549.tif 000044
【図９Ｂ】
2009044549.tif 000045
【図１０Ａ】
2009044549.tif 000046
【図１０Ｂ】
2009044549.tif 000047
【図１１Ａ】
2009044549.tif 000048
【図１１Ｂ】
2009044549.tif 000049
【図１１Ｃ】
2009044549.tif 000050
【図１１Ｄ】
2009044549.tif 000051
【図１１Ｅ】
2009044549.tif 000052
【図１１Ｆ】
2009044549.tif 000053
【図１２Ａ】
2009044549.tif 000054
【図１２Ｂ】
2009044549.tif 000055
【図１２Ｃ】
2009044549.tif 000056
【図１２Ｄ】
2009044549.tif 000057
【図１２Ｅ】
2009044549.tif 000058
【図１２Ｆ】
2009044549.tif 000059
【図１３】
2009044549.tif 000060
【図１４】
2009044549.tif 000061
【図１５】
2009044549.tif 000062
【図１６】
2009044549.tif 000063
【図１７】
2009044549.tif 000064
【国際調査報告】
2009044549.tif 000065
2009044549.tif 000066