(57)【要約】【課題】エッジや小振幅のテクスチャを残しながら、画像のランダムノイズを低減する平滑化処理を、低演算コストで実現する。【解決手段】本発明の一実施形態に係る画像処理装置は、注目画素と複数の周辺画素とで構成される画素ブロックにおいて、注目画素と各周辺画素との画素値の差の絶対値を算出する絶対値算出手段と、算出した絶対値に応じて、注目画素と各周辺画素との画素値の加重平均を算出する加重平均算出手段と、加重平均によって算出した画素値に対して平滑化処理を行う平滑化手段とを有する。【選択図】図３
2019036821.tif 000002
【特許請求の範囲】
【請求項１】
注目画素と複数の周辺画素とで構成される画素ブロックにおいて、前記注目画素と各周辺画素との画素値の差の絶対値を算出する絶対値算出手段と、
前記算出した絶対値に応じて、前記注目画素と各周辺画素との画素値の加重平均を算出する加重平均算出手段と、
前記加重平均によって算出した画素値に対して平滑化処理を行う平滑化手段と
を有することを特徴とする画像処理装置。
【請求項２】
前記加重平均算出手段は、前記算出した絶対値を前記注目画素に対する重みとして用いて、前記画素値の加重平均を算出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記加重平均算出手段は、前記算出した絶対値が大きい画素については、前記注目画素の重みが大きくなるように前記画素値の加重平均を算出し、前記算出した絶対値が小さい画素については、前記注目画素の重みが小さくなるように前記画素値の加重平均を算出することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記絶対値算出手段は、前記算出した絶対値に対して正規化処理及びクリッピング処理を行うことを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記絶対値を算出する前に、複数のチャネルを有する入力画像に対して輝度色差系の色空間への色空間変換を行う色空間変換手段と、
前記平滑化処理の後に、前記平滑化処理された前記輝度色差系の色空間の輝度信号を用いて逆色空間変換を行う逆色空間変換手段と
をさらに有することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記平滑化手段は、ガウス分布または平均化の重み係数を使用して前記平滑化処理を行うことを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記絶対値算出手段は、入力画像に対するノイズ低減レベルに応じて、前記正規化処理における正規化値を変化させることを特徴とする請求項４に記載の画像処理装置。
【請求項８】
前記平滑化手段は、入力画像に対するノイズ低減レベルに応じて、前記平滑化処理に用いる重み係数を変化させることを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
前記入力画像に対して前記ノイズ低減レベルを設定する設定手段をさらに備えたことを特徴とする請求項７または８に記載の画像処理装置。
【請求項１０】
前記ノイズ低減レベルは、前記入力画像の属性に応じて切り替わることを特徴とする請求項７または８に記載の画像処理装置。
【請求項１１】
前記絶対値算出手段、前記加重平均算出手段、または、前記平滑化手段における除算の除数は、２のべき乗の値であることを特徴とする請求項１乃至１０のいずれか１項に記載の画像処理装置。
【請求項１２】
注目画素と複数の周辺画素とで構成される画素ブロックにおいて、前記注目画素と各周辺画素との画素値の差の絶対値を算出する絶対値算出工程と、
前記算出した絶対値に応じて、前記注目画素と各周辺画素との画素値の加重平均を算出する加重平均算出工程と、
前記加重平均によって算出した画素値に対して平滑化処理を行う平滑化工程と
を含むことを特徴とする画像処理方法。
【請求項１３】
コンピュータを、請求項１乃至１１のいずれか１項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ノイズ低減処理を行う画像処理装置、画像処理方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、画像に含まれるランダムノイズを低減するノイズ低減処理として、空間フィルタを用いた平滑化処理が知られている。かかる平滑化処理では、画像内のＮ×Ｎ領域の画素値と、Ｎ×Ｎ領域の重みテーブル（すなわち、空間フィルタ）との積和演算が行われる。この重みテーブルとしてガウス分布や平均化の重みテーブルを用いることで、注目画素の画素値が、その領域内の画素の画素値の重み付平均値に補正され、画像に混入したランダムノイズが平滑化され、ノイズが低減される。
【０００３】
上記ガウス分布や平均化の重みテーブルを用いた場合、画像のエッジがぼやけ、画像のディテールが損なわれてしまう点が問題となるが、その問題点を考慮したノイズ低減処理として、バイラテラルフィルタやε（イプシロン）フィルタを用いた処理がある。これらのフィルタを用いた平滑化処理では、注目画素の画素値とＮ×Ｎ領域内の各画素値との類似性を考慮し、注目画素の画素値とＮ×Ｎ領域内の各画素値との差分に応じてフィルタの効果を変化させることで、エッジを残しながら平滑化を行っている。
【０００４】
例えば、上記バイラテラルフィルタを用いた場合、注目画素の画素値とＮ×Ｎ領域内の画素値との差に応じた重みを空間フィルタの重みテーブルに乗じることで重みテーブルを補正した後、平滑化処理を行う。こうすることで、注目画素との差が大きい画素の重みは小さく、注目画素との差が小さい画素の重みは大きくして、エッジを残しながらランダムノイズを低減している。
【０００５】
同様に、上記εフィルタを用いた場合、注目画素の画素値とＮ×Ｎ領域内の各画素値との差分を算出し、その差分が定数ε以上である画素を、空間フィルタの重みテーブルの対象から外すことで、エッジを残しながらランダムノイズを低減している。
【０００６】
更に、注目画素の画素値が大きくなるにつれてノイズの標準偏差が増加することに注目し、画素値に応じてεフィルタにおける定数εを変化させ、過剰補正や補正不足になる事を抑制する技術も開示されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−１２４９７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述したようなフィルタを用いた平滑化処理にも、それぞれ課題がある。
【０００９】
バイラテラルフィルタを用いた場合、処理が複雑になり、特に実時間性を求められるような状況においては良いパフォーマンスを得られないおそれがある。具体的には、バイラテラルフィルタを用いた場合、空間フィルタの重みテーブルを画素毎に動的に変化させるため、重み付平均を求める際の除数が画素によって動的に変化し、特にハードウェア回路で実装する場合、回路が複雑になってしまう。すなわち、演算コストが高くなってしまう。
【００１０】
また、εフィルタを用いた場合、注目画素との画素値の差分が定数εの範囲内にあるすべての画素が平滑化されるため、その範囲内にある小振幅のテクスチャをも平滑化してしまう。また、定数εを少しでも超えた範囲のテクスチャは、平滑化の対象から外れてしまうため、画質の非連続性が生じてしまう。特許文献１のように、定数εを画素値に応じて変化させた場合も同様である。
【００１１】
本発明は、このような問題に鑑みてなされたものであり、その目的とするところは、エッジや小振幅のテクスチャを残しながら、画像のランダムノイズを低減する平滑化処理を、低演算コストで実現することにある。
【課題を解決するための手段】
【００１２】
本発明の一実施形態に係る画像処理装置は、注目画素と複数の周辺画素とで構成される画素ブロックにおいて、前記注目画素と各周辺画素との画素値の差の絶対値を算出する絶対値算出手段と、前記算出した絶対値に応じて、前記注目画素と各周辺画素との画素値の加重平均を算出する加重平均算出手段と、前記加重平均によって算出した画素値に対して平滑化処理を行う平滑化手段とを有する。
【発明の効果】
【００１３】
本発明によると、エッジや小振幅のテクスチャを残しながら画像のランダムノイズを低減する平滑化処理を、低演算コストで実現することが可能になる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施形態に係る画像形成装置の概略構成を示すブロック図である。
【図２】本発明の一実施形態に係る画像形成装置の概観図である。
【図３】本発明の一実施形態に係るノイズ低減処理のフロー図である。
【図４】本発明の一実施形態に係るウィンドウの注目画素とその周辺画素を示す図である。
【図５】本発明の一実施形態に係るウィンドウの注目画素とその周辺画素の処理結果を示す図である。
【図６】本発明の一実施形態に係るノイズ低減処理結果の信号変化の比較を示す図である。
【図７】本発明の一実施形態に係るUI部を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明を実施するための形態について、図面を用いて詳細に説明する。なお、複数の図面における同一の符号は、同一物を示す。
【００１６】
［第１の実施形態］
［画像形成装置の構成］
図１は、第１の実施形態における画像形成装置の構成を示すブロック図である。
【００１７】
図１に示すように、画像形成装置は、画像読取部101、画像処理部102、記憶部103、CPU104、画像出力部105、UI（ユーザーインターフェース）部106、および送受信部107を備える。なお、画像形成装置は、画像データを管理するサーバ、プリントの実行を指示するパーソナルコンピュータ（PC）などに、ネットワークなどを介して接続可能である。
【００１８】
画像読取部101は、原稿の画像を読み取り、画像データを出力する。
【００１９】
画像処理部102は、画像読取部101から出力される画像データや、送受信部107等より外部から入力される画像データを含む印刷情報を中間情報（以下、オブジェクトと呼ぶ）に変換し、記憶部103のオブジェクトバッファに格納する。この格納時、画像データが含まれるものに対してはJPEG等の非可逆の圧縮処理を行う。さらに、画像処理部102は、バッファしたオブジェクトに基づきビットマップデータを生成し、記憶部103に格納する。その際、色変換処理や、ノイズ低減処理等を行う。詳細に関しては後述する。
【００２０】
記憶部103は、ROM、RAM、ハードディスク(HD)などから構成される。ROMは、CPU104が実行する各種の制御プログラムや画像処理プログラムを格納する。RAMは、CPU104がデータや各種情報を格納する参照領域や作業領域として用いられる。また、RAMとHDは、上記のオブジェクトバッファの記憶などに用いられる。また、画像処理に必要な処理パラメータも併せて記憶しておく。
【００２１】
このRAMとHD上で画像データを蓄積し、ページのソートや、ソートされた複数ページにわたる原稿を蓄積し、複数部プリント出力を行う。
【００２２】
画像出力部105は、記録紙などの記録媒体にカラー画像を形成して出力する。
【００２３】
UI部106は、画像処理部102での画像処理の種類やレベル調整等を装置へ指示するための操作を行う。例えば、前述のノイズ低減処理の調整量等の設定を行う。
【００２４】
送受信部107は、画像形成装置の外部からプリント用の画像データを受け取り、記憶部103への保存や画像出力部105への出力を行う。また、記憶部103内に蓄積されている画像データを画像形成装置の外部へ送信する。
【００２５】
［装置概観］
図２は、本実施形態における画像形成装置の概観図である。
【００２６】
画像読取部101において、原稿台ガラス203および原稿圧板202の間に画像を読み取る原稿204が置かれ、原稿204はランプ205の光に照射される。原稿204からの反射光は、ミラー206、207に導かれ、レンズ208によって3ラインセンサ210上に像が結ばれる。なお、レンズ208には赤外カットフィルタ231が設けられている。図示しないモータにより、ミラー206とランプ205を含むミラーユニットを速度Vで、ミラー207を含むミラーユニットを速度V/2で矢印の方向に移動する。つまり、3ラインセンサ210の電気的走査方向（主走査方向）に対して垂直方向（副走査方向）にミラーユニットが移動し、原稿204の全面を走査する。
【００２７】
3ラインのCCDからなる3ラインセンサ210は、入力される光情報を色分解して、フルカラー情報レッドR、グリーンGおよびブルーBの各色成分を読み取り、その色成分信号を画像処理部102へ送る。なお、3ラインセンサ210を構成するCCDはそれぞれ5000画素分の受光素子を有し、原稿台ガラス203に載置可能な原稿の最大サイズであるA3サイズの原稿の短手方向(297mm)を600dpiの解像度で読み取ることができる。
【００２８】
標準白色板211は、3ラインセンサ210の各CCD210-1〜210-3によって読み取ったデータを補正するためのものである。標準白色板211は、可視光でほぼ均一の反射特性を示す白色である。
【００２９】
画像処理部102は、3ラインセンサ210や送受信部107から入力される画像信号を電気的に処理し、画像のノイズ除去等画像処理を行った後、シアンC、マゼンタM、イエローYおよびブラックKの各色成分信号を生成する。画像処理部102は、生成したCMYKの色成分信号を画像出力部105に送る。このとき出力される画像はディザなどのハーフトーン処理が行われたCMYKの画像となっている。
【００３０】
画像出力部105において、画像読取部101から送られてくるC、M、YまたはKの画像信号は、レーザードライバ212へ送られる。レーザードライバ212は、入力される画像信号に応じて半導体レーザー素子213を変調駆動する。半導体レーザー素子213から出力されるレーザビームは、ポリゴンミラー214、f-θレンズ215およびミラー216を介して感光ドラム217を走査し、感光ドラム217上に静電潜像を形成する。
【００３１】
現像器は、マゼンタ現像器219、シアン現像器220、イエロー現像器221およびブラック現像器222から構成される。四つの現像器が交互に感光ドラム217に接することで、感光ドラム217上に形成された静電潜像を対応する色のトナーで現像してトナー像を形成する。記録紙カセット225から供給される記録紙は、転写ドラム223に巻き付けられ、感光ドラム217上のトナー像が記録紙に転写される。
【００３２】
このようにしてC、M、YおよびKの四色のトナー像が順次転写された記録紙は、定着ユニット226を通過することで、トナー像が定着された後、装置外へ排出される。
【００３３】
なお、図２では、感光ドラム上にトナー像を形成して記録紙に転写する電子写真方式の画像形成装置を示したが、本発明は、インクジェット方式などその他の方式の画像形成装置にも適用可能である。
【００３４】
［ノイズ低減処理］
次に、図３のフロー図を参照して、画像処理部102における画像のノイズ低減処理に関して詳細に説明する。フロー図に示される処理は、CPU104からの命令に基づいて画像処理部102により実行される。すなわち、画像処理部102は画像処理装置として機能する。また、図３の処理フローは、画像処理方法を示す。
【００３５】
入力画像は、例として、ランダムなノイズ成分を含むRed、Green、Blueの3色で構成されたRGB画像とする。すなわち、入力画像は、複数のチャネルを有する。画像読取部101や送受信部107等より外部から入力される画像データには、ランダムノイズが含まれていることがある。また、記憶部103へのバッファリングにもJPEG等の非可逆圧縮を用いる場合があり、それに起因するノイズが重畳され得る。本実施形態の説明においては、このようなRGB画像が入力されることを想定している。RGB画像のそれぞれの信号値は、例えば8bitの信号であれば、0〜255の値を取りうる。以下の説明では、この信号値を画素値と呼ぶ。ここで説明する処理は、RGBの3つの信号のそれぞれに対して独立に施されるが、説明を簡略化するため、ここでは、特定の1色、例えばRedを例として説明する。
【００３６】
まず、ステップS301で、画像処理部102は、Redの信号に対して所定サイズのウィンドウを切り出す。本実施形態では、所定サイズのウィンドウは、５×５画素のウィンドウとする。また、ウィンドウとは、注目画素と複数の周辺画素とで構成される画素ブロックである。
【００３７】
次に、ステップS302で、画像処理部102は、切り出したウィンドウの各画素の画素値について、注目画素との差の絶対値を算出する。すなわち、画像処理部102は、絶対値算出手段として機能する。以下、ステップS302における処理を、差分算出処理とも呼ぶ。
【００３８】
ここで、図４(a)、(b)を用いて、差分算出処理について説明する。図４(a)のpix(x,y)は、ステップS301で切り出されたウィンドウ内のそれぞれの座標での画素値を示す。pix(2,2)が、このウィンドウの中心に位置する注目画素の画素値である。画像処理部102は、pix(0,0)とpix(2,2)との差の絶対値を算出し、dif(0,0)として出力する。この処理を、注目画素を除くすべての周辺画素に対して行い、各画素における注目画素との画素値の差の絶対値dif(x,y)を求める。求めた結果を、図４(b)に示す。なお、画素値の差の絶対値は、画素値が8bitの信号であれば0〜255までの値を取りうるが、本実施形態では、この絶対値に対して正規化及びクリッピング処理を行い、値の範囲を0〜16に縮退させる。具体的には、以下の式(1)を用いて、画素値の差の絶対値を算出し、正規化処理及びクリッピング処理を行う。
【００３９】
【数１】
2019036821.tif 000003
if(dif(x,y) > 16) then dif(x,y) = 16
【００４０】
式(1)は、画素値の差の絶対値を、除数8で除算する例を示している。最大で255となる差分を除数8で除算することで、dif(x,y)が取りうる値の範囲を0〜31に正規化している。除数8は、正規化値とも呼ぶ。さらに、クリッピング処理を行い、その値の内17〜31までの値をすべて16に丸めている。すなわち、クリッピング閾値が16である。つまり、この除数はパラメータとして、正規化と合わせ、クリッピングする差分の範囲を決定づけている。除数の値（すなわち、正規化値）を変更することで、ノイズ低減量を調整することが可能である。また、除数に2のべき乗の値（この例では8）を用いることで、除算をビットシフトに置き換え、演算コスト（ハードウェア回路であれば除算器）を抑制している。なお、正規化処理及びクリッピング処理は行わなくてもよい。
【００４１】
次に、ステップS303で、画像処理部102は、算出したdif(x,y)の値を用いて、pix(x,y)の値と注目画素の画素値pix(2,2)との線形結合による合成処理（加重平均）を行い、ウィンドウ内の各画素の画素値を変換する。すなわち、画像処理部102は、注目画素と各周辺画素との画素値の加重平均を算出する加重平均算出手段として機能する。変換後の画素値pix'(x,y)は、pix(x,y)、pix(2,2)、およびdif(x,y)から以下の式(2)を用いて算出することができる。
【００４２】
【数２】
2019036821.tif 000004
【００４３】
式(2)では、dif(x,y)が大きい、すなわち注目画素との差が大きい画素においては、pix(2,2)で表される注目画素の重みが大きくなる。逆に、dif(x,y)が小さい、すなわち注目画素との差が小さい画素では、pix(2,2)で表される注目画素の重みが小さくなる。このようにして求められたpix'(x,y)は、pix(2,2)に比較的値が近い画素値に置き換わることになる。また、式(2)からも、pix(x,y)が注目画素になった場合のpix'(2,2)に関しては、計算結果は必ずpix(2,2)になるため、pix'(2,2) = pix(2,2)となる。この結果を、図４(c)に示す。
【００４４】
この処理では、注目画素との差が大きい画素には、より注目画素の重みがかかる事により、画像のエッジ部において、注目画素の反対色が処理に影響する度合いが低くなる。その結果、pix'(x,y)は、エッジ成分が小さくなる。
【００４５】
図５に、変換処理による画素値の変化の具体例を示す。図５(a)は、白地に黒エッジを構成しているウィンドウの例を示し、黒い画素ほど画素値が低く、白い画素ほど画素値が高い。最も白い画素で、画素値は最大となる。図５(a)のような白地に黒エッジを構成するウィンドウにおいて、注目画素が白地側であれば、その反対色の黒エッジ側の画素値は処理に影響しにくくなる。具体的には、図５(a)に変換前の画素値pix(x,y)を示し、図５(b)に変換後の画素値pix'(x,y)を示している。注目画素pix(2,2)は、白地側の端部に位置している。この変換処理により、変換後の画素値pix'(x,y)において黒エッジ側の影響をウィンドウから除する事が出来、理想的には小振幅のランダムノイズのみのウィンドウに変換される。
【００４６】
また、式(2)の除数に2のべき乗の値（この例では16）を用いることで、除算をビットシフトに置き換え、演算コスト（ハードウェア回路であれば除算器）を抑制している。これは、先のステップS302で得られた注目画素との差の絶対値に対してdif(x,y)を8で正規化し、16でクリップしているために可能になっている。
【００４７】
次に、ステップS304で、画像処理部102は、変換後の画素値pix'(x,y)に対して平滑化フィルタの畳み込み処理を行う。以下、ステップS304における処理を、フィルタ演算処理とも呼ぶ。ここでは、以下の式(3)に示すように、図４(d)に示すフィルタの重み係数fil(x,y)の値と、図４(c)のpix'(x,y)の値を乗じ、それをウィンドウを構成する全画素に対して行い、そのすべてを加算することで出力outを決定する。なお、フィルタの重み係数fil(x,y)の値は、記憶部103に記憶されているものを読み込んで使用する。
【００４８】
【数３】
2019036821.tif 000005
【００４９】
具体的なフィルタの重み係数fil(x,y)の例として、以下のようなガウス分布の重み係数を用いる。
1         4         6         4        1
4        16        24        16        4
6        24        36        24        6
4        16        24        16        4
1         4         6         4        1  /256
【００５０】
このフィルタの重み係数も合計が256であり、2のべき乗の値となっている。したがって、先の合成処理と同様に、式(3)の除算をビットシフトで代用することが可能であるため、除算の演算コスト（ハードウェア回路であれば除算器）を抑制することができる。
【００５１】
また、このフィルタの重み係数は、上下左右に対称性を有する。すなわち、同じ値が繰り返し使用されているため、ウィンドウを構成する25画素の全てに対して乗算を行う必要は無く、計算の順序を変えることで乗算回数を減らすことが可能である。具体的には、fil(0,0)=fil(4,0)=fil(0,4)=fil(4,4)であるため、pix'(0,0)と同じ重み係数を乗じる画素は他に、pix'(4,0)、pix'(0,4)、pix'(4,4)となる。そのため、重み係数fil(0,0)を乗じる際に、以下の式(4)を式(5)のように変形することができる。
pix'(0,0)×fil(0,0) + pix'(4,0)×fil(4,0) + pix'(0,4)×fil(0,4) + pix'(4,4)×fil(4,4)      (4)
(pix'(0,0) + pix'(4,0) + pix'(0,4) + pix'(4,4))×fil(0,0)      (5)
【００５２】
したがって、乗算回数を1/4に減らすことが可能になり、演算コスト（ハードウェアであれば乗算器）を抑制することが可能になる。このフィルタの全ての重み係数は、以下の６種類に集約することができる。
fil(0,0)=fil(4,0)=fil(0,4)=fil(4,4)
fil(1,0)=fil(3,0)=fil(0,1)=fil(4,1)=fil(0,3)=fil(4,3)=fil(1,4)=fil(3,4)
fil(2,0)=fil(0,2)=fil(4,2)=fil(2,4)
fil(1,1)=fil(3,1)=fil(1,3)=fil(3,3)
fil(2,1)=fil(1,2)=fil(3,2)=fil(2,3)
fil(2,2)
【００５３】
この６種類の重み係数が、図４(d)にグレーのハッチングで示した部分の重み係数であり、上記式(3)は、以下の式(6)のように変形できる。
out = (
fil(0,0)×(pix'(0,0)+pix'(4,0)+pix'(0,4)+pix'(4,4)) + 
fil(1,0)×(pix'(1,0)+pix'(3,0)+pix'(0,1)+pix'(4,1)+pix'(0,3)+pix'(4,3)+pix'(1,4)+pix'(3,4)) + 
fil(2,0)×(pix'(2,0)+pix'(0,2)+pix'(4,2)+pix'(2,4)) +
fil(1,1)×(pix'(1,1)+pix'(3,1)+pix'(1,3)+pix'(3,3)) +
fil(2,1)×(pix'(2,1)+pix'(1,2)+pix'(3,2)+pix'(2,3)) +
fil(2,2)×(pix'(2,2)) ) /256                              (6)
【００５４】
乗算の回数も式(3)で示した全画素数に相当する25回から、式(6)で示した6回に抑えることが可能になる。これは、フィルタの重み係数が上下左右の対称性を持ちさえすれば可能な演算の変形であり、一般的なフィルタの重み係数であればこの対称性を持っている。
【００５５】
このフローを、画像を構成するすべての画素に対して適用し、さらにRed、Green、Blueのすべての信号に対して実施することで、エッジ成分や小振幅のテクスチャを保存しつつ画像に含まれるランダムノイズの低減処理が実現される。
【００５６】
図６は、本実施形態におけるノイズ低減処理結果の信号変化の比較を示す。図は、画像の信号変化の様子を示しており、画素値の断面図を表現している。横軸は画像の座標を、縦軸は画素値を示している。入力信号601は、図中右方向に向かって次第に画素値振幅が大きな波に変化している。代表的なεフィルタを適用した処理結果603は、座標位置604を境に、振幅605がεフィルタにおける閾値εを超えており、波形が大きく変化し、信号としては非連続になっている。すなわち、座標位置604までは大きく信号が平滑化され、座標位置604以降ではその平滑化効果が弱くなっている。これに対して、本実施形態での処理結果602は、ノイズ低減効果を維持しながら、信号変化は連続的に緩やかになっている。
【００５７】
なお、本実施形態では、Red、Green、Blueの3つの信号のすべてに対して上述した処理を行い、ノイズの低減されたRGB画像を生成する例を説明したが、より簡単にするために、図３の処理の前後に色空間変換処理を行う構成にしてもよい。
【００５８】
まず、画像処理部102は、前処理として以下の式(7)を用いて、RGB画像の各信号を輝度と色差系の色空間、ここではYCbCrの色空間へ変換する。すなわち、画像処理部102は、色空間変換手段として機能する。
【００５９】
【数４】
2019036821.tif 000006
【００６０】
次に、画像処理部102は、輝度信号Yに対して先のフローで説明したノイズ低減処理を施し、後処理として逆色空間変換処理を行い、YCbCr信号をRGB画像に戻す。すなわち、画像処理部102は、逆色空間変換手段として機能する。処理後の輝度信号をY'とすると、ノイズ低減処理後のRGB画像の各信号R'G'B'は、前処理で求めたCb/Cr信号を用いて、以下の式(8)で求めることができる。
【００６１】
【数５】
2019036821.tif 000007
【００６２】
また、ここでは色空間変換処理にYCbCr色空間を用いたが、輝度色差系の色空間であればLab等の他の色空間を用いてもよい。
【００６３】
また、Cyan、Magenta、Yellow、及びBlackで表現されたCMYK画像に対しても同様に処理することが可能である。
【００６４】
また、本実施形態でのフィルタ演算では、重み係数を6種類に集約できる例を説明したが、これに限るものではない。すなわち、上述した重み係数でもなお6回の乗算が必要になるので、より簡単にするために、重み係数の値が全て1/25であるフィルタ、すなわち25画素のpix'(x,y)の平均値を用いる平均化の重みテーブルを使用してもよい。また、フィルタ演算による畳み込みに限らず、pix'(x,y)に対してノイズを除去するマスク演算（例えば、メディアンフィルタ）等を行う事も可能である。
【００６５】
また、本実施形態では、ウィンドウのサイズを５×５画素のサイズとしたが、そのサイズに限定されるものではない。
【００６６】
［第２の実施形態］
上述した第１の実施形態では、予め定められたフィルタの重み係数や正規化値等のパラメータを用いてノイズ低減処理が行われるため、ノイズの低減量も決まっていた。しかしながら、入力画像の属性によって、そのノイズ量は異なっている。例えば、ノイズ成分の多いデジタルカメラの画像と、文字画像やベクトル描画されたようなグラフィック画像とでは、ノイズ量は異なる。また、入力画像の属性だけでなく、ユーザーの好みに応じてノイズ低減レベル（すなわち、ノイズ低減量）を切替えることができると、ノイズ低減処理の自由度が高まる。
【００６７】
そこで、本実施形態では、ユーザーが設定した設定値に応じてフィルタの重み係数や補正値（すなわち、パラメータ）を切り替える事で、ノイズ低減レベルを切り替える事を可能にする構成に関して説明する。なお、第１の実施形態と同様である画像形成装置の構成および装置概観、並びに重複する処理フローの説明は省略し、以下では、第１の実施形態と異なるステップS302の差分算出処理およびステップS304のフィルタ演算処理について説明する。
【００６８】
UI部106は、図７に示す様なUI700上でユーザーが行なった操作に従って、ノイズ低減レベルを変更する。UI700は、スライドバー701を有し、ユーザーがスライドバー701を右にずらすほどノイズ低減レベルを強くし、左にずらすほどノイズ低減レベルを弱くする様に指示される。上述した第１の実施形態を、スライドバー701がUI700の中心に位置する状態にあるものとし、この状態を、以降では標準状態と呼ぶ。UI部106によって設定されたノイズ低減レベルの設定値は、記憶部103が一時的に保持する。画像処理部102は、記憶部103に保持された設定値を参照し、ノイズ低減処理に用いるフィルタの重み係数やパラメータを変化させる。UI部106によって設定される設定値は、スライドバー701が標準状態から左に行くほどマイナスになり、右に行くほどプラスになる。図７に示したUI700は、プラスマイナス２の調整幅を有する。
【００６９】
本実施形態では、ステップS302で用いた差分算出時の除数や、ステップS304で用いた平滑化フィルタの重み係数を変更することで、ノイズ低減の度合い（すなわち、ノイズ低減レベル）を変更する。UI部106によって設定され、記憶部103に保持されているノイズ低減レベルの設定値に応じて、画像処理部102は、これらのパラメータを変更させる。
【００７０】
まず、ステップS302の差分算出処理でのパラメータの標準状態からの変化について説明する。画像処理部102は、ノイズ低減の効果を弱める場合、ステップS302における式(1)の除数（すなわち、正規化値）を、第１の実施形態で示した標準状態の８から、それより小さい値に変更する。例えば、以下の式(9)に示すように、除数を4に変更する。
【００７１】
【数６】
2019036821.tif 000008
【００７２】
こうすることで、dif(x,y)の取りうる値がより大きくなり、ステップS303で合成処理を行い、ウィンドウの画素値を変換する際に、注目画素pix(2,2)の重みが大きくなり、pix'(x,y)算出時の注目画素の置き換え量が大きくなる。すなわち、周辺画素のpix(x,y)の影響が小さくなるため、ノイズ低減量は小さくなり、ノイズ低減効果は弱まる。
【００７３】
一方、画像処理部102は、ノイズ低減の効果を強める場合、エッジの一部や小振幅のテクスチャも平滑化の対象となるように、ステップS302における式(1)の除数を標準状態の８から、それよりも大きい値、例えば16に変更する。そうすることで、dif(x,y)の取りうる値がより小さくなり、ステップS303での合成処理時の注目画素の重みが小さくなり、周辺画素の影響が大きくなる。その結果、平滑化の度合いが大きくなり、ノイズ低減効果は強まる。
【００７４】
なお、本実施形態においても、除数には2のべき乗の値を用いることで、演算コストを抑制している。
【００７５】
続いて、ステップS304のフィルタ演算処理での平滑化フィルタの重み係数の標準状態からの変化について説明する。画像処理部102は、ノイズ低減の効果を弱める場合、第１の実施形態で用いた標準状態のフィルタの重み係数と、注目画素がそのまま出力されるスルー出力の重み係数との補間演算によって、平滑化の度合いを弱めた重み係数を生成する。具体的には、以下に示すスルー出力の重み係数と、標準状態の重み係数との加重平均を算出し、新たな重み係数とする。
【００７６】
スルー出力の重み係数を以下に示す。
0        0        0        0        0
0        0        0        0        0
0        0      256        0        0
0        0        0        0        0
0        0        0        0        0      /256
【００７７】
第１の実施形態で用いた標準状態のフィルタの重み係数を以下に示す。
1        4        6        4        1
4       16       24       16        4
6       24       36       24        6
4       16       24       16        4
1        4        6        4        1      /256
【００７８】
画像処理部102は、上記スルー出力の重み係数と標準状態の重み係数とで、同座標の係数同士を、例えば2:1で重み付け演算（加重平均）して四捨五入し、以下の重み係数を得る。
0        1        2        1        0
1        5        8        5        1
2        8      183        8        2
1        5        8        5        1
0        1        2        1        0      /251
【００７９】
上記フィルタの重み係数の合計値は、計算時の整数への丸め誤差の影響で、256（すなわち、２のべき乗の値）にならないため、このままだと処理に除算が必要になってしまう。そこで、ビットシフトで畳み込み演算が行えるように、重み係数の合計値を256にするための調整値を、注目画素の重みに対してオフセットし（この例では、注目画素の重み183に対して調整値5を加算する）、以下の重み係数を得る。
0        1        2        1        0
1        5        8        5        1
2        8      188        8        2
1        5        8        5        1
0        1        2        1        0      /256
【００８０】
上記重み係数が、本実施形態において最もノイズ低減効果の弱い重み係数である。すなわち、この重み係数を、UI700のスライドバー701を最も左にスライドさせた時の係数とする。その次にノイズ低減効果の弱い係数は、重み付け演算の重みを1:2に変更して算出し、より第１の実施形態の標準状態に近づけた以下の重み係数とする。なお、以下の重み係数は、重み係数の合計値を256にするための調整値を注目画素の重みに対してオフセットした後の重み係数である。具体的には、重み付け演算後の注目画素の重み109に対して調整値5を減算することで、重み係数の合計値を256としている。
1        3        4        3        1 
3       11       16       11        3 
4       16      104       16        4 
3       11       16       11        3 
1        3        4        3        1      /256
【００８１】
次に、ノイズ低減の効果を最も強める場合に関して説明する。この場合、フィルタの重み係数としては、平滑化効果が最も高くなるように、全画素平均により近く、重み係数の合計値が256になる以下の重み係数を用いる。すなわち、以下の重み係数を、UI700のスライドバー701を最も右にスライドさせた場合に用いる重み係数とする。
10       10       10       10       10
10       10       11       10       10
10       11       12       11       10
10       10       11       10       10
10       10       10       10       10      /256
【００８２】
上記重み係数を用いると、平滑化が強くかかりノイズ低減効果は高くなる。その次にノイズ低減効果の高い係数は、第１の実施形態の標準状態の重み係数と、ノイズ低減効果の最も高い上記重み係数とを1:1で重み付け演算し、重み係数の合計値を256にするため中央部に調整値をオフセットした、以下の重み係数とする。なお、以下の重み係数は、重み付け演算後の注目画素の重み24に対して調整値4を減算することで、重み係数の合計値を256としている。
6        7        8        7        6
7       13       18       13        7
8       18       20       18        8
7       13       18       13        7
6        7        8        7        6      /256
【００８３】
上記重み係数を用いる事で、標準状態とノイズ低減効果の最も高い状態との中間の状態を作り出すことができる。画像処理部102は、ノイズ低減レベルに応じてこのようなフィルタの重み係数を使い分け、畳み込み処理を行う事で、ノイズ低減効果を変化させることができる。なお、第１の実施形態と同様に、算出されたフィルタの重み係数は上下左右の対称性を有しているので、畳み込み処理時の乗算回数を6回に減らす事は可能である。
【００８４】
以上説明したように、ステップS302で用いた差分算出時の除数および、ステップS304で用いた平滑化フィルタの重み係数を変更することで、入力画像に対するノイズ低減の程度を設定に応じて変化させることが可能になる。
【００８５】
また、本実施形態では、差分算出時の除数、及び平滑化フィルタの重み係数のいずれもUI700に応じて変化させる構成を例として説明したが、いずれかがUI700に連動して変化するだけでもノイズ低減効果を変化させることは可能である。例えば、フィルタの重み係数を固定したまま、差分算出時の除数のみを変更することで、ノイズ低減効果の強弱をつけることもできる。また、差分算出時の除数は固定したまま、ユーザー設定に応じたフィルタの重み係数を使用して平滑化処理を行うことで、ノイズ低減効果の強弱をつけることもできる。
【００８６】
なお、本実施形態では、UI700上で設定された設定値に応じてノイズ低減レベルを切り替える例を説明したが、冒頭で述べたように、入力画像の属性に応じてノイズ低減レベルを切り替えるようにしてもよい。
【００８７】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2019036821.tif 000009
【図２】
2019036821.tif 000010
【図３】
2019036821.tif 000011
【図４】
2019036821.tif 000012
【図５】
2019036821.tif 000013
【図６】
2019036821.tif 000014
【図７】
2019036821.tif 000015