(57)【要約】本発明においては、境界画素を含み境界に対して直交して連続する該境界を挟む片側Ｎ個の画素からなる２Ｎ個の画素（信号レベルＶ１〜Ｖ８）を参照し修正処理を行うか判定し、修正処理を行うと判定されたとき境界画素とそれを挟む片側Ｍ個の画素とを用いて修正処理を行う。また、画像圧縮における離散コサイン変換処理の処理単位であるブロックに属する画素についてフィルタ処理を行う画像処理システムにおいて、処理対象のブロックを構成する全画素のうち着目している着目画素を含む少なくとも半分の画素について隣接画素間の差分値の最大値を求める。上記着目画素を含みブロック同士の境界に対して直交して連続する片側Ｎ個の画素からなる２Ｎ個の画素について隣接画素間の差分値を求める。この求めた差分値を上記最大値に対応する閾値と比較してフィルタ処理を行うか判定する。フィルタ処理を行うと判定された場合、上記着目画素とそれを挟む片側Ｍ個の画素とを用いてフィルタ処理を行う。Ｎは、正の整数であり、Ｍは正の整数、かつ、Ｍ＜Ｎとする。
2002067589.tif 000002
【特許請求の範囲】
【請求項１】
画像圧縮における離散コサイン変換処理の処理単位であるブロックについて隣接するブロックとの境界に位置する境界画素についてフィルタ処理を行う画像処理システムであって、前記境界画素を含み前記境界に対して直交して連続する該境界を挟む片側Ｎ個（Ｎは、３乃至５のいずれかの整数、以下同じ）の画素からなる２Ｎ個の画素を参照し修正処理を行うか判定する判定手段と、前記判定手段によって修正処理を行うと判定されたとき前記境界画素とそれを挟む片側Ｍ個（Ｍは整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いて修正処理を行う修正処理手段とを含むことを特徴とする画像処理システム。
【請求項２】
前記判定手段においては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記修正処理を行うと判定することを特徴とする請求の範囲第１項記載の画像処理システム。
【請求項３】
前記判定手段においては、参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記修正処理を行うと判定することを特徴とする請求の範囲第１項記載の画像処理システム。
【請求項４】
前記閾値は、前記量子化値が３０以下の値である場合に該量子化値に２乃至１０のいずれかの整数を加えた値であることを特徴とする請求の範囲第１項〜第３項のいずれかに記載の画像処理システム。
【請求項５】
前記判定手段においては、前記参照する２Ｎ個の画素のうち隣接する画素同士の差分の値が全て零であるか１つのみが零でない場合に前記修正処理を行わないと判定することを特徴とする請求の範囲第１項〜第４項のいずれかに記載の画像処理システム。
【請求項６】
前記判定手段においては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値のいずれかが前記画像についての量子化値に基づいて定められた閾値より小であるとき、前記修正処理を行うと判断することを特徴とする請求の範囲第１項記載の画像処理システム。
【請求項７】
前記修正処理手段における修正処理は、前記境界画素及びそれを挟む２Ｍ個の画素それぞれに所定係数を乗じ、さらに前記係数の合計値で除した値に応じて前記境界画素を修正することを特徴とする請求の範囲第１項〜第６項のいずれかに記載の画像処理システム。
【請求項８】
前記所定係数は、前記境界画素についての値が、他の画素についての値よりも大であることを特徴とする請求の範囲第７項記載の画像処理システム。
【請求項９】
前記フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行うことを特徴とする請求の範囲第１項〜第８項のいずれかに記載の画像処理システム。
【請求項１０】
水平方向および垂直方向の前記境界の交差点を中心として、該境界を挟む片側それぞれ４個の画素を記憶する記憶手段を含み、前記ブロックに含まれる所定画素を該記憶手段に順次記憶していき、前記判定手段および前記修正処理手段は、該記憶手段に記憶された８個×８個の画素を対象として処理を行うことを特徴とする請求の範囲第１項〜第９項のいずれかに記載の画像処理システム。
【請求項１１】
画像圧縮における離散コサイン変換処理の処理単位であるブロックについて隣接するブロックとの境界に位置する境界画素についてフィルタ処理を行う画像処理方法であって、前記境界画素を含み前記境界に対して直交して連続する該境界を挟む片側Ｎ個（Ｎは、３乃至５のいずれかの整数、以下同じ）の画素からなる２Ｎ個の画素を参照し修正処理を行うか判定する判定ステップと、前記判定ステップによって修正処理を行うと判定されたとき前記境界画素とそれを挟む片側Ｍ個（Ｍは整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いて修正処理を行う修正処理ステップとを含むことを特徴とする画像処理方法。
【請求項１２】
前記判定ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記修正処理を行うと判定することを特徴とする請求の範囲第１１項記載の画像処理方法。
【請求項１３】
前記判定ステップにおいては、参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記修正処理を行うと判定することを特徴とする請求の範囲第１１項記載の画像処理方法。
【請求項１４】
前記閾値は、前記量子化値が３０以下の値である場合に該量子化値に２乃至１０のいずれかの整数を加えた値であることを特徴とする請求の範囲第１１項〜第１３項のいずれかに記載の画像処理方法。
【請求項１５】
前記判定ステップにおいては、前記参照する２Ｎ個の画素のうち隣接する画素同士の差分の値が全て零であるか１つのみが零でない場合に前記修正処理を行わないと判定することを特徴とする請求の範囲第１１項〜第１４項のいずれかに記載の画像処理方法。
【請求項１６】
前記判定ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値のいずれかが前記画像についての量子化値に基づいて定められた閾値より小であるとき、前記修正処理を行うと判断することを特徴とする請求の範囲第１１項記載の画像処理方法。
【請求項１７】
前記修正処理ステップにおける修正処理は、前記境界画素及びそれを挟む２Ｍ個の画素それぞれに所定係数を乗じ、さらに前記係数の合計値で除した値に応じて前記境界画素を修正することを特徴とする請求の範囲第１１項〜第１６項のいずれかに記載の画像処理方法。
【請求項１８】
前記所定係数は、前記境界画素についての値が、他の画素についての値よりも大であることを特徴とする請求の範囲第１７項記載の画像処理方法。
【請求項１９】
前記フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行うことを特徴とする請求の範囲第１１項〜第１８項のいずれかに記載の画像処理方法。
【請求項２０】
前記ブロックにおいて、水平方向および垂直方向の前記境界の交差点を中心として、該境界を挟む片側それぞれ４個の画素を記憶していき、前記判定ステップおよび前記修正処理ステップにおいては、該記憶された８個×８個の画素を対象として処理を行うことを特徴とする請求の範囲第１１項〜第１９項のいずれかに記載の画像処理方法。
【請求項２１】
画像圧縮における離散コサイン変換処理の処理単位であるブロックについて隣接するブロックとの境界に位置する境界画素についてフィルタ処理を行う画像処理プログラムであって、前記境界画素を含み前記境界に対して直交して連続する該境界を挟む片側Ｎ個（Ｎは、３乃至５のいずれかの整数、以下同じ）の画素からなる２Ｎ個の画素を参照し修正処理を行うか判定する判定ステップと、前記判定ステップによって修正処理を行うと判定されたとき前記境界画素とそれを挟む片側Ｍ個（Ｍは整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いて修正処理を行う修正処理ステップとを含むことを特徴とする画像処理プログラム。
【請求項２２】
前記判定ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記修正処理を行うと判定することを特徴とする請求の範囲第２１項記載の画像処理プログラム。
【請求項２３】
前記判定ステップにおいては、参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記修正処理を行うと判定することを特徴とする請求の範囲第２１項記載の画像処理プログラム。
【請求項２４】
前記閾値は、前記量子化値が３０以下の値である場合に該量子化値に２乃至１０のいずれかの整数を加えた値であることを特徴とする請求の範囲第２１項〜第２３項のいずれかに記載の画像処理プログラム。
【請求項２５】
前記判定ステップにおいては、前記参照する２Ｎ個の画素のうち隣接する画素同士の差分の値が全て零であるか１つのみが零でない場合に前記修正処理を行わないと判定することを特徴とする請求の範囲第２１項〜第２４項のいずれかに記載の画像処理プログラム。
【請求項２６】
前記判定ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値のいずれかが前記画像についての量子化値に基づいて定められた閾値より小であるとき、前記修正処理を行うと判断することを特徴とする請求の範囲第２４項記載の画像処理プログラム。
【請求項２７】
前記修正処理ステップにおける修正処理は、前記境界画素及びそれを挟む２Ｍ個の画素それぞれに所定係数を乗じ、さらに前記係数の合計値で除した値に応じて前記境界画素を修正することを特徴とする請求の範囲第２１項〜第２６項のいずれかに記載の画像処理プログラム。
【請求項２８】
前記所定係数は、前記境界画素についての値が、他の画素についての値よりも大であることを特徴とする請求の範囲第２７項記載の画像処理プログラム。
【請求項２９】
前記フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行うことを特徴とする請求の範囲第２１項〜第２８項のいずれかに記載の画像処理プログラム。
【請求項３０】
前記ブロックにおいて、水平方向および垂直方向の前記境界の交差点を中心として、該境界を挟む片側それぞれ４個の画素を記憶していき、前記判定ステップおよび前記修正処理ステップにおいては、該記憶された８個×８個の画素を対象として処理を行うことを特徴とする請求の範囲第２１項〜第２９項のいずれかに記載の画像処理プログラム。
【請求項３１】
画像圧縮における離散コサイン変換処理の処理単位であるブロックに属する画素についてフィルタ処理を行う画像処理システムであって、処理対象のブロックを構成する全画素のうち着目している着目画素を含む少なくとも半分の画素について隣接画素間の差分値の最大値を求めることが可能な最大値検出手段と、前記着目画素を含み前記ブロック同士の境界に対して直交して連続する片側Ｎ個（Ｎは、正の整数、以下同じ）の画素からなる２Ｎ個の画素について隣接画素間の差分値を求める差分値算出手段と、前記差分値算出手段において求めた差分値を前記最大値に対応する閾値と比較してフィルタ処理を行うか判定する判定手段と、前記判定手段においてフィルタ処理を行うと判定された場合、前記着目画素とそれを挟む片側Ｍ個（Ｍは正の整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いてフィルタ処理を行うフィルタ処理手段とを含むことを特徴とする画像処理システム。
【請求項３２】
前記差分値算出手段においては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、
前記判定手段においては、前記差分値算出手段において求めた差分値全てが前記閾値より小であるとき前記フィルタ処理を行うと判定することを特徴とする請求の範囲第３１項記載の画像処理システム。
【請求項３３】
前記差分値算出手段においては、参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、
前記判定手段においては、前記差分値算出手段において求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記フィルタ処理を行うと判定することを特徴とする請求の範囲第３１項記載の画像処理システム。
【請求項３４】
前記判定手段においては、前記差分値全てが前記閾値より小であることが成立していない場合であっても、前記Ｍ画素各々の隣接画素差分値が所定閾値より小であるとき、前記フィルタ処理とは異なる所定のフィルタ処理を行うと判断することを特徴とする請求の範囲第３２項記載の画像処理システム。
【請求項３５】
前記判定手段においては、前記最大値に応じて前記閾値の値を決定することを特徴とする請求の範囲第３１項〜第３４項のいずれかに記載の画像処理システム。
【請求項３６】
前記判定手段においては、処理対象のブロック内に位置する画素についての閾値よりも、該ブロックの境界に位置する画素についての閾値を大とすることを特徴とする請求の範囲第３１項〜第３５項のいずれかに記載の画像処理システム。
【請求項３７】
前記フィルタ処理手段においては、前記着目画素及びそれを挟む複数の画素それぞれに所定係数を乗じ、さらに前記係数の合計値で除した値に応じて前記着目画素を修正することを特徴とする請求の範囲第３１項〜第３６項のいずれかに記載の画像処理システム。
【請求項３８】
前記最大値検出手段における最大値の探索は、探索すべき画素について１ラインおきに行うことを特徴とする請求の範囲第３１項〜第３７項のいずれかに記載の画像処理システム。
【請求項３９】
前記フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行うことを特徴とする請求の範囲第３１項〜第３８項のいずれかに記載の画像処理システム。
【請求項４０】
水平方向および垂直方向の前記境界の交差点を中心として、該境界を挟む片側それぞれ４個の画素を記憶する記憶手段と、該記憶手段に記憶された８個×８個の画素について、前記隣接画素間の差分値を算出し、前記境界によって区切られた４個×４個の画素毎の該差分値の最大値である仮最大値を取得する仮最大値取得手段とを含み、前記最大値検出手段は、前記仮最大値がブロック全てについて既に取得されている場合には、該ブロックにおける全ての仮最大値のうち最大のものを前記最大値とし、前記仮最大値がブロック全てについては取得されていない場合には、取得されている前記仮最大値のうち最大のものを前記最大値とし、前記差分値算出手段およびフィルタ処理手段は、該記憶手段に記憶された８個×８個の画素を対象として処理を行うことを特徴とする請求の範囲第３１項〜第３９項のいずれかに記載の画像処理システム。
【請求項４１】
水平方向および垂直方向の前記境界の交差点を中心として、垂直方向の前記境界を挟む片側それぞれ４個の画素と、水平方向の前記境界を挟む上側４個の画素および下側８個の画素とを記憶する記憶手段と、該記憶手段に記憶された８個×１２個の画素について、前記隣接画素間の差分値を算出し、該８個×１２個の画素を２列３行に区分した１単位である４個×４個の画素毎の、該差分値の最大値である仮最大値を取得する仮最大値取得手段とを含み、前記最大値検出手段は、前記仮最大値がブロック全てについて既に取得されている場合には、該ブロックにおける全ての仮最大値のうち最大のものを前記最大値とし、前記仮最大値がブロック全てについては取得されていない場合には、取得されている前記仮最大値のうち最大のものを前記最大値とし、前記差分値算出手段およびフィルタ処理手段は、該記憶手段に記憶された８個×１２個の画素のうち上側の８個×８個の画素を対象として処理を行うことを特徴とする請求の範囲第３１項〜第３９項のいずれかに記載の画像処理システム。
【請求項４２】
画像圧縮における離散コサイン変換処理の処理単位であるブロックに属する画素についてフィルタ処理を行う画像処理方法であって、処理対象のブロックを構成する全画素のうち着目している着目画素を含む少なくとも半分の画素について隣接画素間の差分値の最大値を求める最大値検出ステップと、前記着目画素を含み前記ブロック同士の境界に対して直交して連続する片側Ｎ個（Ｎは、正の整数、以下同じ）の画素からなる２Ｎ個の画素について隣接画素間の差分値を求める差分値算出ステップと、前記差分値算出ステップにおいて求めた差分値を前記最大値に対応する閾値と比較してフィルタ処理を行うか判定する判定ステップと、前記判定ステップにおいてフィルタ処理を行うと判定された場合、前記着目画素とそれを挟む片側Ｍ個（Ｍは正の整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いてフィルタ処理を行うフィルタ処理ステップとを含むことを特徴とする画像処理方法。
【請求項４３】
前記差分値算出ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、
前記判定ステップにおいては、前記差分値算出ステップにおいて求めた差分値全てが前記閾値より小であるとき前記フィルタ処理を行うと判定することを特徴とする請求の範囲第４２項記載の画像処理方法。
【請求項４４】
前記差分値算出ステップにおいては、参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、
前記判定ステップにおいては、前記差分値算出ステップにおいて求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記フィルタ処理を行うと判定することを特徴とする請求の範囲第４２項記載の画像処理方法。
【請求項４５】
前記判定ステップにおいては、前記差分値全てが前記閾値より小であることが成立していない場合であっても、前記Ｍ画素各々の隣接画素差分値が所定閾値より小であるとき、前記フィルタ処理とは異なる所定のフィルタ処理を行うと判断することを特徴とする請求の範囲第４２項記載の画像処理方法。
【請求項４６】
前記判定ステップにおいては、前記最大値に応じて前記閾値の値を決定することを特徴とする請求の範囲第４２項〜第４５項のいずれかに記載の画像処理方法。
【請求項４７】
前記判定ステップにおいては、処理対象のブロック内に位置する画素についての閾値よりも、該ブロックの境界に位置する画素についての閾値を大とすることを特徴とする請求の範囲第４２項〜第４６項のいずれかに記載の画像処理方法。
【請求項４８】
前記フィルタ処理ステップにおいては、前記着目画素及びそれを挟む複数の画素それぞれに所定係数を乗じ、さらに前記係数の合計値で除した値に応じて前記着目画素を修正することを特徴とする請求の範囲第４２項〜第４７項のいずれかに記載の画像処理方法。
【請求項４９】
前記最大値検出ステップにおける最大値の探索は、探索すべき画素について１ラインおきに行うことを特徴とする請求の範囲第４２項〜第４８項のいずれかに記載の画像処理方法。
【請求項５０】
前記フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行うことを特徴とする請求の範囲第４２項〜第４９項のいずれかに記載の画像処理方法。
【請求項５１】
水平方向および垂直方向の前記境界の交差点を中心として、該境界を挟む片側それぞれ４個の画素を記憶していき、該記憶された８個×８個の画素について、前記隣接画素間の差分値を算出し、前記境界によって区切られた４個×４個の画素毎の該差分値の最大値である仮最大値を取得する仮最大値取得ステップを含み、前記最大値検出ステップにおいては、前記仮最大値がブロック全てについて既に取得されている場合には、該ブロックにおける全ての仮最大値のうち最大のものを前記最大値とし、前記仮最大値がブロック全てについては取得されていない場合には、取得されている前記仮最大値のうち最大のものを前記最大値とし、前記差分値算出ステップおよびフィルタ処理ステップにおいて、該記憶された８個×８個の画素を対象として処理を行うことを特徴とする請求の範囲第４２項〜第５０項のいずれかに記載の画像処理方法。
【請求項５２】
水平方向および垂直方向の前記境界の交差点を中心として、垂直方向の前記境界を挟む片側それぞれ４個の画素と、水平方向の前記境界を挟む上側４個の画素および下側８個の画素とを記憶していき、該記憶された８個×１２個の画素について、前記隣接画素間の差分値を算出し、該８個×１２個の画素を２列３行に区分した１単位である４個×４個の画素毎の、該差分値の最大値である仮最大値を取得する仮最大値取得ステップを含み、前記最大値検出ステップにおいては、前記仮最大値がブロック全てについて既に取得されている場合には、該ブロックにおける全ての仮最大値のうち最大のものを前記最大値とし、前記仮最大値がブロック全てについては取得されていない場合には、取得されている前記仮最大値のうち最大のものを前記最大値とし、前記差分値算出ステップおよびフィルタ処理ステップにおいて、該記憶された８個×１２個の画素のうち上側の８個×８個の画素を対象として処理を行うことを特徴とする請求の範囲第４２項〜第５０項のいずれかに記載の画像処理方法。
【請求項５３】
画像圧縮における離散コサイン変換処理の処理単位であるブロックに属する画素についてフィルタ処理を行う画像処理プログラムであって、処理対象のブロックを構成する全画素のうち着目している着目画素を含む少なくとも半分の画素について隣接画素間の差分値の最大値を求める最大値検出ステップと、前記着目画素を含み前記ブロック同士の境界に対して直交して連続する片側Ｎ個（Ｎは、正の整数、以下同じ）の画素からなる２Ｎ個の画素について隣接画素間の差分値を求める差分値算出ステップと、前記差分値算出ステップにおいて求めた差分値を前記最大値に対応する閾値と比較してフィルタ処理を行うか判定する判定ステップと、前記判定ステップにおいてフィルタ処理を行うと判定された場合、前記着目画素とそれを挟む片側Ｍ個（Ｍは正の整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いてフィルタ処理を行うフィルタ処理ステップとを含むことを特徴とする画像処理プログラム。
【請求項５４】
前記差分値算出ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、
前記判定ステップにおいては、前記差分値算出ステップにおいて求めた差分値全てが前記閾値より小であるとき前記フィルタ処理を行うと判定することを特徴とする請求の範囲第５３項記載の画像処理プログラム。
【請求項５５】
前記差分値算出ステップにおいては、参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、
前記判定ステップにおいては、前記差分値算出ステップにおいて求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記フィルタ処理を行うと判定することを特徴とする請求の範囲第５３項記載の画像処理プログラム。
【請求項５６】
前記判定ステップにおいては、前記差分値全てが前記閾値より小であることが成立していない場合であっても、前記Ｍ画素各々の隣接画素差分値が所定閾値より小であるとき、前記フィルタ処理とは異なる所定のフィルタ処理を行うと判断することを特徴とする請求の範囲第５３項記載の画像処理プログラム。
【請求項５７】
前記判定ステップにおいては、前記最大値に応じて前記閾値の値を決定することを特徴とする請求の範囲第５３項〜第５６項のいずれかに記載の画像処理プログラム。
【請求項５８】
前記判定ステップにおいては、処理対象のブロック内に位置する画素についての閾値よりも、該ブロックの境界に位置する画素についての閾値を大とすることを特徴とする請求の範囲第５３項〜第５７項のいずれかに記載の画像処理プログラム。
【請求項５９】
前記フィルタ処理ステップにおいては、前記着目画素及びそれを挟む複数の画素それぞれに所定係数を乗じ、さらに前記係数の合計値で除した値に応じて前記着目画素を修正することを特徴とする請求の範囲第５３項〜第５８項のいずれかに記載の画像処理プログラム。
【請求項６０】
前記最大値検出ステップにおける最大値の探索は、探索すべき画素について１ラインおきに行うことを特徴とする請求の範囲第５３項〜第５９項のいずれかに記載の画像処理プログラム。
【請求項６１】
前記フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行うことを特徴とする請求の範囲第５３項〜第６０項のいずれかに記載の画像処理プログラム。
【請求項６２】
水平方向および垂直方向の前記境界の交差点を中心として、該境界を挟む片側それぞれ４個の画素を記憶していき、該記憶された８個×８個の画素について、前記隣接画素間の差分値を算出し、前記境界によって区切られた４個×４個の画素毎の該差分値の最大値である仮最大値を取得する仮最大値取得ステップを含み、前記最大値検出ステップにおいては、前記仮最大値がブロック全てについて既に取得されている場合には、該ブロックにおける全ての仮最大値のうち最大のものを前記最大値とし、前記仮最大値がブロック全てについては取得されていない場合には、取得されている前記仮最大値のうち最大のものを前記最大値とし、前記差分値算出ステップおよびフィルタ処理ステップにおいて、該記憶された８個×８個の画素を対象として処理を行うことを特徴とする請求の範囲第５３項〜第６１項のいずれかに記載の画像処理プログラム。
【請求項６３】
水平方向および垂直方向の前記境界の交差点を中心として、垂直方向の前記境界を挟む片側それぞれ４個の画素と、水平方向の前記境界を挟む上側４個の画素および下側８個の画素とを記憶していき、該記憶された８個×１２個の画素について、前記隣接画素間の差分値を算出し、該８個×１２個の画素を２列３行に区分した１単位である４個×４個の画素毎の、該差分値の最大値である仮最大値を取得する仮最大値取得ステップを含み、前記最大値検出ステップにおいては、前記仮最大値がブロック全てについて既に取得されている場合には、該ブロックにおける全ての仮最大値のうち最大のものを前記最大値とし、前記仮最大値がブロック全てについては取得されていない場合には、取得されている前記仮最大値のうち最大のものを前記最大値とし、前記差分値算出ステップおよびフィルタ処理ステップにおいて、該記憶された８個×１２個の画素のうち上側の８個×８個の画素を対象として処理を行うことを特徴とする請求の範囲第５３項〜第６１項のいずれかに記載の画像処理プログラム。
【発明の詳細な説明】
技術分野
本発明は画像処理システム、画像処理方法、及び画像処理プログラムに関する。
背景技術
静止画像についての圧縮技術としてＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）方式、動画像についての圧縮技術としてＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）方式、が広く知られている。これらの画像圧縮方式においては、８画素×８画素のブロックを処理の１単位として扱い、周知の離散コサイン変換（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ；以下、ＤＣＴ）処理を行う。ＤＣＴ処理は、元の画像を空間的な周波数成分に分解する処理であり、空間的に冗長な情報を削減することによって、画像を圧縮することができる。
ところで、ＪＰＥＧ方式又はＭＰＥＧ方式を採用する場合、次のような２種類のノイズが発生し、このノイズが画質を劣化させる原因となる。すなわち、上述したように、ＪＰＥＧ方式及びＭＰＥＧ方式においては、８画素×８画素のブロックを処理の単位としているので、画像によっては、このブロックの境界がノイズとして見えてしまう。この境界部分のノイズはブロックノイズと呼ばれている。
また、ＪＰＥＧ方式及びＭＰＥＧ方式におけるＤＣＴ処理では、高調波成分を冗長な情報として除去する結果、周辺との輝度差が大きい部分にノイズが表れる。例えば、自然画の背景に文字が存在する場合等、ブロック内に輝度の大きな変化がある場合、ＤＣＴ処理を行うと、本来の境界部分を構成するデータから高調波成分が除去され、境界周辺にモヤモヤとしたノイズが表れる。このノイズは、モスキートノイズと呼ばれる。
以上のブロックノイズを軽減するための技術として、ｖｅｒｉｆｉｃａｔｉｏｎ  ｍｏｄｅｌ（以下、ＶＭ）や特開平１１−９８５０５公報に記載されている技術が知られている。特開平１１−９８５０５公報に記載されている技術においては、第１３図に示されている垂直方向及び水平方向のブロック境界について、デフォルトモードかＤＣオフセットモードかを判定し、それぞれの処理を行う。
この場合、ブロックの境界Ｂ１，Ｂ２を基点としてピクセルセットＳ０，Ｓ１，Ｓ２を定義し、モード決定値からブロック歪現象の程度に基づいて選択的にデブロッキングモードをデフォルトモードかＤＣオフセットモードかに決める。そして、デフォルトモードと決定されると、４ポイントＤＣＴカーネルを用いて各ピクセルに対するブロック境界周辺の周波数情報を求める。モード決定段階でＤＣオフセットモードと決定されると、ＤＣオフセットモードの実行が必要であるかどうかを判断し、必要であれば画像の動きが緩慢な領域でブロック歪み現象を除去する。
以上の他、ＶＭにはモスキートノイズを除くフィルタもある。このフィルタにおいては、ブロック内の最大値及び最小値を求める処理、すべての画素について閾値処理をし、モスキートノイズ除去処理をするか、しないかの判断処理が必要になる。
また、以上のようなノイズを軽減するための技術が特開平３−４６４８２号公報に記載されている。同公報に記載されている技術においては、２つの境界隣接画素間の信号レベル差が第１の閾値より大きく、ブロックの各々において境界隣接画素と列上の画素のうちその境界隣接画素に同一ブロック内で隣接する画素との間の信号レベル差がそれぞれ第２の閾値より小さい場合に、フィルタ処理をする。
このとき、第１２図において、ブロック境界の両側に位置する画素配置Ｘ１及びＸ０、画素配置Ｘ’０及びＸ’１についての信号レベルＳ１、Ｓ０、Ｓ’０、Ｓ’１の差分値ｄ０，ｄ１，ｄ２に基づいて、画素配置Ｘ０、Ｘ’０についての信号レベルを修正する。すなわち新たな信号レベルＳ０−ｎｅｗ、Ｓ’０−ｎｅｗは、
2002067589.tif 000003
となる。
しかしながら、上述した特開平３−４６４８２号公報に記載されている技術では、境界画素のみを補正しているので、ブロック歪みを除去する処理として充分ではないという欠点がある。また、ＶＭや特開平１１−９８５０５公報に記載されている技術では処理が複雑で計算負荷が大きすぎるという欠点がある。
ここで、いくつかの調査や実験により、以下のことがわかってきた。まず、フィルタによって補正するとき、ブロック境界１〜２画素を補正するのでは不十分であり、３画素は補正すべきである。また、エッジ周辺のモスキートノイズと画像本来の高周波成分とを判別するのは難しい。さらに、ブロック境界画素のみを用いた判定では、ブロック歪みを検出することはできても、広域フィルタにするか、狭域フィルタにするか、の正しい判断ができない。ブロック内部に強エッジがあった場合、広域フィルタ処理は行うべきでない。
本発明は上述した従来技術の欠点を解決するためになされたものであり、その目的はより簡単な処理によって上記のノイズを軽減することのできる画像処理システム、画像処理方法、及び画像処理プログラムを提供することである。
発明の開示
本発明による画像処理システムは、画像圧縮における離散コサイン変換処理の処理単位であるブロックについて隣接するブロックとの境界に位置する境界画素についてフィルタ処理を行う画像処理システムであって、前記境界画素を含み前記境界に対して直交して連続する該境界を挟む片側Ｎ個（Ｎは、３乃至５のいずれかの整数、以下同じ）の画素からなる２Ｎ個の画素を参照し修正処理を行うか判定する判定手段と、前記判定手段によって修正処理を行うと判定されたとき前記境界画素とそれを挟む片側Ｍ個（Ｍは整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いて修正処理を行う修正処理手段とを含むことを特徴とする。
また、前記判定手段においては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記修正処理を行うと判定することを特徴とする。
また、前記判定手段においては、参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記修正処理を行うと判定することを特徴とする。
また、前記閾値は、前記量子化値が３０以下の値である場合に該量子化値に２乃至１０のいずれかの整数を加えた値であることを特徴とする。
また、前記判定手段においては、前記参照する２Ｎ個の画素のうち隣接する画素同士の差分の値が全て零であるか１つのみが零でない場合に前記修正処理を行わないと判定することを特徴とする。
また、前記判定手段においては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値のいずれかが前記画像についての量子化値に基づいて定められた閾値より小であるとき、前記修正処理を行うと判断することを特徴とする。
また、前記修正処理手段における修正処理は、前記境界画素及びそれを挟む２Ｍ個の画素それぞれに所定係数を乗じ、さらに前記係数の合計値で除した値に応じて前記境界画素を修正することを特徴とする。
また、前記所定係数は、前記境界画素についての値が、他の画素についての値よりも大であることを特徴とする。
また、前記フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行うことを特徴とする。
また、水平方向および垂直方向の前記境界の交差点を中心として、該境界を挟む片側それぞれ４個の画素を記憶する記憶手段を含み、前記ブロックに含まれる所定画素を該記憶手段に順次記憶していき、前記判定手段および前記修正処理手段は、該記憶手段に記憶された８個×８個の画素を対象として処理を行うことを特徴とする。
これにより、フィルタ処理の際に画素を記憶しておくために必要となる記憶容量を軽減できる。
また、本発明による画像処理方法は、画像圧縮における離散コサイン変換処理の処理単位であるブロックについて隣接するブロックとの境界に位置する境界画素についてフィルタ処理を行う画像処理方法であって、前記境界画素を含み前記境界に対して直交して連続する該境界を挟む片側Ｎ個（Ｎは、３乃至５のいずれかの整数、以下同じ）の画素からなる２Ｎ個の画素を参照し修正処理を行うか判定する判定ステップと、前記判定ステップによって修正処理を行うと判定されたとき前記境界画素とそれを挟む片側Ｍ個（Ｍは整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いて修正処理を行う修正処理ステップとを含むことを特徴とする。
また、前記判定ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記修正処理を行うと判定することを特徴とする。
また、前記判定ステップにおいては、参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記修正処理を行うと判定することを特徴とする。
また、前記閾値は、前記量子化値が３０以下の値である場合に該量子化値に２乃至１０のいずれかの整数を加えた値であることを特徴とする。
また、前記判定ステップにおいては、前記参照する２Ｎ個の画素のうち隣接する画素同士の差分の値が全て零であるか１つのみが零でない場合に前記修正処理を行わないと判定することを特徴とする。
また、前記判定ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値のいずれかが前記画像についての量子化値に基づいて定められた閾値より小であるとき、前記修正処理を行うと判断することを特徴とする。
また、前記修正処理ステップにおける修正処理は、前記境界画素及びそれを挟む２Ｍ個の画素それぞれに所定係数を乗じ、さらに前記係数の合計値で除した値に応じて前記境界画素を修正することを特徴とする。
また、前記所定係数は、前記境界画素についての値が、他の画素についての値よりも大であることを特徴とする。
また、前記フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行うことを特徴とする。
また、前記ブロックにおいて、水平方向および垂直方向の前記境界の交差点を中心として、該境界を挟む片側それぞれ４個の画素を記憶していき、前記判定ステップおよび前記修正処理ステップにおいては、該記憶された８個×８個の画素を対象として処理を行うことを特徴とする。
本発明による画像処理プログラムは、画像圧縮における離散コサイン変換処理の処理単位であるブロックについて隣接するブロックとの境界に位置する境界画素についてフィルタ処理を行う画像処理プログラムであって、前記境界画素を含み前記境界に対して直交して連続する該境界を挟む片側Ｎ個（Ｎは、３乃至５のいずれかの整数、以下同じ）の画素からなる２Ｎ個の画素を参照し修正処理を行うか判定する判定ステップと、前記判定ステップによって修正処理を行うと判定されたとき前記境界画素とそれを挟む片側Ｍ個（Ｍは整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いて修正処理を行う修正処理ステップとを含むことを特徴とする。
また、前記判定ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記修正処理を行うと判定することを特徴とする。
また、前記判定ステップにおいては、参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記修正処理を行うと判定することを特徴とする。
また、前記閾値は、前記量子化値が３０以下の値である場合に該量子化値に２乃至１０のいずれかの整数を加えた値であることを特徴とする。
また、前記判定ステップにおいては、前記参照する２Ｎ個の画素のうち隣接する画素同士の差分の値が全て零であるか１つのみが零でない場合に前記修正処理を行わないと判定することを特徴とする。
また、前記判定ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値のいずれかが前記画像についての量子化値に基づいて定められた閾値より小であるとき、前記修正処理を行うと判断することを特徴とする。
また、前記修正処理ステップにおける修正処理は、前記境界画素及びそれを挟む２Ｍ個の画素それぞれに所定係数を乗じ、さらに前記係数の合計値で除した値に応じて前記境界画素を修正することを特徴とする。
また、前記所定係数は、前記境界画素についての値が、他の画素についての値よりも大であることを特徴とする。
また、前記フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行うことを特徴とする。
また、前記ブロックにおいて、水平方向および垂直方向の前記境界の交差点を中心として、該境界を挟む片側それぞれ４個の画素を記憶していき、前記判定ステップおよび前記修正処理ステップにおいては、該記憶された８個×８個の画素を対象として処理を行うことを特徴とする。
要するに、本発明では、境界を挟む片側Ｎ個の画素からなる２Ｎ個の画素を参照し、修正する場合には境界画素とそれを挟む片側Ｍ個の画素とを用いる。そして、Ｎ及びＭの値を適切に設定することによって、上記のノイズを低減するのである。
本発明による画像処理システムは、画像圧縮における離散コサイン変換処理の処理単位であるブロックに属する画素についてフィルタ処理を行う画像処理システムであって、処理対象のブロックを構成する全画素のうち着目している着目画素を含む少なくとも半分の画素について隣接画素間の差分値の最大値を求めることが可能な最大値検出手段と、前記着目画素を含み前記ブロック同士の境界に対して直交して連続する片側Ｎ個（Ｎは、正の整数、以下同じ）の画素からなる２Ｎ個の画素について隣接画素間の差分値を求める差分値算出手段と、前記差分値算出手段において求めた差分値を前記最大値に対応する閾値と比較してフィルタ処理を行うか判定する判定手段と、前記判定手段においてフィルタ処理を行うと判定された場合、前記着目画素とそれを挟む片側Ｍ個（Ｍは正の整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いてフィルタ処理を行うフィルタ処理手段とを含むことを特徴とする。
また、前記差分値算出手段においては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、
前記判定手段においては、前記差分値算出手段において求めた差分値全てが前記閾値より小であるとき前記フィルタ処理を行うと判定することを特徴とする。
また、前記差分値算出手段においては、参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、
前記判定手段においては、前記差分値算出手段において求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記フィルタ処理を行うと判定することを特徴とする。
また、前記判定手段においては、前記差分値全てが前記閾値より小であることが成立していない場合であっても、前記Ｍ画素各々の隣接画素差分値が所定閾値より小であるとき、前記フィルタ処理とは異なる所定のフィルタ処理を行うと判断することを特徴とする。
また、前記判定手段においては、前記最大値に応じて前記閾値の値を決定することを特徴とする。
また、前記判定手段においては、処理対象のブロック内に位置する画素についての閾値よりも、該ブロックの境界に位置する画素についての閾値を大とすることを特徴とする。
また、前記フィルタ処理手段においては、前記着目画素及びそれを挟む複数の画素それぞれに所定係数を乗じ、さらに前記係数の合計値で除した値に応じて前記着目画素を修正することを特徴とする。
また、前記最大値検出手段における最大値の探索は、探索すべき画素について１ラインおきに行うことを特徴とする。
また、前記フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行うことを特徴とする。
また、水平方向および垂直方向の前記境界の交差点を中心として、該境界を挟む片側それぞれ４個の画素を記憶する記憶手段と、該記憶手段に記憶された８個×８個の画素について、前記隣接画素間の差分値を算出し、前記境界によって区切られた４個×４個の画素毎の該差分値の最大値である仮最大値を取得する仮最大値取得手段とを含み、前記最大値検出手段は、前記仮最大値がブロック全てについて既に取得されている場合には、該ブロックにおける全ての仮最大値のうち最大のものを前記最大値とし、前記仮最大値がブロック全てについては取得されていない場合には、取得されている前記仮最大値のうち最大のものを前記最大値とし、前記差分値算出手段およびフィルタ処理手段は、該記憶手段に記憶された８個×８個の画素を対象として処理を行うことを特徴とする。
本方法により、フィルタ処理の際に画素を記憶しておくために必要となる記憶容量を軽減できる。
また、水平方向および垂直方向の前記境界の交差点を中心として、垂直方向の前記境界を挟む片側それぞれ４個の画素と、水平方向の前記境界を挟む上側４個の画素および下側８個の画素とを記憶する記憶手段と、該記憶手段に記憶された８個×１２個の画素について、前記隣接画素間の差分値を算出し、該８個×１２個の画素を２列３行に区分した１単位である４個×４個の画素毎の、該差分値の最大値である仮最大値を取得する仮最大値取得手段とを含み、前記最大値検出手段は、前記仮最大値がブロック全てについて既に取得されている場合には、該ブロックにおける全ての仮最大値のうち最大のものを前記最大値とし、前記仮最大値がブロック全てについては取得されていない場合には、取得されている前記仮最大値のうち最大のものを前記最大値とし、前記差分値算出手段およびフィルタ処理手段は、該記憶手段に記憶された８個×１２個の画素のうち上側の８個×８個の画素を対象として処理を行うことを特徴とする。
本発明による画像処理方法は、画像圧縮における離散コサイン変換処理の処理単位であるブロックに属する画素についてフィルタ処理を行う画像処理方法であって、処理対象のブロックを構成する全画素のうち着目している着目画素を含む少なくとも半分の画素について隣接画素間の差分値の最大値を求める最大値検出ステップと、前記着目画素を含み前記ブロック同士の境界に対して直交して連続する片側Ｎ個（Ｎは、正の整数、以下同じ）の画素からなる２Ｎ個の画素について隣接画素間の差分値を求める差分値算出ステップと、前記差分値算出ステップにおいて求めた差分値を前記最大値に対応する閾値と比較してフィルタ処理を行うか判定する判定ステップと、前記判定ステップにおいてフィルタ処理を行うと判定された場合、前記着目画素とそれを挟む片側Ｍ個（Ｍは正の整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いてフィルタ処理を行うフィルタ処理ステップとを含むことを特徴とする。
また、前記差分値算出ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、
前記判定ステップにおいては、前記差分値算出ステップにおいて求めた差分値全てが前記閾値より小であるとき前記フィルタ処理を行うと判定することを特徴とする。
また、前記差分値算出ステップにおいては、参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、
前記判定ステップにおいては、前記差分値算出ステップにおいて求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記フィルタ処理を行うと判定することを特徴とする。
また、前記判定ステップにおいては、前記差分値全てが前記閾値より小であることが成立していない場合であっても、前記Ｍ画素各々の隣接画素差分値が所定閾値より小であるとき、前記フィルタ処理とは異なる所定のフィルタ処理を行うと判断することを特徴とする。
また、前記判定ステップにおいては、前記最大値に応じて前記閾値の値を決定することを特徴とする。
また、前記判定ステップにおいては、処理対象のブロック内に位置する画素についての閾値よりも、該ブロックの境界に位置する画素についての閾値を大とすることを特徴とする。
また、前記フィルタ処理ステップにおいては、前記着目画素及びそれを挟む複数の画素それぞれに所定係数を乗じ、さらに前記係数の合計値で除した値に応じて前記着目画素を修正することを特徴とする。
また、前記最大値検出ステップにおける最大値の探索は、探索すべき画素について１ラインおきに行うことを特徴とする。
また、前記フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行うことを特徴とする。
また、水平方向および垂直方向の前記境界の交差点を中心として、該境界を挟む片側それぞれ４個の画素を記憶していき、該記憶された８個×８個の画素について、前記隣接画素間の差分値を算出し、前記境界によって区切られた４個×４個の画素毎の該差分値の最大値である仮最大値を取得する仮最大値取得ステップを含み、前記最大値検出ステップにおいては、前記仮最大値がブロック全てについて既に取得されている場合には、該ブロックにおける全ての仮最大値のうち最大のものを前記最大値とし、前記仮最大値がブロック全てについては取得されていない場合には、取得されている前記仮最大値のうち最大のものを前記最大値とし、前記差分値算出ステップおよびフィルタ処理ステップにおいて、該記憶された８個×８個の画素を対象として処理を行うことを特徴とする。
また、水平方向および垂直方向の前記境界の交差点を中心として、垂直方向の前記境界を挟む片側それぞれ４個の画素と、水平方向の前記境界を挟む上側４個の画素および下側８個の画素とを記憶していき、該記憶された８個×１２個の画素について、前記隣接画素間の差分値を算出し、該８個×１２個の画素を２列３行に区分した１単位である４個×４個の画素毎の、該差分値の最大値である仮最大値を取得する仮最大値取得ステップを含み、前記最大値検出ステップにおいては、前記仮最大値がブロック全てについて既に取得されている場合には、該ブロックにおける全ての仮最大値のうち最大のものを前記最大値とし、前記仮最大値がブロック全てについては取得されていない場合には、取得されている前記仮最大値のうち最大のものを前記最大値とし、前記差分値算出ステップおよびフィルタ処理ステップにおいて、該記憶された８個×１２個の画素のうち上側の８個×８個の画素を対象として処理を行うことを特徴とする。
本発明による画像処理プログラムは、画像圧縮における離散コサイン変換処理の処理単位であるブロックに属する画素についてフィルタ処理を行う画像処理プログラムであって、処理対象のブロックを構成する全画素のうち着目している着目画素を含む少なくとも半分の画素について隣接画素間の差分値の最大値を求める最大値検出ステップと、前記着目画素を含み前記ブロック同士の境界に対して直交して連続する片側Ｎ個（Ｎは、正の整数、以下同じ）の画素からなる２Ｎ個の画素について隣接画素間の差分値を求める差分値算出ステップと、前記差分値算出ステップにおいて求めた差分値を前記最大値に対応する閾値と比較してフィルタ処理を行うか判定する判定ステップと、前記判定ステップにおいてフィルタ処理を行うと判定された場合、前記着目画素とそれを挟む片側Ｍ個（Ｍは正の整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いてフィルタ処理を行うフィルタ処理ステップとを含むことを特徴とする。
また、前記差分値算出ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、
前記判定ステップにおいては、前記差分値算出ステップにおいて求めた差分値全てが前記閾値より小であるとき前記フィルタ処理を行うと判定することを特徴とする。
また、前記差分値算出ステップにおいては、参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、
前記判定ステップにおいては、前記差分値算出ステップにおいて求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき前記フィルタ処理を行うと判定することを特徴とする。
また、前記判定ステップにおいては、前記差分値全てが前記閾値より小であることが成立していない場合であっても、前記Ｍ画素各々の隣接画素差分値が所定閾値より小であるとき、前記フィルタ処理とは異なる所定のフィルタ処理を行うと判断することを特徴とする。
また、前記判定ステップにおいては、前記最大値に応じて前記閾値の値を決定することを特徴とする。
また、前記判定ステップにおいては、処理対象のブロック内に位置する画素についての閾値よりも、該ブロックの境界に位置する画素についての閾値を大とすることを特徴とする。
また、前記フィルタ処理ステップにおいては、前記着目画素及びそれを挟む複数の画素それぞれに所定係数を乗じ、さらに前記係数の合計値で除した値に応じて前記着目画素を修正することを特徴とする。
また、前記最大値検出ステップにおける最大値の探索は、探索すべき画素について１ラインおきに行うことを特徴とする。
また、前記フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行うことを特徴とする。
また、水平方向および垂直方向の前記境界の交差点を中心として、該境界を挟む片側それぞれ４個の画素を記憶していき、該記憶された８個×８個の画素について、前記隣接画素間の差分値を算出し、前記境界によって区切られた４個×４個の画素毎の該差分値の最大値である仮最大値を取得する仮最大値取得ステップを含み、前記最大値検出ステップにおいては、前記仮最大値がブロック全てについて既に取得されている場合には、該ブロックにおける全ての仮最大値のうち最大のものを前記最大値とし、前記仮最大値がブロック全てについては取得されていない場合には、取得されている前記仮最大値のうち最大のものを前記最大値とし、前記差分値算出ステップおよびフィルタ処理ステップにおいて、該記憶された８個×８個の画素を対象として処理を行うことを特徴とする。
また、水平方向および垂直方向の前記境界の交差点を中心として、垂直方向の前記境界を挟む片側それぞれ４個の画素と、水平方向の前記境界を挟む上側４個の画素および下側８個の画素とを記憶していき、該記憶された８個×１２個の画素について、前記隣接画素間の差分値を算出し、該８個×１２個の画素を２列３行に区分した１単位である４個×４個の画素毎の、該差分値の最大値である仮最大値を取得する仮最大値取得ステップを含み、前記最大値検出ステップにおいては、前記仮最大値がブロック全てについて既に取得されている場合には、該ブロックにおける全ての仮最大値のうち最大のものを前記最大値とし、前記仮最大値がブロック全てについては取得されていない場合には、取得されている前記仮最大値のうち最大のものを前記最大値とし、前記差分値算出ステップおよびフィルタ処理ステップにおいて、該記憶された８個×１２個の画素のうち上側の８個×８個の画素を対象として処理を行うことを特徴とする。
ところで、モスキートノイズが目立つのは、強エッジに隣接する部分である。したがって、ブロック内に含まれているエッジのおよその大きさによってフィルタのオンオフ評価値を変えればモスキートノイズを低減させることが期待できる。隣接差分値を使用した処理を利用するため、エッジ抽出は隣接画素間のみとし、さらに処理を容易にするため、かつ、判断を誤った場合の影響を小さくするために、処理対象のブロックを構成する全画素のうち境界画素を含む少なくとも半分の画素について隣接画素間の差分値の最大値を求める対象とする。ただし、斜め成分を含まない水平、垂直方向のみのエッジに対応するため、ブロック中心のみは画素すべてをエッジ抽出に利用する。
発明を実施するための最良の形態
次に、図により本発明に係る画像処理システムの実施形態を具体的に説明する。
初めに、本発明の第１の実施の形態について説明する。
なお、以下の説明において参照する各図では、他の図と同等部分は同一符号によって示されている。
第２図は本発明による画像処理システムの実施の一形態を示すブロック図である。同図に示されているように、本実施形態による画像処理システムは、境界画素を含み前記境界に対して直交して連続する該境界を挟む片側Ｎ個の画素からなる２Ｎ個の画素を参照し修正処理を行うか判定する判定部１と、この判定部１によって修正処理を行うと判定されたとき、境界を挟む片側Ｍ個の画素を用いて修正処理を行う修正処理部２とを含んで構成されている。ここで、Ｎは、３乃至５のいずれかの整数である。また、Ｍは、整数、かつ、Ｍ＜Ｎである。
なお、フィルタ処理対象となるブロックを一旦保持しておくためのバッファを設けても良い。この場合、例えば、第１図に示されているブロック境界を挟んでそれぞれ片側４画素（境界の両側８画素）を参照する場合、処理対象であるフレーム全体を保持するのではなく、ブロック境界を含む８画素×８画素（以下、適宜「一時記憶ブロック」と言う。）を一時的に保持することにより、修正処理およびフィルタ処理を適切に行うことができる。第３図は、一時記憶ブロックの概念を示す図である。
このように、フィルタ処理対象となる境界を含む所定サイズの一時記憶ブロックを保持して修正処理を行うか否かを判定することにより、必要となる記憶容量を軽減することができる。
なお、フレームの端部においては、境界の片側にのみ画素が存在し、８画素×８画素に満たないため、存在する側の画素を境界で折り返して一時記憶ブロックを補完したり、所定の擬似的な画素で補完したりするというように、フィルタ処理に影響の少ない画素を補うことが考えられる。
本例において、判定部１は、第１図に示されているブロック境界を挟む片側４画素を参照する。すなわち、信号レベル値ｖ１〜ｖ８を参照する。そして、参照する２Ｎ（本例では、８）個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが前記画像についての量子化値に基づいて定められた閾値より小であるとき修正処理を行うと判定する。
また、修正処理部２は、境界画素の信号レベルとそれを挟む２Ｍ（本例では、６）個の画素それぞれの信号レベルとに所定係数を乗じる。そして、この乗じた値を、係数の合計値で除する。この除した値に応じて境界画素の信号レベルを修正する。この場合、各画素に乗じる係数は、境界画素についての信号レベルの値が、他の画素についての信号レベルの値よりも大であるようにする。
なお、本例では、垂直方向のブロック境界Ｂ１に位置する画素全てについて処理を行った後（ブロック境界Ｂ１に対して直交して連続する画素を参照する）、水平方向のブロック境界Ｂ２に位置する画素全てについて処理を行う（ブロック境界Ｂ２に対して直交して連続する画素を参照する）。もっとも、水平方向のブロック境界Ｂ２に位置する画素全てについて先に処理を行い、その後に垂直方向のブロック境界Ｂ１に位置する画素全てについて処理を行っても良い。
また、画像処理は、輝度信号（Ｙ）、色差信号（Ｕ，Ｖ）それぞれの画像に対して行う。
以下、より具体的に説明する。本例の場合、第１図に示されているように、ブロック境界を含む、片側４画素ずつを参照する。つまり、同図中の各画素の信号レベル値ｖ１〜ｖ８を参照する。信号レベル値ｖ１〜ｖ８について、各々隣接する画素との差分を求める。すなわち、
2002067589.tif 000004
により、差分値ｄ１〜ｄ７の各々の値を求める。
そして、求めた差分絶対値のすべてが、ある閾値ＱＰより小である場合には、広域ローパスフィルタ処理を行う。その係数は、例えば、
2002067589.tif 000005
とする。また、画像の端部に位置している画素については、参照する画素が余分に要らず、かつ、計算が容易なように、
2002067589.tif 000006
とする。したがって、このフィルタ処理を式で表現すると、以下のようになる。すなわち、
2002067589.tif 000007
となる。
ここで、「ＱＰ」は閾値であり、
2002067589.tif 000008
である。発明者の検証によると、ｄ＝２〜１０が適当であり、特に４又は６が良い。また、量子化に応じてｄの値を変化させるのが良い。発明者の検証によると、量子化値が３０以上なら、ｄ＝０が良い。
さらに、ブロック内は、ＱＰ＝量子化値＋４、ブロック境界は、ＱＰ＝量子化値×２とするのが良い。
なお、差分の値がすべて「０」である場合は、ブロック歪みがないか、又はあっても目立たないので、フィルタ処理を行わない。
2002067589.tif 000009
同様に、差分の値ｄ１〜ｄ７のうち、１つが「０」でなく、他がすべて「０」である場合にも、ブロック歪みが目立たないので、フィルタ処理を行わない。
差分ｄ１〜ｄ７の値のいずれかが大きい場合、強エッジがあると判断し、フィルタ処理はブロック境界画素のみとし、ブロック境界画素に隣接する両側画素との差分がある閾値より小さい場合、ローパスフィルタをかける。その係数は、例えば
2002067589.tif 000010
とする。この処理を信号レベル値ｖ３，ｖ４，ｖ５，ｖ６に対して行う。
2002067589.tif 000011
以上の動作について、第４図を参照して説明する。同図において、まず、隣接する画素同士の差分値を求める（ステップＳ１０１）。求めた差分値全てが閾値より小さい場合は、さらに差分値全てが零であるか、又は１つのみが零でないか、判断する（ステップＳ１０２→Ｓ１０３）。差分値全てが零であるか、又は１つのみが零でない場合は、フィルタ処理を行わないで処理を終了する。一方、ステップＳ１０３の条件を充足しない場合は、フィルタ処理を行う（ステップＳ１０３→Ｓ１０４）。
ステップＳ１０２において、求めた差分値のいずれかが閾値より大きい場合は、さらに隣接する差分値が所定閾値より小であるか判断する（ステップＳ１０２→Ｓ１０５）。隣接する差分値が所定閾値より小であれば、フィルタ処理を行う（ステップＳ１０５→Ｓ１０６）。この場合、上述したように強エッジがあると判断し、上述した
2002067589.tif 000012
等の係数によるフィルタ処理を行う（ステップＳ１０６）。ステップＳ１０５の条件を充足しない場合は、上記のフィルタ処理を行わない。
ところで、上記の判定では、第５図のように輝度が緩やかに変化している場合でも、強いフィルタがかかってしまう。すなわち、同図に示されているように、画素配置Ｘ１〜Ｘ７について、上述したようにフィルタ処理を行うと、矢印Ｙで示されているようにＸ３，Ｘ４，Ｘ５の信号レベルが低下してしまう。このようなフィルタ処理は行わないようにしなければならない。
このため、ブロック境界をなす画素の輝度値と、その同じブロック内で１画素空けた２画素目の画素の輝度値との差分絶対値をとり、その値がある閾値より小さい場合に上記フィルタをかけるようにする。同図においては、ｘ３を空けてｘ２とｘ４とを参照し、ｘ６を空けてｘ５とｘ７とを参照する。つまり、
2002067589.tif 000013
を求め、（ｄ２１＜ＱＰ）＆（ｄ２２＜ＱＰ）の場合に上記のフィルタ処理を行う。
以上の処理を標準フィルタ処理とする。
なお、上記の例では、１画素空けて隣接する画素同士の差分値を求めているが、２画素空けても良い。したがって、少なくとも１画素空ければ良いことになる。
この場合の動作について、第６図を参照して説明する。同図において、まず、隣接する画素同士の差分値を求める（ステップＳ１０１）。求めた差分値全てが閾値より小さい場合は、さらに差分値全てが零であるか、又は１つのみが零でないか、判断する（ステップＳ１０２→Ｓ１０３）。差分値全てが零であるか、又は１つのみが零でない場合は、フィルタ処理を行わないで処理を終了する。そうでなければ、さらに少なくとも１画素空けて隣接する画素同士の差分値を求める（ステップＳ１０３→Ｓ１０３ａ）。求めた差分値全てが閾値より小さいか、判断する（ステップＳ１０３ａ→Ｓ１０３ｂ）。求めた差分値全てが閾値より小さい場合はフィルタ処理を行い（ステップＳ１０３ｂ→Ｓ１０４）、そうでなければフィルタ処理を行わないで処理を終了する。
ステップＳ１０２において、求めた差分値のいずれかが閾値より大きい場合は、さらに隣接する差分値が所定閾値より小であるか判断する（ステップＳ１０２→Ｓ１０５）。隣接する差分値が所定閾値より小であれば、フィルタ処理を行う（ステップＳ１０５→Ｓ１０６）。この場合、上述したように強エッジがあると判断し、上述した
2002067589.tif 000014
等の係数によるフィルタ処理を行う（ステップＳ１０６）。ステップＳ１０５の条件を充足しない場合は、上記のフィルタ処理を行わない。
ところで、画像によっては、フィルタ処理を簡略化したい場合がある。上記の標準フィルタ処理では、輝度信号（Ｙ）、色差信号（Ｕ，Ｖ）それぞれについて処理していたが、輝度信号のみについてフィルタ処理を行えば充分な場合が多い。これを簡易フィルタＡとする。
さらに簡略化したい場合は、上記の片側４画素参照及び３画素修正の代わりに、片側３画素参照及び２画素修正を採用する。このとき、係数は、例えば、
2002067589.tif 000015
とする。つまり、
2002067589.tif 000016
である。以上を簡易フィルタＢとする。
一方、上述した標準フィルタ処理よりも滑らかなフィルタ処理を行うには、片側５画素参照及び４画素修正を採用する。すなわち、
2002067589.tif 000017
2002067589.tif 000018
により差分値ｄ０〜ｄ８の値を求める。そして、求めた差分絶対値のすべてが、ある閾値ＱＰより小である場合には、広域ローパスフィルタ処理を行う。このときの係数は、例えば、
2002067589.tif 000019
である。したがって、このフィルタ処理を式で表現すると、以下のようになる。すなわち、
2002067589.tif 000020
である。
以上の処理を行うことによって、特にブロックノイズを軽減することができる。また、ブロックノイズの他、モスキートノイズについても効果があることが発明者によって確認されている。
ところで、本システムにおいては、以下のような画像処理方法が実現されている。すなわち、画像圧縮における離散コサイン変換処理の処理単位であるブロックについて隣接するブロックとの境界に位置する境界画素についてフィルタ処理を行う画像処理方法であり、上記境界画素を含み上記境界に対して直交して連続する該境界を挟む片側Ｎ個（Ｎは、３乃至５のいずれかの整数、以下同じ）の画素からなる２Ｎ個の画素を参照し修正処理を行うか判定する判定ステップと、上記判定ステップによって修正処理を行うと判定されたとき上記境界画素とそれを挟む片側Ｍ個（Ｍは整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いて修正処理を行う修正処理ステップとを含む画像処理方法が実現されている。
そして、上記判定ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが上記画像についての量子化値に基づいて定められた閾値より小であるとき上記修正処理を行うと判定するか、又は参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、この求めた差分値全てが上記画像についての量子化値に基づいて定められた閾値より小であるとき上記修正処理を行うと判定する。この場合、上記閾値は、上記量子化値が３０以下の値である場合に該量子化値に２乃至１０のいずれかの整数を加えた値とする。
また、上記判定ステップにおいては、上記参照する２Ｎ個の画素のうち隣接する画素同士の差分の値が全て零であるか１つのみが零でない場合に、上記修正処理を行わないと判定する。
なお、上記判定ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、この求めた差分値のいずれかが上記画像についての量子化値に基づいて定められた閾値より小であるとき、上記修正処理を行うと判断する。
さらに、上記修正処理ステップにおける修正処理は、上記境界画素及びそれを挟む２Ｍ個の画素それぞれに所定係数を乗じ、さらに上記係数の合計値で除した値に応じて上記境界画素を修正する。この場合、上記所定係数は、上記境界画素についての値が、他の画素についての値よりも大であることとする。
なお、フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行う。
また、第４図，第６図に示されている動作を実現するためのプログラムを用意し、これによってコンピュータを制御すれば、上述と同様に画像処理を行うことができることは明白である。このプログラムは、第１図に示されていない半導体メモリ、磁気ディスク、光ディスク等の他、種々の記録媒体に記憶しておくことができる。
次に、本発明の第２の実施の形態について説明する。なお、以下の説明において参照する各図では、他の図と同等部分は同一符号によって示されている。
第７図は本発明による画像処理システムの実施の一形態を示すブロック図である。同図に示されているように、本実施形態による画像処理システムは、処理対象のブロックを構成する全画素のうち境界画素を含む少なくとも半分の画素について隣接画素間の差分値の最大値を求める最大値検出部３と、境界画素を含み境界に対して直交して連続する、その境界を挟む片側Ｎ個の画素からなる２Ｎ個の画素の差分値を求める差分値算出部４と、この差分値算出部４において求めた差分値を最大値に対応する閾値と比較してフィルタ処理を行うか判定する判定部５と、判定部５においてフィルタ処理を行うと判定された場合、境界画素とそれを挟む片側Ｍ個の画素とを用いてフィルタ処理を行うフィルタ処理部６とを含んで構成されている。ここで、Ｎは、正の整数である。また、Ｍは、正の整数、かつ、Ｍ＜Ｎである。なお、後述するように、フィルタ処理対象となるブロックを一旦保持しておくためのバッファを設けても良い。
以下、より具体的に説明する。本例の場合、第１図のように、垂直方向のブロック境界Ｂ１に位置する画素全てについて処理を行った後（ブロック境界Ｂ１に対して直交して連続する画素を参照する）、水平方向のブロック境界Ｂ２に位置する画素全てについて処理を行う（ブロック境界Ｂ２に対して直交して連続する画素を参照する）。もっとも、水平方向のブロック境界Ｂ２に位置する画素全てについて先に処理を行い、その後に垂直方向のブロック境界Ｂ１に位置する画素全てについて処理を行っても良い。また、画像処理は、輝度信号（Ｙ）、色差信号（Ｕ，Ｖ）それぞれの画像に対して行う。
本システムでは、最大値検出部３において、半ブロック単位で、隣接画素間の差分値が最も大きい値（最大値）ｄｍａｘを求める。水平ブロック境界フィルタの場合は、垂直方向に８ライン、垂直ブロック境界フィルタの場合は、水平方向に８列、ブロック境界を挟んで片側４画素をとり、各々隣接する画素との差分を求める。すなわち、
2002067589.tif 000021
により、差分値ｄ１〜ｄ３の各々の値を求める。結果的に、ブロックの半分の領域内での最大隣接差分値が得られる。ただし、少なくともブロックの中心付近を通る１ライン（例えば、後述する第１１図（ｂ）中のラインＬ４）は、片側８画素を参照する。そして、同様に差分値をとって、他の値と比較し、より大きい方を最大値ｄｍａｘとする。
また、水平ライン・垂直ライン単位で、ブロック境界を含む、片側４画素ずつをとり、各々隣接する画素との差分を求める。すなわち、
2002067589.tif 000022
により、差分値ｄ１〜ｄ７の各々の値を求める。
その差分絶対値の全てがある閾値より小さい場合、広域ローパスフィルタをかける。閾値は、上記で求めた最大値ｄｍａｘの値に応じて、そのブロック毎に決定する。また、ブロック境界に位置する画素については、ブロック内に位置する画素よりも大きな閾値とする。例えば、
2002067589.tif 000023
2002067589.tif 000024
とする。ここで、ＱＰはそのブロックが属する画像についての量子化値である。ＱＰ２、ＱＰ３の値は、上記の条件式によって定められる。
また、フィルタ係数は、
2002067589.tif 000025
とする。したがって、以上のフィルタ処理を式で表現すると、以下のようになる。すなわち、
2002067589.tif 000026
となる。
ここで、以上の処理を行う際に必要となるデータの記憶に関する処理について説明する。本例においては、第１の実施の形態と同様に、８画素×８画素の一時記憶ブロックを単位としてフィルタ処理を行うことが可能である。ただし、本例では、一時記憶ブロック内において、ブロック境界に区切られた各部分については、その部分が属するブロック毎に定まる閾値に基づいて上記処理が行われる。即ち、一時記憶ブロックの画素から得られる値のみでは、一時記憶ブロックについての上記処理が行えない。
そこで、上記処理を行うために、例えば、以下のような方法を用いる。
まず、一時記憶ブロック（８画素×８画素）をバッファに保持して処理を行っていく。このとき、一時記憶ブロックに含まれる各部分毎の差分最大値を算出する。
すると、８画素×８画素である各ブロックを区分した４画素×４画素の部分について、従前に処理された部分の差分最大値が算出されていくこととなる。
第８図は、処理対象のフレームにおける一時記憶ブロックと、差分最大値が算出された４画素×４画素の区分を示す図である。第８図において、ｈ１〜ｈ４は、一時記憶ブロックにおける４画素×４画素の部分を示し、黒丸点は、差分最大値が既に算出されている部分を示している。
そして、一時記憶ブロックに含まれる１つの部分（ｈ１〜ｈ４）を処理する際には、その部分が属するブロックにおける各部分の差分最大値のうち、最大のものを上述の最大値ｄｍａｘとして閾値を決定することにより、上記処理を行う。
ここで、一時記憶ブロックに含まれる各部分のうち、上側の２つの部分（ｈ１，ｈ２）については、従前の処理によって、その部分が属するブロックの全ての部分について差分最大値が算出されている。一方、下側の２つの部分（ｈ３，ｈ４）については、その部分が属するブロックは、未だ一時記憶ブロックとして全てが処理されてはいないことから、他の部分の差分最大値が得られていない。
そこで、第１の方法として、下側の２つの部分については、その部分が属するブロックにおいて、差分最大値が得られている部分の差分最大値のうち、最大のものを最大値ｄｍａｘとして閾値を決定する。即ち、ｈ３が属するブロックにおいては、ｈ３とその左隣の部分における差分最大値のうち大きいほうを最大値ｄｍａｘとし、ｈ４が属するブロックにおいては、ｈ４の差分最大値をして閾値を決定する。
また、第２の方法として、一時記憶ブロックの下側の２つの部分が含まれるブロックにおいて、それら２つの部分の直下の部分（４画素×４画素を２つ）を一時記憶ブロックに含めて先行して読み出し、一時記憶ブロックの処理に伴い、これらの部分の差分最大値を算出する。即ち、一時記憶ブロックを８画素×１２画素として記憶し、各部分の差分最大値を算出しつつ、上側８画素×８画素の部分について、フィルタ処理を行う。なお、第８図における○印は、先行して読み出され、差分最大値が算出された部分を示している。この場合、第１の方法より正確な閾値を得ることができる。
このように、第１あるいは第２の方法を用いることにより、フレーム全体を記憶することなく、一時記憶ブロックのみを記憶することで、上記処理を行うことができる。
以上の動作について、第９図を参照して説明する。
同図において、処理対象のブロックを構成する全画素のうち境界画素を含む少なくとも半分の画素について隣接画素間の差分値の最大値を求める（ステップＳ２０１）。この後、境界画素を含みその境界に対して直交して連続する、その境界を挟む片側Ｎ個の画素からなる２Ｎ個の画素について隣接画素間の差分値を求める（ステップＳ２０２）。
次に、ステップＳ２０２において求めた差分値を最大値に対応する閾値と比較してフィルタ処理を行うか判定する（ステップＳ２０３）。差分値全てが閾値より小であるときフィルタ処理を行う（ステップＳ２０４→Ｓ２０５）。
ステップＳ２０４において、差分値全てが閾値より小であることが成立していない場合、隣接する差分が所定閾値より小であるか判断する（ステップＳ２０４→Ｓ２０６）。隣接する差分が所定閾値より小である場合、フィルタ処理を行う（ステップＳ２０６→Ｓ２０７）。このフィルタ処理は、差分値の全てが所定閾値より小さい場合でなくても、部分的には小さい場合があるので、その場合に行うフィルタ処理である。ステップＳ２０６、Ｓ２０７においては、Ｖ２〜Ｖ７の片側３画素について、各々の隣接画素差分値を閾値と比較し、差分値が小さい場合に、１・２・１を係数とするフィルタ処理を行う。評価する範囲に大きなエッジが存在する場合のモスキートノイズは、このフィルタによって低減することができる。
一方、ステップＳ２０６において、隣接する差分が所定閾値より小でない場合、フィルタ処理を行わず、処理を終了する（ステップＳ２０６→Ｓ２０８）。
ところで、上記の判定では、第５図の場合と同様に輝度が緩やかに変化している場合でも、強いフィルタがかかってしまう。すなわち、同図に示されているように、画素配置Ｘ１〜Ｘ７について、上述したようにフィルタ処理を行うと、矢印Ｙで示されているようにＸ３，Ｘ４，Ｘ５の信号レベルが低下してしまう。このようなフィルタ処理は行わないようにしなければならない。
このため、ブロック境界をなす画素の輝度値と、その同じブロック内で１画素空けた２画素目の画素の輝度値との差分絶対値をとり、その値がある閾値より小さい場合に上記フィルタをかけるようにする。同図においては、ｘ３を空けてｘ２とｘ４とを参照し、ｘ６を空けてｘ５とｘ７とを参照する。つまり、
2002067589.tif 000027
を求め、（ｄ２１＜ＱＰ）＆（ｄ２２＜ＱＰ）の場合に上記のフィルタ処理を行う。
以上の動作について、第１０図を参照して説明する。
同図において、処理対象のブロックを構成する全画素のうち境界画素を含む少なくとも半分の画素について隣接画素間の差分値の最大値を求める（ステップＳ２０１）。この後、境界画素を含みその境界に対して直交して連続する、その境界を挟む片側Ｎ個の画素からなる２Ｎ個の画素について隣接画素間の差分値を求める（ステップＳ２０２）。
次に、ステップＳ２０２において求めた差分値を最大値に対応する閾値と比較してフィルタ処理を行うか判定する（ステップＳ２０３）。差分値全てが閾値より小である場合、さらに少なくとも１画素空けて隣接する画素同士の差分値を求める（ステップＳ２０４→Ｓ２０４ａ）。求めた差分値全てが閾値より小さい場合は、フィルタ処理を行う（ステップＳ２０４ｂ→Ｓ２０５）。
ステップＳ２０４又はＳ２０４ｂにおいて、求めた差分値のいずれかが閾値より大きい場合は、さらに隣接する差分が所定閾値より小であるか判断する（ステップＳ２０４→Ｓ２０６、ステップＳ２０４ｂ→Ｓ２０６）。隣接する差分が所定閾値より小であれば、フィルタ処理を行う（ステップＳ２０６→Ｓ２０７）。このフィルタ処理は、差分値の全てが所定閾値より小さい場合でなくても、部分的には小さい場合があるので、その場合に行うフィルタ処理である。ステップＳ２０６、Ｓ２０７においては、Ｖ２〜Ｖ７の片側３画素について、各々の隣接画素差分値を閾値と比較し、差分値が小さい場合に、１・２・１を係数とするフィルタ処理を行う。
一方、ステップＳ２０６において、隣接する差分が所定閾値より小でない場合、フィルタ処理を行わず、処理を終了する（ステップＳ２０６→Ｓ２０８）。
ところで、画像によっては、フィルタ処理を簡略化したい場合がある。上記のフィルタ処理では、輝度信号（Ｙ）、色差信号（Ｕ，Ｖ）それぞれについて処理していたが、輝度信号のみについてフィルタ処理を行えば充分な場合が多い。
（処理の軽量化）
また、以上の処理の処理量を軽減するため、以下の変形例が考えられる。フィルタ処理の閾値は、ブロック内のエッジの大きさに関係なく、量子化値に応じて決定する。フィルタ処理を行わない場合は、画素単位で、その画素の両側隣接画素との差分値の最大値（隣接差分最大値）ｄｍａｘにより、フィルタ処理を行うか判断をする。
隣接差分最大値の探索は、第１１図（ａ）に示されているように、１ラインおきとする。すなわち、第１１図（ａ）において、全ラインＬ１〜Ｌ８を探索対象とするのではなく、ラインについて間引きを行う。本例では、ラインＬ１，Ｌ３，Ｌ５，Ｌ７について同図中の右半分に位置している黒丸点の画素を探索対象とする。さらに、ラインＬ４について同図中の左半分に位置している黒丸点の画素を探索対象とする。そして、各ラインＬ１，Ｌ３，Ｌ５，Ｌ７について４画素間の差分値を求める。また、中央のラインＬ４については、ブロック境界Ｂから遠い方（図中の左半分）において、５画素間の差分値を求める。
以上により、ブロック内のほぼすべての方向におけるエッジを検出することが期待できる。第１１図（ｂ）において、同図中の黒丸点が差分検出に使用する画素（垂直方向のブロック境界フィルタの場合）である。このように、配置されている画素を探索対象とすれば、同図中の一点鎖線のように想定されるエッジを検出することができる。すなわち、同図（ｂ）においては、どの一点鎖線もいずれかの黒丸点を通っているので、いずれについてもエッジとして検出されることになる。なお、着目している境界の反対側については、上記と左右対称位置の黒丸点を探索対象とする。
（応用例）
さらに応用例として、以下の処理が考えられる。上記の隣接差分最大値を求める場合、第１１図に示されているような半ブロック内での最大値を求めるのではなく、ブロック全体について最大値を求めても良い。この方がより正確に処理を行える。
また、探索対象とするラインの間引き方は、多様であり、第１１図において黒丸点で示されているような、１行目のラインＬ１，３行目のラインＬ３，５行目のラインＬ５，７行目のラインＬ７、及び４行目のラインＬ４の探索に限らず、１行目のラインＬ１，３行目のラインＬ３，５行目のラインＬ５，８行目のラインＬ８、並びに２行目のラインＬ２及び７行目のラインＬ７の探索等でも良い。
さらに、探索対象のラインについて、ブロック右半分側の４画素及びブロック左半分の５画素を対象とする他、ブロック右半分側の５画素及びブロック左半分の４画素を対象としても良い。
閾値については、上述した例ではＱＰ２及びＱＰ３の２種類を設けて３つに場合分けしていたが、場合分けの数は任意である。ただし、閾値は量子化値との相関が強いので、量子化値ＱＰに基づいて決定するのが効果的である。
以上説明した画像処理システムにおいては、以下のような画像処理方法が実現されている。すなわち、画像圧縮における離散コサイン変換処理の処理単位であるブロックに属する画素についてフィルタ処理を行う画像処理方法であり、処理対象のブロックを構成する全画素のうち着目している着目画素を含む少なくとも半分の画素について隣接画素間の差分値の最大値を求める最大値検出ステップと、上記着目画素を含み上記ブロック同士の境界に対して直交して連続する片側Ｎ個（Ｎは、正の整数、以下同じ）の画素からなる２Ｎ個の画素について隣接画素間の差分値を求める差分値算出ステップと、上記差分値算出ステップにおいて求めた差分値を上記最大値に対応する閾値と比較してフィルタ処理を行うか判定する判定ステップと、上記判定ステップにおいてフィルタ処理を行うと判定された場合、上記着目画素とそれを挟む片側Ｍ個（Ｍは正の整数、かつ、Ｍ＜Ｎ、以下同じ）の画素とを用いてフィルタ処理を行うフィルタ処理ステップとを含む画像処理方法が実現されている。そして、上記差分値算出ステップにおいては、参照する２Ｎ個の画素のうち隣接する画素同士の差分をそれぞれ求め、上記判定ステップにおいては、上記差分値算出ステップにおいて求めた差分値全てが上記閾値より小であるとき上記フィルタ処理を行うと判定するか、あるいは参照する２Ｎ個の画素のうち少なくとも１画素空けて隣接する画素同士の差分をそれぞれ求め、上記判定ステップにおいては、上記差分値算出ステップにおいて求めた差分値全てが上記画像についての量子化値に基づいて定められた閾値より小であるとき上記フィルタ処理を行うと判定する。
また、上記判定ステップにおいては、上記最大値に応じて上記閾値の値を決定する。この場合、処理対象のブロック内に位置する画素についての閾値よりも、該ブロックの境界に位置する画素についての閾値を大とする。
なお、上記判定ステップにおいては、上記差分値全てが上記閾値より小であることが成立していない場合であっても、上記Ｍ画素各々の隣接画素差分値が所定閾値より小であるとき、上記フィルタ処理とは異なる所定のフィルタ処理を行うと判断する。
上記フィルタ処理ステップにおいては、上記着目画素及びそれを挟む複数の画素それぞれに所定係数を乗じ、さらに上記係数の合計値で除した値に応じて上記着目画素を修正する。上記最大値検出ステップにおける最大値の探索は、探索すべき画素について１ラインおきに行う。そして、上記フィルタ処理対象のブロックについて、水平方向のライン及び垂直方向のラインのいずれか一方についてのフィルタ処理を行った後、他方についてのフィルタ処理を行う。
また、第９図，第１０図に示されている動作を実現するためのプログラムを用意し、これによってコンピュータを制御すれば、上述と同様に画像処理を行うことができることは明白である。このプログラムは、第７図に示されていない半導体メモリ、磁気ディスク、光ディスク等の他、種々の記録媒体に記憶しておくことができる。
なお、以上は本システムによってモスキートノイズを除去する場合について説明したが、本システムはブロックノイズをも低減できることが発明者によって確認されている。本システムによるモスキートノイズ除去処理は、ブロックノイズ除去処理との親和性が良いので、ブロックノイズ除去処理を実現するシステムに本システムを追加することも簡単である。このため、ブロックノイズ除去処理を実現するシステムに対して本システムの機能の追加及び削除が簡単である。予め本システムのモスキートノイズ除去処理機能を設けておき、その除去処理機能のオンオフをユーザの要求に応じて指定するように構成しても良い。
産業上の利用の可能性
本発明は、境界画素を含み境界に対して直交して連続する該境界を挟む片側Ｎ個の画素からなる２Ｎ個の画素を参照し修正処理を行うか判定し、修正処理を行うと判定されたとき境界画素とそれを挟む片側Ｍ個の画素とを用いて修正処理を行うことにより、特にブロックノイズを軽減することができるという効果がある。
また、本発明は、処理対象のブロックを構成する全画素のうち着目している着目画素を含む少なくとも半分の画素について隣接画素間の差分値の最大値を求め、着目画素を含みブロック同士の境界に対して直交して連続する片側Ｎ個の画素からなる２Ｎ個の画素について隣接画素間の差分値を求め、この求めた差分値を上記最大値に対応する閾値と比較してフィルタ処理を行うか判定し、フィルタ処理を行うと判定された場合、上記着目画素とそれを挟む片側Ｍ個の画素とを用いてフィルタ処理を行うことにより、簡単な処理によってモスキートノイズを軽減できるという効果がある。
【図面の簡単な説明】
第１図は本発明による画像処理システムによる処理対象である、画像のブロックと参照する画素との位置関係を示す図である。第２図は本発明による画像処理システムの構成を示すブロック図である。第３図は一時記憶ブロックの概念を示す図である。第４図は第２図中の画像処理システムによるフィルタ処理の一例を示すフローチャートである。第５図は第２図中の画像処理システムにおいて、１画素空けて参照する場合を示す図である。第６図は第２図中の画像処理システムによるフィルタ処理の他の例を示すフローチャートである。第７図は本発明による画像処理システムの構成を示すブロック図である。第８図は処理対象のフレームにおける一時記憶ブロックと、差分最大値が算出された４画素×４画素の区分を示す図である。第９図は第７図中の画像処理システムによるフィルタ処理の一例を示すフローチャートである。第１０図は第７図中の画像処理システムによるフィルタ処理の他の例を示すフローチャートである。第１１図は最大値の検索範囲を示す図である。第１２図は従来の画像処理システムによるフィルタ処理を示す図である。第１３図は従来の画像処理システムにおいて参照する画素を示す図である。
【図１】
2002067589.tif 000028
【図２】
2002067589.tif 000029
【図３】
2002067589.tif 000030
【図４】
2002067589.tif 000031
【図５】
2002067589.tif 000032
【図６】
2002067589.tif 000033
【図７】
2002067589.tif 000034
【図８】
2002067589.tif 000035
【図９】
2002067589.tif 000036
【図１０】
2002067589.tif 000037
【図１１】
2002067589.tif 000038
【図１２】
2002067589.tif 000039
【図１３】
2002067589.tif 000040
【国際調査報告】
2002067589.tif 000041
2002067589.tif 000042
2002067589.tif 000043
2002067589.tif 000044