(57)【特許請求の範囲】
【請求項１】
原画像をブロック符号・復号した場合に発生するブロックノイズを低減する画像処理装置であって、
画像の各ブロック毎に、そのブロックの画素値の平均値及びそのブロックの画素値の平坦度合いを示す値を算出する手段と、
上記算出した値をもとに、画像の各ブロック毎に、平坦なブロックであるのか否かということと、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在するのか否かを判断して、その判断結果に基づいて、平坦なブロックではないものと、平坦なブロックではあるものの、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在しないものとについては、補正を行わないブロックとして決定し、さらに、補正を行うと決定したブロックについては、周辺に存在する平均画素値の差が規定の閾値以下となる平坦なブロックを、その補正を行う際に用いる周辺ブロックとして決定する手段と、
上記補正を行うと決定したブロックの平均画素値とその補正を行う際に用いるとして決定した上記周辺ブロックの平均画素値との平均値を算出し、その算出した平均値と上記補正を行うと決定したブロックの平均画素値との差分値を算出して、上記補正を行うと決定したブロックの各画素値にその差分値を加算することで、上記補正を行うと決定したブロックの各画素値を補正する手段と、
上記補正したブロックの持つ境界画素の画素値を、該境界画素及び該境界画素の周辺に存在する画素の画素値を使って補正する手段とを備えることを、
特徴とする画像処理装置。
【請求項２】
原画像をブロック符号・復号した場合に発生するブロックノイズを低減する画像処理装置であって、
画像の各ブロック毎に、そのブロックの画素値の平均値及びそのブロックの画素値の平坦度合いを示す値を算出する手段と、
上記算出した値をもとに、画像の各ブロック毎に、平坦なブロックであるのか否かということと、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在するのか否かを判断して、その判断結果に基づいて、平坦なブロックではないものと、平坦なブロックではあるものの、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在しないものとについては、補正を行わないブロックとして決定し、さらに、補正を行うと決定したブロックについては、周辺に存在する平均画素値の差が規定の閾値以下となる平坦なブロックを、その補正を行う際に用いる周辺ブロックとして決定する手段と、
上記補正を行うと決定したブロックの平均画素値とその補正を行う際に用いるとして決定した上記周辺ブロックの平均画素値との平均値を算出し、上記補正を行うと決定したブロックの各画素値をその平均値に置き換えることで、上記補正を行うと決定したブロックの各画素値を補正する手段と、
上記補正したブロックの持つ境界画素の画素値を、該境界画素及び該境界画素の周辺に存在する画素の画素値を使って補正する手段とを備えることを、
特徴とする画像処理装置。
【請求項３】
原画像をブロック符号・復号した場合に発生するブロックノイズを低減する画像処理装置が実行する画像処理方法であって、
画像の各ブロック毎に、そのブロックの画素値の平均値及びそのブロックの画素値の平坦度合いを示す値を算出する過程と、
上記算出した値をもとに、画像の各ブロック毎に、平坦なブロックであるのか否かということと、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在するのか否かを判断して、その判断結果に基づいて、平坦なブロックではないものと、平坦なブロックではあるものの、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在しないものとについては、補正を行わないブロックとして決定し、さらに、補正を行うと決定したブロックについては、周辺に存在する平均画素値の差が規定の閾値以下となる平坦なブロックを、その補正を行う際に用いる周辺ブロックとして決定する過程と、
上記補正を行うと決定したブロックの平均画素値とその補正を行う際に用いるとして決定した上記周辺ブロックの平均画素値との平均値を算出し、その算出した平均値と上記補正を行うと決定したブロックの平均画素値との差分値を算出して、上記補正を行うと決定したブロックの各画素値にその差分値を加算することで、上記補正を行うと決定したブロックの各画素値を補正する過程と、
上記補正したブロックの持つ境界画素の画素値を、該境界画素及び該境界画素の周辺に存在する画素の画素値を使って補正する過程とを備えることを、
特徴とする画像処理方法。
【請求項４】
原画像をブロック符号・復号した場合に発生するブロックノイズを低減する画像処理装置が実行する画像処理方法であって、
画像の各ブロック毎に、そのブロックの画素値の平均値及びそのブロックの画素値の平坦度合いを示す値を算出する過程と、
上記算出した値をもとに、画像の各ブロック毎に、平坦なブロックであるのか否かということと、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在するのか否かを判断して、その判断結果に基づいて、平坦なブロックではないものと、平坦なブロックではあるものの、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在しないものとについては、補正を行わないブロックとして決定し、さらに、補正を行うと決定したブロックについては、周辺に存在する平均画素値の差が規定の閾値以下となる平坦なブロックを、その補正を行う際に用いる周辺ブロックとして決定する過程と、
上記補正を行うと決定したブロックの平均画素値とその補正を行う際に用いるとして決定した上記周辺ブロックの平均画素値との平均値を算出し、上記補正を行うと決定したブロックの各画素値をその平均値に置き換えることで、上記補正を行うと決定したブロックの各画素値を補正する過程と、
上記補正したブロックの持つ境界画素の画素値を、該境界画素及び該境界画素の周辺に存在する画素の画素値を使って補正する過程とを備えることを、
特徴とする画像処理方法。
【請求項５】
原画像をブロック符号・復号した場合に発生するブロックノイズを低減する画像処理装置の実現に用いられる画像処理プログラムであって、
コンピュータを、
画像の各ブロック毎に、そのブロックの画素値の平均値及びそのブロックの画素値の平坦度合いを示す値を算出する手段と、
上記算出した値をもとに、画像の各ブロック毎に、平坦なブロックであるのか否かということと、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在するのか否かを判断して、その判断結果に基づいて、平坦なブロックではないものと、平坦なブロックではあるものの、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在しないものとについては、補正を行わないブロックとして決定し、さらに、補正を行うと決定したブロックについては、周辺に存在する平均画素値の差が規定の閾値以下となる平坦なブロックを、その補正を行う際に用いる周辺ブロックとして決定する手段と、
上記補正を行うと決定したブロックの平均画素値とその補正を行う際に用いるとして決定した上記周辺ブロックの平均画素値との平均値を算出し、その算出した平均値と上記補正を行うと決定したブロックの平均画素値との差分値を算出して、上記補正を行うと決定したブロックの各画素値にその差分値を加算することで、上記補正を行うと決定したブロックの各画素値を補正する手段と、
上記補正したブロックの持つ境界画素の画素値を、該境界画素及び該境界画素の周辺に存在する画素の画素値を使って補正する手段として機能させるための画像処理プログラム。
【請求項６】
原画像をブロック符号・復号した場合に発生するブロックノイズを低減する画像処理装置の実現に用いられる画像処理プログラムであって、
コンピュータを、
画像の各ブロック毎に、そのブロックの画素値の平均値及びそのブロックの画素値の平坦度合いを示す値を算出する手段と、
上記算出した値をもとに、画像の各ブロック毎に、平坦なブロックであるのか否かということと、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在するのか否かを判断して、その判断結果に基づいて、平坦なブロックではないものと、平坦なブロックではあるものの、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在しないものとについては、補正を行わないブロックとして決定し、さらに、補正を行うと決定したブロックについては、周辺に存在する平均画素値の差が規定の閾値以下となる平坦なブロックを、その補正を行う際に用いる周辺ブロックとして決定する手段と、
上記補正を行うと決定したブロックの平均画素値とその補正を行う際に用いるとして決定した上記周辺ブロックの平均画素値との平均値を算出し、上記補正を行うと決定したブロックの各画素値をその平均値に置き換えることで、上記補正を行うと決定したブロックの各画素値を補正する手段と、
上記補正したブロックの持つ境界画素の画素値を、該境界画素及び該境界画素の周辺に存在する画素の画素値を使って補正する手段として機能させるための画像処理プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＪＰＥＧ形式等で符号・復号した画像に存在するブロックノイズを除去する画像処理装置及びその方法と、その画像処理装置の実現に用いられる画像処理プログラムとに関し、特に、少ない計算量でもって、しかも、効果的にブロックノイズを削減できるようにする画像処理装置及びその方法と、その画像処理装置の実現に用いられる画像処理プログラムとに関する。
【０００２】
【従来の技術】
近年、デジタルカメラの普及等によってデジタルカラー画像が頻繁に見受けられるようになった。この画像は、例えば“ＪＰＥＧ”という符号・復号化形式で保存されている。これは、ＪＰＥＧを用いると、ファイルサイズを非圧縮画像と比べて１／２〜１／２０程度に圧縮できるので、保存や通信に適しているためである。
【０００３】
この符号・復号化形式は、通常周波数領域で行われている。これに関して、図３０を使って具体的に説明する。
【０００４】
はじめに、図３０に示すように、画像は８×８画素のブロックに分割され、各ブロックは直交変換によって周波数空間に変換される。これによって高周波成分および低周波成分に関する係数が計６４個算出される。
【０００５】
次に、図３０に示すように、周波数ごとに定められた量子化閾値（量子化テーブル、画像全体で共通）で係数を除算することで量子化される。量子化閾値は、人間が敏感な低周波領域に対しては小さく、高周波領域に対しては大きく設定される。この量子化処理により、情報の一部が欠落することで、後述するノイズの発生原因となる。
【０００６】
最後に、図３０に示すように、エントロピ符号化によりデータの冗長性を取り除き、符号化データを生成する。復号器では、逆量子化、逆変換を経て符号化画像を再生する。
【０００７】
しかし、保存の際に高い圧縮率で圧縮すると、画像には様々な歪み（例えばブロックノイズ、モスキートノイズなど）が生じてしまい、画質が著しく劣化してしまう。このなかでもブロックノイズは、「空」のような平坦な画像部分においてブロック状の輪郭が出現しているように見えるため、特に目立つ。
【０００８】
これは、高圧縮によりブロックの周波数成分が殆ど低周波成分のみになるため、逆量子化した際には平坦なブロックになってしまうためである。
【０００９】
このブロックノイズを目立たなくさせるための第１の従来技術として、図３１に示すように、ブロック境界に面した画素( 以下、ブロック境界画素あるいは境界画素と略記する) に対して平滑化フィルタリングを施すことによって、ブロック境界のレベル差を下げてブロックノイズを目立たなくさせる技術( 特開平2-57067 号「画像符号化処理方式」) がある。
【００１０】
また、第２の従来技術として、ブロック境界を中心に広範囲に平滑化フィルタリングを行うことで、ブロック境界のレベル差とブロック境界以外でのレベル差との差を減少させることで、ブロック境界部のレベル差を目立たなくさせる技術がある（特開平10-224790 号「圧縮伸張された画像中のブロック状ノイズを除去するフィルタおよびフィルタ方法」）。
【００１１】
この第２の従来技術では、フィルタリングの前に、フィルタリングしようとしている領域の活性度・平均値を算出して、これらの値をもとに平坦な部分のみを抽出し、これをフィルタ適用範囲としている。平坦な部分のみをフィルタ適用範囲とするのは、フィルタリングによって画像中の特徴となる先鋭な線・輪郭をぼかさないようにするためである。
【００１２】
ちなみに活性度とは、その領域中にある画素値の不均一さのことである。不均一であるほど、その領域中に画素値の急激な変化、つまり輪郭・線が存在すると考えられる。よって、活性度の高い領域に対してはフィルタリングを行わないようにすることで、輪郭・線をボカさないようにするのである。
【００１３】
この第２の従来技術の具体的な処理手順は、▲１▼図３２に示すように、ブロック境界を境にして平坦な第１、第２グループを形成し、各グループに対する平均値・活性度を算出し、これらを元に、両グループをまたいでフィルタリングしても線・輪郭をぼかさないかどうかを判断して、フィルタ適用範囲を設定した後、▲２▼図３３のように、設定したフィルタ適用範囲全体にリニア補間フィルタをかけて平滑化するものである。
【００１４】
【発明が解決しようとする課題】
第１の従来技術では、ブロック境界画素のみに対してフィルタリングを行うことから、図３４に示すように、平坦部に顕在化するブロックノイズに対しては境界のレベル差のみが目立ったままになる場合があるという問題点がある。
【００１５】
これは、ブロック境界でのレベル差が大きいにもかかわらず、ブロック境界以外ではレベル差の変化が全くないためと考えられる。平坦部では、ブロック境界以外ではレベル差の変化が全くない部分が広範囲に分布しているので、一層境界部のレベル差が目立つことになる。
【００１６】
これに対して、第２の従来技術では、このような平坦部に顕在化するブロックノイズを除去するためにブロック境界を中心に広範囲に平滑化フィルタリングを行っていることから、図３５に示すように、ブロック境界のレベル差が目立たなくなる。
【００１７】
しかしながら、第２の従来技術では、フィルタ適用範囲中の全画素に対して、逐一異なる補正量を算出しなければならないという問題点がある。
【００１８】
さらに、第２の従来技術では、画像中の垂直方向を向いたブロック境界に対してノイズ除去処理を行った後に水平方向の処理を行う必要があるため、フィルタ適用範囲を検出するための平均値・活性度の算出処理を水平方向に一列毎に再度行う必要があるという問題点がある。
【００１９】
したがって、これらの問題点のため、第２の従来技術に従っていると、ブロックノイズ除去処理が遅くなってしまうという問題点がある。
【００２０】
本発明はかかる事情に鑑みてなされたものであって、画像をブロック符号化し復号するという構成を採るときにあって、少ない計算量でもって、しかも、効果的にブロックノイズを削減できるようにする新たな画像処理技術の提供を目的とする。
【００２１】
【課題を解決するための手段】
本発明は、画像をブロック符号し復号するという構成を採るときにあって、空などのような平坦な画像部分に存在するブロックノイズを除去するためにフィルタ適用範囲を広げることによって計算量が増大してしまうという従来技術の持つ問題点を解決することを課題としている。
【００２２】
この課題を解決するために、本発明は、原画像をブロック符号・復号した場合に発生するブロックノイズを低減することを実現するために、画像を符号・復号時と同じブロックかあるいは異なるブロックに分割する分割手段と、画像の各ブロック毎に、そのブロックの特性値を算出する算出手段と、その算出された特性値をもとに、画像の各ブロック毎に、そのブロックの補正方法（補正を行うブロックであるのか否かということと、補正を行う場合には、周辺のどのブロックを用いて補正を行うのかということについて記述する）を決定する決定手段と、その補正方法により補正を行うと決定したブロック内の各画素値を、その補正方法に従い、そのブロック及びそのブロックの周辺に存在するブロックの平均画素値を使って補正する第１の補正手段と、その補正されたブロックの持つ境界画素の画素値を、その境界画素及びその境界画素の周辺に存在する画素の画素値を使って補正する第２の補正手段とを備えるように構成する。
【００２４】
この構成を採るときに、算出手段は、ブロックの特性値として、そのブロックの画素値の平坦度合いを示す値とそのブロックの画素値の平均値とを算出し、これを受けて、決定手段は、算出手段の算出した値をもとに、画像の各ブロック毎に、平坦なブロックであるのか否かということと、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在するのか否かを判断して、その判断結果に基づいて、平坦なブロックではないものと、平坦なブロックではあるものの、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在しないものとについては、補正を行わないブロックとして決定し、さらに、補正を行うと決定したブロックについては、周辺に存在する平均画素値の差が規定の閾値以下となる平坦なブロックを、その補正を行う際に用いる周辺ブロックとして決定する。
【００２５】
そして、この構成を採るときに、第１の補正手段は、補正を行うと決定されたブロックの平均画素値とその補正を行う際に用いるとして決定された周辺ブロックの平均画素値との平均値を算出して、補正を行うと決定されたブロックの各画素値をその平均値に置き換えることで、補正を行うと決定されたブロックの各画素値を補正する。
【００２６】
また、この構成を採るときに、第１の補正手段は、補正を行うと決定されたブロックの平均画素値とその補正を行う際に用いるとして決定された周辺ブロックの平均画素値との平均値を算出し、その算出した平均値と補正を行うと決定されたブロックの平均画素値との差分値を算出して、補正を行うと決定されたブロックの各画素値にその差分値を加算することで、補正を行うと決定されたブロックの各画素値を補正する。
【００２７】
この構成を採るときに、第２の補正手段は、境界画素に加えて、境界画素の近傍に位置する画素についても補正対象として、補正対象画素の画素値を、その補正対象画素及びその補正対象画素の周辺に存在する画素の画素値を使って補正するように処理することがある。
第２の補正手段は、境界画素のみを補正対象画素とする場合には、境界画素の画素値と、境界画素からブロック境界をまたいで一つ隣にある画素の画素値と、それとは反対の方向にある隣の画素の画素値とを参照して、境界画素の補正量を算出するように処理することがある。
【００２８】
また、第２の補正手段は、境界画素と境界画素の近傍画素とを補正対象画素とする場合には、補正対象画素の画素値と、補正対象画素からみてブロックの境界のある方向に存在する規定個数の画素の画素値と、それとは反対の方向にある同数の画素の画素値とを参照して、補正対象画素の画素値の補正量を算出するように処理することがある。
【００２９】
以上に説明した本発明を構成する各処理手段はコンピュータプログラムで実現できるものであり、このコンピュータプログラムは、コンピュータ読み取り可能な適当な記録媒体に記録して提供することができる。
【００３０】
このように構成される本発明では、
（１）図１に示すように、各ブロック毎に、そのブロックの特性値（▲１▼ブロックの平均画素値、▲２▼ブロックの持つ画素値の標準偏差値や、ブロックを直交変換するときに得られる交流成分などのような活性度）を算出し、それを使って、そのブロックが平坦かどうかということと、隣接する平坦ブロックとの平均画素値の差分を評価することで、ブロックの補正方法（ノイズ除去処理を行うのか否かということと、どの周辺平坦ブロックを用いてノイズ除去処理を行うのかということを規定する）を決定し、
（２）続いて、補正対象のブロックについて、各ブロック毎に、補正方法の指示に従いつつ、周辺ブロックの直流成分（ブロックの高さを示す成分、ブロック全体の平均値）との平均値を算出するような形で直流成分を補正することで、図２に示すように、ブロック間の段差を軽減し、
（３）最後に、補正対象のブロックについて、図３に示すように、ブロック境界を中心に、固定サイズのフィルタでフィルタリングすることにより、ブロックノイズを除去するように処理する。
【００３１】
本発明では、上記（２）の処理に従って、ブロック境界の段差が小さくなるように直流成分を変化させるように処理している。
【００３２】
この時点で既に段差が小さくなっているため、単純にフィルタリングのみを行うより境界上の傾斜は緩やかなものとなる。このようにして緩やかな傾斜を付与することで、本発明によれば、ブロック境界のレベル差とブロック境界近辺のレベル差との差を減少させることが可能となり、境界部が目立たなくなる。
【００３３】
本発明においても、第２の従来技術と同様に、ブロック内部にある画素（以下、ブロック内画素と略記する）に対しても補正は行っているが、この補正は直流成分の補正によるもののみであり、図４に示すように補正量は全て同一である。よって、本発明によれば、従来技術のようにブロック内画素のそれぞれに対して異なる計算を行う必要はない。
【００３４】
したがって、本発明によれば、画像をブロック符号化し復号するという構成を採るときにあって、少ない計算量でもって、しかも、効果的にブロックノイズを削減できるようになる。
【００３５】
しかも、上述したように、第２の従来技術では、画像中の垂直方向を向いたブロック境界に対してノイズ除去処理を行った後に水平方向の処理を行う必要があるため、フィルタ適用範囲を検出するための平均値・活性度の算出処理を水平方向に一列毎に再度行う必要がある。
【００３６】
これに対して、上記（１）の処理はブロック毎に算出した特性値をもとにしているため、本発明によれば、処理方向が変化した場合でも、前に求めたブロック毎の特性値を使用することが可能であるので、再度算出する必要はない。
【００３７】
この点からしても、本発明によれば、少ない計算量でもって、ブロックノイズを削減できるようになる。
【００３８】
【発明の実施の形態】
以下、実施の形態に従って本発明を詳細に説明する。
【００３９】
図５は、本発明の第１の実施の形態によるブロックノイズの除去を説明する図である。
【００４０】
ここでは、あるカラーイメージ画像をプリンタで出力するときの実施形態例を想定している。
【００４１】
この実施形態例に従うプリンタ１２０は、ブロックノイズ除去機能を有しており、自動的に画像中のノイズを除去してからプリンタ出力を行う。
【００４２】
この実施形態例では、カラーイメージ画像１００、ＰＣ１１０およびプリンタ１２０を必要とする。
【００４３】
カラーイメージ画像１００は、ヘッダーデータ１０１と画素データ１０２とによって構成されており、ＰＣ１１０に記憶されている。そして、このカラーイメージ画像１００は、図６に示すように、８×８のブロック単位で符号・復号されるもので、n 個のブロックで構成されている。
【００４４】
ＰＣ１１０は、画素データ転送機能１１１を有しており、プリンタ出力の際に画素データ１０２のみをプリンタ１２０へ転送する。
【００４５】
プリンタ１２０は、ＰＣ１１０から転送されてきた画素データ１０２に対して、ノイズ除去機能１２１によって画像中のブロックノイズを除去してからプリント出力する。
【００４６】
このノイズ除去機能１２１は、画像中のブロックノイズを除去すべく、平均値・標準偏差値算出モジュール１２２、補正方法決定モジュール１２３および補正処理モジュール１２４を有する。
【００４７】
図７に、第１の実施形態例の処理手順の全体的な流れを図示し、図８に、平均値・標準偏差値算出モジュール１２２の処理の詳細な流れを図示し、図９に、補正方法決定モジュール１２３の処理の詳細な流れを図示し、図１０及び図１１に、補正処理モジュール１２４の処理の詳細な流れを図示する。
【００４８】
次に、図７の流れの順番に従って、第１の実施形態例で実現されるブロックノイズの低減処理について詳細に説明する。
【００４９】
（１）過程２００
ＰＣ１１０は、画素データ１０２をプリンタ１２０へ転送する。
【００５０】
（２）過程２０１（図８がその詳細な処理）
プリンタ１２０は、ＰＣ１１０から画素データ１０２を受け取ると、図８の流れ図に示すように、その画素データ１０２をブロック毎に分割して、各ブロックｉ（ｉ＝１〜ｎ）毎に、各ブロックｉの持つ画素データ１０２の平均値 Avei 及び標準偏差値 Stvi を算出する。
【００５１】
（３）過程２０２（図９がその詳細な処理）
プリンタ１２０は、各ブロックｉの平均値 Avei 及び標準偏差値 Stvi を算出すると、図９の流れ図に示すように、各ブロックｉの標準偏差値 Stvi と閾値TH１（例えば5.0 ) とを比較し、標準偏差値 Stvi が閾値TH１以上であれば活性度が高いため、つまり前述したように輪郭や線が存在すると考えられるため、これをぼかさないようにするために、このブロックｉに対してはノイズ除去を行わないことを示す値“０”を補正法決定値Flagi に代入する。
【００５２】
一方、標準偏差値 Stvi が閾値TH１未満であれば、左右のブロックをもとにノイズ除去を行えるかどうかを判定する。ちなみに、ブロックｉが画像中の右端にある場合には、左のブロックのみをもとにノイズ除去を行えるかどうかを判定し、左端にある場合には、右のブロックのみをもとにノイズ除去を行えるかどうかを判定し、右端でも左端でもない位置にある場合には、左と右のブロックをもとにノイズ除去を行えるかどうかを判定する。ここでは、ブロックｉが左端でも右端でもない場合を例に挙げて説明する。
【００５３】
▲１▼左のブロックｉ-1の平均値 Avei-1 とブロックｉの平均値 Avei との差の絶対値がTH２（例えば13.0) 以上である場合には、左のブロックｉ-1は異なる物体を形成しているブロックと見なして補正処理の参考としない。同様に、左のブロックｉ-1の標準偏差 Stvi-1 がTH１以上である場合にも、左のブロックｉ-1は異なる物体を形成しているブロックと見なして補正処理の参考としない。
【００５４】
▲２▼また、右のブロックｉ+1の平均値 Avei+1 とブロックｉの平均値 Avei との差の絶対値がTH２（例えば13.0）以上である場合には、右のブロックｉ+1は異なる物体を形成しているブロックと見なして補正処理の参考としない。同様に、右のブロックｉ+1の標準偏差 Stvi+1 がTH１以上である場合にも、右のブロックｉ+1は異なる物体を形成しているブロックと見なして補正処理の参考としない。
【００５５】
このようにして、プリンタ１２０は、図９の流れ図に従って判定処理を行うことで、各ブロックｉについて、図１２に示すような形で補正法決定値Flagi に値を代入する。
【００５６】
（３）過程２０３（図１０及び図１１がその詳細な処理）
プリンタ１２０は、過程２０２で算出したFlagi の値をもとに、ブロックノイズを除去するための補正処理を行う。
【００５７】
先ず最初に、図１０の流れ図に従って、ブロック全体に対する補正量 Correcti （ブロックｉの補正量）を算出する。
【００５８】
すなわち、
（イ）Flagi の値が０の場合
補正量 Correcti を算出しない。
【００５９】
（ロ）Flagi の値が１の場合
補正量 Correcti を、
Correcti ＝（ Avei-1 ＋ Avei ＋ Avei+1 ）／３− Avei 
という式に従って算出する。
【００６０】
（ハ）Flagi の値が２の場合
補正量 Correcti を、
Correcti ＝（ Avei-1 ＋ Avei ）／２− Avei 
という式に従って算出する。
【００６１】
（ニ）Flagi の値が３の場合
補正量 Correcti を、
Correcti ＝（ Avei ＋ Avei+1 ）／２− Avei 
という式に従って算出する。
という形で、ブロック全体に対する補正量 Correcti （ブロックｉの補正量）を算出する。
【００６２】
そして、その算出した補正量 Correcti を、ブロックｉ中の全ての画素の画素値に加算する。
【００６３】
この補正の意味するところは、周辺のブロックの平均画素値に近づくようにと、ブロックｉの各画素の画素値を一律に大きくしたり小さくしたりすることで、周辺のブロックとの段差を小さくするように処理するのである。
【００６４】
プリンタ１２０は、このブロック全体に対する補正を全てのブロックに対して完了した後、図１１の流れ図の処理に従って、各ブロックの境界に面したブロック境界画素に対するフィルタリングを行う。
【００６５】
すなわち、
（イ）Flagi-1 とFlagi がともに０でない場合
ブロックｉ-1とブロックｉとの間の境界に面したブロック境界画素へフ
ィルタリングを施す。
【００６６】
（ロ）Flagi とFlagi+1 がともに０でない場合
ブロックｉとブロックｉ+1との間の境界に面したブロック境界画素へフィルタリングを施す。
という形で、各ブロックの境界に面したブロック境界画素に対するフィルタリングを行う。
【００６７】
図１３に示すように画素Ａj-1,Ａj,Ａj+1,Ａj+2 を定義し、これらの画素の画素値をそれぞれＬj-1,Ｌj,Ｌj+1,Ｌj+2 とするならば、このとき行うフィルタリング方法は、例えば、
（イ）ブロックｉ-1の持つブロック境界画素Ａj についての補正
ブロック境界画素Ａj の画素値Ｌj を、
Ｌj ' ＝（Ｌj-1 ＋Ｌj ＋Ｌj+1 ）／３
という式に従って補正する。
【００６８】
（ロ）ブロックｉの持つブロック境界画素Ａj+1 についての補正
ブロック境界画素Ａj+1 の画素値Ｌj+1 を、
Ｌj+1 ' ＝（Ｌj ＋Ｌj+1 ＋Ｌj+2 ）／３
という式に従って補正する。
という形で、各ブロックの境界に面したブロック境界画素に対するフィルタリングを行う。
【００６９】
後述するように、この補正により、ブロック境界部になだらかな傾斜を付与することができるようになる。
【００７０】
以上に説明した過程２０２及び２０３の処理を、垂直方向について同様に行う。
【００７１】
（４）過程２０４
補正処理を完了した後、実際に印刷して処理を終了する。
【００７２】
このようにして、本実施形態例に従うプリンタ１２０は、自動的に画像中のブロックノイズを除去してからプリンタ出力を行うように動作するのである。
【００７３】
本実施形態例では、フィルタリングはブロック境界画素に対してのみ行っている。
【００７４】
しかし、当然のことながら更に緩やかな傾斜を付与するために、処理速度が極端に低下しない程度に、ブロック境界画素のみならずブロック境界画素からブロック内側に位置する１つ又は複数のブロック内画素に対して、フィルタリングを行うようにすることも効果的である。
【００７５】
次に、本発明の他の実施形態例について説明する。
【００７６】
図１４は、本発明の第２の実施の形態によるブロックノイズの除去を説明する図である。
【００７７】
ここでは、あるカラーイメージ画像をプリンタで出力するときの実施形態例を想定している。
【００７８】
この実施形態例では、カラーイメージ画像３００およびＰＣ３１０を必要とする。
【００７９】
カラーイメージ画像３００は、ヘッダーデータ３０１と画素データ３０２とによって構成されており、ＰＣ３１０に記憶されている。そして、このカラーイメージ画像３００は、図１５に示すように、８×８のブロック単位で符号・復号されるもので、ｎ行ｍ列の計ｎ×ｍ個のブロックで構成されている。
【００８０】
ＰＣ３１０は、ノイズ除去機能３１１を有しており、このノイズ除去機能３１１によって画像中のブロックノイズを除去してからディスプレイに表示する。
【００８１】
このノイズ除去機能３１１は、画像中のブロックノイズを除去すべく、平均値・活性度算出モジュール３１２および補正処理モジュール３１３を有する。
【００８２】
図１６に、第２の実施形態例の処理手順の全体的な流れを図示し、図１７及び図１８に、平均値・活性度算出モジュール３１２の処理の詳細な流れを図示し、図１９及び図２０に、補正処理モジュール３１３の処理（補正方法も決定している）の詳細な流れを図示する。
【００８３】
次に、図１６の流れの順番に従って、第２の実施形態例で実現されるブロックノイズの低減処理について詳細に説明する。
【００８４】
（１）過程４００（図１７及び図１８がその詳細な処理）
ＰＣ３１０は、先ず最初に、図１７の流れ図に示すように、ヘッダーデータ３０１から各ブロック(j,k) の交流成分を得て、各ブロック(j,k) 毎に、それらの交流成分と閾値TH１( 例えば5.0)とを比較し、いずれかの交流成分が閾値を超える場合には、活性度が高いブロックであることを考慮して、このブロック(j,k) に対しては処理を行わないことを示す値“０”を補正法決定値Flag(j,k) （初期値は１）に代入する。
【００８５】
ＰＣ３１０は、続いて、図１８の流れ図に示すように、画素データ３０２をブロック毎に分割して、各ブロック(j,k) 毎に、各ブロック(j,k) の持つ画素データ３０２の平均値 Ave(j,k) を算出する。
【００８６】
（２）過程４０１（図１９及び図２０がその詳細な処理）
プリンタ１２０は、続いて、図１９及び図２０の流れ図に従って、補正方法を決定しつつ補正処理を行う。
【００８７】
プリンタ１２０は、先ず最初に、図２０の流れ図の処理を実行する。
【００８８】
すなわち、Flag(j,k) の値が０であるブロック(j,k) については、補正処理は行わない。
【００８９】
Flag(j,k) の値が１であれば、上下左右のブロックが補正処理の参考になるかどうかを判定する。ここでは、画像中の上端、下端、左端および右端のいずれにも位置しないブロック(j,k) を例に挙げて説明する。
【００９０】
（イ）Flag(j-1,k) が０である場合には、上のブロック(j-1,k) は補正処理の参考としない。同様にして、上のブロック(j-1,k) の平均値 Ave(j-1,k) とブロック(j,k) の平均値 Ave(j,k) との差の絶対値がTH２（例えば13.0) 以上である場合には、上のブロック(j-1,k) は異なる物体を形成しているブロックと見なして補正処理の参考としない。
【００９１】
補正処理の参考としない場合には、平均化するブロックの数を示すBrock-Num(初期値は5)から１を減算し、参考とする場合には、平均値の総和を管理するAve-Sum(初期値は Ave(j,k) ) に対して、補正の参考とする平均値 Ave(j-1,k) を加算する。
【００９２】
（ロ）Flag(j+1,k) が０である場合には、下のブロック(j+1,k) は補正処理の参考としない。同様にして、下のブロック(j+1,k) の平均値 Ave(j+1,k) とブロック(j,k) の平均値 Ave(j,k) との差の絶対値がTH２以上である場合には、下のブロック(j+1,k) は異なる物体を形成しているブロックと見なして補正処理の参考としない。
【００９３】
補正処理の参考としない場合には、平均化するブロックの数を示すBrock-Num から１を減算し、参考とする場合には、平均値の総和を管理するAve-Sum に対して、補正の参考とする平均値 Ave(j+1,k) を加算する。
【００９４】
（ハ）Flag(j,k-1) が０である場合には、左のブロック(j,k-1) は補正処理の参考としない。同様にして、左のブロック(j,k-1) の平均値 Ave(j,k-1) とブロック(j,k) の平均値 Ave(j,k) との差の絶対値がTH２以上である場合には、左のブロック(j,k-1) は異なる物体を形成しているブロックと見なして補正処理の参考としない。
【００９５】
補正処理の参考としない場合には、平均化するブロックの数を示すBrock-Num から１を減算し、参考とする場合には、平均値の総和を管理するAve-Sum に対して、補正の参考とする平均値 Ave(j,k-1) を加算する。
【００９６】
（ニ）Flag(j,k+1) が０である場合には、右のブロック(j,k+1) は補正処理の参考としない。同様にして、右のブロック(j,k+1) の平均値 Ave(j,k+1) とブロック(j,k) の平均値 Ave(j,k) との差の絶対値がTH２以上である場合には、右のブロック(j,k+1) は異なる物体を形成しているブロックと見なして補正処理の参考としない。
【００９７】
補正処理の参考としない場合には、平均化するブロックの数を示すBrock-Num から１を減算し、参考とする場合には、平均値の総和を管理するAve-Sum に対して、補正の参考とする平均値 Ave(j,k+1) を加算する。
【００９８】
このようにして、各ブロック(j,k) について、Brock-Num およびAve-Sum を求めると、プリンタ１２０は、続いて、図２０の流れ図の処理に従って、ブロックノイズを除去するための補正処理を行う。但し、Flag(j,k) の値が０であるブロック(j,k) については、以下に説明する補正処理は行わない。
【００９９】
プリンタ１２０は、図２０の流れ図には記載していないが、先ず最初に、
Correct(j,k) ＝ (Ave-Sum)／(Brock-Num)
という算出式に従って、ブロック全体に対する補正量 Correct(j,k) （ブロック(j,k) の補正量）を算出し、その算出した補正量 Correct(j,k) を、ブロック(j,k) 中の全ての画素の補正結果として置き換える。
【０１００】
プリンタ１２０は、このブロック全体に対する補正を全てのブロックに対して完了した後、図２０の流れ図の処理に従って、各ブロックの境界に面したブロック境界画素に対するフィルタリングを行う。
【０１０１】
すなわち、
（イ）Flag(j-1,k) と Flag (j,k) がともに０でない場合
ブロック(j-1,k) とブロック(j,k) との間の境界近辺の画素へフィルタリング処理を施す。
【０１０２】
（ロ）Flag(j+1,k) と Flag (j,k) がともに０でない場合
ブロック(j+1,k) とブロック(j,k) との間の境界近辺の画素へフィルタリング処理を施す。
【０１０３】
（ハ）Flag(j,k-1) と Flag (j,k) がともに０でない場合
ブロック(j,k-1) とブロック(j,k) との間の境界近辺の画素へフィルタリング処理を施す。
【０１０４】
（ニ）Flag(j,k+1) と Flag (j,k) がともに０でない場合
ブロック(j,k+1) とブロック(j,k) との間の境界近辺の画素へフィルタリング処理を施す。
という形で、各ブロック(j,k) の境界近辺の画素（ブロック境界画素と、例えば、ブロック境界画素より一画素分ブロック中央よりの画素) に対するフィルタリングを行う。
【０１０５】
図２１に示すように、画素Ａj-3,Ａj-2,Ａj-1,Ａj,Ａj+1,Ａj+2,Ａj+3,Ａj+4 を定義し、これらの画素の画素値をそれぞれＬj-3,Ｌj-2,Ｌj-1,Ｌj,Ｌj+1,Ｌj+2,Ｌj+3,Ｌj+4 とするならば、このとき行う水平方向に対するフィルタリング方法は、例えば、
（イ）ブロック(j,k-1) の持つ画素Ａj-1,Ａj についての補正
画素値Ｌj-1,Ｌj を、
Ｌj-1'＝（Ｌj-3 ＋Ｌj-2 ＋Ｌj-1 ＋Ｌj ＋Ｌj+1 ）／５
Ｌj ' ＝（Ｌj-2 ＋Ｌj-1 ＋Ｌj ＋Ｌj+1 ＋Ｌj+2 ）／５
という式に従って補正する。
【０１０６】
（ロ）ブロック(j,k) の持つ画素Ａj+1,Ａj+2,についての補正
画素値Ｌj+1,Ｌj+2 を、
Ｌj+1'＝（Ｌj-1 ＋Ｌj ＋Ｌj+1 ＋Ｌj+2 ＋Ｌj+3 ）／５
Ｌj+2'＝（Ｌj ＋Ｌj+1 ＋Ｌj+2 ＋Ｌj+3 ＋Ｌj+4 ）／５
という式に従って補正する。
という形で、水平方向に対するフィルタリングを行う。
【０１０７】
後述するように、この補正により、ブロック境界部になだらかな傾斜を付与することができるようになる。
【０１０８】
そして、図２２に示すように、画素Ａk-3,Ａk-2,Ａk-1,Ａk,Ａk+1,Ａk+2,Ａk+3,Ａk+4 を定義し、これらの画素の画素値をそれぞれＬk-3,Ｌk-2,Ｌk-1,Ｌk,Ｌk+1,Ｌk+2,Ｌk+3,Ｌk+4 とするならば、このとき行う垂直方向に対するフィルタリング方法は、例えば、
（イ）ブロック(j-1,k) の持つ画素Ａk-1,Ａk についての補正
画素値Ｌk-1,Ｌk を、
Ｌk-1'＝（Ｌk-3 ＋Ｌk-2 ＋Ｌk-1 ＋Ｌk ＋Ｌk+1 ）／５
Ｌk ' ＝（Ｌk-2 ＋Ｌk-1 ＋Ｌk ＋Ｌk+1 ＋Ｌk+2 ）／５
という式に従って補正する。
【０１０９】
（ロ）ブロック(j,k) の持つ画素Ａk+1,Ａk+2 についての補正
画素値Ｌk+1,Ｌk+2 を、
Ｌk+1'＝（Ｌk-1 ＋Ｌk ＋Ｌk+1 ＋Ｌk+2 ＋Ｌk+3 ）／５
Ｌk+2'＝（Ｌk ＋Ｌk+1 ＋Ｌk+2 ＋Ｌk+3 ＋Ｌk+4 ）／５
という式に従って補正する。
という形で、垂直方向に対するフィルタリングを行う。
【０１１０】
後述するように、この補正により、ブロック境界部になだらかな傾斜を付与することができるようになる。
【０１１１】
このようにして、本実施形態例に従うＰＣ３１０は、自動的に画像中のブロックノイズを除去してからディスプレイに表示するように動作するのである。
【０１１２】
次に、本発明を用いると、従来技術と比較して計算量を削減しつつ、ブロックノイズを除去できるようになることについて検証する。
【０１１３】
本発明では、はじめにブロック毎に特性値を算出して、この特性値をもとにブロックノイズが顕在化しているかどうかを判断する。ブロックノイズが顕在化しているブロックに対しては、ブロックの直流成分補正・ブロック境界の固定サイズフィルタリングを行う。この特性値算出には、画像中の全画素値が１回ずつ使用される。
【０１１４】
これに対し、例えば図２３において、第２の従来技術を用いてブロック境界Ａ，Ｂに対してノイズ除去処理を行う場合、各ブロック境界に面した４つのグループＣ，Ｄ，Ｅ，Ｆの特性値（活性度・平均値) を算出する必要がある。その際に画素Ｇは２回算出に使用される。つまり水平・垂直方向の活性度算出のために画像中の全画素は各方向で一回ずつ計２回使用される。
【０１１５】
例えば、図２４に示すように、８×８画素ブロックが縦にｎ個、横にｎ個並んでいる画像に対し、▲１▼本発明のように、ブロック毎に平均値・分散値を求める場合と、▲２▼第２の従来技術（図３０参照）のように、各行・列中のｘ個のブロック境界をまたぐ第１、第２グループに対して平均値・分散値を求める場合の計算量を、以下に示す。
【０１１６】
ちなみに、第２の従来技術における各グループの画素数は、一辺８ｎの中にｘ個の境界が存在するため８ｎ／２ｘ個となる（図２４）。全グループ数は、1 行の中に２ｘ個のグループが存在して行数が８ｎであるため、２ｘ×８ｎ個となり、垂直方向も同数存在するため計３２ｎｘ個（２ｘ×８ｎ×２）となる。
【０１１７】
ブロックの平均値（Block-Ave)および分散値(Block-Var/Block-Stdev) は、
【０１１８】
【数１】
0003889629.tif 000002
【０１１９】
で算出される。ここで、ａi は各画素値である。
【０１２０】
この平均値（Block-Ave)の計算量は、分子部で加算６３回、その後除算1 回となる。一方、分散値(Block-Var/Block-Stdev) の計算量は、分子部では各画素から平均値を引いて自乗を行うため減算２回・乗算１回を計６４回行い、最後にこれらに対して６３回加算する。そして、分母部は減算１回、その後分母を分子で除算１回となる。
【０１２１】
第２の従来技術における１グループの平均値(Group-Ave) および分散値(Group-Var/Block-Stdev) は、
【０１２２】
【数２】
0003889629.tif 000003
【０１２３】
で算出される。ここで、ａi は各画素値である。
【０１２４】
この平均値(Group-Ave) の計算量は、分子部で加算（8n／2x)-１回、その後除算１回となる。一方、分散値(Group-Var/Block-Stdev) の計算量は、分子部では各画素から平均値を引いて自乗を行うため減算２回・乗算１回を計（8n／2x) 回行い、最後にこれらに対して（8n／2x)-１回加算する。分母部は減算１回、その後分母を分子で除算１回となる。これらを水平・垂直方向の計２回行う。
【０１２５】
ブロック毎に行うと、図２５を見て分るように、本発明によれば、境界数ｘは最大ｎ−１であることから、計算量は確実に減少する（最大半分程度に減少する）。
【０１２６】
次に、本発明では、ブロック全体に対して一定の補正を行うことで、予めブロック境界の段差を小さくする。
【０１２７】
ここで、ブロック(j,k) 全体に対する補正量Block-Ave'(j,k) は、
0003889629.tif 000004
但し、 Block-Ave(j-1,k) ：ブロック(j-1,k) の平均値
Block-Ave(j,k-1) ：ブロック(j,k-1) の平均値
Block-Ave(j,k)   ：ブロック(j,k) の平均値
Block-Ave(j,k+1) ：ブロック(j,k+1) の平均値
Block-Ave(j+1,k) ：ブロック(j+1,k) の平均値
となる。但し、ブロックの位置関係は図２６に示すものを想定している。
【０１２８】
この式を見て分るように、ブロック全体への補正量の算出は、乗算１回、減算４回、除算１で完了する。
【０１２９】
次に、本発明では、各ブロック内の画素値からブロック全体への補正量を減算する。
【０１３０】
続いて、本発明では、ブロック境界のレベル差とブロック境界以外のレベル差との差を目立たなくするため、ブロック境界画素に対して、近辺の各画素値を参考にしつつフィルタリングを行い、ブロック境界に緩やかな傾斜を付与する。
【０１３１】
ここで、各画素に対するフィルタリングを従来と同等のものを使用するとして、フィルタリングの計算量を共にＡとすると、ブロック内画素、ブロック境界画素に対する計算量は図２７のようになる。
【０１３２】
このように、ブロック内画素に対する計算量は、各ブロック内の画素値からブロック全体への補正量を減算するだけなので、本発明によれば、従来と比較して計算量を大きく削減できるようになるのである。
【０１３３】
更に、本発明について説明する。
【０１３４】
（１）本発明では、周囲ブロックの平均画素値との差分を使って、ブロックノイズに対してのみにノイズ除去処理を行うようにしている。
【０１３５】
ノイズ除去の際に、異なる物体を形成するブロック同士で直流成分の平均化を行うと両物体の色が混ざり合うため、本発明では、これを防ぐためにブロック毎の平均値を求める構成を採って、周囲ブロックの平均値との比較を行うという構成を採っている。
【０１３６】
そして、その比較の結果、周囲ブロックの平均値との差が異常に大きい場合には、ブロックの色が大きく異なっていることを示しており、これは周囲ブロックが異なる物体を形成している可能性が高いとして、その周囲ブロックはブロックノイズ除去処理の対象外とするようにしている。
【０１３７】
（２）本発明では、ブロックの活性度を使って、ブロックノイズに対してのみノイズ除去処理を行うようにしている。
【０１３８】
活性度の高いブロックは画像中の特徴である輪郭・線を形成している可能性が高い。輪郭・線に対してフィルタリングを行うと、これらがボケたように見えてしまう。そこで、本発明では、ブロック毎に活性度を算出し、活性度の高いブロックが存在した場合には、このようなブロックに対してはノイズ除去処理を行わないようにしている。
【０１３９】
（３）本発明では、ブロックの活性度として、分散や標準偏差を算出する他に、画像データが符号・復号を周波数領域で行っているのであるならば、復号時の交流成分をもとに活性度を算出するようにしている。このような活性度を用いると計算量を大幅に削減できるようになる。
【０１４０】
例えば、符号・復号のプロセスにおいて、逆量子化後の係数が図２８に示すような値であったとする。左上の値（係数）のみが直流成分で、他の６３個の値（係数）は交流成分である。直流成分とは、各ブロックの画素値の平均値を示している。交流成分とは、低周波から高周波にかけて各周波数の振幅のようなものを示している。
【０１４１】
周波数の振幅が大きいということは、そのブロックが鮮鋭な線・輪郭を形成していることを意味する。そこで、交流成分のいずれかが閾値TH１以上である場合には、そのブロックに対してフィルタリングを行わないようにする。
【０１４２】
図２８では、▲１▼，▲２▼というように交流成分と閾値TH１とを順次比較している様子を示している。ここでは、比較の結果▲２▼にて係数がTH１以上であったため、ここで処理を終了し、このブロックに対してはノイズ除去を行わないようにすることを決定している。
【０１４３】
このように、本発明では、符号化時に既に算出されたブロックの各交流成分を用いて、ブロック中の全画素の分散・標準偏差を算出することなく活性度を算出（計測）するように処理することも可能である。
【０１４４】
（４）本発明では、補正対象となるブロックの内部にある画素については、そのブロック及びそのブロックの周辺に存在するブロックの平均画素値から補正量を算出するように処理している。
【０１４５】
本発明では、補正対象となるブロックの内部にある画素については、個別的なフィルタリングを行うのではなくて直流的な補正を行うことで、その計算量を削減するようにしている。
【０１４６】
境界画素やその近傍の画素に施す個別的なフィルタリングの回数を極力少なくすれば、計算量を削減することができる。更に境界部分に緩やかな傾斜を付与することを両立させるには、ブロック内画素の中でもブロックの境界に近い部分のみをフィルタリングするようにすればよい。
【０１４７】
（５）本発明では、ブロック境界部に滑らかな傾斜を付与するように処理している。
【０１４８】
ブロック境界部に滑らかな傾斜を付与するには、ブロックノイズによるブロック間の段差を、境界付近の数画素に振り分けるように補正する必要がある。
【０１４９】
この際に、ブロック境界に近い画素ほど隣のブロックのレベル値に合わせるように補正量を多くして、境界から離れるほどその補正量を小さくするようにすることで、その滑らかな傾斜の付与を実現する。計算量を比較的少なく実現するには、上述したように、参照する画素が左右で同数であるものを使用する。
【０１５０】
すなわち、図２９に示すように、画素Ａj-3,Ａj-2,Ａj-1,Ａj,Ａj+1,Ａj+2,Ａj+3,Ａj+4 を定義し、これらの画素の画素値をそれぞれＬj-3,Ｌj-2,Ｌj-1,Ｌj,Ｌj+1,Ｌj+2,Ｌj+3,Ｌj+4 とするならば、補正対象画素はＡj-1,Ａj,Ａj+1,Ａj+2 となり、これらに対する補正結果Ｌj-1', Ｌj ',  Ｌj+1', Ｌj+2'を、
Ｌj-1'＝（Ｌj-3 ＋Ｌj-2 ＋Ｌj-1 ＋Ｌj ＋Ｌj+1 ）／５
Ｌj ' ＝（Ｌj-2 ＋Ｌj-1 ＋Ｌj ＋Ｌj+1 ＋Ｌj+2 ）／５
Ｌj+1'＝（Ｌj-1 ＋Ｌj ＋Ｌj+1 ＋Ｌj+2 ＋Ｌj+3 ）／５
Ｌj+2'＝（Ｌj ＋Ｌj+1 ＋Ｌj+2 ＋Ｌj+3 ＋Ｌj+4 ）／５
というように算出するのである。
【０１５１】
補正対象画素Ａj-1 は、５つの画素値を用いて補正量を決定するときにあって、ブロック１の中にある４つの画素（Ａj-3,Ａj-2,Ａj-1,Ａj ）をもとに補正量を算出するため、補正結果は概ねブロック１の平均値に近くなる。一方、補正対象画素Ａj は、５つの画素値を用いて補正量を決定するときにあって、ブロック１の中にある３つの画素（Ａj-2,Ａj-1,Ａj ）をもとに算出するため、Ａj-1 に対する補正結果よりブロック２の平均値に近いものとなる。
【０１５２】
このように、参照する画素が左右で同数であれば、補正対象画素とブロック境界の距離が短いほど補正量が多くなるため、本発明では、単純な式を用いて、ブロック１の平均値からブロック２の平均値へと移動する緩やかな傾斜を付与することができるのである。
【０１５３】
（６）本発明では、極力少ない計算量で、ブロック境界部に滑らかな傾斜を付与するように処理している。
【０１５４】
フィルタリングに対する計算量を極力抑えるには参照する画素を極力少なくする必要がある。一方で、ブロック内から他方のブロック内までに滑らかな傾斜を付与できるようにするには、画素は、ブロック内画素、ブロック境界画素およびブロック境界をまたいだところに存在するブロックの画素の計３種類をフィルタリングの際に参照する必要がある。
【０１５５】
そこで、本発明では、ブロック境界画素と、ブロック境界画素が面しているブロック境界をまたいで一つ隣にある画素（画素Ａ）と、ブロック境界画素から見て画素Ａとは正反対にある画素の計３画素の平均値を補正結果とするように処理することで、計算量を極力抑えることを実現する。
【０１５６】
（７）本発明では、短時間でブロック境界部に滑らかな傾斜を付与することができるように処理している。
【０１５７】
本発明では、上下左右のブロックを同時に参照することで、水平・垂直方向へのノイズ除去処理を１回で行うことができるように処理している。
【０１５８】
（８）本発明では、短時間でブロック境界部に滑らかな傾斜を付与することができるように処理している。
【０１５９】
本発明では、ブロック内の画素値を、そのブロック及びそのブロックの周辺に存在するブロックの平均画素値から算出した値に置き換えるように処理している。
【０１６０】
ブロックの活性度が非常に低い場合は、算出したブロック全体への補正量を各ブロックに対して減算せずに、単純に置き換えても結果に差が生じないはずである。この場合、各画素に対して減算処理を行う必要がないため、計算量を削減できるようになる。
【０１６１】
（付記１）原画像をブロック符号・復号した場合に発生するブロックノイズを低減する画像処理装置であって、画像の各ブロック毎に、そのブロックの特性値を算出する手段と、上記特性値をもとに、画像の各ブロック毎に、そのブロックの補正方法を決定する手段と、上記補正方法により補正を行うと決定したブロック内の各画素値を、上記補正方法に従い、該ブロック及び該ブロックの周辺に存在するブロックの平均画素値を使って補正する手段と、上記補正したブロックの持つ境界画素の画素値を、該境界画素及び該境界画素の周辺に存在する画素の画素値を使って補正する手段とを備えることを、特徴とする画像処理装置。
【０１６２】
（付記２）付記１記載の画像処理装置において、上記境界画素の画素値を補正する手段は、境界画素に加えて、該境界画素の近傍に位置する画素についても補正対象として、該補正対象画素の画素値を、該補正対象画素及び該補正対象画素の周辺に存在する画素の画素値を使って補正することを、特徴とする画像処理装置。
【０１６３】
（付記３）付記１又は２記載の画像処理装置において、上記決定する手段は、上記特性値をもとに、補正を行うブロックであるのか否かということと、補正を行う場合には、周辺のどのブロックを用いて補正を行うのかということについて記述する補正方法を決定することを、特徴とする画像処理装置。
【０１６４】
（付記４）付記３記載の画像処理装置において、上記決定する手段は、上記特性値をもとに、平坦なブロックではないものと、平坦なブロックではあるものの、周辺に平均画素値の差が規定の閾値以下となる平坦なブロックが存在しないものとについては、補正を行わないブロックとして決定することを、特徴とする画像処理装置。
【０１６５】
（付記５）付記３記載の画像処理装置において、上記決定する手段は、上記特性値をもとに、周辺に存在する平均画素値の差が規定の閾値以下となる平坦なブロックを、補正を行う際に用いる周辺ブロックとして決定することを、特徴とする画像処理装置。
【０１６６】
（付記６）付記１ないし５のいずれか１項に記載の画像処理装置において、上記ブロック内の各画素値を補正する手段は、上記平均画素値の平均値を算出して、補正対象ブロック内の各画素値をそれに置き換えることで、補正対象ブロック内の各画素値を補正することを、特徴とする画像処理装置。
【０１６７】
（付記７）付記１ないし５のいずれか１項に記載の画像処理装置において、上記ブロック内の各画素値を補正する手段は、上記平均画素値の平均値と補正対象ブロックの平均画素値との差分値を算出して、補正対象ブロック内の各画素値にその差分値を加算することで、補正対象ブロック内の各画素値を補正することを、特徴とする画像処理装置。
【０１６８】
（付記８）付記１記載の画像処理装置において、上記境界画素の画素値を補正する手段は、境界画素の画素値と、境界画素からブロック境界をまたいで一つ隣にある画素の画素値と、それとは反対の方向にある隣の画素の画素値とを参照して、境界画素の画素値の補正量を算出することを、特徴とする画像処理装置。
【０１６９】
（付記９）付記２記載の画像処理装置において、上記補正対象画素の画素値を補正する手段は、補正対象画素の画素値と、補正対象画素からみてブロックの境界のある方向に存在する規定個数の画素の画素値と、それとは反対の方向にある同数の画素の画素値とを参照して、補正対象画素の画素値の補正量を算出することを、特徴とする画像処理装置。
【０１７０】
（付記１０）原画像をブロック符号・復号した場合に発生するブロックノイズを低減する画像処理方法であって、画像の各ブロック毎に、そのブロックの特性値を算出する過程と、上記特性値をもとに、画像の各ブロック毎に、そのブロックの補正方法を決定する過程と、上記補正方法により補正を行うと決定したブロック内の各画素値を、上記補正方法に従い、該ブロック及び該ブロックの周辺に存在するブロックの平均画素値を使って補正する過程と、上記補正したブロックの持つ境界画素の画素値を、該境界画素及び該境界画素の周辺に存在する画素の画素値を使って補正する過程とを備えることを、特徴とする画像処理方法。
【０１７１】
（付記１１）原画像をブロック符号・復号した場合に発生するブロックノイズを低減する処理を行う画像処理プログラムであって、画像の各ブロック毎に、そのブロックの特性値を算出する処理と、上記特性値をもとに、画像の各ブロック毎に、そのブロックの補正方法を決定する処理と、上記補正方法により補正を行うと決定したブロック内の各画素値を、上記補正方法に従い、該ブロック及び該ブロックの周辺に存在するブロックの平均画素値を使って補正する処理と、上記補正したブロックの持つ境界画素の画素値を、該境界画素及び該境界画素の周辺に存在する画素の画素値を使って補正する処理とをコンピュータに実行させるための画像処理プログラム。
【０１７２】
（付記１２）原画像をブロック符号・復号した場合に発生するブロックノイズを低減する処理を行うプログラムを記録した画像処理プログラムの記録媒体であって、画像の各ブロック毎に、そのブロックの特性値を算出する処理と、上記特性値をもとに、画像の各ブロック毎に、そのブロックの補正方法を決定する処理と、上記補正方法により補正を行うと決定したブロック内の各画素値を、上記補正方法に従い、該ブロック及び該ブロックの周辺に存在するブロックの平均画素値を使って補正する処理と、上記補正したブロックの持つ境界画素の画素値を、該境界画素及び該境界画素の周辺に存在する画素の画素値を使って補正する処理とをコンピュータに実行させるためのプログラムを記録した画像処理プログラムの記録媒体。
【０１７３】
【発明の効果】
本発明はブロック境界の境画像中の平坦部に顕在化するブロックノイズを除去する際に、ブロック全体に対する補正とフィルタリングとを組み合わせることにより、従来より少ない処理時間でブロック境界になだらかな傾斜を付与することができる。
【０１７４】
これにより、本発明によれば、画像をブロック符号化し復号するという構成を採るときにあって、少ない計算量でもって、しかも、効果的にブロックノイズを削減できるようになる。
【図面の簡単な説明】
【図１】本発明の説明図である。
【図２】本発明の説明図である。
【図３】本発明の説明図である。
【図４】本発明の説明図である。
【図５】本発明の第１の実施形態例である。
【図６】ブロックの説明図である。
【図７】第１の実施形態例の処理手順である。
【図８】第１の実施形態例の処理手順である。
【図９】第１の実施形態例の処理手順である。
【図１０】第１の実施形態例の処理手順である。
【図１１】第１の実施形態例の処理手順である。
【図１２】補正法決定値Flagの説明図である。
【図１３】ブロックの説明図である。
【図１４】本発明の第２の実施形態例である。
【図１５】ブロックの説明図である。
【図１６】第２の実施形態例の処理手順である。
【図１７】第２の実施形態例の処理手順である。
【図１８】第２の実施形態例の処理手順である。
【図１９】第２の実施形態例の処理手順である。
【図２０】第２の実施形態例の処理手順である。
【図２１】ブロックの説明図である。
【図２２】ブロックの説明図である。
【図２３】ブロックの説明図である。
【図２４】ブロックの説明図である。
【図２５】本発明と従来技術の計算量の対比を説明する図である。
【図２６】ブロックの説明図である。
【図２７】本発明と従来技術の計算量の対比を説明する図である。
【図２８】本発明の説明図である。
【図２９】ブロックの説明図である。
【図３０】ブロック符号・復号構成を用いる画像処理技術の説明図である。
【図３１】従来技術の説明図である。
【図３２】従来技術の説明図である。
【図３３】従来技術の説明図である。
【図３４】従来技術の説明図である。
【図３５】従来技術の説明図である。
【符号の説明】
１００  カラーイメージ画像
１０１  ヘッダーデータ
１０２  画素データ
１１０  ＰＣ
１１１  画素データ転送機能
１２０  プリンタ
１２１  ノイズ除去機能
１２２  平均値・標準偏差値算出モジュール
１２３  補正方法決定モジュール
１２４  補正処理モジュール
３００  カラーイメージ画像
３０１  ヘッダーデータ
３０２  画素データ
３１０  ＰＣ
３１１  ノイズ除去機能
３１２  平均値・活性度算出モジュール
３１３  補正処理モジュール
【図１】
0003889629.tif 000005
【図２】
0003889629.tif 000006
【図３】
0003889629.tif 000007
【図４】
0003889629.tif 000008
【図５】
0003889629.tif 000009
【図６】
0003889629.tif 000010
【図７】
0003889629.tif 000011
【図８】
0003889629.tif 000012
【図９】
0003889629.tif 000013
【図１０】
0003889629.tif 000014
【図１１】
0003889629.tif 000015
【図１２】
0003889629.tif 000016
【図１３】
0003889629.tif 000017
【図１４】
0003889629.tif 000018
【図１５】
0003889629.tif 000019
【図１６】
0003889629.tif 000020
【図１７】
0003889629.tif 000021
【図１８】
0003889629.tif 000022
【図１９】
0003889629.tif 000023
【図２０】
0003889629.tif 000024
【図２１】
0003889629.tif 000025
【図２２】
0003889629.tif 000026
【図２３】
0003889629.tif 000027
【図２４】
0003889629.tif 000028
【図２５】
0003889629.tif 000029
【図２６】
0003889629.tif 000030
【図２７】
0003889629.tif 000031
【図２８】
0003889629.tif 000032
【図２９】
0003889629.tif 000033
【図３０】
0003889629.tif 000034
【図３１】
0003889629.tif 000035
【図３２】
0003889629.tif 000036
【図３３】
0003889629.tif 000037
【図３４】
0003889629.tif 000038
【図３５】
0003889629.tif 000039