(57)【要約】【課題】  モザイク状の画像における写真画素は、文字やラインのエッジと誤判定される場合がある。【解決手段】  モザイク状の画像を構成する画素に対して、文字やラインのエッジに対してかかる画像処理をかけない。【選択図】  図１
2015226112.tif 000002
【特許請求の範囲】
【請求項１】
入力された画像における注目画素がエッジであるか判定する第１の判定手段と、
注目画素がモザイク状の画像を構成する画素であるか判定する第２の判定手段とを有し、
注目画素がエッジであり、かつ、モザイク状の画像を構成する画素であると判定された場合に、注目画素がエッジであり、かつ、モザイク状の画像を構成する画素でないと判定された場合に行われる画像処理を行わないことを特徴とする画像処理装置。
【請求項２】
前記画像処理は、エッジの再現性を高めるための画像処理であることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記画像処理は、無彩色だと判定された注目画素を黒単色化する画像処理であることを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記第２の判定手段は、
注目画素を含むウィンドウに含まれる、水平方向のエッジの数と垂直方向のエッジの数をカウントするカウント手段と、
カウント結果が閾値を超える列および行にフラグを立てる手段と、
フラグの立った行間、及び、列間の距離に基づいて、注目画素がモザイク領域を構成する画素であるか判定する判定手段とを有することを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記判定手段は、
前記行同士の距離の最小値、及び、列同士の距離の最小値が共に２以上であり、
前記行同士の距離の最大値−最小値、及び、列同士の距離の最大値−最小値が共に１以下である場合に、注目画素がモザイク領域を構成する画素であると判定することを特徴とする請求項４に記載の画像処理装置。
【請求項６】
入力された画像における注目画素がエッジであるか判定する第１の判定工程と、
注目画素がモザイク状の画像を構成する画素であるか判定する第２の判定工程とを有し、
注目画素がエッジであり、かつ、モザイク状の画像を構成する画素でないと判定された場合に行われない画像処理を、注目画素がエッジであり、かつ、モザイク状の画像を構成する画素であると判定された場合に行う工程とを有することを特徴とする画像処理方法。
【請求項７】
前記画像処理は、エッジの再現性を高めるための画像処理であることを特徴とする請求項６に記載の画像処理方法。
【請求項８】
前記画像処理は、無彩色だと判定された注目画素を黒単色化する画像処理であることを特徴とする請求項６に記載の画像処理方法。
【請求項９】
前記第２の判定工程は、
注目画素を含むウィンドウに含まれる、水平方向のエッジの数と垂直方向のエッジの数をカウントするカウント工程と、
カウント結果が閾値を超える列および行にフラグを立てる工程と、
フラグの立った行間、及び、列間の距離に基づいて、注目画素がモザイク領域を構成する画素であるか判定する判定工程とを有することを特徴とする請求項６乃至８の何れか１項に記載の画像処理方法。
【請求項１０】
前記判定工程では、
前記行同士の距離の最小値、及び、列同士の距離の最小値が共に２以上であり、
前記行同士の距離の最大値−最小値、及び、列同士の距離の最大値−最小値が共に１以下である場合に、注目画素がモザイク領域を構成する画素であると判定することを特徴とする請求項９に記載の画像処理方法。
【請求項１１】
請求項６乃至１０の何れか１項に記載の画像処理方法をコンピュータに実行させるためのコンピュータが読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理方法、プログラムに関する。
【背景技術】
【０００２】
入力された画像に対し、文字やラインのエッジを検出する技術が知られている。また、文字やラインのエッジを検出した結果、文字やラインのエッジであると判定された画素に、エッジの再現性を高めるための画像処理（黒単色化など）を行い、そうでないと判定された画素には上記画像処理を行わない画像処理装置が知られている（特許文献１）。そうすることにより、文字やラインのエッジがくっきりとした画像を得るのである。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１−５５５０３公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところが、文字やラインのエッジと判定された画素であっても、上記画像処理を行うべきでない画素がある。それは、同じ信号値を持つ画素の集合体が並んでいるモザイク状の画像におけるエッジである。モザイク状の画像は、ＮｅａｒｅｓｔＮｅｉｇｈｂｏｒ法により写真を拡大した場合に生成される。この画像に対してエッジ検出、及び、上記画像処理を行うと、拡大前の写真では、文字やラインのエッジと判定されなかった部分が、拡大後には文字やラインのエッジと判定され、そこにエッジの再現性を高めるための画像処理がおこなわれてしまうことになる。即ち、本来滑らかに再現されるべき写真の内部がくっきり再現されることになり、不自然な画像が得られてしまう。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明の画像処理装置は、入力された画像における注目画素がエッジであるか判定する第１の判定手段と、注目画素がモザイク状の画像を構成する画素であるか判定する第２の判定手段とを有し、注目画素がエッジであり、かつ、モザイク状の画像を構成する画素であると判定された場合に、注目画素がエッジであり、かつ、モザイク状の画像を構成する画素でないと判定された場合に行われる画像処理を行わないことを特徴とする。
【発明の効果】
【０００６】
モザイク状の画像に対して、エッジをくっきりさせる画像処理を抑制することが可能となる。
【図面の簡単な説明】
【０００７】
【図１】本実施形態における画像処理装置の構成図
【図２】本実施形態における属性イメージのデータ構造の一例
【図３】本実施形態におけるエッジ検出部１０５の検出部分
【図４】本実施形態におけるエッジ検出部１０５のフローチャート
【図５】本実施形態におけるモザイク領域判定部１１１のフローチャート
【図６】本実施形態におけるモザイク領域判定部１１１の処理の一例の様子を示す図
【図７】本実施形態における水平・垂直方向の計算途中のデータを示す図
【図８】第二の実施形態における水平・垂直のエッジフラグ画像生成の閾値の決め方を示すフローチャート
【図９】第二の実施形態におけるＪＰＥＧノイズ算出時の注目画素と隣接画素を示す図
【図１０】モザイク状の画像の例
【発明を実施するための形態】
【０００８】
はじめに、モザイク状の画像について説明する。モザイク状の画像とは、同じ信号値を持つ画素の集合体が並んでいる画像であり、例えば図１０（Ｃ）のように３×３画素ごとに同じ信号値を持つ画素が並んでいるような画像が例として挙げられる。このような画像は、例えば図１０（Ａ）のような写真画像がＮｅａｒｅｓｔＮｅｉｇｈｂｏｒ法によって縦横３倍に拡大されて図１０（Ｂ）のような画像となった場合に生成される。もちろん、Ｎｅａｒｅｓｔｎｅｉｇｈｂｏｒ法を用いずにどのような方法で作成されていても構わない。なお、図１０（Ｄ）は縦２倍、横４倍でＮｅａｒｅｓｔＮｅｉｇｈｂｏｒ法によって拡大された場合のモザイク状の画像の一部分の例を示しており、このように縦横比が異なっていても構わない。また、図１１（Ｅ）は縦２．５倍、横３倍でＮｅａｒｅｓｔＮｅｉｇｈｂｏｒ法によって拡大された場合のモザイク状の画像の一部分の例を示しており、タイルのサイズは整数しか取れないため２または３で変動する。このような拡大率が小数の画像であっても構わない。
【０００９】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１０】
＜第１の実施形態＞
第１の実施形態では、入力された画像からモザイク状の領域を検出して、エッジをくっきりさせための画像処理をキャンセルする画像処理装置の一例を説明する。
【００１１】
図１に本実施形態における画像処理装置の構成を示す。画像処理装置１００はＰＤＬデータ取得部１０１、描画部１０２、無彩色判定部１０３、出力色処理部１０４、エッジ検出部１０５、モザイク領域判定部１１１、エッジ処理部１１２、プリンタエンジン１０９より構成される。エッジ処理部１１２はさらに、黒単色化部１０６、載り量制限部１０７、中間調処理部１０８より構成される。
【００１２】
画像処理装置１００は、不図示のＣＰＵとＲＯＭ及びＲＡＭを内部に有する。ＣＰＵはＲＯＭから画像処理装置１００のプログラムをロードし、一次記憶領域としてＲＡＭを利用して画像処理装置１００のプログラムを実行する。以上の動作により、各部（１０１−１０８、１１１）の処理が実行される。
【００１３】
＜ＰＤＬデータ取得部１０１＞
ＰＤＬデータ取得部１０１は、外部コンピュータ１１０からＰＤＬデータを受信すると、描画部１０２にＰＤＬデータを出力する。ＰＤＬデータは複数のオブジェクトの描画命令から構成されるデータである。
【００１４】
＜描画部１０２＞
描画部１０２は、ＰＤＬデータ取得部１０１から受け取ったＰＤＬデータをもとに描画イメージ（ここではＲＧＢイメージとする）と属性イメージを生成し、両イメージを無彩色判定部１０３に出力する。属性イメージは、描画イメージと縦横同じ画素数のイメージであり、各々の画素の画像処理切り替えに用いる情報（フラグ）を保持する。
【００１５】
図２に本実施形態における属性イメージのデータ構造の一例を示す。図２の例では、属性イメージ１画素に保持される情報は、ＮＮ拡大ビット１ｂｉｔ、モザイクビット１ｂｉｔ、属性ビット１ｂｉｔ、無彩色ビット１ｂｉｔ、エッジビット１ｂｉｔの合計５ｂｉｔからなる。なお、ＮＮはＮｅａｒｅｓｔＮｅｉｂｏｒの略である。
【００１６】
ＮＮ拡大ビットに１が立っている画素は、写真などのビットマップイメージがＮｅａｒｅｓｔＮｅｉｇｈｂｏｒ拡大によって描画された画素であり、０が立っている画素はＮｅａｒｅｓｔＮｅｉｇｈｂｏｒ拡大によって描画された画素ではない。モザイクビットに１が立っている画素は、モザイク状の画像を構成する画素であり、０が立っている画素は、モザイク状の画像を構成しない画素である。属性ビットに１が立っている画素は、文字処理が行われる画素であり、０が立っている画素は、写真処理が行われる画素である。無彩色ビットに１が立っている画素は、描画イメージ上のグレー近傍の色値の画素（無彩色の画素）であり、０が立っている画素は、グレー近傍の色値でない画素（有彩色の画素）である。エッジビットに１が立っている画素は、描画イメージ上のエッジを構成する画素である。０が立っている画素は、エッジを構成しない画素である。
【００１７】
属性イメージの生成の詳細を説明する。
【００１８】
属性イメージの生成にあたり、描画部１０２は、まず、初期化された属性イメージを準備する。初期化された属性イメージとは、全画素のＮＮ拡大ビットがＮＮ拡大なし（０）、モザイクビットが非モザイク（０）、属性ビットが写真処理（０）、無彩色ビットが有彩色（０）、エッジビットがエッジなし（０）である属性イメージである。
【００１９】
その上で、オブジェクトが描画された画素の属性ビットを、そのオブジェクトが文字オブジェクトやラインオブジェクトである場合は文字処理（１）に設定する。また、その画素に文字オブジェクトやラインオブジェクト以外のオブジェクトが描画される場合や、その画素にオブジェクトが描画されない場合は、その画素の属性ビットを写真処理（０）のままにする。また、写真オブジェクトがＮｅａｒｅｓｔＮｅｉｇｈｂｏｒ法により拡大されて描画された時は、属性ビットを写真処理（０）にしつつモザイクビットをモザイク（１）にする。写真オブジェクトがＮｅａｒｅｓｔＮｅｉｇｈｂｏｒ法により拡大されるかどうかはＰＤＬデータのヘッダ部の指示により決まる。なお、描画部１０２は、複数のオブジェクトが描画される画素については、描画イメージ、属性イメージともに、その画素に描画される最後のオブジェクト（最も前面のオブジェクト）の描画命令の情報で上書きする。
【００２０】
＜無彩色判定部１０３＞
無彩色判定部１０３は、描画部１０２からＲＧＢイメージと属性イメージとを受け取り、ＲＧＢイメージ中の各画素のＲＧＢ値に基づいて、各画素が無彩色であるか判定する。
【００２１】
そして、無彩色であると判定された画素の無彩色ビットに無彩色のフラグ（１）を設定することにより属性イメージを書き変えた上で、ＲＧＢイメージと、書き変わった属性イメージを出力色処理部１０４に出力する。なお、無彩色であると判定されなかった画素の無彩色ビットは０のままである。
【００２２】
ここで、無彩色というと、色味が一切無い色（例えば、黒や白やグレー）というのが本来的な意味である。しかし、その意味に少し幅を持たせることも可能である。例えば、Ｒの色値とＧの色値、Ｇの色値とＢの色値、Ｂの色値とＲの色値の差が何れもある閾値以内の画素を無彩色と判定し、それ以外の画素を有彩色と判定する。もちろん、これ以外の幅の持たせ方であっても良いのは言うまでもない。例えば、ＲＧＢの色値をＹＵＶの色値に変え、Ｕ値とＶ値が何れも閾値内の画素を無彩色と判定するなど、様々な方法が考えられる。
【００２３】
＜出力色処理部１０４＞
出力色処理部１０４は、無彩色判定部１０３からＲＧＢイメージと属性イメージとを受け取り、属性イメージに基づいてＲＧＢイメージに色処理を行う。それにより、ＣＭＹＫイメージが生成される。そして、ＣＭＹＫイメージと属性イメージをエッジ検出部１０５に出力する。
【００２４】
例えば、属性ビットが文字処理（１）、かつ、無彩色ビットが無彩色（１）である画素のＲＧＢ値を、Ｋ単色（Ｋ色材のみの色値、即ち、Ｃ＝Ｍ＝Ｙ＝０、０＜ＫであるＣＭＹＫ値）に変換する。即ち、ＰＤＬデータ中で文字オブジェクトやラインオブジェクトとして表現されていて、かつ、無彩色である部分のＲＧＢ値をＫ単色に変換する。それ以外の画素は、ＣＭＹＫ値（ただし、Ｃ、Ｍ、Ｙのうちの何れか１つが０でないＣＭＹＫ値）に変換する。
【００２５】
＜エッジ検出部１０５＞  詳細は後述する。
【００２６】
エッジ検出部１０５は、出力色処理部１０４からＣＭＹＫイメージと属性イメージとを受け取り、ＣＭＹＫイメージから文字やラインのエッジを検出する。エッジの検出された画素のエッジビットにエッジあり（１）のフラグを設定することにより、属性イメージを書き変える。その後、書き変わった属性イメージと、ＣＭＹＫイメージをモザイク領域判定部１１１に出力する。
【００２７】
＜モザイク領域判定部１１１＞
モザイク領域判定部１１１は、エッジ検出部１０５からＣＭＹＫイメージと属性イメージとを受け取り、ＣＭＹＫイメージからモザイク状の画像を検出する。そして、検出されたモザイク状の画像に含まれる画素のモザイクビットにモザイクあり（１）のフラグを設定する。また、ＮＮ拡大ビットにＮＮ拡大あり（１）のフラグが立てられている画素のモザイクビットにモザイクあり（１）のフラグを設定する。即ち、モザイク状の画像に含まれているか、それとも、ＮＮ拡大ありのフラグが立てられている画素にモザイクあり（１）のフラグを設定する。
【００２８】
その後、書き変わった属性イメージと、ＣＭＹＫイメージを黒単色化部１０６に出力する。モザイク領域判定部１１１の処理の詳細は後述する。
【００２９】
＜黒単色化部１０６＞
黒単色化部１０６は、モザイク領域判定部１１１から、ＣＭＹＫイメージと属性イメージとを受け取る。そして、モザイクビットが非モザイク（０）かつ、属性ビットが写真処理（０）、かつ、無彩色ビットが無彩色（１）、かつ、エッジビットがエッジあり（１）の画素の色値（ＣＭＹＫ値）をＫ単色に置き換える。この置き換え処理は黒単色化処理と呼ばれる。その上で、この黒単色化部１０６は、黒単色化処理のかけられたＣＭＹＫイメージと、エッジ検出部１０５から受取った属性イメージとを載り量制限部１０７に出力する。
【００３０】
＜載り量制限部１０７＞
載り量制限部１０７は、黒単色化部１０６から、黒単色化処理を行った後のＣＭＹＫイメージと、属性イメージとを受け取り、ＣＭＹＫ各色材の色値の合計値が色材載り量制限値を超えないよう制限する。この制限により得られたＣＭＹＫイメージと、黒単色化部１０６から受取った属性イメージとを中間調処理部１０８に出力する。なお、ＲＧＢイメージ、ＣＭＹＫイメージは、特に断りが無い限り、多値のイメージである。
【００３１】
＜中間調処理部１０８、プリンタエンジン１０９＞
中間調処理部１０８は、載り量制限部１０７から受け取った多値のＣＭＹＫイメージをプリンタエンジン１０９の色材の潜像画像である二値のＣＭＹＫイメージに変換し、プリンタエンジン１０９に出力する。最後にプリンタエンジン１０９は中間調処理部１０８から受け取った二値のＣＭＹＫイメージに基づいて各色材を紙などの出力媒体上に形成する。
【００３２】
＜エッジ検出部１０５の詳細＞
エッジ検出部１０５の詳細を説明する。
【００３３】
エッジ検出部１０５は、ＣＭＹＫイメージに対し文字やラインのエッジの検出を行い、文字やラインのエッジを検出した画素のエッジフラグをエッジあり（１）にする。文字やラインのエッジが検出されなかった画素のエッジフラグはエッジなし（０）のままにする。
【００３４】
図３（ａ〜ｃ）は、それぞれ、文字が描画されたＣＭＹＫイメージ、写真が描画されたＣＭＹＫイメージ、文字を含む写真が描画されたＣＭＹＫイメージを概念的に表している。
【００３５】
これらのＣＭＹＫイメージ中のある１つの画素を注目画素として、その画素を中心とした周囲を９×９の注目ウインドウで抽出した結果を図３（ｄ〜ｆ）に示す。
【００３６】
図３（ｄ）より、文字やラインのエッジ近傍には、注目画素と同色の画素が多く、かつ、注目画素と類似色の画素が少なく、かつ、注目画素と異色の画素が多いことが分かる。図３（ｅ）より写真内のエッジ近傍には、注目画素と同色の画素が少なく、かつ、注目画素と類似色の画素が多いことが分かる。図３（ｆ）より、写真内の文字のエッジ近傍には、注目画素と同色の画素が多く、かつ、注目画素と類似色の画素が少なく、かつ、注目画素と異色の画素が多いことが分かる。
【００３７】
以上の特徴を利用し、エッジ検出部１０５は、注目画素の周囲に、注目画素と同色の画素が多く、かつ、注目画素と類似する画素が少なく、かつ、注目画素と類似する画素が多い場合、属性イメージのエッジビットをエッジあり（１）とする。図３（ａ〜ｃ）の描画イメージのエッジ検出部１０５の検出結果を図３（ｇ〜ｉ）に示す。このように、文字やラインのエッジのみ抽出することが可能である。
【００３８】
考え方としては、注目画素と同色の画素が多いというのは、注目画素が文字やラインであることを示唆している。注目画素と類似色の画素が少ないというのは、注目画素周辺になだらかな濃度変化が無い、即ち、写真でない（即ち、文字であるかもしれない）ということを示唆している。さらに、注目画素と異色の画素が多いというのは、注目画素周辺にエッジがあるかもしれないということを示唆している。本実施例では、この三つの条件が全て満たされた場合にのみ文字やラインのエッジであると判定しているが、夫々示唆している内容が異なるため、三つのうちの一つ又は二つの条件だけを用いる構成も考えられる。
【００３９】
なお、注目画素と同色（同一色ということもある）の画素とは、注目画素との色（今回の例ではＣＭＹＫ値）の差が閾値Ａ（ｔｈＡ）未満である画素である。また、注目画素と類似色の画素とは、注目画素との色の差が閾値Ａ以上、閾値Ｂ（ｔｈＢ）未満の画素である。また、注目画素と異色の画素とは、注目画素との色の差が閾値Ｂ以上の画素である。
【００４０】
ここで、色の差の計算方法は、色々考えられるが、例えば、注目画素のＣＭＹＫ値と選択画素のＣＭＹＫ値の各色成分ごとの差（ΔＣ、ΔＭ、ΔＹ、ΔＫ）の最大値を求める手法がその一つである。他にも、ΔＣ、ΔＭ、ΔＹ、ΔＫの和や、二乗平均和などが考えられるが、これらに限られず、色の差を表現できる計算方法であれば何でも良い。
【００４１】
また、各画素のＣＭＹＫ値が夫々８ビット（０−２５５）であり、色の差の計算方法にΔＣ、ΔＭ、ΔＹ、ΔＫの最大値を用いた場合には、閾値Ａは２以上の値（例えば、１６くらいの値）が、閾値Ｂは６４くらいの値が好ましい。ただし、これらの値は、出力色処理部１０４でどのような計算式で色変換が行われるかによっても変わってくるため、一概にいくつが好ましいということはできず、各設計者が、実験を行うことによって好ましい閾値を設定すべきである。好ましい閾値を見定めるためには、本発明者が提示した閾値Ａ、Ｂを出発点とし、エッジがうまく取れている、取れていないを確認しながら、微妙に調整していくことをお勧めする。なお、閾値Ａとして１ではなくて２以上が好ましいと設定しているのは、ＪＰＥＧ圧縮を想定してのことである。図１には、ＪＰＥＧ圧縮について特に記載していないものの、無彩色判定部１０３と出力色処理部１０４の間でＪＰＥＧ圧縮、保存、解凍の処理を入れる系も考えられる。こうした場合には、本来、完全に等しい色（完全同一色）の画素で構成される文字やラインの色に微妙なばらつきが発生することがある。こうしたばらつきを吸収するために、閾値Ａには１より大きい値を設定するのが好ましい。
【００４２】
なお、本明細書では、完全同一色といった場合と、同一色（同色）といった場合で意味が異なる。ある画素と別の画素が完全同一色であるというのは、ある画素の色と別の画素の色の差が０であることを示す。一方、ある画素と別の画素が完全同一色であるというのは、ある画素の色と別の画素の色の差が閾値Ａ未満であることを示す。閾値Ａの取り方によっては、完全同一色＝同一色となることもある。
【００４３】
＜エッジ検出部１０５のフローチャート＞
エッジ検出部１０５の処理のフローを図４に示すフローチャートを用いて説明する。
【００４４】
エッジ検出部１０５は、画素を左上の画素から順に一つずつ注目画素として選択し、まず最初に、同色画素数（ｓａｍｅ）、類似色画素数（ｎｅａｒ）、異色画素数（ｏｔｈｅｒ）を０に設定する（処理Ｓ４０１）。次に、エッジ検出部１０５は、ウインドウ（例えば注目画素を中心とした、周囲９×９の範囲）内の画素を一つずつ選択する（処理Ｓ４０２）。次に、エッジ検出部１０５は、選択画素と注目画素が同一色か判定し（処理Ｓ４０３）、真であればｓａｍｅに１を足す（Ｓ４０４）。一方、エッジ検出部１０５は、処理４０３が偽であれば、選択画素と注目画素が類似色か判定し（処理Ｓ４０５）、真であればｎｅａｒに１を足す（Ｓ４０６）。さらに、エッジ検出部１０５は、処理４０５も偽であればｏｔｈｅｒに１を足す（Ｓ４０７）。最後に全てのウインドウ内の画素を選択したかを判定し（処理Ｓ４０８）、全ての画素を選択していない場合は未処理の画素を選択する（処理Ｓ４０２）。以上の処理を通じて、同色画素数、類似色画素数、及び、異色画素数をカウントするのである。
【００４５】
同色画素数、類似色画素数、及び異色画素数がカウントされた後、エッジ検出部は１０５は、同色画素数≧閾値１（ｔｈ１）かつ、類似色画素数≦閾値２（ｔｈ２）かつ異色画素数≧閾値３（ｔｈ３）であるか判定する（処理Ｓ４０９）。処理Ｓ４０９が真であれば注目画素をエッジと決定し、属性イメージのエッジビットを１にする。
【００４６】
全ての画素を注目画素として選択したかを判定し（処理Ｓ４１１）、全ての画素を選択していない場合は未処理の画素を選択する（処理Ｓ４０１）。以上のＳ４０１からＳ４１１までの処理を全画素に対し実行することで、ＣＭＹＫイメージ内の文字やラインのエッジのみを検出する。
【００４７】
ここで、閾値１は５くらいの値が、閾値２は２くらいの値が、閾値３は５くらいの値が好ましい。ただし、これらの値は、ウィンドウの大きさや、閾値Ａ及びＢの設定の仕方によって好ましい値が変わってくる。従って、一概にいくつが好ましいということはできず、各設計者が、実験を行うことによって好ましい閾値を設定すべきである。好ましい閾値を見定めるにあたっては、本発明者が提示した閾値１、２、３を出発点とし、エッジがうまく取れている、取れていないを確認しながら、微妙に調整していくことをお勧めする。
【００４８】
＜モザイク領域判定部１１１の詳細＞
モザイク領域判定部１１１の処理の詳細を図５に示すフローチャートを用いて説明する。
【００４９】
モザイク領域判定部１１１は、モザイク状の画像（同じ信号値の画素の集合体が並んでいる画像）が存在する領域を判定するものである。モザイク領域判定部１１１は、ＣＭＹＫイメージに対して所定のサイズのウィンドウをあて、そのウィンドウ内の画素がモザイク状の特徴を持つかどうかを解析し、持つ場合は中央の注目画素にモザイクビットに１を立てる。この処理を画像全体に対してウィンドウを走査しながら行うことで、モザイク状の領域を検出することが可能である。以下、より詳細に説明する。なお、ウィンドウは、注目画素が中央に存在する１１画素×１１画素の領域であるものとして本実施例を説明するが、それ以外のサイズであっても構わない。
【００５０】
モザイク領域判定部１１１は、まず、注目画素のＮＮ拡大ビットがＮＮ拡大（１）となっているかどうかを判定する（処理Ｓ５０１）。その場合は、ＰＤＬコマンドによるＮｅａｒｅｓｔＮｅｉｇｈｂｏｒ拡大によりモザイク状になっている領域であるため、注目画素のモザイクビットにモザイクあり（１）を立てて処理を終了する（処理Ｓ５０２）。ＮＮ拡大ビットが０の場合は、モザイク状であるかどうかの解析が必要であるため、以降の処理でウィンドウ内にモザイク状の特徴があるかどうかを判定する。処理の様子を図６および図７を用いながら説明する。
【００５１】
まず、ウィンドウ内の画素をＧｒａｙ変換したＧｒａｙイメージ６０１を生成する（処理Ｓ５０３）。Ｇｒａｙ変換する方法としてはどのようなものでも構わないが、一例としてここでは式１を用いるものとする。
（Ｇｒａｙ信号）＝０．３×（２５５−Ｃ）＋０．６×（２５５−Ｍ）＋０．１×（２５５−Ｙ）−Ｋ（式１）
次に、水平方向（例えば、副走査方向）のエッジの有無を表す水平エッジフラグ画像７０１を生成する（処理Ｓ５０４）。具体的には、ウィンドウ内の注目画素と、その注目画素の右に隣接する（もちろん、左に隣接する画素を参照画素としても良いのは言うまでもない。）参照画素との差分が所定の閾値（ここでは一例として５）よりも大きい場合、その注目画素に１（エッジあり）を設定する。図６における注目画素６０２を例に説明すると、右隣に存在する参照画素６０３の差分が５以下なので、水平エッジフラグ画像７０１の対応する画素に０（エッジなし）を立てる。
【００５２】
同様に、垂直方向（例えば、主走査方向）のエッジの有無を表わす垂直エッジフラグ画像７０３を生成する（処理Ｓ５０５）。具体的には、ウィンドウ内の注目画素と、その注目画素の下に隣接する（もちろん、上に隣接する画素を参照画素としても良いのは言うまでもない。）参照画素との差分が所定の閾値（ここでは一例として５）よりも大きい場合、その注目画素に１（エッジあり）を設定する。図６における注目画素６０２を例に説明すると、下隣に存在する参照画素６０４の差分が５よりも大きいので、垂直エッジフラグ画像７０１の対応する画素に１（エッジあり）を立てる。
【００５３】
次に、水平エッジフラグ画像７０１に対して、列方向に１のフラグの数をカウントした水平カウント配列７０２を生成する。それをもとに、カウント結果が所定の閾値（ここでは一例として６）を超える列は１を、そうでなければ０とした水平エッジ配列７０３を生成する（処理Ｓ５０６）。
【００５４】
また、垂直エッジフラグ画像７０４に対して、行方向に１のフラグの数をカウントした垂直カウント配列７０５を生成する。それをもとに、カウント結果が所定の閾値（ここでは一例として６）を超える列は１を、そうでなければ０とした垂直エッジ配列７０６を生成する（処理Ｓ５０７）。
【００５５】
次に、水平エッジ配列７０３で１のフラグが立った列間のピッチ（ピットとは、距離のことである）の最小値（ｐｉｔｃｈ＿ｈ＿ｍｉｎ）と最大値（ＰＩＴＣＨ＿Ｈ＿ＭＡＸ）を求める（処理Ｓ５０８）。
【００５６】
また、垂直フラグ配列７０６の１のフラグが立った行間のピッチの最小値（ｐｉｔｃｈ＿ｖ＿ｍｉｎ）と最大値（ＰＩＴＣＨ＿Ｖ＿ＭＡＸ）を求める（処理Ｓ５０９）。
【００５７】
最後に、ｐｉｔｃｈ＿ｈ＿ｍｉｎ、ｐｉｔｃｈ＿ｈ＿ｍａｘ、ｐｉｔｃｈ＿ｖ＿ｍｉｎ、ｐｉｔｃｈ＿ｖ＿ｍａｘが所定の条件を満たしていれば、注目画素はモザイク状の画像を構成する画素であると判定する（処理Ｓ５１０）。
【００５８】
所定の条件を満たすとは、ｐｉｔｃｈ＿ｈ＿ｍａｘ−ｐｉｔｃｈ＿ｈ＿ｍｉｎおよびｐｉｔｃｈ＿ｖ＿ｍａｘ−ｐｉｔｃｈ＿ｖ＿ｍｉｎがどちらも１以下である条件。及び、ｐｉｔｃｈ＿ｈ＿ｍｉｎおよびｐｉｔｃｈ＿ｖ＿ｍｉｎが何れも２以上である条件。これら二つの条件の両方を満たすという意味である。
【００５９】
なお、ｐｉｔｃｈ＿ｈ＿ｍａｘ−ｐｉｔｃｈ＿ｈ＿ｍｉｎおよびｐｉｔｃｈ＿ｖ＿ｍａｘ−ｐｉｔｃｈ＿ｖ＿ｍｉｎがどちらも１以下というのは、水平方向に、そしてまた、垂直方向にも、同じサイズの画素群がタイル状に並んでいることを意味する。また、ｐｉｔｃｈ＿ｈ＿ｍｉｎおよびｐｉｔｃｈ＿ｖ＿ｍｉｎが何れも２以上というのは、タイルのサイズが２以上であることを示している。
【００６０】
モザイク状の画像を構成する画素であると判定した場合はウィンドウ内の注目画素のモザイクビットに１を立てる（処理Ｓ５０２）。モザイク状の画像を構成する画素でないと判定した場合は、モザイクビットを０のままにして処理を終了する。
【００６１】
以上の処理を、注目画素を１画素ずつずらしながら全画素に適用する。
【００６２】
＜黒単色化部１０６の詳細＞
黒単色化部１０６の詳細を説明する。
【００６３】
黒単色化部１０６は、画素ごとに属性イメージを参照し、非モザイク（０）かつ写真処理（０）かつ無彩色（１）かつエッジあり（１）の画素の色値（ＣＭＹＫ値）をＫ単色に置き換える。それ以外の画素の色値は、後述の通り、置き換えない。ここで、置き換えた後のＫの値は一例として、置き換える前のＣＭＹＫ値を用いてＫ＋（Ｃ＋Ｍ＋Ｙ）÷３としてもよい。また、他の一例として、置き換えた後のＫの値は、プリンタエンジン１０９の出力画像の濃度の違いが、置き換えを行った際と行わなかった際で最小となるようなテーブルを用いて求めても良い。なお、黒単色化部１０６は、属性ビットが文字処理（１）の画素や、無彩色ビットが無彩色ではない（０）画素や、エッジありではない（０）や、モザイク（１）の画素については色値（ＣＭＹＫ値）の変更を行わない。
【００６４】
以上の処理により、出力色処理部１０４ではＫ単色に変換されなかった無彩色の画素（ＰＤＬデータでは、文字オブジェクトやラインオブジェクトと判定されなかった画素。）であっても、見た目が文字やラインに相当する画素については、黒単色で出力できることになる。これにより、写真内の無彩色部をリッチに再現しつつ、プリンタエンジン１０９の版ずれにより文字やラインのエッジに色がにじみ出ることは低減し、その結果、文字やラインのエッジがくっきりと表現できることになる。
【００６５】
＜載り量制限部１０７の詳細＞
載り量制限部１０７の詳細を説明する。
【００６６】
載り量制限部１０７は、非モザイク（０）かつエッジあり（１）の画素のＣＭＹＫ値の合計値が、色材載り量制限値であるＴＨｄ１を超える場合、ＴＨｄ１まで落とす。また、それ以外の画素（モザイク（１）又はエッジなし（０）の画素）のＣＭＹＫ値の合計値が、ＴＨｄ２を超える場合、ＴＨｄ２まで落とす。なお、ＴＨｄ１は、ＴＨｄ２よりも小さい値が設定される。このように、文字やラインのエッジを狙って、小さな色材載り量制限値で載り量を制限することで、文字やラインのエッジに載せられた色材が飛び散ることなく表現できることになる。
【００６７】
＜中間調処理部１０８の詳細＞
中間調処理部１０８の詳細を説明する。
【００６８】
中間調処理部１０８は、画素ごとに属性イメージを参照し、描画イメージ（多値のＣＭＹＫイメージ）を二値のＣＭＹＫイメージに変換する。
【００６９】
中間調処理部１０８は、エッジなし（０）またはモザイク（１）の画素は低線数ディザを用いて二値に変換する。一方、非モザイク（０）かつエッジあり（１）の画素は低線数ディザを用いて二値に変換した結果と、高線数ディザより高い線数のディザを用いて二値に変換した結果の論理和を二値変換結果とする。これにより、写真や文字内部やモザイク状の画像を低線数で再現し、がさつきや写真エッジの濃度の上昇を抑えつつ、文字やラインのエッジのジャギーを高線数ディザにより軽減することができる。文字やラインのエッジが少し濃く、シャープになる感じである。
【００７０】
以上、第１の実施形態によれば、モザイク状の画像に対してエッジの再現性を高めるための画像処理を行わないですむ。
【００７１】
また、第１の実施形態によれば、水平・垂直方向に独立にタイル状かどうかを判定するため、水平・垂直方向でタイルのサイズが異なっているようなモザイク状の画像（例えば図１０（Ｄ）のように元画像を縦２倍、横３倍に拡大した画像。）であっても判定が可能である。例えば、ＮｅａｒｅｓｔＮｅｉｇｈｂｏｒ法の拡大の拡大率が水平・垂直方向に異なる場合にこのような画像が生成される。
【００７２】
また、第１の実施形態によれば、タイルのサイズは１の変動を許容しているため、ＮｅａｒｅｓｔＮｅｉｇｈｂｏｒ法によって小数倍で拡大されたモザイク状の画像（例えば、図１０（Ｅ）のような画像。）であっても判定が可能である。なお、図１０（Ｅ）は、元画像を縦２．５倍、横３倍に拡大した画像となっている。
【００７３】
＜第２の実施形態＞
第１の実施形態では、水平エッジフラグ画像７０１と垂直エッジフラグ画像７０４を生成する際に、注目画素・参照画素の差分の閾値として固定の閾値（一例として５）を用いていた。しかしながら、ＣＭＹＫイメージにＪＰＥＧノイズが入っている場合は、ＪＰＥＧノイズの程度によって閾値を適応的に変動させる必要がある。
【００７４】
そこで、第２の実施形態では、ＪＰＥＧノイズ量を推定し、ＪＰＥＧノイズ量の程度に従って閾値を変動させる実施形態の一例を説明する。
【００７５】
モザイク領域判定部の処理は図５に示すフローと同じであるが、処理Ｓ５０４および処理Ｓ５０５で使用する閾値の決め方が異なる。
【００７６】
図８にこの閾値の決め方のフローチャートを示す。ある注目画素とそれに右または下に隣接する参照画素との差分の閾値を決めるために、まず、注目画素に対して上下左右に隣接する画素のうち、参照画素を除いた隣接画素との差分を算出する。その様子を図９を用いて説明すると、注目画素９０１に上下左右に隣接する画素のうち、参照画素９０２以外の隣接画素を３つ（９０３）選び、注目画素との差分を算出する（処理Ｓ８０１）。
【００７７】
次に、その３つの差分値のうち、最小値（ｄｉｆｆ＿ｍｉｎ）を算出する（処理Ｓ８０２）。最小値を算出する理由は、注目画素がモザイク状の領域に属性しているならば、注目画素に隣接する画素のうち、参照画素を除く上下左右に隣接する３つの画素のうち、１つは必ず同じタイルに属する画素であるためである。同じタイル内に属する画素を参照することで、ＪＰＥＧノイズがなければ本来は全く同じ信号値を持つ（差分値は０）はずが、ＪＰＥＧノイズによって差分が出ているため、それによってＪＰＥＧノイズの程度がわかるという原理である。
【００７８】
最後に、上記の最小値（ｄｉｆｆ＿ｍｉｎ）にマージン（固定値。ここでは一例として５）を加算した値を、処理Ｓ５０４および処理Ｓ５０５で使用する閾値として決定する。
【００７９】
なお、閾値の決定方法として、他にも、ウィンドウ内の各画素の隣接画素との差分値を算出してその中央値や平均値を閾値とする方法やなども考えられる。つまりは同じタイルに属する画素間の差分値を算出することで、ＪＰＥＧノイズの程度を推定することが可能である。
【００８０】
第２の実施形態によれば、ＣＭＹＫイメージにＪＰＥＧノイズが入っている場合でも、ＪＰＥＧノイズの程度によって閾値を適応的に変動させることで、モザイク状の領域の判定精度の低下を抑制することが可能となる。
【００８１】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００８２】
１００  画像処理装置
１０１  ＰＤＬデータ取得部
１０２  描画部
１０３  無彩色判定部
１０４  出力色処理部
１０５  エッジ検出部
１０６  黒単色化部
１０７  載り量制限部
１０８  中間調処理部
１０９  プリンタエンジン
１１０  外部コンピュータ
１１１  モザイク領域検出部
１１２  エッジ処理部
【図１】
2015226112.tif 000003
【図２】
2015226112.tif 000004
【図３】
2015226112.tif 000005
【図４】
2015226112.tif 000006
【図５】
2015226112.tif 000007
【図６】
2015226112.tif 000008
【図７】
2015226112.tif 000009
【図８】
2015226112.tif 000010
【図９】
2015226112.tif 000011
【図１０】
2015226112.tif 000012