(57)【要約】【課題】エッジ方向を用いた解像度変換において白抜けの防止を図る。【解決手段】画像処理装置は、画像の各画素についてエッジ方向を判定するエッジ方向判定部２２と、前記画像をより高解像度に解像度変換し、この解像度変換において解像度変換後の各画素に割り当てる画素値を、前記画像及び前記判定されたエッジ方向によって決定する解像度変換部と、前記解像度変換後の画像に白抜けが発生するか否かを判定する白抜け判定部２４と、前記白抜け判定部により白抜けが発生すると判定された画素について前記判定されたエッジ方向を、解像度変換後の各画素に均等に画素値を割り当てる割当順序が定められているエッジ方向に修正するエッジ方向修正部２５と、を備え、前記解像度変換部は、前記修正されたエッジ方向によって、解像度変換後の各画素に割り当てる画素値を決定する。【選択図】図３
2010062610.tif 000002
【特許請求の範囲】
【請求項１】
画像の各画素についてエッジ方向を判定するエッジ方向判定部と、
前記画像をより高解像度に解像度変換し、この解像度変換において解像度変換後の各画素に割り当てる画素値を、前記画像及び前記判定されたエッジ方向によって決定する解像度変換部と、
前記解像度変換後の画像に白抜けが発生するか否かを判定する白抜け判定部と、
前記白抜け判定部により白抜けが発生すると判定された画素について前記判定されたエッジ方向を、解像度変換後の各画素に均等に画素値を割り当てる割当順序が定められているエッジ方向に修正するエッジ方向修正部と、を備え、
前記解像度変換部は、前記修正されたエッジ方向によって、解像度変換後の各画素に割り当てる画素値を決定する画像処理装置。
【請求項２】
前記エッジ方向は、少なくとも上、下、左、右、中央の方向を含み、
前記解像度変換部は、前記エッジ方向が上、下、左又は右の何れかと判定された画素については、その画素値を用いて、当該画素の解像度変換後の複数の画素のうちエッジ方向に位置する画素ほど画素値が大きくなるように各画素の画素値を決定し、前記エッジ方向が中央と判定された画素については、その画素値を用いて、当該画素の解像度変換後の各画素の画素値が均等となるように画素値を決定し、
前記エッジ方向修正部は、白抜けが発生すると判定された画素について前記判定されたエッジ方向を中央に修正する請求項１に記載の画像処理装置。
【請求項３】
前記画像の各画素について細線構造に該当するか否かを判定する細線構造判定部を備え、
前記白抜け判定部は、前記細線構造判定部により細線構造に該当すると判定された画素について白抜けが発生すると判定する請求項１又は２に記載の画像処理装置。
【請求項４】
前記白抜け判定部は、複数色の画像のうち何れかの色の画像において処理対象とする注目画素が白色でないとともに、注目画素の周辺画素が何れの色の画像においても白色でない場合、当該注目画素について白抜けが発生すると判定する請求項１又は２に記載の画像処理装置。
【請求項５】
前記エッジ方向は、左上、左下、右上、右下の斜め方向を含み、
前記解像度変換部は、前記エッジ方向が前記斜め方向であると判定された画素については、当該画素の画素値より小さい画素値を、解像度変換後の各画素に配分するように各画素の画素値を決定する請求項１〜４の何れか一項に記載の画像処理装置。
【請求項６】
画像に輪郭処理を施す輪郭処理部を備え、
前記解像度変換部は、前記輪郭処理された画像を解像度変換する請求項１〜５の何れか一項に記載の画像処理装置。
【請求項７】
画像の各画素についてエッジ方向を判定する工程と、
前記画像がより高解像度に解像度変換され、この解像度変換において解像度変換後の各画素に割り当てる画素値が、前記画像及び前記判定されたエッジ方向によって決定されるにあたり、当該解像度変換後の画像に白抜けが発生するか否かを判定する工程と、
白抜けが発生すると判定された画素について前記判定されたエッジ方向を、解像度変換後の各画素に均等に画素値を割り当てる割当順序が定められているエッジ方向に修正する工程と、
前記画像をより高解像度に解像度変換し、この解像度変換において解像度変換後の各画素に割り当てる画素値を、前記画像及び前記修正されたエッジ方向によって決定する工程と、
を含む画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理方法に関する。
【背景技術】
【０００２】
電子写真方式のエンジンを搭載したプリンタで、１２００dpiの高解像度能を持つプリンタの中には、６００dpiの低解像度の多値画像を一旦２値化し、エッジ領域にのみスムージング処理を施した後、解像度変換を行って１２００dpiの画像を出力するものがある。このようなプリンタでは、色変換や空間フィルタ処理等、計算コストのかかる処理をなるべく６００dpiの低解像度で行い、１２００dpiの高解像度に解像度変換した後に施す画像処理を少なくしている。これにより、回路規模を抑えた構成で画像処理の高速化を実現することができ、安価なプリンタを提供することが可能となる。
【０００３】
プリンタで行われる画像処理の一つとして、上記スムージング（アンチエリアシング）処理が挙げられる。これは通常、２値画像の主に文字や線画部分について行われる処理である。例えば、注目画素の周辺Ｍ×Ｎ画素領域を対象として、入力された２値画像からテンプレートマッチングによりジャギーが検出されると、注目画素の２値データを多値データに変換し、当該多値データに応じて１画素内のレーザ露光量を制御するスムージング処理方法が開示されている（例えば、特許文献１、２）。レーザ露光量の制御によりエッジのざらつきが滑らかに補正される。
【０００４】
また、印字する１画素内をさらに細かくサブピクセルに分割しておき、テンプレートによってジャギーが検出された場合にはエッジが平滑化されるように各サブピクセルのドット出力のオン／オフを制御する技術も開示されている（例えば、特許文献３、４参照）。
【０００５】
スムージングは２値画像だけではなく、多値画像の中の２値で表された文字や線画部分に対しても行われる。このとき、例えば文字周辺の背景の色が白ではない場合に、上記の技術を適用すると、文字と背景の間に隙間ができることがあった。このような現象は白抜けと呼ばれる。白抜けの問題に対しては、背景の画素値と注目画素の画素値との間で線形補間演算を行うことによって、隙間を無くす技術が開示されている（例えば、特許文献５参照）。これによって、背景が中間調の濃度である文字に対してもスムージングを施すことが可能となった。
【０００６】
また、解像度変換は画像の画素数を変える処理であるが、例えば６００dpiの画素を１２００dpiの解像度に変換する場合は、１画素で表現していたものを４画素で表現することになる。最も単純に行うのであれば、変換された４画素は一様に解像度変換前の１画素の画素値をそのまま引き継げばよい。しかしながら、これでは解像度変換しても画質は向上しない。そこで、４画素の画素値を一様ではなく、異ならせることによって見た目の解像度を上げることが行われている。特にエッジにおいては解像度が上がった分だけ品質の向上が期待されるので、パターンマッチングによって、或いは最近接内挿法等によってエッジのジャギーを除去する処理が行われている（例えば、特許文献６参照）。
【０００７】
ところで、上述のスムージング処理によって輪郭がぼけている場合には、パターンマッチングを用いた解像度変換を行いにくいという場合がある。上記特許文献６に記載の方法において、パターンマッチングは３×３画素についてのドット出力のオン／オフの信号に対して行うので、中間調のようにオン（最大値でドット出力）でもオフ（ドット非出力）でもない画素値が含まれる場合にはマッチングせず、うまく解像度変換ができないことがあり得るのである。
【０００８】
そこで、解像度変換の他の方法として、エッジ方向によって解像度変換を行う技術が開示されている（例えば、特許文献７参照）。
【特許文献１】米国特許第４８４７６４１号
【特許文献２】特開平２−１１２９６６号公報
【特許文献３】米国特許第４４３７１２２号
【特許文献４】特開平４−３４１０５９号公報
【特許文献５】特開２０００−１５６７８４号公報
【特許文献６】特開平７−２６２３６１号公報
【特許文献７】特開２００６−５４８９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、エッジ方向だけで解像度変換を行うことにおいては、あまり良い結果が得られない場合がある。輪郭処理を６００dpiの解像度で行い、その後、解像度変換を行って１２００dpiに変換する場合を例に説明すると、まず６００dpiの画像はスムージング等の輪郭処理が施される。スムージング等の輪郭処理では、文字等の輪郭及びその周辺の画素値を変更することによって、文字等の輪郭を強調したりぼかしたりする。特に、スムージングの場合は輪郭に沿って中間調の画素が発生することになる。輪郭処理ではエッジが認識されているので、輪郭処理の際にエッジの画素値とエッジ方向とが求められる。
【００１０】
その後、輪郭処理された画像の解像度変換が行われる。解像度変換では６００dpiの１画素が１２００dpiの４画素に変換されるが、変換された４画素にはエッジ方向によって画素値が割り当てられる。図２１にエッジ方向と画素値の割当パターン例をいくつか示す。図２１に示すように、解像度変換後の４画素のうちエッジ方向に位置する画素から先に大きい画素値が割り当てられるよう割当順序が定められており、この割当順序に従って画素値が割り当てられる。例えば、図２１に示すパターン３のように、エッジ方向が右上であれば解像度変換後の４画素のうち右上に位置する画素ほど大きな画素値が割り当てられ、右上方向の濃度勾配が生じることとなる。
【００１１】
このような解像度変換が画像に対して行われた具体例を例示する。図２２（ａ）は濃度５０％のオブジェクトｏｂ１１を含む画像を示している。また、図２２（ｂ）は、図２２（ａ）の画像に対し、エッジ方向を用いた解像度変換を行った画像を示している。
図２２（ａ）においてオブジェクトｏｂ１１の斜め部分のエッジである画素ｅ１のエッジ方向は右下方向である。このエッジ方向と画素ｅ１の画素値からすれば、画素ｅ１の割当パターンは図２１のパターン３に該当する。よって、画素ｅ１については解像度変換後の４画素のうち、右下方向に位置する画素に濃度１００％の画素値が割り当てられ、当該画素と対向する位置にある画素は濃度０％の画素値が割り当てられる。一方、オブジェクトｏｂ１１の直線部分のエッジである画素ｅ２はエッジ方向が下方向である。このエッジ方向と画素値から画素ｅ２の割当パターンは、図２１に示すパターン４に該当する。よって、画素ｅ２の解像度変換後の４画素については、下方向に位置する２画素に濃度１００％の画素値が割り当てられ、残る２画素に濃度０％の画素値が割り当てられる。
【００１２】
このように、エッジ方向を用いた解像度変換では、斜めや上等のエッジ方向をもつ場合には４画素のうちの１画素又は２画素の画素値を濃度０％にしているため、図２２（ｂ）に示すように解像度変換によってオブジェクトのサイズが小さくなってしまう。また、斜めのエッジ部分ではエッジ内側の画素の画素値が大きくなり、画質が劣化している。
【００１３】
さらに、図２３（ａ）に示すように、このオブジェクトｏｂ１１が濃度５０％のシアンの背景のオブジェクトｏｂ２１に接している場合を考える。この場合、オブジェクトｏｂ１１のみエッジ方向を用いた解像度変換を行うと、図２３（ｂ）に示すように背景のオブジェクトｏｂ２１との間に画素値が０％の画素が存在するため、白抜けが発生することとなる。
また、背景のオブジェクトｏｂ２１もエッジを有し、エッジ方向を用いた解像度変換が行われるため、図２３（ｃ）に示すように背景のオブジェクトｏｂ２１側のエッジにも画素値０％の画素が発生する。その結果、白抜けの部分が広がることとなる。
【００１４】
本発明の課題は、エッジ方向を用いた解像度変換において白抜けの防止を図ることである。
【課題を解決するための手段】
【００１５】
請求項１に記載の発明によれば、
画像の各画素についてエッジ方向を判定するエッジ方向判定部と、
前記画像をより高解像度に解像度変換し、この解像度変換において解像度変換後の各画素に割り当てる画素値を、前記画像及び前記判定されたエッジ方向によって決定する解像度変換部と、
前記解像度変換後の画像に白抜けが発生するか否かを判定する白抜け判定部と、
前記白抜け判定部により白抜けが発生すると判定された画素について前記判定されたエッジ方向を、解像度変換後の各画素に均等に画素値を割り当てる割当順序が定められているエッジ方向に修正するエッジ方向修正部と、を備え、
前記解像度変換部は、前記修正されたエッジ方向によって、解像度変換後の各画素に割り当てる画素値を決定する画像処理装置が提供される。
【００１６】
請求項２に記載の発明によれば、
前記エッジ方向は、少なくとも上、下、左、右、中央の方向を含み、
前記解像度変換部は、前記エッジ方向が上、下、左又は右の何れかと判定された画素については、その画素値を用いて、当該画素の解像度変換後の複数の画素のうちエッジ方向に位置する画素ほど画素値が大きくなるように各画素の画素値を決定し、前記エッジ方向が中央と判定された画素については、その画素値を用いて、当該画素の解像度変換後の各画素の画素値が均等となるように画素値を決定し、
前記エッジ方向修正部は、白抜けが発生すると判定された画素について前記判定されたエッジ方向を中央に修正する請求項１に記載の画像処理装置が提供される。
【００１７】
請求項３に記載の発明によれば、
前記画像の各画素について細線構造に該当するか否かを判定する細線構造判定部を備え、
前記白抜け判定部は、前記細線構造判定部により細線構造に該当すると判定された画素について白抜けが発生すると判定する請求項１又は２に記載の画像処理装置が提供される。
【００１８】
請求項４に記載の発明によれば、
前記白抜け判定部は、複数色の画像のうち何れかの色の画像において処理対象とする注目画素が白色でないとともに、注目画素の周辺画素が何れの色の画像においても白色でない場合、当該注目画素について白抜けが発生すると判定する請求項１又は２に記載の画像処理装置が提供される。
【００１９】
請求項５に記載の発明によれば、
前記エッジ方向は、左上、左下、右上、右下の斜め方向を含み、
前記解像度変換部は、前記エッジ方向が前記斜め方向であると判定された画素については、当該画素の画素値より小さい画素値を、解像度変換後の各画素に配分するように各画素の画素値を決定する請求項１〜４の何れか一項に記載の画像処理装置が提供される。
【００２０】
請求項６に記載の発明によれば、
画像に輪郭処理を施す輪郭処理部を備え、
前記解像度変換部は、前記輪郭処理された画像を解像度変換する請求項１〜５の何れか一項に記載の画像処理装置が提供される。
【００２１】
請求項７に記載の発明によれば、
画像の各画素についてエッジ方向を判定する工程と、
前記画像がより高解像度に解像度変換され、この解像度変換において解像度変換後の各画素に割り当てる画素値が、前記画像及び前記判定されたエッジ方向によって決定されるにあたり、当該解像度変換後の画像に白抜けが発生するか否かを判定する工程と、
白抜けが発生すると判定された画素について前記判定されたエッジ方向を、解像度変換後の各画素に均等に画素値を割り当てる割当順序が定められているエッジ方向に修正する工程と、
前記画像をより高解像度に解像度変換し、この解像度変換において解像度変換後の各画素に割り当てる画素値を、前記画像及び前記修正されたエッジ方向によって決定する工程と、
を含む画像処理方法が提供される。
【発明の効果】
【００２２】
本発明によれば、エッジ方向を用いた解像度変換において白抜けが発生すると判定された画素については、その解像度変換後の各画素に画素値が均等に割り当てられるように、エッジ方向が修正される。よって、白抜けが発生すると判定された画素においては解像度変換によって濃度０％の画素値が発生せず、白抜けの発生を防ぐことができる。
【発明を実施するための最良の形態】
【００２３】
以下、図を参照して、本発明の実施の形態について説明する。
本実施形態では、本発明をＭＦＰ（Multi Function Peripheral）に適用した例を説明する。ＭＦＰは、複写機能、印刷機能等の複数の機能を備えた複合型の画像形成装置である。
【００２４】
図１に、本実施形態に係るＭＦＰの機能的構成を示す。
ＭＦＰ１００は、外部ＰＣ（パーソナルコンピュータ）２００と接続されており、当該外部ＰＣ２００から送信されたＰＤＬ（Page Description Language）形式のデータから画像データを生成して画像処理した後、印刷を行うことができる。
【００２５】
図１に示すように、ＭＦＰ１００は、コントローラ２０、画像処理部１０、制御部１１、読取部１２、操作部１３、表示部１４、記憶部１５、画像メモリ１６、印刷装置１７を備えて構成されている。
【００２６】
コントローラ２０は、ラスタライズ処理により画素毎の画像データを生成する。
例えば、外部ＰＣ２００において作成されたドキュメントのデータが、プリンタドライバソフトによってＰＤＬ形式に変換され、コントローラ２０に送信される。コントローラ２０はラスタライズ処理によって、送信されたＰＤＬデータに含まれるＰＤＬコマンドを解析し、描画すべき画像単位（これをオブジェクトという）毎に画素を割り当て、この割り当てた画素毎に画素値を設定した画像のデータを生成する。画像はＣ（シアン）、Ｍ（マジェンタ）、Ｙ（イエロー）、Ｋ（黒）の色毎に生成される。
なお、本実施形態ではコントローラ２０をＭＦＰ１００内に内蔵する構成を説明したが、コントローラ２０をＭＦＰ１００外部に設ける構成であってもよい。
【００２７】
制御部１１は、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）等を備えて構成されている。制御部１１は、記憶部１５に記憶されている各種処理プログラムとの協働により、演算を行ったり、ＭＦＰ１００の各部を集中制御したりして各種処理を実行する。
【００２８】
読取部１２は、光学系やＣＣＤ（Charge Coupled Device）を有するスキャナを備え、原稿を光走査して画像信号（アナログ信号）を生成する。生成された画像信号は、図示しない処理部において各種補正処理が施された後、デジタル変換されて画像処理部１０に出力される。
【００２９】
操作部１３は、オペレータの操作指示を入力するためのものであり、各種キーや表示部１４と一体に構成されるタッチパネル等を備えて構成されている。操作部１３は、操作に応じた操作信号を生成して制御部１１に出力する。
表示部１４は、制御部１１の制御に従ってディスプレイ上に操作画面等を表示する。
記憶部１５は、各種処理プログラムの他、処理に必要なパラメータや設定データ等を記憶している。記憶部１５としては、ハードディスク等の不揮発性メモリを用いることができる。
画像メモリ１６は画像のデータを記憶するためのメモリである。画像メモリ１６としては、ＤＲＡＭ（Dynamic RAM）、ハードディスク等を用いることができる。
【００３０】
印刷装置１７は、画像処理部１０から入力される印刷用の画像に基づいて印刷を行う。印刷用の画像とは、コントローラ２０によって生成された画像に、画像処理部１０が画像処理を施して生成したものである。
印刷装置１７は、電子写真方式による印刷を行い、例えば給紙部、露光部、現像部、定着部等を含んで構成されている。印刷時には、画像のデータに基づいて露光部が感光ドラム上にレーザ光を照射して静電潜像を形成する。静電潜像は現像部により現像され観光ドラム上にはトナー像が形成される。トナー像の形成はＣ、Ｍ、Ｙ、Ｋの各色の画像について行われ、各色のトナー像は中間転写ベルト上に重ねて転写されてカラー像となる。カラー像は転写ローラ等によって給紙部から給紙された用紙上に転写され、定着部により定着処理が施される。
【００３１】
次に、画像処理部１０について説明する。
画像処理部１０は、コントローラ２０から入力される画像や、読取部１２から入力される画像に画像処理を施す。画像処理としては、例えば拡大縮小や階調補正処理等が挙げられる。また、読取部１２から入力された画像についてはＲＧＢをＹＭＣＫの色に変換する色変換処理が施される。また、画像処理部１０は解像度変換処理、階調補正処理、スクリーン処理等を施して印刷用の画像を生成する。
【００３２】
図２は、画像処理部１０のうち、印刷用の画像を生成する際に主に機能する構成部分を示す図である。図２に示すように、画像処理部１０は、輪郭処理部１、エッジ調整部２、解像度変換部３、スクリーン処理部４、セレクタ５を含んで構成されている。本実施形態では、図２に示す構成において、１画素×８bitからなる６００dpiの入力画像ＩＮを処理対象とし、４画素×４bitからなる１２００dpiの出力画像ＯＵＴを出力する例を説明する。入力画像ＩＮはＣ、Ｍ、Ｙ、Ｋの各色の画像である。
【００３３】
輪郭処理部１は、入力画像ＩＮ（１画素×８bit）に対し輪郭強調処理、細線化処理、スムージング処理（アンチエイリアス処理ともいう）等の輪郭処理を施し、処理画像ＯＵＴｏｌ（１画素×８bit）を生成する。輪郭強調処理は、入力画像ＩＮに含まれる文字や線画等のオブジェクトのエッジに該当する画素について画素値を大きくする等して、オブジェクトの輪郭を強調する処理である。逆に、細線化処理はエッジに該当する画素の画素値を小さくする等の調整を行う処理である。スムージング処理は入力画像ＩＮに含まれる文字や線画のオブジェクトのエッジ周辺に中間調の画素値を持つ画素を設ける処理である。オブジェクトのエッジであるかどうかは、エッジ調整部２から入力されるエッジ情報ＥＤにより判別することができる。
処理画像ＯＵＴｏｌは解像度変換部３、スクリーン処理部４にそれぞれ出力される。
【００３４】
次に、図３を参照してエッジ調整部２について説明する。
図３に示すように、エッジ調整部２は、エッジ抽出部２１、エッジ方向判定部２２、細線構造判定部２３、白抜け判定部２４、エッジ方向修正部２５を含んで構成されている。
【００３５】
エッジ抽出部２１は、入力画像ＩＮ（１画素×８bit）に含まれるオブジェクトのエッジを抽出し、画素毎にエッジであるか否かを示すエッジ情報ＥＤを設定する。エッジ情報ＥＤは輪郭処理部１、細線構造判定部２３にそれぞれ出力される。
まず、エッジ抽出部２１は入力画像ＩＮのうち、図４に示すように処理対象とする注目画素Ｘと注目画素Ｘに隣接する周辺画素ｐ０、ｐ１、ｐ２、ｐ３の画素値の差Ｅ０、Ｅ１、Ｅ２、Ｅ３を算出する。注目画素Ｘの画素値をＸ、周辺画素ｐ０、ｐ１、ｐ２、ｐ３の画素値をｐ０、ｐ１、ｐ２、ｐ３で表すと、Ｅ０〜Ｅ３は下記式で表される。
Ｅ０＝Ｘ−ｐ０
Ｅ１＝Ｘ−ｐ１
Ｅ２＝Ｘ−ｐ２
Ｅ３＝Ｘ−ｐ３
【００３６】
次に、エッジ抽出部２１はＥ０〜Ｅ３のうちの最大値を正のエッジ信号ＰＥＤとする。また、エッジ抽出部２１はＥ０〜Ｅ３の符号を反転させたものの中から最大値を求め、これを負のエッジ信号ＲＥＤとする。
ＰＥＤ、ＲＥＤは下記式により示される。なお、Ｍａｘ（）は、かっこ内の値のうち最大値を出力する関数を示す。
ＰＥＤ=Ｍａｘ（Ｅ０、Ｅ１、Ｅ２、Ｅ３）
ただし、ＰＥＤ＜ＲＥＤのときＰＥＤ＝０
ＲＥＤ=Ｍａｘ（−Ｅ０、−Ｅ１、−Ｅ２、−Ｅ３)）
ただし、ＲＥＤ＜ＰＥＤのときＲＥＤ＝０
【００３７】
このようにして求めたＥ０〜Ｅ３と、ＰＥＤ、ＲＥＤがエッジ強度である。エッジ抽出部２１は、Ｃ、Ｍ、Ｙ、Ｋの各色の画像の各画素についてエッジ強度を求める。
次に、エッジ抽出部２１は各色の画像について求めたＰＥＤ、ＲＥＤと、重み係数Ｗｃ、Ｗｍ、Ｗｙ、Ｗｋとを用いて、下記式によりＴＰＥＤ、ＴＲＥＤを求める。ＴＰＥＤ、ＴＲＥＤは０〜２５５の整数であり、Ｗｃ、Ｗｍ、Ｗｙ、Ｗｋはそれぞれ８bitの係数である。［ｃ］はシアン、［ｍ］はマジェンタ、［ｙ］はイエロー、［ｋ］は黒の色についての値であることを示す識別子である。
ＴＰＥＤ＝（ＰＥＤ[ｃ]×Ｗｃ＋ＰＥＤ[ｍ]×Ｗｍ＋ＰＥＤ[ｙ]×Ｗｙ＋ＰＥＤ[ｋ]×Ｗｋ）
ＴＲＥＤ＝（ＲＥＤ[ｃ]×Ｗｃ＋ＲＥＤ[ｍ]×Ｗｍ＋ＲＥＤ[ｙ]×Ｗｙ＋ＲＥＤ[ｋ]×Ｗｋ）
ただし、Ｗｃ＋Ｗｍ＋Ｗｙ＋Ｗｋ≦２５５である。
【００３８】
ＴＰＥＤ、ＴＲＥＤは、前景と背景のそれぞれのオブジェクトのエッジにおける、各色のエッジ強度ＲＥＤ、ＰＥＤを、比視感度に相当する係数Ｗｃ、Ｗｍ、Ｗｙ、Ｗｋで重み付けし足し合わせた値である。ＴＰＥＤ、ＴＲＥＤの大小関係を見ることによって注目画素Ｘと周辺画素ｐ０〜ｐ４とのどちらが高濃度側か、つまり前景か背景かを判定することができる。
エッジ抽出部２１は求めたＴＰＥＤ、ＴＲＥＤを比較し、ＴＰＥＤ＞ＴＲＥＤを満たす場合には前景のエッジであることを示すＥＤ＝１に設定し、満たさない場合には前景のエッジではないことを示すＥＤ＝０に設定する。
【００３９】
なお、視覚的な濃度差に応じた処理を行いたい場合には、重み付け係数Ｗｃ、Ｗｍ、Ｗｙ、Ｗｋに、比視感度に応じた数値を適宜設定すればよい。例えば、Ｙ（イエロー）は最大濃度であっても他の色に比べて視覚的な濃度差が得られないのに対し、Ｋ（黒）は最も視覚的な濃度差が得られる。よって、このような関係を反映し、例えばＷｃ＝８０、Ｗｍ＝３２、Ｗｙ＝１６、Ｗｋ＝１２７と設定することができる。
【００４０】
また、エッジ抽出の処理をより簡易化するため、ＴＰＥＤ、ＴＲＥＤを求めるまでもなく、ＰＥＤとＲＥＤの比較によってエッジか否かの判定を行うこととしてもよい。この場合、ＰＥＤ−ｆｂ＞ＲＥＤを満たせば、前景のエッジであるとして、エッジ抽出部２１はＥＤ＝１に設定する。満たさない場合には前景のエッジではないとして、エッジ抽出部２１はＥＤ＝０に設定する。ｆｂはＰＥＤとＲＥＤの差が小さい場合には前景か背景かの判断を行わないようにするための閾値である。
【００４１】
エッジ方向判定部２２は、入力画像ＩＮ（１画素×８bit）の各画素についてエッジ方向を判定し、その判定されたエッジ方向を示すエッジ方向情報ｐｏｓを設定する。エッジ方向情報ｐｏｓは、エッジ方向修正部２５に出力される。
【００４２】
エッジ方向を判定するため、まずエッジ方向判定部２２は入力画像ＩＮのうち、図４に示すように処理対象とする注目画素Ｘと注目画素Ｘに隣接する周辺画素ｐ０、ｐ１、ｐ２、ｐ３の画素値の差Ｅ０、Ｅ１、Ｅ２、Ｅ３を算出する。Ｅ０〜Ｅ３の算出方法はエッジ抽出における方法と同じである。ただし、Ｅ０〜Ｅ３の値が負であるとき、Ｅ０〜Ｅ３の値は０とする。
【００４３】
次に、エッジ方向判定部２２はＥ０〜Ｅ３を比較することにより、エッジ方向を判定する。
エッジ方向判定部２２はまず上下左右の方向について判定し、下記条件（１）〜（６）に従ってパラメータｘ、ｙを決定する。ｘは左右方向を示すパラメータであり、ｘ＝−１は左方向、ｘ＝０は中央、ｘ＝１は右方向を示す。ｙは上下方向を示すパラメータであり、ｙ＝−１は下方向、ｙ＝０は中央、ｙ＝１は上方向を示す。なお、ｇａｐはエッジ強度の差を明確にするために使用する係数である。
【００４４】
（１）Ｅ０＋ｇａｐ＜Ｅ２のとき、ｘ＝−１
すなわち、左右のうち左のエッジ強度が十分小さければ左方向と判定する。
（２）Ｅ０＞Ｅ２＋ｇａｐのとき、ｘ＝１
すなわち、左右のうち右のエッジ強度が十分小さければ右方向と判定する。
（３）上記（１）、（２）の何れも満たさないとき、ｘ＝０
すなわち、左右のエッジ強度に大差がなければ中央と判定する。
【００４５】
（４）Ｅ１＋ｇａｐ＜Ｅ３のとき、ｙ＝１
すなわち、上下のうち上のエッジ強度が十分小さければ上方向と判定する。
（５）Ｅ１＞Ｅ３＋ｇａｐのとき、ｙ＝−１
すなわち、上下のうち下のエッジ強度が十分小さければ下方向と判定する。
（６）上記（４）、（５）の何れも満たさないとき、ｙ＝０
すなわち、上下のエッジ強度に大差がなければ中央と判定する。
【００４６】
次に、エッジ方向判定部２２はパラメータｘ、ｙを用い、下記条件（１）〜（９）に従って注目画素Ｘのエッジ方向を判定し、エッジ方向情報ｐｏｓを設定する。判定されるエッジ方向は、中央、上、下、左、右、右上、右下、左上、左下の合計９方向である。
（１）ｘ＝１、ｙ＝−１のとき、右下を示すｐｏｓ＝２
（２）ｘ＝１、ｙ＝０のとき、右を示すｐｏｓ＝５
（３）ｘ＝１、ｙ＝１のとき、右上を示すｐｏｓ＝８
（４）ｘ＝０、ｙ＝−１のとき、下を示すｐｏｓ＝１
（５）ｘ＝０、ｙ＝０のとき、中央を示すｐｏｓ＝４
（６）ｘ＝０、ｙ＝１のとき、上を示すｐｏｓ＝７
（７）ｘ＝−１、ｙ＝−１のとき、左下を示すｐｏｓ＝０
（８）ｘ＝−１、ｙ＝０のとき、左を示すｐｏｓ＝３
（９）ｘ＝−１、ｙ＝１のとき、左上を示すｐｏｓ＝６
【００４７】
図５に、エッジ方向情報ｐｏｓの値とその値が示すエッジ方向との関係を示す。図５において矢印の示す方向がエッジ方向であり、矢印の中に記載された数値がそのエッジ方向を示すｐｏｓの値である。
【００４８】
細線構造判定部２３は、入力画像ＩＮ（１画素×８bit）の各画素について、細線構造であるか否かを判定し、その判定結果を示す細線情報ＴＬを設定する。細線情報ＴＬは、細線構造であると判定された場合にＴＬ＝１に設定され、細線構造ではないと判定された場合にＴＬ＝０に設定される。
【００４９】
細線構造か否かの判定において、細線構造判定部２３は図６に示すように入力画像ＩＮから注目画素Ｘとその周辺画素ｐ０〜ｐ７の画素値を抽出する。そして、各画素値が次の（１）〜（１０）の条件の何れかを満たす場合、細線構造判定部２３は注目画素Ｘが細線構造であると判定する。一方、下記条件（１）〜（１０）の何れも満たさない場合、細線構造判定部２３は注目画素Ｘが細線構造ではないと判定する。以下の条件（１）〜（１０）では、注目画素Ｘの画素値をＸ、各周辺画素ｐ０〜ｐ７の画素値をｐ０〜ｐ７で示す。
【００５０】
まず、細線構造判定部２３は、下記３つの条件（１）〜（３）により注目画素Ｘが１画素幅の細線に含まれているかどうかを判定する。
（１）ｐ１＝ｐ３かつｐ１≠Ｘ
（２）ｐ０＝ｐ２かつｐ０≠Ｘ
（３）ｐ５＝Ｘかつｐ１≠Ｘ
【００５１】
次に、細線構造判定部２３は、下記３つの条件（４）〜（６）により注目画素Ｘに隣接する画素が１画素幅の細線に含まれているかどうかを判定する。
（４）ｐ４＝Ｘかつｐ０≠Ｘ
（５）ｐ７＝Ｘかつｐ３≠Ｘ
（６）ｐ６＝Ｘかつｐ２≠Ｘ
【００５２】
次に、細線構造判定部２３は、下記４つの条件（７）〜（１０）により注目画素が２画素幅の細線に含まれているかどうかを判定する。
（７）ｐ５＝ｐ３かつＸ≠ｐ３
（８）ｐ４＝ｐ２かつＸ≠ｐ２
（９）ｐ７＝ｐ１かつｐ１≠Ｘ
（１０）ｐ６＝ｐ０かつｐ０≠Ｘ
以上の判定により設定された細線情報ＴＬは、白抜け判定部２４に出力される。
【００５３】
白抜け判定部２４は、入力画像ＩＮと細線情報ＴＬにより、エッジ方向を用いた解像度変換により白抜けが発生するか否かを画素毎に判定し、その判定結果を示す白抜け情報ｃｗを設定する。白抜け情報ｃｗは、白抜けが発生すると判定された場合はｃｗ＝１に設定され、白抜けが発生しないと判定された場合にはｃｗ＝０に設定される。
【００５４】
白抜け判定部２４は、次の２つの条件（１）、（２）を満たす場合、白抜けが発生すると判定する。
（１）何れかの色の入力画像ＩＮ（１画素×８bit）において、図４に示すように処理対象とする注目画素Ｘが注目色において白色でなく、かつ注目画素Ｘに隣接する周辺画素ｐ０〜ｐ３が何れの色においても白色でない場合
この条件（１）を満たす場合、注目画素、周辺画素についてエッジ方向を用いた解像度変換が行われると、注目画素及び周辺画素の解像度変換後の画素のうち、注目画素と周辺画素間の境界部分に位置する画素に画素値０の画素が生じ、白抜けが発生する。
【００５５】
白色とは閾値ｓｏａとの比較により、画素値がｓｏａ以下となる場合をいう。閾値ｓｏａは白色の判定用に予め設定される閾値である。よって、注目画素Ｘの画素値をＸ、周辺画素ｐ０〜ｐ３の画素値をｐ０〜ｐ３で表すと、下記の条件式全てを満たす場合、周辺画素ｐ０〜ｐ３の全てが何れの色においても白色でないと判定できる。なお、［ｃ］はシアン、［ｍ］はマジェンタ、［ｙ］はイエロー、［ｋ］は黒の色の画素値であることを示す識別子である。
ｐ０［ｃ］＞ｓｏａ、ｐ０［ｍ］＞ｓｏａ、ｐ０［ｙ］＞ｓｏａ、ｐ０［ｋ］＞ｓｏａ
ｐ１［ｃ］＞ｓｏａ、ｐ１［ｍ］＞ｓｏａ、ｐ１［ｙ］＞ｓｏａ、ｐ１［ｋ］＞ｓｏａ
ｐ２［ｃ］＞ｓｏａ、ｐ２［ｍ］＞ｓｏａ、ｐ２［ｙ］＞ｓｏａ、ｐ２［ｋ］＞ｓｏａ
ｐ３［ｃ］＞ｓｏａ、ｐ３［ｍ］＞ｓｏａ、ｐ３［ｙ］＞ｓｏａ、ｐ３［ｋ］＞ｓｏａ
【００５６】
周辺画素ｐ０〜ｐ３の全てが何れの色においても白色ではないと判定された場合、白抜け判定部２４は、さらに注目画素Ｘの注目色の画素値Ｘ［ｃ］、Ｘ［ｍ］、Ｘ［ｙ］、Ｘ［ｋ］についてｓｏａと比較する。そして、ｓｏａより大きければその注目色の画像について白抜けが発生すると判定し、ｓｏａ以下であれば白抜けは発生しないと判定する。
【００５７】
（２）細線構造を有する場合
白抜け判定部２４は、注目画素について細線情報ＴＬを参照し、ＴＬ＝１であれば、白抜けが発生すると判定する。細線構造を持つ画素については、エッジ方向を用いた解像度変換によってより細線化され、白抜けが生じる可能性がある。
以上の判定により設定された白抜け情報ｃｗはエッジ方向修正部２５に出力される。
【００５８】
エッジ方向修正部２５は、白抜け情報ｃｗにより白抜けすると判定された画素のエッジ方向を中央に修正する。中央は、解像度変換後の各画素に均等に画素値を割り当てる割当順序が定められているエッジ方向である。すなわち、エッジ方向修正部２５はｃｗ＝１に設定されている画素について、その画素のエッジ方向情報ｐｏｓを強制的にｐｏｓ＝４に修正する。修正されたエッジ方向情報ｐｏｓは解像度変換部３に出力される。
【００５９】
上述した白抜け判定部２４、エッジ方向修正部２５の処理の流れについて、図７を参照して説明する。図７に示す処理は各色の入力画像ＩＮに対し画素毎に行われる。
図７に示すように、まず白抜け判定部２４により注目画素が細線構造を有するか否か判定する（ステップＳ１１）。細線構造を有しない場合（ステップＳ１１；Ｎ）、白抜け判定部２４はさらに注目色、つまり処理対象としている入力画像ＩＮの色において、注目画素が白色でなく、かつ隣接する周辺４画素の全てが何れの色においても白色ではないか否か判定する（ステップＳ１２）。細線構造を有する場合（ステップＳ１１；Ｙ）、或いは注目色において注目画素が白色でなく、かつ周辺４画素が何れの色においても白色ではない場合（ステップＳ１２；Ｙ）、白抜け判定部２４は白抜けが発生すると判定し、ｃｗ＝１に設定する（ステップＳ１３）。それ以外の場合は（ステップＳ１１；Ｎ、Ｓ１２；Ｎ）、白抜け判定部２４は白抜けは発生しないと判定し、ｃｗ＝０に設定する（ステップＳ１４）。
【００６０】
次に、エッジ方向修正部２５では注目画素について白抜けが発生したと判定されたか否か、つまりｃｗ＝１であるか否かを判定する（ステップＳ１５）。ｃｗ＝１であり、白抜けが発生すると判定された場合（ステップＳ１５；Ｙ）、エッジ方向修正部２５はエッジ方向情報ｐｏｓを、強制的にｐｏｓ＝４に修正する（ステップＳ１６）。ｃｗ＝０であり、白抜けは発生しないと判定された場合（ステップＳ１５；Ｎ）、上記のようなエッジ方向情報ｐｏｓの修正を行うことなく処理を終了する。この場合は修正されていない、エッジ方向判定部２２から入力されたエッジ方向情報ｐｏｓが、エッジ方向修正部２５から出力されることとなる。
【００６１】
次に、図８を参照して解像度変換部３について説明する。
図８に示すように、解像度変換部３は階調補正部３１、画素分割部３２、画素値割当部３３を含んで構成されている。
【００６２】
階調補正部３１は、輪郭処理された処理画像ＯＵＴｏｌ（１画素×８bit）に階調補正処理を施す。階調補正部３１は、８bitの入力（２５５階調）に対し、６bitの出力（６１階調）を定めたＬＵＴ（ルックアップテーブル）を用いて階調補正を行う。ＬＵＴは図９に示すような階調補正カーブにおける入力画素値に対する出力画素値が設定されたものである。階調補正カーブは印刷装置１７の階調特性を元に求められたカーブである。
【００６３】
このように、階調補正と同時に階調数を変更するのは、後段の演算を簡易にするためである。後段の演算では１画素が４分割され、４画素×４bitの１６階調（最小値０〜最大値１５）に解像度変換される。よって、解像度変換前の１画素の階調が、解像度変換後の４画素で表現できる階調０〜６０（最大値１５×４画素）に一致するように階調数を変更する。
階調補正処理が施された処理画像ＯＵＴｏｌ（１画素６bit）は、画素分割部３２、画素値割当部３３にそれぞれ出力される。
【００６４】
画素分割部３２は、階調補正された処理画像ＯＵＴｏｌ（１画素６bit、６００dpi）の各画素を均等に４分割する。４分割後の４画素の位置関係を、図１０に示すようにＡ、Ｂ、Ｃ、Ｄで示す。４分割された各画素Ａ、Ｂ、Ｃ、Ｄ（４画素×４bit、１２００dpi）は、画素値割当部３３に出力される。
【００６５】
画素値割当部３３は、分割された各画素Ａ、Ｂ、Ｃ、Ｄ（４画素×４bit、１２００dpi）について、画素値を割り当てて処理画像ＯＵＴｒｅ（４画素×４bit、１２００dpi）を生成する。処理画像ＯＵＴｒｅはセレクタ５に出力される。
【００６６】
まず、画素値割当部３３は、階調補正処理された処理画像ＯＵＴｏｌの各画素についてエッジ方向情報ｐｏｓを参照し、画素値の割当順序のタイプを決定する。割当順序のタイプはタイプＪ１〜Ｊ３の３つである。タイプＪ１は左右上下の何れかの方向に勾配を設けるように画素値の割当順序が定められており、タイプＪ２は左上、左下、右上、右下の何れかの斜め方向に勾配を設けるように画素値の割当順序が定められている。また、タイプＪ３は勾配は設けずにできるだけ均等に画素値を割り当てるように割当順序が定められている。
【００６７】
割当順序のタイプを決定すると、画素値割当部３３は階調補正処理された処理画像ＯＵＴｏｌと決定したタイプＪ１〜Ｊ３とから、Ａ、Ｂ、Ｃ、Ｄの４画素に割り当てる画素値ＣＶ１、ＣＶ２、ＣＶ３、ＣＶ４を算出する。
【００６８】
以下、図１１〜図１４を参照して、タイプの決定から画素値の算出までの処理の流れを説明する。この処理は階調補正処理された各色の処理画像ＯＵＴｏｌの各画素を対象に行われる。
画素値割当部３３に処理画像ＯＵＴｏｌ、エッジ方向情報ｐｏｓが入力されると（ステップＳ２１）、画素値割当部３３は処理画像ＯＵＴｏｌのうち処理対象とする注目画素についてｐｏｓの値を参照する。そして、ｐｏｓが１、３、５又は７の何れかである場合（ステップＳ２２；Ｙ）、すなわち、エッジ方向が左右上下の何れかの方向である場合には、画素値割当部３３は注目画素の割当順序のタイプをタイプＪ１に決定する（ステップＳ２３）。
【００６９】
一方、ｐｏｓが４である場合（ステップＳ２２；Ｎ、Ｓ２４；Ｙ）、画素値割当部３３は注目画素の割当順序のタイプをタイプＪ３に決定する（ステップＳ２６）。また、ｐｏｓが２、６、８、９である場合（ステップＳ２２；Ｎ、Ｓ２４；Ｎ）、画素値割当部３３は注目画素の割当順序のタイプをタイプＪ２に決定する（ステップＳ２５）。
【００７０】
次に、図１２を参照してタイプＪ１に決定された場合について説明する。以下の説明において、解像度変換前の処理画像ＯＵＴｏｌの各画素の画素値をＯＵＴｏｌで示す。また、ｃｍａｘは解像度変換後の各画素Ａ、Ｂ、Ｃ、Ｄが取りうる最大の画素値である。解像度変換後は１画素が４bitであり、０〜１５の値を取りうるので、ｃｍａｘ＝１５である。
【００７１】
図１２に示すように、画素値割当部３３は、注目画素の画素値ＯＵＴｏｌと２ｃｍａｘとを比較する（ステップＳ３１）。ＯＵＴｏｌ＞２ｃｍａｘである場合（ステップＳ３１；Ｙ）、画素値割当部３３は注目画素の解像度変換後の４画素Ａ、Ｂ、Ｃ、Ｄに割り当てる画素値ＣＶ１〜ＣＶ４を下記のように算出する（ステップＳ３２）。
ＣＶ１＝ｃｍａｘ
ＣＶ２＝ｃｍａｘ
ＣＶ３＝Ｒｅｓｔ−ＣＶ４
ＣＶ４＝Ｒｅｓｔ／２
ただし、Ｒｅｓｔ＝ＯＵＴｏｌ−（ＣＶ１＋ＣＶ２）
【００７２】
一方、ＯＵＴｏｌ＞２ｃｍａｘでない場合（ステップＳ３１；Ｎ）、画素値割当部３３は注目画素の解像度変換後の４画素Ａ、Ｂ、Ｃ、Ｄに割り当てる画素値ＣＶ１〜ＣＶ４を下記のように算出する（ステップＳ３３）。
ＣＶ１＝ＯＵＴｏｌ−ＣＶ２
ＣＶ２＝ＯＵＴｏｌ／２
ＣＶ３＝０
ＣＶ４＝０
【００７３】
次に、図１３を参照してタイプＪ２に決定された場合について説明する。
図１３に示すように、画素値割当部３３は注目画素の画素値ＯＵＴｏｌを（ＯＵＴｏｌ＋１）／２に置き換える（ステップＳ４１）。次いで、画素値割当部３３は置き換えたＯＵＴｏｌとｃｍａｘとを比較する（ステップＳ４２）。ＯＵＴｏｌ＞ｃｍａｘを満たさない場合（ステップＳ４２；Ｎ）、画素値割当部３３は注目画素の解像度変換後の４画素Ａ、Ｂ、Ｃ、Ｄに割り当てる画素値ＣＶ１〜ＣＶ４を下記のように算出する（ステップＳ４４）。
ＣＶ１＝ＯＵＴｏｌ
ＣＶ２＝０
ＣＶ３＝０
ＣＶ４＝０
【００７４】
一方、ＯＵＴｏｌ＞ｃｍａｘを満たす場合（ステップＳ４２；Ｙ）、画素値割当部３３は注目画素の解像度変換後の４画素Ａ、Ｂ、Ｃ、Ｄに割り当てる画素値ＣＶ１〜ＣＶ４のうち、ＣＶ１を下記のように算出する。また、画素値割当部３３はＣＶ１の値からＲｅｓｔを算出する（ステップＳ４３）。
ＣＶ１＝ｃｍａｘ
Ｒｅｓｔ＝ＯＵＴｏｌ−ＣＶ１
【００７５】
次いで、画素値割当部３３は算出したＲｅｓｔが、Ｒｅｓｔ＞２ｃｍａｘを満たす場合（ステップＳ４５；Ｙ）、下記のようにＣＶ２〜ＣＶ４を算出する（ステップＳ４６）。  ＣＶ２＝ｃｍａｘ
ＣＶ３＝ｃｍａｘ
ＣＶ４＝Ｒｅｓｔ−２ｃｍａｘ
【００７６】
一方、ＲｅｓｔがＲｅｓｔ＞２ｃｍａｘを満たさない場合（ステップＳ４５；Ｎ）、画素値割当部３３は下記のようにＣＶ２〜ＣＶ４を算出する（ステップＳ４７）。
ＣＶ２＝Ｒｅｓｔ−ＣＶ３
ＣＶ３＝Ｒｅｓｔ／２
ＣＶ４＝０
【００７７】
次に、図１４を参照してタイプＪ３に決定された場合について説明する。
図１４に示すように、画素値割当部３３は注目画素の解像度変換後の４画素Ａ、Ｂ、Ｃ、Ｄに割り当てる画素値ＣＶ１〜ＣＶ４を下記のように算出する。また、画素値割当部３３はＣＶ１の値からＲｅｓｔを算出する（ステップＳ５１）。
ＣＶ１＝ＯＵＴｏｌ／４
ＣＶ２＝ＯＵＴｏｌ／４
ＣＶ３＝ＯＵＴｏｌ／４
ＣＶ４＝ＯＵＴｏｌ／４
Ｒｅｓｔ＝ＯＵＴｏｌ−４ＣＶ１
【００７８】
次いで、画素値割当部３３は算出したＲｅｓｔがＲｅｓｔ＝１であれば（ステップＳ５２；Ｙ）、上記算出したＣＶ１にＲｅｓｔ（Ｒｅｓｔ＝１）を加算した値をＣＶ１とする（ステップＳ５３）。算出したＲｅｓｔがＲｅｓｔ＝２であれば（ステップＳ５２；Ｎ、Ｓ５４；Ｙ）、画素値割当部３３は上記算出したＣＶ１、ＣＶ２に、Ｒｅｓｔ（Ｒｅｓｔ＝２）のうちの１をそれぞれ加算した値をＣＶ１、ＣＶ２とする（ステップＳ５５）。さらに、Ｒｅｓｔ＝３であれば（ステップＳ５２；Ｎ、Ｓ５４；Ｎ、Ｓ５６；Ｙ）、画素値割当部３３は上記算出したＣＶ１、ＣＶ２、ＣＶ３に、Ｒｅｓｔ（Ｒｅｓｔ＝３）のうちの１をそれぞれ加算した値をＣＶ１、ＣＶ２、ＣＶ３とする（ステップＳ５７）。
【００７９】
以上のようにＣＶ１〜ＣＶ４を算出すると、画素値割当部３３は算出した画素値ＣＶ１〜ＣＶ４を、割当順序のタイプＪ１〜Ｊ３に応じて４分割後の画素Ａ、Ｂ、Ｃ、Ｄに割り当て、処理画像ＯＵＴｒｅとする。タイプＪ１〜Ｊ３と各画素Ａ、Ｂ、Ｃ、ＤへのＣＶ１〜ＣＶ４の割り当ての関係は、下記表に示す通りである。
【表１】
2010062610.tif 000003
【００８０】
すなわち、エッジ方向が中央であり、割当順序がタイプＪ３に定められている場合、画素値割当部３３は勾配を設けるような配分はせずに、解像度変換後の各画素Ａ、Ｂ、Ｃ、Ｄの画素値が均等になるように画素値を決定している。一方、中央以外のエッジ方向の場合、画素値割当部３３は本来解像度変換後の４画素がそれぞれ引き継ぐべき、解像度変換前の１画素の画素値ＯＵＴｏｌを、エッジ方向に勾配を設けるように画素値ＣＶ１〜ＣＶ４に配分し、各画素Ａ、Ｂ、Ｃ、Ｄに割り当てている。つまり、エッジ方向に位置する画素の画素値を最大として、当該画素に位置が離れた画素ほど画素値が小さくなるように画素値ＣＶ１〜ＣＶ４を決定し、各画素Ａ、Ｂ、Ｃ、Ｄに割り当てている。
【００８１】
ただし、エッジ方向が斜め方向であり、割当順序がタイプＪ２に定められている場合、元の画素値ＯＵＴｏｌよりも小さい値（ＯＵＴｏｌ＋１）／２を用いて画素値ＣＶ１〜ＣＶ４を算出している。これは、エッジ方向が斜め方向となる画素については、解像度変換によってオブジェクトのエッジ内側の画素の画素値が大きくなるように割り当てられることから、このような画素の画素値を全体的に減少させ、オブジェクトの内側が不自然に強調されるのを防ぐためである。
解像度変換後の処理画像ＯＵＴｒｅはセレクタ５に出力される。
【００８２】
次に、スクリーン処理部４について説明する。
スクリーン処理部４は、処理画像ＯＵＴｏｌ（１画素×８bit、６００dpi）に対し階調補正処理とスクリーン処理を施し、処理画像ＳＣ（４画素×４bit、１２００dpi）を生成する。処理画像ＳＣはセレクタ５に出力される。
【００８３】
セレクタ５は、各画素について入力されるエッジ情報ＥＤを参照し、ＥＤ＝１に設定されている画素については解像度変換部３から入力される処理画像ＯＵＴｒｅ（４画素×４bit、１２００dpi）を選択して出力する。また、ＥＤ＝０に設定されている画素についてはスクリーン処理部４から入力される処理画像ＳＣ（４画素×４bit、１２００dpi）を選択して出力する。この選択により出力される画像が出力画像ＯＵＴである。
【００８４】
白抜けが発生すると判定された画素については、エッジ方向修正部２５によって強制的にエッジ情報ｐｏｓがｐｏｓ＝４とされている。そのため、白抜けが発生すると判定された画素について処理画像ＯＵＴｒｅが選択され出力された場合でも、解像度変換後の各画素の画素値ＣＶ１〜ＣＶ４はほぼ均等な値で割り当てられ、画素値が０となる画素はない。よって、白抜けの発生を防止することができる。
【００８５】
図１５〜図２０を参照して解像度変換の処理結果の一例を示す。
処理結果例１：背景が白色ではない画像の場合
図１５に示す画像ｇ１１は、Ｋ（黒）の中間調の濃度を持つ前景のオブジェクトと、Ｃ（シアン）の中間調の濃度を持つ背景のオブジェクトとを含んでいる。この画像ｇ１１に対し、白抜け判定によるエッジ方向の修正を行わずに解像度変換が行われた場合、処理結果として図１５に示す画像ｇ１２が得られる。一方、白抜け判定によるエッジ方向の修正後、解像度変換が行われた場合、処理結果として図１５に示す画像ｇ１３が得られる。なお、画像ｇ１１、ｇ１３に記載されている数値はエッジ方向情報ｐｏｓの値を示している。
【００８６】
また、図１６に示す画像ｇ２１は、前景としてＭ（マジェンタ）のオブジェクト、背景としてＫ（黒）のオブジェクトを含んでいる。この画像ｇ２１に対し、白抜け判定によるエッジ方向の修正がなされずに解像度変換された処理結果が画像ｇ２２であり、白抜け判定によるエッジ方向の修正が行われたうえで解像度変換された処理結果が画像ｇ２３である。
【００８７】
図１５、図１６に示すように、エッジ方向の修正が行われない場合、解像度変換時にエッジ方向側に画素値の配分が偏る結果、前景と背景との間に画素値０となる画素が生じ、白抜けが発生している。これに対し、エッジ方向の修正が行われた場合、白抜けが発生するエッジ部分の画素についてはエッジ方向を中央に修正し、画素値の配分が偏らないように均等に画素値が割り当てられ、白抜けの発生を防ぐことができる。
【００８８】
処理結果例２：背景が白色である画像の場合
図１７に示す画像ｇ３１は、背景を白色とするＫ（黒）のオブジェクトを含んでいる。画像ｇ３１において示す数値はエッジ方向を示している。この画像ｇ３１に対し、白抜け判定によるエッジ方向の修正がなされずに解像度変換が行われたのが画像ｇ３２であり、白抜け判定によるエッジ方向の修正がなされたうえで解像度変換が行われたのが画像ｇ３３である。
同様に、図１８に示す画像ｇ４１は白色の線構造のオブジェクトを背景として、Ｋ（黒）の前景のオブジェクトを含む画像である。画像ｇ４２は白抜け判定によるエッジ方向の修正がなされずに画像ｇ４１が解像度変換された画像であり、画像ｇ４３は白抜け判定によるエッジ方向の修正がなされたうえで画像ｇ４１が解像度変換された画像である。
【００８９】
背景が白色である場合、オブジェクトのエッジ部分の画素については白抜けが発生する条件に該当しないため、白抜け判定部２４では白抜けは発生しないと判定される。よって、図１７に示すように、白抜け判定が行われても、その処理結果である画像ｇ３３は、白抜け判定がなされなかった場合の画像ｇ３２と同じ結果となる。図１８に示す画像ｇ４２、ｇ４３についても同様のことがいえる。
【００９０】
処理結果例３：細線構造を含む画像の場合
図１９に示す画像ｇ５１は、中間調の濃度を持つ２画素幅の細線構造を含む画像である。この画像ｇ５１に対し、白抜け判定によるエッジ方向の修正がなされずに解像度変換が行われたのが画像ｇ５２であり、白抜け判定によるエッジ方向の修正がなされたうえで解像度変換が行われたのが画像ｇ５３である。画像ｇ５１、ｇ５３に記載された数値はエッジ方向情報ｐｏｓの値を示している。
【００９１】
同様に、図２０に示す画像ｇ６１は中間調の濃度を持つ細線構造を含む画像である。画像ｇ６２は白抜け判定によるエッジ方向の修正がなされずに画像ｇ６１が解像度変換された画像であり、画像ｇ６３は白抜け判定によるエッジ方向の修正がなされたうえで画像ｇ６１が解像度変換された画像である。
【００９２】
図１９及び図２０に示すように、エッジ方向の修正が行われない場合、解像度変換時にエッジ方向側に画素値の配分が偏る結果、細線がより細線化されてしまう。その結果、図１９に示す画像ｇ５２や、図２０に示す画像ｇ６２のように、線が途切れる部分が生じている。これに対し、エッジ方向の修正が行われた場合、画素値は均等に割り当てられるため、図１９に示す画像ｇ５３や図２０に示す画像ｇ６３のように過剰な細線化を防いで元の細線構造を再現することができる。
【００９３】
以上のように、本実施形態によれば、エッジ方向判定部２２により入力画像ＩＮの各画素についてエッジ方向を判定し、白抜け判定部２４においてエッジ方向を用いた解像度変換を行った処理画像ＯＵＴｒｅに白抜けが発生するか否かを判定する。白抜けが発生する場合、エッジ方向修正部２５がエッジ方向を中央に修正する。解像度変換部３は輪郭処理された処理画像ＯＵＴｏｌの各画素を４分割してより高解像度に解像度変換し、この解像度変換後の各画素に割り当てる画素値ＣＶ１〜ＣＶ４を修正されたエッジ方向によって決定する。セレクタ５では、エッジについては解像度変換された処理画像ＯＵＴｒｅ、エッジ以外についてはスクリーン処理された処理画像ＳＣからなる出力画像ＯＵＴを出力する。
【００９４】
これにより、エッジ方向を用いた解像度変換において白抜けが発生する画素については、その解像度変換後の各画素に画素値が均等に割り当てられるので、濃度０％の画素値が発生せず、白抜けの発生を防ぐことができる。
【００９５】
なお、上記実施形態は本発明を適用した好適な一例であり、これに限定されない。
例えば、ＭＦＰ以外にも画像処理を行うコンピュータ装置であれば本発明を適用することが可能である。
【００９６】
また、上記実施形態では、計算コストがかかる輪郭処理は画像が６００dpiと低解像度のときに実行し、その後、解像度変換によって印刷性能に応じた高解像度とする状況の下で、本発明を適用した例を説明した。しかし、本発明は輪郭処理の有無に拘わらず、エッジ方向を用いた解像度変換に広く適用することができる。
【００９７】
また、上述した画像処理部１０の各構成部の処理をプログラム化し、当該プログラムを用いてソフトウェアによる画像処理を行うこととしてもよい。この場合、プログラムのコンピュータ読み取り可能な媒体としては、ＲＯＭ、フラッシュメモリ等の不揮発性メモリ、ＣＤ-ＲＯＭ等の可搬型記録媒体を適用することが可能である。また、プログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ(搬送波)も適用される。
【図面の簡単な説明】
【００９８】
【図１】本実施形態におけるＭＦＰの機能的構成を示す図である。
【図２】図１の画像処理部のうち印刷用の画像を生成する際に主に機能する構成部分を示す機能ブロック図である。
【図３】図２のエッジ調整部に含まれる構成部分を示す機能ブロック図である。
【図４】エッジ抽出の際に処理対象とされる注目画素と周辺画素を示す図である。
【図５】エッジ方向情報ｐｏｓの値とその値が示すエッジ方向との関係を示す図である。
【図６】細線構造の判定の際に処理対象とされる注目画素と周辺画素を示す図である。
【図７】白抜け判定部とエッジ方向修正部による処理の流れを示すフローチャートである。
【図８】図２の解像度変換部に含まれる構成部分を示す機能ブロック図である。
【図９】階調補正に用いるＬＵＴにおける階調補正カーブを示す図である。
【図１０】４分割された各画素の位置関係を示す図である。
【図１１】画素値割当部における処理の流れを示すフローチャートである。
【図１２】画素値割当部における処理の流れを示すフローチャートである。
【図１３】画素値割当部における処理の流れを示すフローチャートである。
【図１４】画素値割当部における処理の流れを示すフローチャートである。
【図１５】エッジ方向を用いた解像度変換の処理結果例を示す図である。
【図１６】エッジ方向を用いた解像度変換の処理結果例を示す図である。
【図１７】エッジ方向を用いた解像度変換の処理結果例を示す図である。
【図１８】エッジ方向を用いた解像度変換の処理結果例を示す図である。
【図１９】エッジ方向を用いた解像度変換の処理結果例を示す図である。
【図２０】エッジ方向を用いた解像度変換の処理結果例を示す図である。
【図２１】エッジ方向を用いて行われる一般的な解像度変換の方法を説明する図である。
【図２２】（ａ）解像度変換前の元の画像を示す。（ｂ）エッジ方向を用いて解像度変換した後の画像を示す。
【図２３】（ａ）解像度変換前の元の画像を示す。（ｂ）前景のオブジェクトについてエッジ方向を用いた解像度変換を行った後の画像を示す。（ｃ）前景、背景ともにエッジ方向を用いた解像度変換を行った後の画像を示す。
【符号の説明】
【００９９】
１００    ＭＦＰ
１０    画像処理部
１    輪郭処理部
２    エッジ調整部
２１    エッジ抽出部
２２    エッジ方向判定部
２３    細線構造判定部
２４    白抜け判定部
２５    エッジ方向修正部
３    解像度変換部
３１    階調補正部
３２    画素分割部
３３    画素値割当部
４    スクリーン処理部
５    セレクタ
【図１】
2010062610.tif 000004
【図２】
2010062610.tif 000005
【図３】
2010062610.tif 000006
【図４】
2010062610.tif 000007
【図５】
2010062610.tif 000008
【図６】
2010062610.tif 000009
【図７】
2010062610.tif 000010
【図８】
2010062610.tif 000011
【図９】
2010062610.tif 000012
【図１０】
2010062610.tif 000013
【図１１】
2010062610.tif 000014
【図１２】
2010062610.tif 000015
【図１３】
2010062610.tif 000016
【図１４】
2010062610.tif 000017
【図１５】
2010062610.tif 000018
【図１６】
2010062610.tif 000019
【図１７】
2010062610.tif 000020
【図１８】
2010062610.tif 000021
【図１９】
2010062610.tif 000022
【図２０】
2010062610.tif 000023
【図２１】
2010062610.tif 000024
【図２２】
2010062610.tif 000025
【図２３】
2010062610.tif 000026