(57)【要約】【課題】  スクリーンのような画像形成処理を施した多値画像データに対しても、問題なくエッジ部にスムージング処理をかけ、かつ、ＪＰＥＧのような画像劣化がある画像データに対しても、画像形成処理前のデータをＭｂｉｔ化して１ｂｉｔ信号を作成することで、問題なくスムージング処理をかけることである。【解決手段】  Ｎｂｉｔの多値画像データをビット変換部４０２でビット変換した画像デーから制御信号生成部４０３が生成する制御信号に対して、画像信号生成部４０４で異なる手法で各エッジ検出を行い、該エッジ検出結果に応じて、スムージング処理結果、ビット変換結果、擬似中間調処理結果後の画像データのいずれかを切り替えて出力する構成を特徴とする。【選択図】  図４
2005129995.tif 000002
【特許請求の範囲】
【請求項１】
Ｎｂｉｔの多値画像データを入力する入力手段と、
前記Ｎｂｉｔ画像データをＭｂｉｔ（Ｎ≧Ｍ）画像データに変換する擬似中間調処理手段と、
前記Ｎｂｉｔ画像データをＬｂｉｔ（Ｎ≧Ｌ）画像データに変換する第１のビット変換処理手段と、
前記Ｌｂｉｔ画像データから制御信号を生成する制御信号生成手段と、
前記制御信号生成手段により生成される前記制御信号から第１のエッジを検出する第１のエッジ検出手段と、
前記制御信号生成手段により生成される前記制御信号から前記第１のエッジとは異なる第２のエッジを検出する第２のエッジ検出手段と、
前記Ｌｂｉｔ画像データをＭｂｉｔ画像データにビット変換する第２のビット変換処理手段と、
前記Ｌｂｉｔ画像データに対してスムージング処理を行い、Ｍｂｉｔ画像データを生成するスムージング処理手段と、
前記第１及び第２のエッジ検出手段による各エッジ検出結果に応じて、前記スムージング処理結果、前記第２のビット変換処理手段のビット変換結果、前記擬似中間調処理手段による処理結果を切り替えて出力する画像出力切替え手段と、
を有することを特徴とする画像処理装置。
【請求項２】
Ｎｂｉｔの多値画像データを入力する入力手段と、
前記Ｎｂｉｔ画像データをＭｂｉｔ（Ｎ≧Ｍ)画像データに変換する擬似中間調処理手段と、
前記Ｎｂｉｔ画像データをＬｂｉｔ画像データ（Ｎ≧Ｌ）に変換する第１のビット変換処理手段と、
前記Ｍｂｉｔ画像データから制御信号を生成する制御信号生成手段と、
前記制御信号生成手段により生成される制御信号から第１のエッジを検出する第１のエッジ検出手段と、
前記制御信号生成手段により生成される制御信号から第２のエッジを検出する第２のエッジ検出手段と、
前記Ｌｂｉｔ画像データをＭｂｉｔ画像データに変換する第２のビット変換手段と、
前記Ｌｂｉｔ画像データに対してスムージング処理を行い、Ｍｂｉｔ画像データを生成するスムージング処理手段と、
前記第１及び第２のエッジ検出手段によるエッジ検出結果に応じて、前記スムージング処理結果、前記第２のビット変換手段によるビット変換結果、前記擬似中間調処理手段の処理結果を切り替えて出力する画像出力切替え手段と、
を有することを特徴とする画像処理装置。
【請求項３】
前記画像出力切替え手段は、第１のエッジ部ではあるが第２のエッジ部ではない画素は、前記スムージング処理結果を出力し、前記第１のエッジ部に関わらず前記第２のエッジ部ではない画素は、前記第２のビット変換手段のビット変換結果を出力し、それ以外は、前記擬似中間調処理手段の処理結果を出力することを特徴とする請求項１または２記載の画像処理装置。
【請求項４】
前記擬似中間調処理手段は、ディザ処理、あるいは、誤差拡散処理であることを特徴とする請求項１〜３のいずれかに記載の画像処理装置。
【請求項５】
前記第１のビット変換処理手段は、ビットシフト処理であることを特徴とする請求項１または２記載の画像処理装置。
【請求項６】
前記第２のビット変換処理手段は、メモリを用いたテーブル変換処理であることを特徴とする請求項１または２記載の画像処理装置。
【請求項７】
Ｎｂｉｔの多値画像データを入力する入力ステップと、
前記Ｎｂｉｔ画像データをＭｂｉｔ（Ｎ≧Ｍ）画像データに変換する擬似中間調処理ステップと、
前記Ｎｂｉｔ画像データをＬｂｉｔ（Ｎ≧Ｌ）画像データに変換する第１のビット変換処理ステップと、
前記Ｌｂｉｔ画像データから制御信号を生成する制御信号生成ステップと、
前記制御信号生成ステップにより生成される前記制御信号から第１のエッジを検出する第１のエッジ検出ステップと、
前記制御信号生成ステップにより生成される前記制御信号から前記第１のエッジとは異なる第２のエッジを検出する第２のエッジ検出ステップと、
前記Ｌｂｉｔ画像データをＭｂｉｔ画像データにビット変換する第２のビット変換処理ステップと、
前記Ｌｂｉｔ画像データに対してスムージング処理を行い、Ｍｂｉｔ画像データを生成するスムージング処理ステップと、
前記第１及び第２のエッジ検出ステップによる各エッジ検出結果に応じて、前記スムージング処理結果、前記第２のビット変換処理ステップのビット変換結果、前記擬似中間調処理ステップによる処理結果を切り替えて出力する画像出力切替えステップと、
を有することを特徴とする画像処理方法。
【請求項８】
Ｎｂｉｔの多値画像データを入力する入力ステップと、
前記Ｎｂｉｔ画像データをＭｂｉｔ（Ｎ≧Ｍ)画像データに変換する擬似中間調処理ステップと、
前記Ｎｂｉｔ画像データをＬｂｉｔ画像データ（Ｎ≧Ｌ）に変換する第１のビット変換処理ステップと、
前記Ｍｂｉｔ画像データから制御域信号を生成する制御域信号生成ステップと、
前記制御信号生成ステップにより生成される制御域信号から第１のエッジを検出する第１のエッジ検出ステップと、
前記制御信号生成ステップにより生成される制御域信号から第２のエッジを検出する第２のエッジ検出ステップと、
前記Ｌｂｉｔ画像データをＭｂｉｔ画像データに変換する第２のビット変換ステップと、
前記Ｌｂｉｔ画像データに対してスムージング処理を行い、Ｍｂｉｔ画像データを生成するスムージング処理ステップと、
第１及び第２のエッジ検出ステップによるエッジ検出結果に応じて、前記スムージング処理結果、前記第２のビット変換ステップによるビット変換結果、前記擬似中間調処理ステップの処理結果を切り替えて出力する画像出力切替えステップと、
を有することを特徴とする画像処理方法。
【請求項９】
前記画像出力切替えステップは、第１のエッジ部ではあるが第２のエッジ部ではない画素は、前記スムージング処理結果を出力し、第１のエッジ部に関わらず第２のエッジ部ではない画素は、前記第２のビット変換ステップのビット変換結果を出力し、それ以外は、前記擬似中間調処理ステップの処理結果を出力することを特徴とする請求項７または８記載の画像処理方法。
【請求項１０】
前記擬似中間調処理ステップは、ディザ処理、あるいは、誤差拡散処理であることを特徴とする請求項７〜９のいずれかに記載の画像処理方法。
【請求項１１】
前記第１のビット変換処理ステップは、ビットシフト処理であることを特徴とする請求項７または８記載の画像処理方法。
【請求項１２】
前記第２のビット変換処理ステップは、メモリを用いたテーブル変換処理であることを特徴とする請求項７または８記載の画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｍｂｉｔの擬似中間調処理した画像データに対して、エッジ部のジャギーを改善する画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
従来から画像処理装置において、低解像のプリンタで発生するジャギーを改善する技術が、いくつか提案されている。
【０００３】
ここでいうジャギーとは、文字のエッジ部などで発生するガタツキのことである。その様子を図２１に示す。
【０００４】
図２１は、従来の画像処理装置における文字処理状態を説明する模式図であり、例えば文字のエッジ部などで発生するガタツキの状態を示している。
【０００５】
図２１において、複数の升目があるが、この１つ１つが例えば３００ｄｐｉの１画素に相当する。３００ｄｐｉにおいて文字「あ」を表現した場合に、曲線部などに出現する階段状の部分が前述したジャギーを示している。
【０００６】
このようなジャギーに対して、従来の技術ではパターンマッチングを行い、パターンに一致した箇所に画像データを付加し、ガタツキを改善していた。このような処理のことを、いわゆるスムージング処理や平滑化処理と称することもある。
【０００７】
ここでいうパターンマッチングの詳細については、公知な技術であり、後述する特許文献１にも開示されているため、詳細な説明は省略する。
【０００８】
図２２は、従来の画像処理装置における文字処理状態を説明する模式図であり、例えば文字のエッジ部などで発生するガタツキ、すなわち、ジャギーを改善した例を示している。
【０００９】
図２２における（ａ）は、パターンマッチングで一致した画素にハーフトーンのデータを付加した様子を示している。図２１の階段形状を形成している画素にハーフトーンデータが付加されている。特に電子写真プロセスを有するようなプリンタでは、このようなハーフトーンをジャギー部に付加するだけ、かなりの画質が改善できる効果がある。
【００１０】
一方、図２２に示す（ｂ）は、パターンマッチングで一致した領域の特定の画素範囲を細分化し、細分化した小画素位置に任意にデータを付加した様子を示している。
【００１１】
ここで、画素の細分化とは、３００ｄｐｉの１画素を複数に分割し部分的にドットを打つ技術である。ここでは、１画素を２つの小画素に分割する例を示している。画素細分化の技術についても後述する特許文献１にも開示されている為、ここでの詳細な説明は省略する。
【００１２】
前述したスムージング処理は、ジャギー部にハーフドットを付加したり、画素分割ドットを付加するものであったが、逆に、フルドットをハーフドットにしたり、フルドットを画素分割ドットにしたりするようなジャギー部の画素を薄くするような処理もあり得ることはいうまでもない。
【００１３】
従来、この種の画像処理装置にける問題を改善する提案として、特許文献１が公開されている。
【特許文献１】特開平１０−４２１４１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
しかしながら、このような装置あるいは手法では、図２３に示すような問題があった。
【００１５】
図２３は、従来の画像処理装置における文字処理状態を説明する模式図であり、例えば文字のエッジ部などで発生する階段状のガタツキ、すなわち、ジャギーを改善した例を示している。
【００１６】
図２３の（ａ）において、ハーフトーン文字に対して、画像形成処理、例えば、スクリーン処理を施した場合、図２３の（ｂ）に示すように、文字の輪郭が断絶されてしまう。
【００１７】
これは、ハーフトーン文字の場合、プリンタの解像度３００ｄｐｉ以上に粗いスクリーン解像度で画像形成処理を施すためである。
【００１８】
その結果、前述したパターンマッチングによるスムージングではジャギーの改善がおこなえなくなってしまう問題があった。
【００１９】
ところで、プリンタの解像度より高いスクリーン解像度は存在しない。なぜならば、プリンタの画素（ドット）を複数まとめることで、擬似的にスクリーン解像度を表現している為である。参考までに、通常のスクリーン解像度（線数）は１３３線〜１７５線、高くとも、２６８線程度である。これ以上高い線数を用いた場合、電子写真プリンタの特性で安定した画質が得られない為、前述したような線数を用いることが多い。
【００２０】
ところで、図２３に示した（ｂ）では、拡大しすぎて分かりにくいため、図２４にマクロに見た文字の一部を示した。
【００２１】
図２４は、従来の画像処理装置における文字処理状態を説明する模式図であり、例えば文字のエッジ部などで発生するガタツキ、すなわち、ジャギー状態をマクロに示した例である。
【００２２】
問題にしているジャギー部は、スクリーン処理によってエッジ部に発生する。
【００２３】
従来例で説明したプリンタ解像度によるエッジ部のジャギーはもちろんのこと、ここでは、スクリーン処理で発生する低線数なジャギーをも問題としており、改善の対象としている。
【００２４】
さらに、ＪＰＥＧのような非可逆な圧縮をかけた画像に対してスムージング処理を施そうとした場合には、圧縮による劣化で発生したモスキートノイズ（非可逆圧縮の圧縮率を高くして、ファイル容量を小さくしたとき、高域成分を含んだ映像やエッジ部分に発生するノイズ。蚊の群れがエッジ部分にまとわりついているように見えることから、画像処理技術分野においてモスキートノイズとして一般的に用いられている表現である）によって、本来マッチするはずのパターンとマッチせずに、十分なスムージング効果が得られないという問題もあった。
【００２５】
上記問題を解決する為に、特許文献１があげられるが、特許文献１の技術は２値画像を対象としているため、多値画像に対しては十分な効果が得られなかった。さらに、誤差拡散系の画像を対象としているため、様々な画像形成処理への対応が難しいことが指摘されていた。
【００２６】
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、第１及び第２の各エッジ検出結果に応じて、スムージング処理結果、第２のビット変換結果、擬似中間調処理結果を切り替えて出力することにより、スクリーン処理などの画像形成処理を施した多値画像データに対しても、問題なくエッジ部にスムージング処理が施される。また、ＪＰＥＧのような画像劣化が発生する画像データに対しても、問題なくスムージング処理を施すことができ、特定の画像処理済みの画像データに対するスムージング処理による画像劣化を確実に防止できる画像処理装置および画像処理方法を提供することである。
【課題を解決するための手段】
【００２７】
本発明は、Ｎｂｉｔの多値画像データを入力する入力手段と、前記Ｎｂｉｔ画像データをＭｂｉｔ（Ｎ≧Ｍ）画像データに変換する擬似中間調処理手段と、前記Ｎｂｉｔ画像データをＬｂｉｔ（Ｎ≧Ｌ）画像データに変換する第１のビット変換処理手段と、前記Ｌｂｉｔ画像データから制御信号を生成する制御信号生成手段と、前記制御信号生成手段により生成される前記制御信号から第１のエッジを検出する第１のエッジ検出手段と、前記制御信号生成手段により生成される前記制御信号から前記第１のエッジとは異なる第２のエッジを検出する第２のエッジ検出手段と、前記Ｌｂｉｔ画像データをＭｂｉｔ画像データにビット変換する第２のビット変換処理手段と、前記Ｌｂｉｔ画像データに対してスムージング処理を行い、Ｍｂｉｔ画像データを生成するスムージング処理手段と、前記第１及び第２のエッジ検出手段による各エッジ検出結果に応じて、前記スムージング処理結果、前記第２のビット変換処理手段のビット変換結果、前記擬似中間調処理手段による処理結果を切り替えて出力する画像出力切替え手段とを有することを特徴とする。
【発明の効果】
【００２８】
本発明によれば、スクリーン処理などの画像形成処理を施した多値画像データに対しても、問題なくエッジ部にスムージング処理が施される。また、ＪＰＥＧのような画像劣化が発生する画像データに対しても、問題なくスムージング処理を施すことができ、特定の画像処理済みの画像データに対するスムージング処理による画像劣化を確実に防止できるという効果を奏する。
【発明を実施するための最良の形態】
【００２９】
次に本発明を実施するための最良の形態について図面を参照して説明する。
【００３０】
図１は、本発明に係る画像処理装置を適用可能な複合機の一例を示す概略断面図であり、機械的構成としてカラースキャナ部Ａとプリンタ部Ｂとから構成されている。
【００３１】
図１に示すカラースキャナ部Ａにおいて、原稿給送装置２０１Ａは、原稿を最終頁から順に１枚ずつプラテンガラス２０２Ａ上へ給送する。そして、原稿の読み取り動作終了後、プラテンガラス２０２Ａ上の原稿を排出するものである。原稿がプラテンガラス２０２Ａ上に搬送されると、ランプ２０３Ａを点灯し、このランプ２０３Ａを搭載したスキャナユニット２０４Ａを移動させて原稿を露光走査する。この走査による原稿からの反射光は、ミラー２０５Ａ，２０６Ａ，２０７Ａおよびレンズ２０８ＡによってＣＣＤカラーイメージセンサ（以下、単に「ＣＣＤ」という）２０９Ａへ導かれる。
【００３２】
そして、ＣＣＤ２０９Ａに入射した反射光は、Ｒ，Ｇ，Ｂの３色に色分解され色毎の輝度信号として読み取られる。さらに、ＣＣＤ２０９Ａから出力される輝度信号はＡ／Ｄ変換によってデジタル信号の画像データとして画像処理部（３０４（図２参照））に入力し、シェーディング補正、階調補正、量子化（Ｎ値化）、スムージング処理などの画像処理が施された後、プリンタ部Ｂ（３０５）へ転送される。
【００３３】
図１に示すプリンタ部Ｂにおいて、レーザドライバ２２１Ｂは、レーザ発光部２０１Ｂを駆動するものであり、画像処理部３０４（図２）から出力された色毎の画像データに応じたレーザ光をレーザ発光部２０１Ｂによって発光させる。このレーザ光は感光ドラム２０２Ｂに照射され、感光ドラム２０２Ｂにはレーザ光に応じた潜像が形成される。
【００３４】
そして、この感光ドラム２０２Ｂの潜像の部分には現像器２０３Ｂによって現像剤であるトナーが付着される。なお、図２では、現像器は、図示の簡略化のため、唯一つのみが示されているが、Ｃ，Ｍ，Ｙ，Ｋの色毎にトナーが用意され、それに応じて４つの現像器が設けられることは勿論である。また、以上の構成の代わりに感光ドラムや現像器等を色毎に４組設ける構成であってもよい。
【００３５】
上述のレーザ光の照射開始と同期したタイミングで、カセット２０４Ｂまたはカセット２０５Ｂの選択されたいずれかから記録紙が給紙され、転写部２０６Ｂへ搬送される。
【００３６】
これにより、感光ドラム２０２Ｂに付着した現像剤を記録紙に転写することができる。現像剤が転写された記録紙は、定着部２０７Ｂに搬送され、定着部２０７Ｂの熱と圧力により現像剤の記録紙への定着が行われる。そして、定着部２０７Ｂを通過した記録紙は排出ローラ２０８Ｂによって排出され、ソータ２２０Ｂはこの排出された記録紙をそれぞれ所定のビンに収納して記録紙の仕分けを行う。
【００３７】
なお、ソータ２２０Ｂは、仕分けが設定されていない場合は、最上位のビンに記録紙を収納する。また、両面記録が設定されている場合は、排出ローラ２０８Ｂのところまで記録紙を搬送した後、排出ローラ２０８Ｂの回転方向を逆転させ、フラッパ２０９Ｂによって再給紙搬送路へ導く。多重記録が設定されている場合は、記録紙を排出ローラ２０８Ｂまで搬送しないようにフラッパ２０９Ｂによって再給紙搬送路２１０Ｂへ導く。再給紙搬送路へ導かれた記録紙は上述したタイミングで転写部２０６Ｂへ給紙される。
【００３８】
なお、色毎の潜像および現像の処理や定着は、上述の記録紙搬送機構を用いて、潜像形成等を４回分繰り返すことによって実現することは周知の通りである。
【００３９】
ところで、３１４はネットワークケーブルであり、一般的にイーサネット（登録商標）と呼ばれるシステムである。これは、１０Ｂａｓｅ−Ｔや１０Ｂａｓｅ５などの物理的なケーブルを用いてＴＣＰ／ＩＰなどのプロトコルにより、接続される各ユニット相互の情報授受やデータの転送を行うことができる。無論、ネットワークケーブルを用いた有線に限定されたものではなく、無線を用いても同様な環境構築ができることは言うまでもない。
【００４０】
このようなネットワークケーブル３１４を介し、ＰＣ上からＰＤＬ信号や画像ｂｉｔｍａｐ信号を受信し、前述したプリンタで出力することも可能な構成となっている。
【００４１】
〔第１実施形態〕
図２は、図１に示した画像処理装置のデータ処理構成を説明するブロック図であり、図１と同一のものには同一の符号を付してある。
【００４２】
図２において、画像読み取り部３０９は、レンズ３０１、ＣＣＤセンサー３０２、アナログ信号処理部３０３等により構成され、レンズ３０１を介してＣＣＤセンサー３０２に結像された原稿画像３００が、ＣＣＤセンサー３０２によりアナログ信号に変換される。変換された画像情報は、アナログ信号処理部３０３に入力され、サンプル＆ホールド、ダークレベルの補正等が行われた後にアナログ・デジタル変換（Ａ／Ｄ変換）される。
【００４３】
このようにして変換されたデジタル信号は、図３に示す画像処理部３０４において、シェーディング補正２１０１、色補正処理２１０３、フィルタ処理２１０４、γ補正処理２１０２、ビデオカウント処理２１０６、画像形成処理４０１、スムージング処理２１０５などがおこなわれた後、プリンタ３０５へ出力される。この画像形成処理４０１とは、入力Ｎビットの画像をＭビットの画像へと変換する処理を行う。具体的には、本実施形態ではＮを「８」、Ｍを「４」とした。処理法については、公知な処理である為、詳細な説明は略するが、スクリーン（ディザ）処理や誤差拡散処理などである。また、ビデオカウント処理２１０６とは、トナーの消費量を測定するための処理であり、プリンタへ出力される信号値より、トナー消費量を計算するものである。
【００４４】
これによって、トナーの残量をユーザに操作部３１３を介して知らせる構成となっている。処理の詳細については、周知なものであるため、説明を略する。本提案のポイントを含むスムージング処理２１０５以外の処理についても、同様に周知なものであるため、説明を略する。
【００４５】
図３は、図２に示した画像処理部３０４の一般的構成を説明するブロック図であり、図２と同一のものには同一の符号を付してある。
【００４６】
ところで、ネットワーク信号受信部３１５からの信号が色補正処理２１０３の後ろに接続されているが、これは、ネットワークを介して受信した信号がＣＭＹＫの濃度データであることを想定している為である。もし、受信した信号がＲＧＢの輝度信号であった場合は、不図示ではあるが色補正処理２１０３の前に接続されるようになることは言うまでもない。また、正確にはネットワークを介して受信した信号はＣＰＵ３回路部１０を介しているが、ここでは、簡略化して図３のように示してある。
【００４７】
一方、図に示すプリンタ３０５は、レーザ等からなる露光制御部（図示せず）、画像形成部（図示せず）、転写紙の搬送制御部（図示せず）等により構成され、入力された画像信号を転写紙上に記録する。
【００４８】
また、ＣＰＵ回路部３１０は、ＣＰＵ３０６、ＲＯＭ３０７、ＲＡＭ３０８等により構成され、画像読み取り部３０９、画像処理部３０４、プリンタ部３０５、操作部３１３等や、本装置のシーケンスを統括的に制御する。
【００４９】
操作部３１３には、ＲＡＭ３１１、ＲＯＭ３１２が予め用意されており、ＵＩ上に文字を表示したり、ユーザが設定した情報を記憶したり、表示したりすることが可能な構成となっている。
【００５０】
ユーザによって操作部３１３で設定された情報は、ＣＰＵ回路部３１０を介して、画像読み取り部３０９、画像処理部３０４、プリンタ３０５などに送られる構成となっている。
【００５１】
以上説明した流れの中で、本提案のポイントは、画像処理部３０４に含まれている。以下、画像処理部内のスムージング処理２１０５について説明をおこなう。
【００５２】
図４は、図３に示したスムージング処理部２１０５の構成を説明する概略ブロック図である。
【００５３】
図４においては、１色分（ＩｍａｇｅＤａｔａ)の処理しか示していないが、実際には図４の処理と同様のものが他の色数分設けられている。つまり、ＣＭＹＫ各色、独立に処理する構成となっており、図４はその内の１色を示してある。
【００５４】
まず、はじめに本提案のポイントであるスムージング処理部２１０５の概略的なフローについて説明する。
【００５５】
多値画像としてＮビットのデータが入力される。Ｎビットデータは、ビット変換部４０２と画像形成処理部４０１とにそれぞれ入力され、Ｌビットの信号とＭビットの信号とに変換される。そして、Ｌビットの信号から１ビットの制御信号が生成される。これらの信号は、詳細は図９または図１６に示す画像処理信号生成部４０４内に設ける画像信号補正部７０５及び７０６に入力され、画像信号補正部１及び２においてそれぞれＭビットの出力データがセレクタ７０７に出力される。画像信号補正部７０５と画像信号補正部７０６は、スムージング処理に似た処理を実行するものであり、注目画素のデータの有無によって、処理が異なることを特徴としている。詳細な処理は後述するが、入力される画像信号を処理するためのフローはこのようになっている。
【００５６】
以下、図４を用いて、本実施形態の具体的な処理について説明する。
【００５７】
スムージング処理部２１０５には、８ｂｉｔの画像データ（ＩｍａｇｅＤａｔａ）が入力される。前述したように、これがＮビットの入力画像データである。この信号は、前述した色補正やシェーディング補正などが施されたものである。そして、ビット変換部４０２で８ｂｉｔ→３ｂｉｔ変換が実行される。この変換後のビットが前述したＬビット信号である。この処理の詳細を図５に示した。
【００５８】
図５は、図４に示したビット変換部４０２の機能処理を実行するためのＣ言語によるプログラムリスト例を示す図であり、図４と同一のものには同一の符号を付してある。
【００５９】
図５において、破線の楕円５０２で囲まれたＩｎＤａｔａ＿Ｋ［ｙｙ］［ｘｘ］は入力される８ｂｉｔデータを表すものである。そして、破線の楕円５０３で囲まれたＩｎＤａｔａ＿Ｋ［ｙｙ］［ｘｘ］＝ｎ；（ｎは０から７までの整数）は出力される３ｂｉｔデータを表している。プログラム処理例５０１の“ａｒａｍｓ−＞”で記されたものがパラメータを表しており、ここでは、“ｐａｒａｍｓ−＞ＳｅｖｅｎＣｏｎｖｅｒｓｉｏｎＫ７〜１”までの７種類のパラメータが設定されている。
【００６０】
具体的には、８ｂｉｔのデータが７種類のパラメータの各々に設定されている。例えば、“２２４，１９２，１６０，１２８，９６，６４，３２”である。入力される８ｂｉｔのデータ値とパラメータ値とをｉｆ文で随時比較し、３ｂｉｔ信号を出力する構成となっている。
【００６１】
上述した処理により、３ｂｉｔ変換された信号は、ビット変換部４０２から制御信号生成部４０３と画像信号生成部４０４へ出力される構成となっている。
【００６２】
次に、図４に示した制御信号生成部４０３の説明を行う。制御信号生成部４０３では、スムージング処理を施す箇所を検出するための前処理画像データを生成している。この画像データは１ｂｉｔであり、詳細は図６の６０１にＣ言語で示す。
【００６３】
図６は、図４に示した制御信号生成部４０３の機能処理を実行するためのプログラムリスト例を示す図であり、図４と同一のものには同一の符号を付してある。
【００６４】
具体的には、図６において、ｉｆ文６０２で、パラメータ“ｒｅｇ＿Ｚｃｈｅｃｋ”より大きい入力データ“ＩｎＤａｔａ”の箇所（画素）のみ、出力“ＯｕｔＤａｔａＺ”を「１」にし、それ以外は、「０」にする構成となっている。これにより、スムージングを施したい濃度値（或いは輝度値）を任意にコントロール可能とした。
【００６５】
次に、図４に示した画像信号生成部４０４の機能処理例について、図７を用いて説明する。
【００６６】
図７は、図４に示した画像信号生成部４０４の機能処理構成を説明するブロック図であり、図４と同一のものには同一の符号を付してある。
【００６７】
図７において、入力される信号は、前述した１ｂｉｔの像域信号“ＯｕｔＤａｔａＺ”と、Ｌビットと定義した３ｂｉｔ画像信号“ＩｎＤａｔａ”と、Ｍビットと定義した画像形成処理後の４ｂｉｔ信号“ＩｎＤａｔａＳ”である。
【００６８】
これらの信号は、後述する処理でエリア処理をおこなうため、ＦｉＦｏメモリが数ライン用意されている。ライン数の詳細は、ＦｉＦｏメモリ７０１の６ライン，ＦｉＦｏメモリ７０２の６ライン，ＦｉＦｏメモリ７０３の３ラインである。これらの信号を用いて、後述する処理を施した後、４ｂｉｔ信号“ＯｕｔｐｕｔＤａｔａ”が出力される構成となっている。以下、各処理の詳細について順に説明する。
【００６９】
まず、図７における乱数生成部７０４の詳細を、図８に示すプログラムリスト例８０１のＣ言語例を参照して説明する。
【００７０】
図８は、図７に示した乱数生成部７０４の機能処理を実行するためのプログラムリスト例を示す図であり、図７と同一のものには同一の符号を付してある。
【００７１】
図８において、８０２，８０３はそれぞれ関数で、関数８０２は、初期化用であり、はじめに１度しか実行されない。それに対し、関数８０３は、画素毎に繰り返し処理されるものである。
【００７２】
具体的には、まずはじめに初期化として、関数８０２において、「０〜２５」の２６個のレジスタ“ｐ”に０が設定された後、“ｐ[２]，ｐ[４]，ｐ[８]，ｐ[１６]”の箇所のみ、１ｂｉｔのパラメータ値“ｐａｒａｍｓ−＞ｒｄ１，ｒｄ２，ｒｄ３，ｒｄ４”が設定される処理となっている。
【００７３】
そして、画素毎に関数８０３による演算を繰り返して乱数ｒｄ（ｏｕｔ)を生成する処理となっている。
【００７４】
ここで、関数８０３の演算とは、“ｐ[０]＝（（ｐ[２５]＾ｐ[２４]＾ｐ[２３]＾ｐ[２２])＆１)”でイクスクルシーブル・オア（ＸＯＲ)演算をおこない、ｐ[０]に結果を代入する。そして、ｆｏｒ文で各データをシフトし、ｐ[１７]の１ｂｉｔ信号を乱数値として出力するものである。
【００７５】
このようにして求められた１ｂｉｔの乱数値は、図７に示した画像信号補正部７０５と画像信号補正部７０６に出力される構成となっている。
【００７６】
以下、画像信号補正部７０５について、図９を参照して説明する。
【００７７】
図９は、図７に示した画像信号補正部７０５の詳細構成を説明するブロック図であり、図７と同一のものには同一の符号を付してある。
【００７８】
図７に示したように、前述した“ＯｕｔＤａｔａＺ”，“ＩｎＤａｔａ”，“ＩｎＤａｔａＳ”，“ｒｄ”が入力され、補正信号として４ｂｉｔの“ＯＵＴＤａｔａ＿０”が出力される構成となっている。
【００７９】
内部の処理は、大きく分けて３つであり、第１の補正部用の第１のエッジ検出手段１０２と、第１の補正部用の第２のエッジ検出手段１０１と、そして、第１の補正部用の画像出力切り替え手段１０３である。
【００８０】
図１０は、図９に示した第１の補正部用の第２のエッジ検出手段１０１の機能処理を実行するためのプログラムリスト例を示す図であり、図９と同一のものには同一の符号を付してある。
【００８１】
図１０に示すように、第１の補正部用の第２のエッジ検出手段１０１の処理は、大きく分けてカウント処理９０２とカウント処理９０４の２つに分かれている。
【００８２】
カウント処理９０２の方は、水平方向（ｘ方向）に０データのドットをカウントする処理となっている。その様子をカウント例９０３に示した。
【００８３】
一方、カウント処理９０４の方は、垂直方向（ｙ方向）に０データのドットをカウントする処理となっている。その様子をカウント例９０５に示した。
【００８４】
これらのカウント処理は共に前述した１ｂｉｔの像域信号からエッジを検出する処理であるが、いずれも、ラプラシアンのようなフィルタ処理ではなく、ドットをカウントすることで水平方向と垂直方向のエッジを検出していることを特徴としている。
【００８５】
具体的な処理については、前述したカウント処理９０２とカウント処理９０４に示したとおりである。このような処理によって求めたカウント結果を、３ｂｉｔのｆｇ＿ｘとｆｇ＿ｙとして出力する構成になっている。
【００８６】
次に、図９に示したもう一つのエッジ検出手段１０２について説明する。
【００８７】
図１１は、図９に示した第１の補正部用の第１のエッジ検出手段１０２の機能処理を実行するためのＣ言語によるプログラムリスト例を示す図であり、図９と同一のものには同一の符号を付してある。本処理は、大きく分けて３段階の処理になっている。
【００８８】
まず、プログラム１００２に示した部分であるが、検出処理１００５に示したようにパラメータ“ＥｄｇｅＳｉｚｅＢ”の領域内に０の像域信号があるかどうか検出する。その結果が、ｅｄｇｅ信号である。
【００８９】
次に、プログラム１００３に示した部分であるが、カウント処理１００６に示したように１５ｘ７の画素領域内に、パラメータ“ｒｅｇ＿Ｚｃｈｅｃｋ”と同じ値が何画素あるかをカウントする。その結果が、ｆｇ信号である。
【００９０】
そして、最後に、前述したｆｇのカウント値がパラメータ“ｔｈｒｅ＿Ｂ”以上の場合は、前述したｅｄｇｅ信号を「０」にし、それ以外は、そのまま、ｅｄｇｅ信号を出力する構成となっている。
【００９１】
ここでの特徴は、前述したようにラプラシアンのようなフィルタを用いずにエッジ処理をおこなっていること、そして、パラメータ“ｒｅｇ＿Ｚｃｈｅｃｋ”と同じ値がエリア内に存在するかをチェックし、同じ値が任意の数あった場合のみ、前述したｅｄｇｅの情報をクリアすることである。
【００９２】
これにより、前述した図６の像域信号生成部における任意濃度以上にスムージング補正をかける設定による弊害を打ち消すことが可能となる。弊害とは、制御信号生成部４０３で生成した信号が、グラデーションのようななだらかな濃度変化の箇所でも、パラメータで設定された濃度の箇所に像域信号“ＯｕｔＤａｔａＺ”が生成されてしまうことである。
【００９３】
その結果、本来、スムージング補正をかけるべきでない箇所に補正がかかってしまう弊害があった。それを修正することが可能となる。
【００９４】
以上説明した処理により、１ｂｉｔのエッジ信号が生成され“ＥｄｇｅＣ”が出力される構成となっている。
【００９５】
続いて、補正部１用画像出力切り替え手段１０３について説明する。
【００９６】
図１２は、図９に示した補正部１用画像出力切り替え手段１０３の機能処理を実行するためのＣ言語によるプログラムリスト例を示す図であり、図９と同一のものには同一の符号を付してある。
【００９７】
本処理には、図１２に示すように、前述した“ｆｇ＿ｘ”，“ｆｇ＿ｙ”，“ＥｄｇｅＣ”，“ＩｎＤａｔａ”，“ｒｄ”などが入力され、後述する処理を施した後、４ｂｉｔの“ＯＵＴＤＡＴＡ＿０”が出力される構成となっている。
【００９８】
処理の詳細であるが、大きくわけて、１１０２、１１０３、１１０４の３つに分かれている。以下、順に説明する。
【００９９】
まず、プログラム１１０２は、
（（ｆｇ＿ｘ＞＝（ｐａｒａｍｓ−＞ｓｅｒｉａｔｅＢＫｘ））｜｜（ｆｇ＿ｙ＞＝（ｐａｒａｍｓ−＞ｓｅｒｉａｔｅＢＫｙ）））＆＆ｅｄｇｅ！＝０−−−（１)
のチェックを行う。ｐａｒａｍｓ−＞ｓｅｒｉａｔｅＢＫｘとｐａｒａｍｓ−＞ｓｅｒｉａｔｅＢＫｙは、３ｂｉｔのパラメータである。
【０１００】
具体的には、注目画素のｆｇ＿ｘ、もしくは、ｆｇ＿ｙが、上記パラメータ以上であるかどうかをチェックし、上記パラメータ以上ならば、さらに、ｅｄｇｅが「０」以外かをチェックしている。このｅｄｇｅとは、前述したＥｄｇｅＣと等価なものである。
【０１０１】
ここで、ｅｄｇｅが０以外ということは、図１１で説明したように任意のエリア内に０のデータが幾つか存在するということを意味している。
【０１０２】
要するに、注目画素に「０」以外のデータがあった場合、（１）の比較文は、水平・垂直方向に任意の数以上「０」が続くエッジ部であることを示している。
【０１０３】
言い換えると、水平・垂直以外のエッジ部を指し示している。このようなエッジに対し、演算処理１１０５に示した範囲内の演算を行うことを特徴としている。
【０１０４】
この演算とは、パラメータ“ｐａｒａｍｓ−＞ｍａｓｋ２”と、入力データ“ＩｎＤａｔａ（Ｄａｔａ）”との積和演算である。基本的に、この積和演算は、スムージング処理であることを特徴としており、ジャギーの発生するエッジ部にハーフトーンデータを出力するためのデータ作成がおこなわれる構成となっている。
【０１０５】
ここで作成されたデータは、最終的に４ｂｉｔになるようにＬＵＴＩのようなテーブル（メモリ）によって、変換されて出力されることを特徴としている。このテーブル変換が第２のビット変換手段としての図１２に示す画像出力切替え手段１０３による処理となる。
【０１０６】
次に、プログラム１１０３は、（１）の条件文にあてはまらないが、
ｅｄｇｅ！＝０−−−（２）
の条件にあてはまる場合の処理を行っている。上記（２）の条件とは、要するに、水平・垂直方向のエッジであることを意味している。そのようなエッジに対しては、プログラム１１０３に示したような処理を施している。
【０１０７】
具体的には、注目画素に０以外のデータがあった場合、Ｄａｔａ[ｙｙ][ｘｘ])＋ｒｄのように１ｂｉｔの乱数を付加し、それ以外は、「０」を出力する処理である。
【０１０８】
そもそも、Ｄａｔａ（ＩｎＤａｔａ）は、３ｂｉｔにビット変換部４０２で変換されていた為、ＬＵＴＥのようなテーブルを用いて４ｂｉｔに変換して出力する必要がある。この変換が前述同様、第２のビット変換手段としての図１２に示す画像出力切替え手段１０３による処理となる。
【０１０９】
ところで、前述した乱数ｒｄの加算は必須ではなく、加算しない場合（０を加算する場合）もあり得ることは言うまでもない。
【０１１０】
最後に、プログラム１１０４は、前述した（１)，（２)の条件にあてはまらなかった場合の処理を行っている。
【０１１１】
つまり、エッジ以外の箇所である。そのような箇所に対しては、入力されたＩｎＤａｔａＳの値をそのまま出力する構成となっている。言い換えると、画像形成処理部４０１で画像形成処理したデータをそのまま出力している。
【０１１２】
以上、幾つかの特徴を説明したが、その他の特徴は、エッジ部検出処理のデータが、画像形成処理部４０１の出力データとは異なることである。その結果、スクリーンのような画像形成処理を施した画像に対しても、問題なくエッジ部にスムージング処理がかけられ、かつ、ＪＰＥＧのような画像劣化がある画像に対しても、画像形成処理前のデータを３ｂｉｔ化して１ｂｉｔ信号を作成することで、問題なくスムージング処理がかけられる。
【０１１３】
次に、図７に示した画像信号補正部７０６について、図１３を用いて説明する。
【０１１４】
図１３は、図７に示した画像信号補正部７０６の詳細構成を説明するブロック図であり、図７と同一のものには同一の符号を付してある。
【０１１５】
図１３に示した処理には、前述した“ＯｕｔＤａｔａＺ”，“ＩｎＤａｔａ”，“ＩｎＤａｔａＳ”，“ｒｄ”が入力され、補正信号として４ｂｉｔの“ＯＵＴＤａｔａ＿１”が出力される構成となっている。入力される信号は、図１で説明したものと同じである。
【０１１６】
内部の処理も、前述した図１と同様に３つに分かれており、補正部２用エッジ検出手段１２０１と補正部２用エッジ検出手段１２０２、そして、補正部２用画像出力切り替え手段１２０３である。
【０１１７】
図１４は、図１３に示した補正部２用エッジ検出手段１２０１の機能処理を実行するためのＣ言語によるプログラムリスト例を示す図であり、図１３と同一のものには同一の符号を付してある。
【０１１８】
図１４において、補正部２用エッジ検出手段１２０１の処理は、大きく分けてプログラム１３０２とプログラム１３０４の２つに分かれている。
【０１１９】
プログラム１３０２の方は、水平方向（ｘ方向）に０以外のドットをカウントする処理となっている。その様子をカウント処理１３０３に示した。
【０１２０】
一方、プログラム１３０４の方は、垂直方向（ｙ方向）に０以外のドットをカウントする処理となっている。その様子をカウント処理１３０５に示した。これらのカウント処理は共に前述した１ｂｉｔの像域信号からエッジを検出する処理であるが、いずれも、前述した図１と同様、ラプラシアンのようなフィルタ処理ではなく、ドットをカウントすることで水平方向と垂直方向のエッジを検出していることを特徴としている。ところで、ｆｇ＿ｘ１，ｆｇ＿ｘ２のように左右、或いは、ｆｇ＿ｙ１，ｆｇ＿ｙ２のように上下に分割してカウントしているところが、前述した補正部１用エッジ検出手段１２０と異なる。
【０１２１】
以上、プログラム１３０２とプログラム１３０４に示したような処理によって求めた０以外のカウント結果を、３ｂｉｔのｆｇ＿ｘとｆｇ＿ｙとして出力する構成になっている。
【０１２２】
次に、もう一つのエッジ検出手段である補正部２用エッジ検出手段１２０２について説明する。
【０１２３】
図１５は、図１３に示した補正部２用エッジ検出手段１２０２の機能処理を実行するためのＣ言語によるプログラムリスト例を示す図であり、図１３と同一のものには同一の符号を付してある。本処理は、大きく分けて３段階の処理になっている。
【０１２４】
まず、プログラム１４０２に示した部分だが、検出処理１４０５に示したようにパラメータ“ＥｄｇｅＳｉｚｅＷ”の領域内に１の像域信号があるかどうか検出する。その結果が、ｅｄｇｅ信号である。
【０１２５】
次に、プログラム１４０３に示した部分だが、カウント処理１４０６に示したように１５×７の領域内に、パラメータ“Ｚｃｈｅｃｋ”と同じ値が何画素あるかをカウントする。その結果が、ｆｇ信号である。
【０１２６】
そして、最後に、前述したｆｇのカウント値がパラメータ“ｔｈｒｅ＿Ｗ”以上の場合は、前述したｅｄｇｅ信号を「０」にし、それ以外は、そのまま、ｅｄｇｅ信号を出力する構成となっている。
【０１２７】
ここでの特徴は、前述したようにラプラシアンのようなフィルタを用いずにエッジ処理をおこなっていること、そして、パラメータ“Ｚｃｈｅｃｋ”と同じ値がエリア内に存在するかをチェックし、同じ値が任意の数あった場合のみ、前述したｅｄｇｅの情報をクリアすることである。
【０１２８】
これにより、得られる効果は、図１１の説明でおこなったものと等価である。効果の内容については、繰り返しになるので、説明を略する。
【０１２９】
このような処理により、１ｂｉｔのエッジ信号が生成され“ＥｄｇｅＣ”が出力される構成となっている。
【０１３０】
続いて、補正部２用画像出力切り替え手段１２０３について説明する。
【０１３１】
図１６は、図１３に示した補正部２用画像出力切り替え手段１２０３の機能処理を実行するためのＣ言語によるプログラムリスト例を示す図であり、図１３と同一のものには同一の符号を付してある。本処理の基本は、前述した補正部１用画像出力切り替え手段１０３と等価である為、詳細な説明は略する。ただし、ｆｇ＿ｘ，ｆｇ＿ｙ，ＥｄｇｅＣ（ｅｄｇｅ)の信号の意味が異なる。これらの意味については、前述したとおりであるが、まとめると、補正部１用画像出力切り替え手段１０３へ入力されていたｆｇ＿ｘ，ｆｇ＿ｙ，ＥｄｇｅＣは、像域信号（ＤａｔａＺ)が０の数をカウントしていた。
【０１３２】
一方、図１６に示したｆｇ＿ｘ，ｆｇ＿ｙ，ＥｄｇｅＣは、像域信号（ＤａｔａＺ)が１の数をカウントしている。その点が大きく異なる。その他については、基本的に等価である。
【０１３３】
以上説明してきた画像信号補正部１の出力“ＯＵＴＤａｔａ＿１”と、画像信号補正部２の出力“ＯＵＴＤａｔａ＿２”とが、図７に示したセレクタ７０７に入力され、４ｂｉｔの最終出力信号“ＯｕｔｐｕｔＤａｔａ”が出力される構成となっている。このセレクタ７０７は、注目画素位置のデータに応じて出力を切り替える処理をおこなっている。注目画素のデータとは、前述した像域信号（ＤａｔａＺ＝ＯｕｔＤａｔａＺ)であり、この信号が「１」のときは、画像信号補正部７０５の出力を選択し、「０」のときは、画像信号補正部７０６の出力を選択している。
【０１３４】
上記で説明した処理を施した結果が、スムージング処理結果としてプリンタ３０５に出力される構成となっている。出力されたイメージを図１７に示した。
【０１３５】
図１７は、本発明に係る画像処理装置におけるエッジ処理結果を示す図である。
【０１３６】
図２３に示す例として比較して、本実施形態によれば、図１７に示すように、着目箇所は、エッジ部である。図１７に示したようにスクリーンのパターンの間を埋めるようにデータが薄く出力されることを特徴としている。
【０１３７】
不図示だが、さらに、ＪＰＥＧのような非可逆な圧縮処理を施した画像に対しても、問題なくエッジ部の改善ができることも前述したとおりである。
【０１３８】
理由は、エッジ検出用の画像を作成する際、３ビットにビット変換し、さらに、その画像より１ビットの像域信号を作成しているため、圧縮による微妙な劣化情報を除去できる効果があるからである。
【０１３９】
本構成の特徴は、以上説明してきたとおりであるが、エッジを検出画像と、画像形成された画像とを別々に処理することを特徴としているだけでなく、エッジ検出法にも特徴があることは前述したとおりである。
【０１４０】
〔第２実施形態〕
なお、第２実施形態における基本的な装置構成で上述した第１実施形態と同様な部分は、同一番号を付けて説明を省略する。
【０１４１】
図１８は、本発明の第２実施形態を示す画像処理装置のスムージング処理部を説明するブロック図であり、図４と同一のものには同一の符号を付してある。
【０１４２】
図１８に示す第２実施形態の特徴は、制御信号生成部２２０１へ入力される信号である。具体的には、ＳｃｒｅｅｎＤａｔａ（ＩｎＤａｔａＳ)である。この信号は、画像形成処理後の信号であり、この信号から、実施例１で説明した像域信号（ＤａｔａＺ)を作成していることを特徴としている。
【０１４３】
図１９は、図１８に示した制御信号生成部２２０１の機能処理を実行するためのＣ言語によるプログラムリスト例を示す図である。
【０１４４】
図１９に示すように、ｒｅｇ＿ａｉｒはレジスタであり、４ｂｉｔの値を設定することができる構成となっている。このレジスタ値と入力された信号ＩｎＤａｔａＳとを比較し、レジスタ値以上の時は、像域信号ＯｕｔＤａｔａＺ（ＤａｔａＺ)を１にし、それ以外は、０にする構成となっている。
【０１４５】
本実施形態は、画像形成処理後のデータを使用しているため、画像形成処理に忠実な補正ができることを特徴としている。つまり、図１７で説明したような縁取りではなく、従来例で説明したようなプリンタ解像度の問題で発生するジャギーの改善に適していると言える。ただし、従来例と異なる点は、ＪＰＥＧのような非可逆な圧縮法を用いた画像でも、エッジ部の画質劣化を補うような出力が可能になる効果があることである。
【０１４６】
このことから、本実施例は、非可逆な圧縮を用いた場合のＦａｘのような解像度の低いプリンタに適しているといえる。
【０１４７】
上記実施形態によれば、プリンタの解像度によるジャギーはもちろんのこと、画像形成処理により発生するジャギーをも改善することが可能となる。この画像形成処理とは、例えば、スクリーン処理のようなものを指しており、１７５線や１３３線のスクリーン処理で発生するジャギーのことである。このようなスクリーンのジャギーは、プリンタの解像度より遥かに低い解像度で発生するため、ハーフトーン文字やラインで顕著に目立っていたが、これを改善することが本発明で可能となった。
【０１４８】
また、スクリーン処理のような画像形成処理だけでなく、誤差拡散系の画像形成処理を施した画像に対しても効果がある。誤差拡散系処理を施したハーフトーン文字やラインは、ジャギーとは異なるガタツキがあるが、それをも改善可能とした。
【０１４９】
さらに、ＪＰＥＧのような非可逆な圧縮を施すことにより発生するエッジ部のモスキートノイズに対しても効果がある。つまり、圧縮により発生したエッジ部の劣化を本発明で改善可能とした。
【０１５０】
言うまでもないが、本発明を画像処理装置に適用すると、スキャナで読み込んだイメージ画像、ＰＣから送信したＰＤＬ画像、共にエッジ部の改善をおこなうことが可能となる。
【０１５１】
以下、図２０に示すメモリマップを参照して本発明に係る印刷装置で読み取り可能なデータ処理プログラムの構成について説明する。
【０１５２】
図２０は、本発明に係る印刷装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【０１５３】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１５４】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１５５】
本実施形態における各Ｃ言語によるプログラム例（図５〜図８，図１０〜図１２，図１４〜図１６，図１９のプログラムリストに基づく処理手順参照）に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１５６】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１５７】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１５８】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１５９】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【０１６０】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１６１】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバやｆｔｐサーバ等も本発明の請求項に含まれるものである。
【０１６２】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１６３】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１６４】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１６５】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から排除するものではない。
【図面の簡単な説明】
【０１６６】
【図１】本発明に係る画像処理装置を適用可能な複合機の一例を示す概略断面図である。
【図２】図１に示した画像処理装置のデータ処理構成を説明するブロック図である。
【図３】図２に示した画像処理部の一般的構成を説明するブロック図である。
【図４】図３に示したスムージング処理部の構成を説明する概略ブロック図である。
【図５】図４に示したビット変換部の機能処理を実行するためのプログラムリスト例を示す図である。
【図６】図４に示した制御信号生成部の機能処理を実行するためのプログラムリスト例を示す図である。
【図７】図４に示した画像信号生成部の機能処理構成を説明するブロック図である。
【図８】図７に示した乱数生成部の機能処理を実行するためのプログラムリスト例を示す図である。
【図９】図７に示した画像信号補正部の詳細構成を説明するブロック図である。
【図１０】図９に示した第１の補正部用の第２のエッジ検出手段の機能処理を実行するためのプログラムリスト例を示す図である。
【図１１】図９に示した第１の補正部用の第１のエッジ検出手段の機能処理を実行するためのＣ言語によるプログラムリスト例を示す図である。
【図１２】図９に示した補正部１用画像出力切り替え手段の機能処理を実行するためのＣ言語によるプログラムリスト例を示す図である。
【図１３】図７に示した画像信号補正部の詳細構成を説明するブロック図である。
【図１４】図１３に示した補正部２用エッジ検出手段の機能処理を実行するためのＣ言語によるプログラムリスト例を示す図である。
【図１５】図１３に示した補正部２用エッジ検出手段の機能処理を実行するためのＣ言語によるプログラムリスト例を示す図である。
【図１６】図１３に示した補正部２用画像出力切り替え手段の機能処理を実行するためのＣ言語によるプログラムリスト例を示す図である。
【図１７】本発明に係る画像処理装置におけるエッジ処理結果を示す図である。
【図１８】本発明の第２実施形態を示す画像処理装置のスムージング処理部を説明するブロック図である。
【図１９】図１８に示した制御信号生成部の機能処理を実行するためのＣ言語によるプログラムリスト例を示す図である。
【図２０】本発明に係る画像処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【図２１】従来の画像処理装置における文字処理状態を説明する模式図である。
【図２２】従来の画像処理装置における文字処理状態を説明する模式図である。
【図２３】従来の画像処理装置における文字処理状態を説明する模式図である。
【図２４】従来の画像処理装置における文字処理状態を説明する模式図である。
【符号の説明】
【０１６７】
４０１  画像形成処理部
４０２  ビット変換部
４０３  制御信号生成部
４０４  画像信号生成部
２１０５  スムージング処理部
【図１】
2005129995.tif 000003
【図２】
2005129995.tif 000004
【図３】
2005129995.tif 000005
【図４】
2005129995.tif 000006
【図５】
2005129995.tif 000007
【図６】
2005129995.tif 000008
【図７】
2005129995.tif 000009
【図８】
2005129995.tif 000010
【図９】
2005129995.tif 000011
【図１０】
2005129995.tif 000012
【図１１】
2005129995.tif 000013
【図１２】
2005129995.tif 000014
【図１３】
2005129995.tif 000015
【図１４】
2005129995.tif 000016
【図１５】
2005129995.tif 000017
【図１６】
2005129995.tif 000018
【図１７】
2005129995.tif 000019
【図１８】
2005129995.tif 000020
【図１９】
2005129995.tif 000021
【図２０】
2005129995.tif 000022
【図２１】
2005129995.tif 000023
【図２２】
2005129995.tif 000024
【図２３】
2005129995.tif 000025
【図２４】
2005129995.tif 000026