(57)【要約】【課題】  簡単な構成でコストをかけずに、かつ６００ｄｐｉと１２００ｄｐｉとの両方の解像度に対して共通に、画像形成手法によって発生するジャギーを改善する。【解決手段】  第１の画像データに対して擬似中間調処理が施された第２の画像データ、及び第１の画像データに含まれる各画素の属性を表す属性データに基づいて、第２の画像データにおけるジャギーを改善すべく、属性データに基づいて、スムージング処理を行うか否かを示す判定信号を生成し、再生部５２４で判定信号に応じたスムージング処理を行って、第１の画像データから２値画像データを生成し、セレクタ５０３で第２の画像データの画素信号と、生成された２値画像データの画素信号とを比較して、より濃度の高い画素信号を出力する。【選択図】  図１
2006295877.tif 000002
【特許請求の範囲】
【請求項１】
第１の画像データ、前記第１の画像データに対して擬似中間調処理が施された第２の画像データ、及び前記第１の画像データに含まれる各画素の属性を表す属性データに基づいて、前記第２の画像データにおけるジャギーを改善する画像処理装置であって、
前記属性データに基づいて、スムージング処理を行うか否かを示す判定信号を出力する判定手段と、
前記判定信号に応じたスムージング処理を行って、前記第１の画像データからエッジ補正データを生成するエッジ補正生成手段と、
前記第２の画像データの画素信号と、前記エッジ補正生成手段から出力された前記エッジ補正データの画素信号とを比較して、より濃度の高い画素信号を出力する選択手段と、を備えることを特徴とする画像処理装置。
【請求項２】
前記エッジ補正生成手段は、
所定サイズの領域内の画素に対するスムージング処理を行うスムージング手段と、
前記第１の画像データを任意の閾値で量子化して、注目画素を含む所定サイズの領域内の画素パターンとのマッチングを行い、一致した場合に注目画素の前記スムージング手段からのデータを出力するマッチング処理手段と、
前記判定信号と前記第１の画像データとに基づいて、エッジ検出信号を出力するエッジ検出手段と、
前記エッジ検出信号に応じて、前記第２の画像データに含まれる画素信号及び前記マッチング処理手段の出力信号の一方を出力する適応スムージング手段と、を含むことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記適応スムージング処理手段は、前記エッジ検出信号が出力されていないときには前記第２の画像データに含まれる画素信号を出力し、それ以外のときには前記マッチング処理手段の出力信号を出力することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記適応スムージング処理手段は、前記マッチング処理手段の出力信号をルックアップテーブルを参照して所望のビット数に変換する変換手段を含むことを特徴とする請求項２に記載の画像処理装置。
【請求項５】
前記エッジ検出手段は、注目画素を含む所定サイズの領域内の画素値の総和と所定の閾値とを比較し、前記画素値の総和が前記閾値未満であるときに、エッジ検出信号を出力することを特徴とする請求項２に記載の画像処理装置。
【請求項６】
前記選択手段は、前記第２の画像データの画素信号と前記エッジ補正生成手段から出力された前記エッジ補正データの画素信号とのビット数が異なる場合、ビット数の少ない画素信号の下位ビットに「１」を詰めて同じビット数にして比較することを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記スムージング手段及び前記マッチング処理手段における所定サイズの領域が、３×３以上の領域であることを特徴とする請求項２に記載の画像処理装置。
【請求項８】
前記所定の閾値が変更可能であり、前記所定の閾値の変更によってジャギーの改善の度合いを調整することが可能であることを特徴とする請求項５に記載の画像処理装置。
【請求項９】
前記第１の画像データの解像度が所定の解像度と異なるときに、
前記エッジ補正生成手段での処理が前記所定の解像度のデータに対する処理と同様となるように、前記第１の画像データ及び前記第２の画像データに対して変換処理を行うデータ変換手段をさらに備えることを特徴とする請求項１に記載の画像処理装置。
【請求項１０】
第１の画像データ、前記第１の画像データに対して擬似中間調処理が施された第２の画像データ、及び前記第１の画像データに含まれる各画素の属性を表す属性データに基づいて、前記第２の画像データにおけるジャギーを改善する画像処理方法であって、
前記属性データに基づいて、スムージング処理を行うか否かを示す判定信号を出力する判定工程と、
前記判定信号に応じたスムージング処理を行って、前記第１の画像データからエッジ補正データを生成するエッジ補正生成工程と、
前記第２の画像データの画素信号と、前記エッジ補正生成工程で出力された前記エッジ補正データの画素信号とを比較して、より濃度の高い画素信号を出力する選択工程と、を備えることを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理方法に関し、より詳細には、擬似中間調処理を施した画像データにおける、エッジ部のジャギーをコストをかけずに改善する画像処理装置及び画像処理方法に関する。
【０００２】
具体的には、電子写真プロセスの複写機やプリンタなどを対象としているが、インクジェットプリンタやディスプレイのような他のプロセスを用いた機器にも応用可能である。
【背景技術】
【０００３】
従来から画像処理装置において、低解像度のプリンタで発生するジャギーを改善する技術が、いくつか提案されている。
【０００４】
ここでいうジャギーとは、文字のエッジ部などで発生するガタツキのことである。その様子を図１４に示した。
【０００５】
図１４は、従来の画像処理装置における文字処理状態を説明する模式図であり、例えば文字のエッジ部などで発生するガタツキが生じる状態を示している。
【０００６】
図１４において、示されている各マス目１つが１画素に相当し、この例では３００ｄｐｉの密度であり、「Ｌ」字で示した部分が上述のジャギーを示している。ここでは１５個の「Ｌ」字が示されている。
【０００７】
このようなジャギーに対して、従来の技術ではパターンマッチングを行い、パターンに一致した箇所に画像データを付加またはジャギーの原因となる画素を除去し、ガタツキを改善していた。
【０００８】
ここでいうパターンマッチングの詳細については、公知の技術であるため、詳細な説明は省略する。
【０００９】
図１５は、従来の画像処理装置における文字処理状態を説明する模式図であり、例えば文字のエッジ部などで発生するガタツキ、すなわち、ジャギーを改善した例を示している。
【００１０】
図１５の（ａ）は、パターンマッチングで一致した画素にハーフトーンのデータを付加した様子を示している。先ほどの「Ｌ」字で示された箇所にハーフトーンデータが付加されている。特に電子写真プロセスを有するようなプリンタでは、このようなハーフトーンデータをジャギー部に付加するだけで、画質を大きく改善できる効果がある。
【００１１】
一方、図１５の（ｂ）は、パターンマッチングで一致した画素に画素分割したデータを付加した様子を示している。
【００１２】
ここで、画素分割とは、３００ｄｐｉの１画素を複数に分割し部分的にドットを打つ技術である。ここでは、縦に２分割する場合を例にとって示している。画素分割の技術についても公知である為、ここでの詳細な説明は省略する。
【００１３】
このように、前述したスムージング処理の例としては、ジャギー部にハーフトーンのドットを付加したり、画素分割ドットを付加するものがある。しかし、逆に、フルドットをハーフトーンドットにしたり、フルドットを画素分割ドットにしたりするようなジャギー部の濃い画素を薄くするような処理もあり得ることはいうまでもない。
【００１４】
従来、この種の画像処理装置における問題を改善する技術が、特許文献１に開示されている。
【００１５】
一方、図１６に示すような技術も知られている。この技術は、スクリーン処理のような擬似中間調処理で発生したジャギーを改善するためのものである。これは、プリンタの解像度より低い解像度で発生するジャギーであり、前述した手法では改善することができなかったものを改善したものである。
【００１６】
具体的には、同図（ａ）に示したジャギーの部分がスクリーンのような画像形成手法によって発生するものであり、プリンタ解像度（ここでは３００ｄｐｉとする）より粗い解像度で画質劣化が起きていた。それを同図（ｂ）に示すように、エッジの部分にハーフトーンドット（中間調データ）を打つ（出力する）ことで、ジャギーを改善するものである。
【特許文献１】特開平１０−４２１４１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１７】
ところで、プリンタの解像度が上がってくると、はじめに述べたようなプリンタの解像度に起因するジャギーはほとんど問題でなくなってくる。すなわち、プリンタの解像度が６００ｄｐｉや１２００ｄｐｉ程度になると、識別できるレベルのジャギーは少なくなってくる。
【００１８】
しかしながら、スクリーン手法のような画像形成手法に起因して発生するジャギーは、プリンタ解像度が上がっても認識されやすい。スクリーン処理の場合、ファットニング型などと一般的に称されるようなパターンを用いて複数の画素を集中させたドットを形成することで擬似的にスクリーン解像度（線数）を表現することになる。そのため、プリンタの解像度より高いスクリーン解像度（線数）を用いることはない。例えば、６００ｄｐｉの解像度を有するプリンタでスクリーン処理した画像データを出力する場合、そのスクリーン解像度（線数）は一般的に１３３線から１７５線程度であり、高くとも２６８線程度である。これ以上高い線数のスクリーンを用いると、電子写真プリンタの特性によって、安定した画質が得られないためでもある。なお、線数の単位は一般的にＬＰＩ（Ｌｉｎｅｓ  Ｐｅｒ  Ｉｎｃｈ）として定義されている。
【００１９】
そこで、後者の画像形成手法によって発生するジャギーを改善する為の技術としては、上述のエッジの部分にハーフトーンドットを打つ方法がある。しかし、この方法は、演算が複雑となり、かつ、多くのメモリを必要とする為、この方法を実現する技術を搭載した装置のコストが高くなる傾向にある。この為、低価格な電子写真プリンタやＭＦＰなどにも搭載可能とするためには、より簡易な構成でかつ上述したジャギーを改善できる方法が必要となる。
【００２０】
本発明は以上のような状況に鑑みてなされたものであり、画像形成手法によって発生するジャギーを簡易な構成で改善することを目的とするものである。
【課題を解決するための手段】
【００２１】
上記目的を達成する本発明の一態様としての画像処理装置は、第１の画像データ、前記第１の画像データに対して擬似中間調処理が施された第２の画像データ、及び前記第１の画像データに含まれる各画素の属性を表す属性データに基づいて、前記第２の画像データにおけるジャギーを改善する画像処理装置であって、
前記属性データに基づいて、スムージング処理を行うか否かを示す判定信号を出力する判定手段と、
前記判定信号に応じたスムージング処理を行って、前記第１の画像データからエッジ補正データを生成するエッジ補正生成手段と、
前記第２の画像データの画素信号と、前記エッジ補正生成手段から出力された前記エッジ補正データの画素信号とを比較して、より濃度の高い画素信号を出力する選択手段と、を備えている。
【００２２】
すなわち、本発明では、第１の画像データ、第１の画像データに対して擬似中間調処理が施された第２の画像データ、及び第１の画像データに含まれる各画素の属性を表す属性データに基づいて、第２の画像データにおけるジャギーを改善するために、属性データに基づいて、スムージング処理を行うか否かを示す判定信号を出力し、判定信号に応じたスムージング処理を行って、第１の画像データからエッジ補正データを生成し、第２の画像データの画素信号と、エッジ補正生成工程で出力されたエッジ補正データの画素信号とを比較して、より濃度の高い画素信号を出力する。
【００２３】
なお、エッジ補正生成手段は、所定サイズの領域内の画素に対するスムージング処理を行うスムージング手段と、第１の画像データを任意の閾値で量子化して、注目画素を含む所定サイズの領域内の画素パターンとのマッチングを行い、一致した場合に注目画素のスムージング手段からのデータを出力するマッチング処理手段と、判定信号と第１の画像データとに基づいて、エッジ検出信号を出力するエッジ検出手段と、エッジ検出信号に応じて、第２の画像データに含まれる画素信号及びマッチング処理手段の出力信号の一方を出力する適応スムージング手段と、を含んでいてもよい。
【００２４】
適応スムージング処理手段は、エッジ検出信号が出力されていないときには第２の画像データに含まれる画素信号を出力し、それ以外のときにはマッチング処理手段の出力信号を出力する、あるいは、マッチング処理手段の出力信号をルックアップテーブルを参照して所望のビット数に変換する変換手段を含んでいてもよい。
【００２５】
エッジ検出手段は、注目画素を含む所定サイズの領域内の画素値の総和と所定の閾値とを比較し、画素値の総和が閾値未満であるときに、エッジ検出信号を出力してもよい。
【００２６】
選択手段は、第２の画像データの画素信号とエッジ補正生成手段から出力されたエッジ補正データの画素信号とのビット数が異なる場合、ビット数の少ない画素信号の下位ビットに「１」を詰めて同じビット数にして比較するようにしてもよい。
【００２７】
スムージング手段及びマッチング処理手段における所定サイズの領域は、３×３以上の領域であるのがよい。さらに、所定の閾値が変更可能であり、所定の閾値の変更によってジャギーの改善の度合いを調整するようにしてもよい。
【００２８】
また、上記の目的は、上述の画像処理装置の各手段に対応した工程を有する画像処理方法によっても達成される。
【発明の効果】
【００２９】
本発明によれば、中間調処理によって発生するジャギーを、簡単な構成で改善することができる。
【００３０】
これは、スクリーン処理のような画像形成処理を施した画像データ、ＪＰＥＧのようなエッジ部に画質劣化がある画像データ、さらには、誤差拡散処理を施した画像データに含まれるジャギーに対して有効であり、画像劣化を確実に防止できる。
【発明を実施するための最良の形態】
【００３１】
以下に、添付図面を参照して、本発明の好適な実施の形態を例示的に詳しく説明する。ただし、以下の実施形態に記載されている構成要素はあくまで例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。
【００３２】
＜第１の実施形態＞
図２は、本発明に係る画像処理装置の一実施形態としての複合機の構成例を示す概略断面図であり、該複合機は機械的構成としてカラースキャナ部Ａとプリンタ部Ｂとから構成されている。なお、ここでは、好ましい実施形態として、電子写真技術を用いたスキャナ付の複合機で説明するが、本発明が対象としている画像データは、ベクトル情報を表す画像信号である。ベクトル情報を表す画像信号とは、ＰＣのような計算機から送られるＰＤＬデータやＰＤＬを解釈することで生成されるプリミティブな中間データは言うまでもなく、スキャナで読み取った画像信号をベクトル化したものなども含まれている。なお、ＰＤＬとは、Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅの略である。これらのベクトル情報は、テキストやグラフィックなどの各種オブジェクトを示すためのデータであり、最終的にビットマップデータに変換されるものである。また、以下の実施形態では、特に電子写真プロセスの複写機やプリンタなどを対象としているが、インクジェットやディスプレイのような他のプロセスを用いた機器でも適用可能である。
【００３３】
図２に示すカラースキャナ部Ａにおいて、原稿給送装置２０１Ａは、原稿を最終頁から順に１枚ずつプラテンガラス２０２Ａ上へ給送する。そして、原稿の読み取り動作終了後、プラテンガラス２０２Ａ上の原稿を排出するものである。原稿がプラテンガラス２０２Ａ上に搬送されると、ランプ２０３Ａを点灯し、このランプ２０３Ａを搭載したスキャナユニット２０４Ａを移動させて原稿を露光走査する。この走査による原稿からの反射光は、ミラー２０５Ａ，２０６Ａ，２０７Ａおよびレンズ２０８ＡによってＣＣＤカラーイメージセンサ（以下、単に「ＣＣＤ」という）２０９Ａへ導かれる。
【００３４】
そして、ＣＣＤ２０９Ａに入射した反射光は、Ｒ，Ｇ，Ｂの３色に色分解され色毎の輝度信号として読み取られる。さらに、ＣＣＤ２０９Ａから出力される輝度信号はＡ／Ｄ変換によってデジタル信号の画像データとして画像処理部（図３の３０４参照）に入力される。そして、シェーディング補正、階調補正、量子化（Ｎ値化）、スムージング処理などの周知の画像処理が施された後、プリンタ部Ｂ（３０５）へ転送される。
【００３５】
図２に示すプリンタ部Ｂにおいて、レーザドライバ２２１Ｂは、レーザ発光部２０１Ｂを駆動するものであり、画像処理部３０４から出力された色毎の画像データに応じたレーザ光をレーザ発光部２０１Ｂによって発光させる。このレーザ光は感光ドラム２０２Ｂに照射され、感光ドラム２０２Ｂにはレーザ光に応じた潜像が形成される。
【００３６】
そして、この感光ドラム２０２Ｂの潜像の部分には現像器２０３Ｂによって現像剤であるトナーが付着される。なお、図２では、現像器は、図示の簡略化のため、唯一つのみが示されているが、Ｃ，Ｍ，Ｙ，Ｋの色毎にトナーが用意され、それに応じて４つの現像器が設けられることは、勿論である。また、以上の構成の代わりに感光ドラムや現像器等を色毎に４組設ける構成であってもよい。
【００３７】
上述のレーザ光の照射開始と同期したタイミングで、カセット２０４Ｂまたはカセット２０５Ｂの選択されたいずれかから記録紙が給紙され、転写部２０６Ｂへ搬送される。
【００３８】
これにより、感光ドラム２０２Ｂに付着した現像剤を記録紙に転写することができる。現像剤が転写された記録紙は、定着部２０７Ｂに搬送され、定着部２０７Ｂの熱と圧力により現像剤の記録紙への定着が行われる。そして、定着部２０７Ｂを通過した記録紙は排出ローラ２０８Ｂによって排出され、ソータ２２０Ｂはこの排出された記録紙をそれぞれ所定のビンに収納して記録紙の仕分けを行う。
【００３９】
なお、ソータ２２０Ｂは、仕分けが設定されていない場合は、最上位のビンに記録紙を収納する。また、両面記録が設定されている場合は、排出ローラ２０８Ｂのところまで記録紙を搬送した後、排出ローラ２０８Ｂの回転方向を逆転させ、フラッパ２０９Ｂによって再給紙搬送路へ導く。多重記録が設定されている場合は、記録紙を排出ローラ２０８Ｂまで搬送しないようにフラッパ２０９Ｂによって再給紙搬送路２１０Ｂへ導く。再給紙搬送路へ導かれた記録紙は上述したタイミングで転写部２０６Ｂへ給紙される。
【００４０】
なお、色毎の潜像および現像の処理や定着は、上述の記録紙搬送機構を用いて、潜像形成等を４回分繰り返すことによって実現することは周知の通りである。
【００４１】
ところで、３１４はネットワークケーブルであり、一般的にイーサネット（登録商標）と呼ばれるシステムである。これは、１０ＢａｓｅＴや１０Ｂａｓｅ５などの物理的なケーブルを用いてＴＣＰ／ＩＰなどのプロトコルにより、接続される各ユニット相互の情報授受やデータの転送を行うことができる。無論、ネットワークケーブルを用いた有線に限定されたものではなく、無線を用いても同様な環境構築ができることは言うまでもない。
【００４２】
このようなネットワークケーブル３１４を介し、ホストコンピュータなどから送信されたＰＤＬデータやディスプレイリストなどは、プリンタに設けられたインタフェースとしてのネットワーク信号受信部３１５で受信される。このネットワーク信号受信部３１５には、ホストコンピュータから送信されたデータを解釈して、画像を示す画素単位のビットマップデータを生成するラスタライズ部（不図示）が含まれている。また、ＰＤＬデータまたはディスプレイリストは、テキスト（文字）、フラフィック、イメージ等といったオブジェクト毎にその属性を示すデータを保持している。ラスタライズ部では、この属性データを利用して画像データをセ氏英するとともに、各画素の像域信号も生成する。像域信号については後に詳細に説明する。
【００４３】
そして、ラスタライズ部で生成された画像データは、画像読み取り部３０９から入力されたデータと同様に、画像処理部３０４に入力され、矢印で示したように、フィルタ処理部１６０４に入力され、必要な画像処理が実行される。また、像域信号はスムージング処理部１６０５に入力される。カラー画像データの場合、ＣＭＹＫの色毎の濃度データが生成され、色毎のデータ夫々に対して後段の処理が実行される。
【００４４】
なお、ラスタライズ部はネットワーク信号受信部３１５の外部に設けられるものであってもよい。本実施形態では、この３１４を介して受信したデータを処理する構成について後述する。
【００４５】
図３は、図２に含まれる画像処理装置のデータ処理構成を説明するブロック図であり、図２と同一のものには同一の符号を付してある。
【００４６】
図３において、画像読み取り部３０９は、レンズ３０１、ＣＣＤセンサー３０２、アナログ信号処理部３０３等により構成される。そして、レンズ３０１を介してＣＣＤセンサー３０２に結像された原稿画像３００が、ＣＣＤセンサー３０２によりアナログ電気信号に変換される。変換された画像情報は、アナログ信号処理部３０３に入力され、サンプル＆ホールド、ダークレベルの補正等が行われた後にアナログ・デジタル変換（Ａ／Ｄ変換）される。
【００４７】
このようにして変換されたデジタル信号は、図４に詳細に示す画像処理部３０４において、シェーディング補正４０１、色補正処理４０２、フィルタ処理４０３、γ補正処理４０４、画像形成処理４０５、スムージング処理４０６などが各部で行なわれる。その後、プリンタ３０５へ出力される。この画像形成処理４０５とは、入力される１画素あたりＮビットの画像データを１画素あたりＭビットの画像へと変換する処理を行う。具体的には、本実施の形態ではＮを８、Ｍを４とした。画像形成処理の詳細については、公知な処理である為説明は略するが、スクリーン（ディザ）処理や誤差拡散処理などを指している。
【００４８】
本願発明のポイントを含むスムージング処理４０６以外の処理についても、同様に周知なものであるため、説明を略する。
【００４９】
ところで、図４において、ネットワーク信号受信部３１５からの信号が色補正処理４０２の後ろに接続されているが、これは、ネットワークを介して受信した信号がＣＭＹＫの濃度データであることを想定している為である。もし、受信した信号がＲＧＢの輝度信号であった場合は、不図示であるが色補正処理４０２の前に接続されるようになることも言うまでもない。さらに、ネットワークを介して受信した信号がＰＤＬ信号の場合は、ネットワーク信号受信部３１５でビットマップ信号に変換した後、画像処理部３０４に入力されることは言うまでもない。これら処理は、正確にはネットワークを介して受信した信号はＣＰＵ３１０を介しているのだが、ここでは、信号の流れが分かりやすいように簡略して図４のように示してある。
【００５０】
一方、図３に示すプリンタ３０５は、レーザ等からなる露光制御部（図示せず）、画像形成部（図示せず）、転写紙の搬送制御部（図示せず）等により構成され、入力された画像信号を転写紙上に記録する。
【００５１】
また、ＣＰＵ回路部３１０は、ＣＰＵ３０６、ＲＯＭ３０７、ＲＡＭ３０８等により構成され、画像読み取り部３０９、画像処理部３０４、プリンタ部３０５、操作部３１３等を制御し、複合機のシーケンスを統括的に制御する。
【００５２】
操作部３１３には、ＲＡＭ３１１、ＲＯＭ３１２が予め用意されており、ＵＩ上に文字を表示したり、ユーザが設定した情報を記憶したり、表示したりすることが可能な構成となっている。
【００５３】
ユーザによって操作部３１３で設定された情報は、ＣＰＵ回路部３１０を介して、画像読み取り部３０９、画像処理部３０４、プリンタ３０５などに送られる構成となっている。
【００５４】
以上説明した流れの中で、本願発明のポイントは、画像処理部３０４に含まれている。以下、画像処理部内のスムージング処理部４０６について説明を行う。尚、以下の各構成要素については、ソフトウエアで実現したものとし、Ｃ言語で作成されたプログラムで示すが、これらは等価な機能をハードウエアやファームウエアで構築してもよい。つまり、各構成要素それぞれまたはいくつかの構成要素がＡＳＩＣなどの専用ハードウエアを用いて構成されていても、ソフトウエアによって得られる効果と同様の効果を得ることができる。
【００５５】
図５は、図４に示したスムージング処理部４０６の構成を説明する概略ブロック図であり、図４と同一のものには同一の符号を付してある。
【００５６】
図５においては、１色（ImageData）に対する処理しか示していないが、図４に示したように本処理には４色分のデータが入力されている。つまり、ＣＭＹＫ各色、独立に処理する構成となっており、その内の１色に対する処理を図示している。
【００５７】
まず、はじめに本願発明のポイントであるスムージング処理部４０６の概略動作フローについて図５を用いて説明する。
【００５８】
スムージング処理部４０６には、画像形成処理（例えばスクリーン処理などの擬似中間調処理）される前の信号であるＮ＝８ｂｉｔの上位３ｂｉｔと、各画素の属性を示す像域信号４ｂｉｔと、画像形成処理された信号であるＭ＝４ｂｉｔとが入力される。ここでは、画像形成処理前の信号をImageData（第１の画像データ）、像域信号をAttributeData（属性データ）、画像形成処理後の信号をScreenData（InDataS）（第２の画像データ）で表している。
【００５９】
像域信号（AttributeData）とは、各画素がテキスト（文字）、イメージ（写真）、グラフィックなどの画像属性のうち、どの属性に相当する画像を構成する画素であるかを示すデータである。この信号は４ｂｉｔであり、後述するように属性復号部（Attribute Decoder）５１０により、８ｂｉｔの像域信号に変換される。
【００６０】
判定手段としての判別部（make_ZSG_sig）５０１では、スムージング処理を行うか否かの判断の元となる判別信号（OutDataZ）が生成される。そして、エッジ補正生成手段としての処理実行部（make_AST_sig）５０２で判別信号に応じたスムージング処理を行った後、その出力を選択手段としてのセレクタ（selector）５０３でScreenDataと比較する。そして、判別信号に応じたスムージング処理がされた画素データ値と、ScreenDataの値のうち、画素値が高い方のデータを出力データ（OutputData）として出力する構成となっている。
【００６１】
以下、上述したスムージング処理部４０６の各部における処理について詳細に説明する。
【００６２】
図６は、図５に示した属性復号部（Attribute Decoder）５１０で行なわれる処理を説明する図である。図６の（ａ）において６０１（Attribute Decoder input）で示した部分が、属性復号部に入力される属性データ（AttributeData）である。この入力信号６０１の各ビットは、ラインの太さやオブジェクトの有無や文字／非文字やベクタ／非ベクタなどの属性を示している。例えば、ｂｉｔ４が線や文字の太さを示すフラグ、ｂｉｔ５がオブジェクトの有無を示すフラグ、ｂｉｔ２が文字／非文字を示すフラグ、ｂｉｔ０がベクタ／非ベクタを示すフラグなどである。４つのビットがｂｉｔ０〜ｂｉｔ３まで順に並んでいない理由は、４ビット以上ある信号の中から任意に選択したものである為である。
【００６３】
これらの信号をもとに、属性復号部（Attribute Decoder）５１０では８ｂｉｔの信号を生成している。本実施の形態で生成した信号の詳細は、図６の（ｂ）のテーブルに示した通りであるが、ポイントだけ書き出すと以下のようになる。
【００６４】
ImageType0：00000001(0x01)：未使用
ImageType1：00000010(0x02)：未使用
ImageType2：00000100(0x04)：グラフィック
ImageType3：00001000(0x08)：線
ImageType4：00010000(0x10)：文字
ImageType5：00100000(0x20)：小さいグラフィック
ImageType6：01000000(0x40)：細い線
ImageType7：10000000(0x80)：小さい文字
ここで、（ｂ）のテーブルにおいてＲＥＯＳという文字は、ラインや文字が細い／小さいという意味を表している。この細い／小さいについては、ＰＤＬなどの画像データを生成し、プリンタに送信するホストコンピュータに設けられたプリンタドライバで既に行なわれた判別結果を示している。プリンタドライバの設定次第で細い／小さいと判別される閾値は任意であることは言うまでもない。また、ネットワーク信号受信部３１５において判別する構成であってもよい。
【００６５】
以上説明したように、属性復号部（AttributeDecoder）５１０は、４ｂｉｔの入力を８ｂｉｔ出力に変換するテーブル変換メモリで構成されている。
【００６６】
次に、判別部（make_ZSG_sig）５０１の動作について、図７Ａ〜７Ｃを参照して説明する。図７Ａは入出力される信号を示すブロック図であり、図７Ｂ及び７Ｃは判別部５０１での処理をプログラム言語（Ｃ言語）で記載した例を示している。
【００６７】
図７Ａに示すように、本実施形態の判別部５０１には、前述した属性復号部（AttribureDecoder）５１０（なお、図７Ｂのプログラム中にはattrdecと記載）から出力された８ｂｉｔの信号（AttributeDec.Sig.）と、画像形成処理前の信号であるImageDataの上位３ｂｉｔの信号InData（=InData'）に応じて、図７Ｂに示すような処理によって判別信号（OutDataZ）を生成している。なお、reg_atbとは、モードセレクタ（レジスタ）である。
【００６８】
InData信号については、図７ＢのＡで示す部分において、任意の数値（レジスタ:reg_Zcheck）と比較して、大小関係に応じて判別信号（OutDataZ）を制御する処理を行っている。また、AttibuteDecoder信号については、図７ＢのＢで示す部分において、任意のオブジェクトに応じて、判別信号（OutDataZ）を制御する処理を行っている。図７ＢにおいてThinJudgeはレジスタであり、これより、任意の濃度以上でかつ任意のオブジェクトに対してのみスムージング処理をかけるように制御することが可能となっている。例えば、一定値以上の文字のみに対してスムージング処理を行うなどの制御を可能とするものである。
【００６９】
ところで、本実施形態の判別部５０１は、この制御だけに限定したものではなく、他の幾つかの制御も可能な構成としてある。これら制御の切替えは、上述したモードセレクタ（レジスタreg_atb）の信号に応じて行なわれる。
【００７０】
例えば、図７ＣのＣで示した部分において、reg_atb=1の場合は、画像形成前の信号（InData）の大きさだけに応じて、判別信号（OutDataZ）が制御される。言うまでもないが、reg_Zcheck（レジスタ）に応じて任意に制御可能である。
【００７１】
そして、図７ＣのＤで示した部分において、reg_atb=2の場合は、画像形成処理された信号（InDataS）の大きさだけに応じて、判別信号（OutDataZ）が制御される。これも同様に、reg_air（レジスタ）に応じて任意に制御可能である。
【００７２】
最後にレジスタreg_atbの値がその他の場合の処理が、図７ＣのＥで示した部分である。これは、出力信号がすべて０になるため、本処理の出力位相（タイミング）を保った状態でスルー出力を実現するために用意されている。
【００７３】
次に、処理実行部（make_AST_sig）５０２について図１を参照して説明する。なお、図１には、説明の便宜上セレクタ５０３を含めて示している。この部分は従来例と比較して、コストダウンの効果が一番大きいブロックである。
【００７４】
図１に示したように、処理実行部（make_AST_sig）５０２には、前述した判別部（make_ZSG_sig）で生成した１ｂｉｔの判別信号（OutDataZ）と、画像形成処理前の上位３ｂｉｔの信号（InData）と、画像形成処理後（例えばスクリーン処理などの疑似中間調処理後）の４ｂｉｔの信号（InDataS）とが入力され、４ｂｉｔの信号が出力される構成となっている。これら３つの信号それぞれは、図示したようなＦｉＦｏメモリ５２１〜５２３に入力されており、所定のライン数だけ遅延されるようになっている。本実施形態では、このメモリのサイズを従来と比較して大きく削減している。さらに、従来と同等な効果を維持しつつ、処理系も簡素化している。
【００７５】
そして、ＦｉＦｏメモリ５２１及び５２２を介して、判別信号（OutDataZ）と画像形成処理前の上位３ｂｉｔの信号（InData）とが再生部（Zexistence）５２４に入力され、エッジ部の信号のみが再生される。そしてセレクタ（selector）５０３で、選択部（make_select_sig）５２５の出力に応じて、画像形成処理後の４ｂｉｔの信号（InDataS）と、再生部（Zexistence）の出力信号とのいずれかが選択されて出力される構成となっている。なお、選択部（make_select_shig）５２５では、画像形成処理前の上位３ｂｉｔの信号（InData）と、画像形成処理後の４ｂｉｔの信号（InDataS）との差（濃度値の差）に応じて選択信号が生成される。本実施形態では処理をこのように簡略化することによって、コストダウンを実現している。具体的な処理については後述する。
【００７６】
まず、選択部（make_select_sig）５２５について図８Ａ及び８Ｂを参照して説明する。図８Ａは選択部５２５の入出力を示すブロック図であり、図８Ｂは選択部５２５での処理をプログラム言語（Ｃ言語）で記述した例を示している。
【００７７】
選択部５２５には、前述した通りInDataとInDataSとが入力されている。基本的には、これらの信号の大小関係を比較し、InDataの方が大きければ１を出力し、小さければ０を出力するといった処理を行う。ただし、これらInDataとInDataSとの比較は、３ビットと４ビットの比較となるため、図８Ｂのプログラム例に示したようなビット揃え処理を行った後に比較を行う。プログラム中では、InDataをsel_InDataに変換し、InDataSをsel_InDataSに変換した後、比較している。
【００７８】
このように、InDataとInDataSとを比較し、濃度の濃い方、即ちビット値が大きい方の信号を選択する構成にすることによって、エッジが細ったり、濃度が薄くなったりして、全体の画質レベルが下がることを防止できる。
【００７９】
つまり、後述する再生部（Zexistence）５２４で再生したエッジ信号の方が、元のInDataSのエッジ信号より薄かった場合に、再生部の出力信号を出力すると、上述したようにエッジ部が薄くなり、全体の画質レベルが下がる。これを防止するように選択部（make_select_sig）５２５が設けられている。
【００８０】
さらに本実施形態の特徴でもある再生部（Zexistence）５２４での処理を、図９のブロック図を参照して詳細に説明する。
【００８１】
再生部（Zexistence）５２４には、３ラインのInDataとOutDataZ、そして、注目ラインのInDataSとが入力されている。そして、内部に３×３のスムージング処理部（x3smooth）５２４１、パターンマッチング処理部（miniSST）５２４２、エッジ検出処理部（BorderCount&DensCheck）５２４３、適応スムージング処理部（AdaptiveSmoothing）５２４４を有し、各部での処理を行って、４ｂｉｔの出力信号を生成している。以下、順に各部での処理を説明する。
【００８２】
まず、３×３スムージング処理部（x3smooth）５２４１では、InDataに含まれる３×３領域の画素の濃度平均を求めている。濃度平均を求める処理は公知のため、詳細な説明は省略するが、例えば、９画素内にある濃度１の画素（記録画素）の数を求め、９で割るといった演算を行っている。ただし、本実施の形態では、演算処理部の負荷を減らすため、３×３の領域内にある記録画素の数を求めた後、３ビットシフト（＝÷８相当）を行って出力信号（smoothData）を得ている。
【００８３】
次に、パターンマッチング処理部（miniSST）５２４２では、パターンマッチングにより、プリンタ解像度に依存したジャギーを改善する為のスムージング処理を行っている。プリンタ解像度に依存したジャギーとは、例えば、プリンタの解像度が３００ｄｐｉなら、フォントやラインのガタツキとして、図１４に示したようなＬ字型の部分が発生する。そこで、図１２に示したようなパターンと、InDataを任意の閾値で２値化した信号（不図示）とを３×３の領域でマッチングする。そして、一致した箇所を、図９に示した３×３スムージング処理部（x3smooth）５２４１の出力信号（smoothData）で置き換える処理を行っている。なお、図１２に示したパターンは本実施の形態で用いた一例にすぎず、これに限定したものではないことは言うまでもない。このようにプリンタ解像度に依存したジャギーが改善された３ｂｉｔの信号（patternCK）が後述する適応スムージング処理部（AdaptiveSmoothing）５２４４に入力される。
【００８４】
一方、エッジ検出処理部（BorderCount&DensCheck）５２４３は、OutDataZ信号を用いてエッジ検出信号を生成している。図１０Ａはエッジ検出処理部５２４３の入出力を示しており、図１０Ｂはエッジ検出処理部５２４３の処理をプログラム言語（Ｃ言語）で記述した例を示している。
【００８５】
図１０Ａに示したように、エッジ検出処理部５２４３には、前述したOutDataZ(=DataZ)信号３ラインと、InData信号１ライン（注目ライン）とが入力され、エッジ検出信号bc(=out)を生成している。具体的には、まず、図１０ＢにおいてＡで示した部分で、OutDataZ(=DataZ)の１ｂｉｔ信号を用いて３×３の領域内の濃度１の画素（記録画素）の数をカウントする（sum=bc）。３×３の領域なので合計９が最大になる。つまり、４ｂｉｔ信号である。なお、図１０Ｂのプログラム中にvalCheck()で示された関数は、画像の端部判定をしているだけであり、本質的な処理ではないためここでの説明は省略する。そして、上述したsum=bcを図１０ＢのＢで示す部分で、再処理して最終的な４ｂｉｔ信号bcを生成して出力する構成となっている。
【００８６】
ここでは、任意のレジスタ（reg_Zcheck）に格納された濃度値とInData(=data)に含まれる画素の濃度値が近くて、かつInData(=data)が０ならば、前述のようにして求めたsumの値をクリアする（値をゼロに置換する）処理を行っている。これにより、グラデーションなどのような濃度が徐々に変化する領域において、誤ったエッジ信号により階調が不連続となるのを改善できる。つまり、図７Ｂで説明したInDataの濃度と属性復号部の出力信号とから図７ＢのＡで示す処理を実行すると、グラデーションの途中で出力信号（OutDataZ）を１としてしまう場合が生じる為、それをクリアする処理をここで行っている。
【００８７】
最後に、適応スムージング処理部（AdaptiveSmoothing）５２４４の詳細について、図１１Ａ及び図１１Ｂを参照して説明する。図１１Ａは適応スムージング処理部５２４４の入出力を示しており、図１１Ｂは適応スムージング処理部５２４４の処理をプログラム言語（Ｃ言語）で記述した例を示している。
【００８８】
適応スムージング処理部５２４４には、入力信号として前述したPatternCKとInDataとInDataSとbcとが入力され、４ｂｉｔの信号が出力される構成となっている。具体的には、条件「(bc==0 || bc>=astPower)かつ(InData!=0)」を満たす場合に、画像形成された信号InDataSをスルー出力する。それ以外の場合には、条件「ast_params->sstAllOffSW==0（レジスタ）」を満たすときに、InDataSをLUTEというテーブルを介して出力する。上記２つの条件のいずれも満たさない場合には、LUTEというテーブルを介してpatternCKを出力する構成となっている。
【００８９】
ここで、LUTEはメモリで構成されたルックアップテーブルであり、３ｂｉｔ入力４ｂｉｔ出力のメモリ空間を有したものであるが、基本的には、リニアな出力変換を行うように設定されている。ただし、プリンタの記録特性に応じて、非線形な出力となるように設定してもよいのはもちろんである。また、エッジ部の出力ビット数を４ｂｉｔ以外にしたいときも、このテーブルを用いて変換可能である。
【００９０】
ところで、上述した第２の条件式の「astPower」は、レジスタであり、本実施形態では、この値に応じて、エッジ再処理信号への置き換え幅を調整可能であることも特徴としている。実際にエッジ再処理信号の置き換え幅を変えた画像の例を図１３に示した。astPowerの値を小さくした場合（lebel1）を（ａ）に示し、astPowerの値が大きくなるにつれて、（ｂ）（level2）、（ｃ）（level3）に示すようになる。このときの画像データは、(a)→(b)→(c)でエッジ部のハーフトーン画素数が増えている。この画素数が増すと、エッジ部の滑らかさも増すことになる。このパラメータは、ハーフトーン画素の追加によって文字が縁取られたような画像にならない程度に調整して用いられる。
本機能は、従来手法にはなかったものであり、これにより一層高機能な処理を実現している。
【００９１】
一方、上記の第２の条件式における「ast_params->sstAllOffSW」もレジスタであり、上述のように０に設定されている場合は、LUTEを介してInDataが出力される構成となっている。つまり、前述したパターンマッチング処理部（miniSST）５２４２での処理結果を反映しないスムージングも行える構成となっている。パターンマッチング処理部５２４２での処理を反映しないということは、プリンタ解像度より高い解像度では、スムージング処理を行わないということである。
【００９２】
以上説明した各部での処理を施した結果が、図１で示した再生部（Zexistence）５２４から出力され、セレクタ（selector）５０３で、選択部（make_select_shig）５２５の出力に応じて、画素毎に画像形成処理後の４ｂｉｔの信号（InDataS）と、再生部（Zexistence）の出力信号とのいずれかが選択されて、スムージング処理４０６の結果としてプリンタ３０５に出力される。出力されるイメージは、前述した図１３のとおりである。
【００９３】
図１３は、本実施形態の画像処理装置におけるエッジ処理結果を示す図であり、着目箇所は、エッジ部である。図１３に示したようにスクリーンのパターンの間を埋めるようにデータが薄く、かつ、可変な幅で出力されることを特徴としている。本実施形態の構成により、この処理を従来と比較してローコストにかつ高機能に実現できる。
【００９４】
不図示だが、さらに、ＪＰＥＧのような非可逆な圧縮処理を施した画像に対しても、問題なくエッジ部の改善ができるという特徴も有している。
【００９５】
その理由は、エッジ検出用のデータを作成する際、８ビット画像データの上位側３ビット信号より１ビットの像域信号を作成しているため、圧縮による微妙な劣化情報を除去できるという効果が得られるためである。
【００９６】
以上説明したように、本実施形態によれば、プリンタの解像度によるジャギーはもちろんのこと、１７５線や１３３線等のスクリーンを用いた疑似中間調処理によってエッジ部に発生するジャギーをも改善することが可能となる。このようなスクリーンのジャギーは、プリンタの解像度より遥かに低い解像度で発生するため、ハーフトーン文字やラインで顕著に目立っていたが、これを改善することが可能である。
【００９７】
さらに、エッジ再処理信号への置き換え幅を調整可能にすることで、よりラチチュードの高い処理を実現した。置き換え幅の調整により、図１３に示した効果が得られる。これによって、様々なプリンタ特性に対応できるようになった。
【００９８】
さらに、本実施形態を用いると、スキャナで読み込んだイメージ画像をベクトル化したものにも容易に対応可能である。なお、ベクトル化とは、ビットマップデータをアウトラインデータに変換することを意味する。
【００９９】
＜第２の実施形態＞
以下、本発明に係る画像処理装置の第２の実施形態について説明する。以下の説明では、上記第１の実施形態と同様な部分については説明を省略し、第２の実施形態の特徴的な部分を中心に説明する。
【０１００】
上記第１の実施形態は、入力画像信号の解像度が６００ｄｐｉであったのに対し、本実施形態では入力解像度信号が１２００ｄｐｉ及び６００ｄｐｉの両方の解像度に対応できる構成となっている。
【０１０１】
図１７は、本願発明のポイントであるスムージング処理部４０６’の構成を説明する概略ブロック図であり、第１の実施形態に関して説明した図５に対応しており、同様な部分を同じ参照符号で示している。
【０１０２】
図１７に示したスムージング処理部４０６’を図５のスムージング処理部４０６と比較する。すると、１２００ｄｐｉに対応するために、１７０１で示すビットマスク部（ScreenBitMask）と１７０２で示すビット変換部（bit32_conv）が追加となっている。また、後述するように処理実行部（make_AST_sig）５０２’も１２００ｄｐｉに対応するために変更されている。
【０１０３】
これらブロックの追加および変更により、第１の実施形態と同様な基本構成で、１２００ｄｐｉへの対応を実現した。このように本実施形態は、６００ｄｐｉと１２００ｄｐｉとの両方の解像度に同一のハード構成で対応可能とした点を特徴とする。
【０１０４】
以下、第１の実施形態に関して説明した図５の構成と異なる各ブロックについて詳細に説明する。
【０１０５】
図１８Ａはビットマスク部（ScreenBitMask）１７０１の入出力信号を示すブロック図であり、図１８Ｂはビットマスク部１７０１での処理をプログラム言語（Ｃ言語）で記載した例を示している。
【０１０６】
図１８Ｂにおいて、「ast_params->bit_select」で示されのはパラメータであり、処理解像度が１２００ｄｐｉであるか６００ｄｐｉであるかに応じて、２／３あるいは０／１が選択される構成となっている。
【０１０７】
これは、後述するＦｉＦｏメモリの容量を削減するために、１２００ｄｐｉモードの際に上位ビットのみを使用して下位ビットをマスクするような構成となっているためである。ただし、ハード構成上の関係で、各ブロックを接続する信号線のビット数は６００ｄｐｉのビット数（４ｂｉｔ）に合わせてある。そのため、１２００ｄｐｉの処理時も出力ビット数を４ｂｉｔと記載してある。繰り返しになるが、１２００ｄｐｉの処理時はＦｉＦｏメモリに格納するための有効データ量を削減するようにビットマスク部は構成されている。
【０１０８】
なお、第１の実施形態において述べたのと同様に、本ブロックへ入力される信号は、スクリーニング処理或いは誤差拡散処理などによって量子化されたものである。
【０１０９】
次に、ビット変換部（bit32_conv）１７０２について、図１９Ａの入出力信号を示すブロック図、及び図１９Ｂのビット変換部１７０２での処理をプログラム言語（Ｃ言語）で記載した例を参照して説明する。
【０１１０】
図１９Ｂにおいて、「ast_params->dpi_select」で示されるパラメータは、１２００ｄｐｉ出力時のときのみ１に設定される構成となっている。
【０１１１】
６００ｄｐｉ処理と共通ブロックになっているため、図１９Ａに示すように入出力のビット数が３ｂｉｔになっている。しかし、１２００ｄｐｉ処理時には図１９Ｂに示すように、パラメータast_params->bit32_conv1〜7に設定された値が出力され、２ｂｉｔ化されることになる。２ｂｉｔ化された信号は、上詰めされた状態で出力される構成となっている。そして出力された信号は、後述する処理実行部（make_AST_sig）５０２’に入力され、ＦｉＦｏメモリに格納される。
【０１１２】
図２０は、本実施形態の処理実行部（make_AST_sig）５０２’の構成を示すブロック図である。図１に示した第１の実施形態の処理実行部５０２と比較すると、本実施形態の処理実行部５０２’には、ＦｉＦｏメモリを用いてデータを遅延させるブロックが含まれている。以下、この遅延について説明する。
【０１１３】
まず、判別信号（OutDataZ）については、１２００／６００ｄｐｉの解像度に依存せず、第１の実施形態と同様にＦｉＦｏメモリ５２１によって１ｂｉｔの信号を２ライン遅延させる構成となっている。よって、１２００ｄｐｉ処理を行ってもメモリ容量は増加しない。
【０１１４】
一方、画像形成処理後の４ｂｉｔの信号InDataSについては、６００ｄｐｉでの処理時は４ｂｉｔ１ラインを遅延させ、１２００ｄｐｉでの処理時は２ｂｉｔ１ラインを遅延させる構成となっている。すなわち、１つのＦｉＦｏメモリを、６００ｄｐｉでの処理時は４ｂｉｔ１ラインを遅延させるメモリ５２３として用い、１２００ｄｐｉでの処理時は２ｂｉｔ１ラインを遅延させるメモリ５２３’として用いる。このように、１２００ｄｐｉでの処理時にはメモリの長さ方向（幅）が２倍になってしまうが深さ方向（高さ）のｂｉｔ数を半分にすることで、トータルのメモリ容量が同じとなるようにしてある。これにより、InDataSに関しては、１２００ｄｐｉでの処理を可能としつつトータルのメモリ容量を増大させる必要が無い。
【０１１５】
言うまでもないが、１２００ｄｐｉの１ビット信号が本ブロックに入力されるのは、図１８Ａ及び図１８Ｂに関して説明したように、ビットマスク部（ScreenBitMask）１７０１でパラメータast_params->bit_selectが３に設定された場合である。
【０１１６】
次に、画像形成処理前の３ｂｉｔの信号InDataにかかるＦｉＦｏメモリ５２２’について説明する。６００ｄｐｉでの処理時は、図に記載したように３ｂｉｔ信号を２ライン遅延させる構成となっている。しかし、１２００ｄｐｉでの処理時は、図２１に関して後述するように、入出力変換部２００１によってＦｉＦｏメモリの前後でビット変換が行われるように構成されている。
【０１１７】
図２１Ａ〜２１Ｃを参照して、入出力変換部２００１による１２００ｄｐｉでの処理について説明する。図２１Ａは入出力変換部２００１の構成をＦｉＦｏメモリ５２２’と共に示すブロック図である。
【０１１８】
まず、入力変換部（bit21_conv）２１０１によってInDataから１ｂｉｔ信号と２ｂｉｔ信号とが生成される。図２１Ｂは入力変換部２１０１に含まれるbit21_convモジュールでの処理をプログラム言語（Ｃ言語）で記載した例を示している。この１ｂｉｔと２ｂｉｔの信号は、１ライン遅延された２ｂｉｔ信号と、さらに１ライン遅延された１ｂｉｔ信号とからなることを特徴としている。つまり、注目画素から離れるとビット精度が落ちる構成となっている。その状態でＦｉＦｏメモリ５２２’に入力することにより、メモリ容量を６００ｄｐｉ処理時から増大させないようにしている。
【０１１９】
一方、ＦｉＦｏメモリ５２２’からの読み出し時は、bit21_convと、bit23_convとの２つのモジュールを含む出力変換部２１０２によって、３ｂｉｔ信号に変換される。bit21_convモジュールでの処理は図２１Ｂ、bit23_convモジュールでの処理は図２１Ｃにそれぞれプログラム言語（Ｃ言語）で記載された例に示される通りである。これらの出力時の変換のポイントをまとめると、前述したパラメータast_params->dpi_selectが１、すなわち、１２００ｄｐｉが指定された場合、ast_params->bit21_convやast_params->bit23_conv1〜3のパラメータに従い、各ライン遅延のデータを３ｂｉｔ信号に変換（置換）する構成となっている。
【０１２０】
最後に、ＦｉＦｏメモリ５２３又は５２３’からの出力された信号をビットシフトするビットシフト部（ScreenBitShift）２００２について、図２２Ａの入出力信号を示すブロック図、及び図２２Ｂの処理をプログラム言語（Ｃ言語）で記載した例を参照して説明する。
【０１２１】
ビットシフト部２００２での処理の詳細は図２２Ｂに記載した通りであり、詳しい説明は省略する。しかし、ポイントとしては、入力されたInDataSのビット数が異なっても、第１の実施形態で説明した６００ｄｐｉ用のハード構成が共通で使えるようにビット数を４ｂｉｔにそろえるようにビットシフトを行っている。
【０１２２】
以上説明したように、本実施形態によれば、６００ｄｐｉでの処理を行う第１の実施形態と同様なハード構成で、かつ、同一容量のＦｉＦｏメモリを用いて、１２００ｄｐｉでの処理を行うことができる。つまり、本実施形態によれば、コストアップすることなく６００ｄｐｉ及び１２００ｄｐｉの両方での処理が実現可能である。
【０１２３】
＜その他の実施の形態＞
以上説明したように本発明は、画像形成処理後のデータを使用しているため、画像形成処理に忠実な補正ができることを特徴としている。つまり、Ｆａｘのような解像度の低いプリンタにも適しているといえる。ただし、従来の手法と異なり、本発明によれば、ＪＰＥＧのような非可逆圧縮法を施した画像に対しても、エッジ部の画質劣化を補うような出力が可能となるという効果が得られる。
【０１２４】
また、スクリーン処理のような画像形成処理だけでなく、誤差拡散系の画像形成処理を施した画像に対しても効果がある。誤差拡散系処理を施したハーフトーン文字やラインは、ジャギーとは異なるガタツキがあるが、それをも改善可能とした。
【０１２５】
さらに、ＪＰＥＧのような非可逆な圧縮を施すことにより発生するエッジ部のモスキートノイズに対しても効果がある。つまり、圧縮により発生したエッジ部の劣化を本発明では改善可能である。
【０１２６】
本発明は、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１２７】
例えば、本発明を画像処理装置に適用すると、スキャナで読み込んだイメージ画像、コンピュータ機器から送信したＰＤＬ画像の両方におけるエッジ部の画質を改善することが可能となる。
【０１２８】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。その場合、プログラムの機能を有していれば、形態は、プログラムである必要はない。また、上述したように、上記プログラムを元に設計されたＡＳＩＣなどのハードウエアによっても同様の処理を実行することが可能である。
【０１２９】
従って、本発明の機能や処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明のクレームでは、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１３０】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１３１】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。或いは、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【０１３２】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのサイトに接続し、該サイトから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるサイトからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明の範囲に含まれるものである。
【０１３３】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してサイトから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１３４】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１３５】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０１３６】
例えば、パーソナルコンピュータにインストールされる記録装置のドライバでこれらの処理を行わせるようにする場合が、これに相当する。
【図面の簡単な説明】
【０１３７】
【図１】本発明の実施形態の処理実行部の構成を示すブロック図である。
【図２】本発明に係る画像処理装置を適用可能な複合機の一例を示す概略断面図である。
【図３】図２に示した画像処理装置のデータ処理構成を説明するブロック図である。
【図４】図３に示した画像処理部の一般的構成を説明するブロック図である。
【図５】図４のスムージング処理部の構成を示すブロック図である。
【図６】図５に示した属性復号部（Attribute Decoder）５１０で行なわれる処理を説明する図である。
【図７Ａ】図５の判別部（make_ZSG_sig）５０１の入出力信号を示すブロック図である。
【図７Ｂ】判別部５０１での処理をプログラム言語で記載した例を示す図である。
【図７Ｃ】判別部５０１での処理をプログラム言語で記載した例を示す図である。
【図８Ａ】選択部（make_select_sig）５２５の入出力を示すブロック図である。
【図８Ｂ】選択部５２５での処理をプログラム言語で記載した例を示す図である。
【図９】図１の再生部（Zexistence）５２４の構成を示すブロック図である。
【図１０Ａ】図９のエッジ検出処理部（BorderCount&DensCheck）５２４３の入出力を示すブロック図である。
【図１０Ｂ】エッジ検出処理部５２４３での処理をプログラム言語で記載した例を示す図である。
【図１１Ａ】図９の適応スムージング処理部（AdaptiveSmoothing）５２４４の入出力を示すブロック図である。
【図１１Ｂ】適応スムージング処理部５２４４での処理をプログラム言語で記載した例を示す図である。
【図１２】図９のパターンマッチング処理部（miniSST）５２４２で用いるパターンの例を示す図である。
【図１３】本発明の実施形態の画像処理装置におけるエッジ処理の結果を示す図である。
【図１４】文字のエッジ部などで発生するジャギーの様子を示した図である。
【図１５】従来の画像処理装置における文字処理状態を説明する模式図である。
【図１６】スクリーン処理のような擬似中間調処理で発生したジャギーを改善する従来の例を示した図である。
【図１７】第２の実施形態におけるスムージング処理部の構成を示すブロック図である。
【図１８Ａ】図１７のビットマスク部１７０１の入出力を示すブロック図である。
【図１８Ｂ】ビットマスク部１７０１での処理をプログラム言語で記載した例を示す図である。
【図１９Ａ】図１７のビット変換部１７０２の入出力を示すブロック図である。
【図１９Ｂ】ビット変換部１７０２での処理をプログラム言語で記載した例を示す図である。
【図２０】本発明の第２の実施形態の処理実行部の構成を示すブロック図である。
【図２１Ａ】図２０の入出力変換部２００１の構成をＦｉＦｏメモリ５２２’と共に示すブロック図である。
【図２１Ｂ】図２１Ａのbit21_convモジュールでの処理をプログラム言語で記載した例を示す図である。
【図２１Ｃ】図２１Ａのbit23_convモジュールでの処理をプログラム言語で記載した例を示す図である。
【図２２Ａ】図２０のビットシフト部２００２の入出力を示すブロック図である。
【図２２Ｂ】図２０のビットシフト部２００２での処理をプログラム言語で記載した例を示す図である。
【図１】
2006295877.tif 000003
【図２】
2006295877.tif 000004
【図３】
2006295877.tif 000005
【図４】
2006295877.tif 000006
【図５】
2006295877.tif 000007
【図６】
2006295877.tif 000008
【図７Ａ】
2006295877.tif 000009
【図７Ｂ】
2006295877.tif 000010
【図７Ｃ】
2006295877.tif 000011
【図８Ａ】
2006295877.tif 000012
【図８Ｂ】
2006295877.tif 000013
【図９】
2006295877.tif 000014
【図１０Ａ】
2006295877.tif 000015
【図１０Ｂ】
2006295877.tif 000016
【図１１Ａ】
2006295877.tif 000017
【図１１Ｂ】
2006295877.tif 000018
【図１２】
2006295877.tif 000019
【図１３】
2006295877.tif 000020
【図１４】
2006295877.tif 000021
【図１５】
2006295877.tif 000022
【図１６】
2006295877.tif 000023
【図１７】
2006295877.tif 000024
【図１８Ａ】
2006295877.tif 000025
【図１８Ｂ】
2006295877.tif 000026
【図１９Ａ】
2006295877.tif 000027
【図１９Ｂ】
2006295877.tif 000028
【図２０】
2006295877.tif 000029
【図２１Ａ】
2006295877.tif 000030
【図２１Ｂ】
2006295877.tif 000031
【図２１Ｃ】
2006295877.tif 000032
【図２２Ａ】
2006295877.tif 000033
【図２２Ｂ】
2006295877.tif 000034
【手続補正書】
【提出日】平成17年12月7日(2005.12.7)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１の画像データ、前記第１の画像データに対して擬似中間調処理が施された第２の画像データ、及び前記第１の画像データに含まれる各画素の属性を表す属性データに基づいて、前記第２の画像データにおけるジャギーを改善する画像処理装置であって、
前記属性データに基づいて、スムージング処理を行うか否かを示す判定信号を出力する判定手段と、
前記判定信号に応じたスムージング処理を行って、前記第１の画像データからエッジ補正データを生成するエッジ補正生成手段と、
前記第２の画像データの画素信号と、前記エッジ補正生成手段から出力された前記エッジ補正データの画素信号とを比較して、より濃度の高い画素信号を出力する選択手段と、を備えることを特徴とする画像処理装置。
【請求項２】
前記エッジ補正生成手段は、
あらかじめ定められたサイズの領域内の画素に対するスムージング処理を行うスムージング手段と、
前記第１の画像データを任意の閾値で量子化して、注目画素を含むあらかじめ定められたサイズの領域内の画素パターンとのマッチングを行い、一致した場合に注目画素の前記スムージング手段からのデータを出力するマッチング処理手段と、
前記判定信号と前記第１の画像データとに基づいて、エッジ検出信号を出力するエッジ検出手段と、
前記エッジ検出信号に応じて、前記第２の画像データに含まれる画素信号及び前記マッチング処理手段の出力信号の一方を出力する適応スムージング手段と、を含むことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記適応スムージング処理手段は、前記エッジ検出信号が出力されていないときには前記第２の画像データに含まれる画素信号を出力し、それ以外のときには前記マッチング処理手段の出力信号を出力することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記適応スムージング処理手段は、前記マッチング処理手段の出力信号をルックアップテーブルを参照してあらかじめ定められたビット数に変換する変換手段を含むことを特徴とする請求項２に記載の画像処理装置。
【請求項５】
前記エッジ検出手段は、注目画素を含むあらかじめ定められたサイズの領域内の画素値の総和とあらかじめ定められた閾値とを比較し、前記画素値の総和が前記閾値未満であるときに、エッジ検出信号を出力することを特徴とする請求項２に記載の画像処理装置。
【請求項６】
前記選択手段は、前記第２の画像データの画素信号と前記エッジ補正生成手段から出力された前記エッジ補正データの画素信号とのビット数が異なる場合、ビット数の少ない画素信号の下位ビットに「１」を詰めて同じビット数にして比較することを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記スムージング手段及び前記マッチング処理手段におけるあらかじめ定められたサイズの領域が、３×３以上の領域であることを特徴とする請求項２に記載の画像処理装置。
【請求項８】
前記あらかじめ定められた閾値が変更可能であり、前記あらかじめ定められた閾値の変更によってジャギーの改善の度合いを調整することが可能であることを特徴とする請求項５に記載の画像処理装置。
【請求項９】
前記第１の画像データの解像度があらかじめ定められた解像度と異なるときに、
前記エッジ補正生成手段での処理が前記あらかじめ定められた解像度のデータに対する処理と同様となるように、前記第１の画像データ及び前記第２の画像データに対して変換処理を行うデータ変換手段をさらに備えることを特徴とする請求項１に記載の画像処理装置。
【請求項１０】
第１の画像データ、前記第１の画像データに対して擬似中間調処理が施された第２の画像データ、及び前記第１の画像データに含まれる各画素の属性を表す属性データに基づいて、前記第２の画像データにおけるジャギーを改善する画像処理方法であって、
前記属性データに基づいて、スムージング処理を行うか否かを示す判定信号を出力する判定工程と、
前記判定信号に応じたスムージング処理を行って、前記第１の画像データからエッジ補正データを生成するエッジ補正生成工程と、
前記第２の画像データの画素信号と、前記エッジ補正生成工程で出力された前記エッジ補正データの画素信号とを比較して、より濃度の高い画素信号を出力する選択工程と、を備えることを特徴とする画像処理方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
なお、エッジ補正生成手段は、あらかじめ定められたサイズの領域内の画素に対するスムージング処理を行うスムージング手段と、第１の画像データを任意の閾値で量子化して、注目画素を含むあらかじめ定められたサイズの領域内の画素パターンとのマッチングを行い、一致した場合に注目画素のスムージング手段からのデータを出力するマッチング処理手段と、判定信号と第１の画像データとに基づいて、エッジ検出信号を出力するエッジ検出手段と、エッジ検出信号に応じて、第２の画像データに含まれる画素信号及びマッチング処理手段の出力信号の一方を出力する適応スムージング手段と、を含んでいてもよい。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】変更
【補正の内容】
【００２４】
適応スムージング処理手段は、エッジ検出信号が出力されていないときには第２の画像データに含まれる画素信号を出力し、それ以外のときにはマッチング処理手段の出力信号を出力する、あるいは、マッチング処理手段の出力信号をルックアップテーブルを参照してあらかじめ定められたビット数に変換する変換手段を含んでいてもよい。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
エッジ検出手段は、注目画素を含むあらかじめ定められたサイズの領域内の画素値の総和とあらかじめ定められた閾値とを比較し、画素値の総和が閾値未満であるときに、エッジ検出信号を出力してもよい。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
スムージング手段及びマッチング処理手段におけるあらかじめ定められたサイズの領域は、３×３以上の領域であるのがよい。さらに、あらかじめ定められた閾値が変更可能であり、あらかじめ定められた閾値の変更によってジャギーの改善の度合いを調整するようにしてもよい。