(57)【特許請求の範囲】
【請求項１】
印刷される画像の端部における濃度の補正を行うため、それぞれ濃度の異なる端部を有する複数のサンプルをメディアに印刷する印刷手段と、
前記印刷手段により前記メディアに印刷された複数のサンプルの中から選択された１つのサンプルから取得した濃度特性を格納する格納手段と、
前記格納手段で格納された前記濃度特性と、印刷対象のメディアとに基づいて、印刷される画像の端部に対して濃度補正を行う補正手段と
を有し、
前記格納手段は、メディアに印刷されたサンプルから取得した濃度特性を、当該メディアの種類と対応付けて格納することを特徴とする画像処理装置。
【請求項２】
前記印刷されるサンプル及び前記印刷される画像に対してハーフトーニング処理を行う処理手段を備え、
前記格納手段は、前記選択されたサンプルから取得した濃度特性を当該サンプルに対するハーフトーニング処理と対応付けて格納し、
前記補正手段は、前記印刷される画像に対するハーフトーニング処理にさらに基づいて、前記濃度補正を行うことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記選択されるサンプルは、主走査方向端部の濃度特性と副走査方向端部の濃度特性との差異が最も少ないものであることを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記印刷されるサンプルに対しては、スムージング処理を行わないことを特徴とする請求項１から３のいずれか１つに記載の画像処理装置。
【請求項５】
印刷される画像の端部における濃度の補正を行うため、それぞれ濃度の異なる端部を有する複数のサンプルをメディアに印刷する印刷ステップと、
前記印刷ステップにより前記メディアに印刷された複数のサンプルの中から選択された１つのサンプルから取得した濃度特性を格納手段に格納する格納ステップと、
前記格納ステップで格納された前記濃度特性と、印刷対象のメディアとに基づいて、印刷される画像の端部に対して濃度補正を行う補正ステップと
を有し、
前記格納ステップは、メディアに印刷されたサンプルから取得した濃度特性を、当該メディアの種類と対応付けて格納手段に格納することを特徴とする画像処理方法。
【請求項６】
コンピュータを請求項１から４のいずれか１つに記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷媒体に印字する際の画像処理方法に関し、特に、印字される画像の端部領域の画質劣化を改善する技術に関するものである。
【背景技術】
【０００２】
従来から、レーザービームプリンタなどの電子写真方式を用いた画像形成装置では、感光体を帯電、露光して静電潜像を形成し、この潜像を現像剤であるトナーにより現像し、以後周知の電子写真プロセスを利用して画像を記録材上に形成している。このような画像形成装置において、記録材上に印刷される画像端部（エッジ部）では濃度が濃くなったり、薄くなったりする現象が発生する場合がある。
【０００３】
図１はその様子を模式的に表現したものである。同図は、矩形パッチを所定の濃度レベルで均一に印字したものを表しており、図の横方向は主走査方向、縦方向は副走査方向である。また、同図に示す（ａ）、（ｂ）の部位は副走査方向の画像端部を表現している。
【０００４】
図１の例では、本来、均一の濃度で印刷されるべき矩形パッチが、画像形成装置の電子写真特性によって、（ａ）の部位で所定の濃度より濃く、（ｂ）の部位で所定の濃度より薄く印字されることを表している。この（ａ）、（ｂ）で示される濃度変化の程度は、画像形成装置を使用する環境や耐久状態によって変わる。また（ａ）、（ｂ）で示される印字の指向特性、すなわち、（ａ）が薄く、（ｂ）が濃いと言った違いは、一般に現像機の構成によって変わることが知られている。
【０００５】
これらに示した画像端部での濃度変化が発生する原因は、作像、現像プロセスに依存するもの、或いは、転写、定着プロセスなどに依存するものなど様々であり、この現象は一般に、「はき寄せ」、「白抜け」などと呼ばれたりする（例えば特許文献１）。
【０００６】
また一般に、図１に示すような現象は、例えば、ＰＤＬ（Page Description Language）により印字出力される、矩形、線画、文字などに代表されるような信号レベルが均一で高周波成分の多い画像では画像劣化として認識されやすい。逆に写真など自然画像では、顕著な画質劣化としては認識されにくい特徴をもつことも知られている。
【０００７】
このような出力画像の問題点に注目し、画像端部の画質劣化を改善する技術として、例えば特開文献２が提案されている。特開文献２の実施例では、処理中のビデオデータから画像のエッジ部／非エッジ部を検出し、非エッジ部の信号に所定の値を乗じて信号を変化させることで、端部に影響を与えるトナー像を変化させて画質劣化を改善する。また、他の実施例では、エッジ部／非エッジ部に依存せず、ライン画像といった画像の属性情報を判断して、ライン幅に応じて濃度信号を変化させることで改善している。
【０００８】
【特許文献１】特開２００４−２１２０１号公報
【特許文献２】特開平０９−０８５９９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
上記背景技術で説明した画像端部の濃度変化を補正する特開文献２の技術では、予め対象となる画像形成装置の劣化具合を検証し、ハーフトーニングやレーザ光量、それに補正幅を調整することでその効果を説明している。特に、文字部のシャープさや飛び散り具合、それにトナー消費量などにその効果を求めている。
【００１０】
しかしながら、上記手法は端部が濃くなりやすい形成プロセスに注目した補正技術であり、端部が薄くなる形成プロセスに対する補正技術を提供していない。
【００１１】
電子写真プロセスなどの画像形成装置では、使用される環境、耐久状態、機体差などで、画像端部の画像形成特性は必ずしも一定の補正条件で改善できるものではないため、出力機器の状態に合わせた、画像端部の適応的な補正手段が望まれる。この点においても、上記手法では、機器の状態に合わせた適応的な補正手段を提供していない。
【課題を解決するための手段】
【００１２】
本発明は、上記従来技術の問題点を解消すべく創案されたものである。
【００１３】
本発明は、使用する画像形成装置の端部劣化状態を把握するためのデータを生成し、その出力物から端部の濃度劣化の程度を検出する。そして、その検出結果から端部における印字の指向特性に応じて、適応的に濃度レベルを補正することで、上述の問題点を改善するものであり、具体的には、以下の構成を備える。
【００１４】
本発明に係る画像処理装置は、印刷される画像の端部における濃度の補正を行うため、それぞれ濃度の異なる端部を有する複数のサンプルをメディアに印刷する印刷手段と、前記印刷手段により前記メディアに印刷された複数のサンプルの中から選択された１つのサンプルから取得した濃度特性を格納する格納手段と、前記格納手段で格納された前記濃度特性と、印刷対象のメディアとに基づいて、印刷される画像の端部に対して濃度補正を行う補正手段とを有し、前記格納手段は、メディアに印刷されたサンプルから取得した濃度特性を、当該メディアの種類と対応付けて格納することを特徴とする。
【００１８】
また、上記各画像処理方法における諸ステップは、各種画像処理装置または情報処理装置に備わるコンピュータに実行させるためのプログラムとして構成することができる。そして、このプログラムを前記コンピュータに読み込ませることにより当該画像処理方法をコンピュータに実行させることができる。また、このプログラムは、このプログラムを記録したコンピュータ読み取り可能な記憶媒体を介して前記コンピュータに読み込ませることができる。
【発明の効果】
【００１９】
本発明によれば、背景技術で説明したような画像の端部の濃度階調を補正するにあたり、上下に異なる印字の指向特性をもつものに対し、現在の劣化状態を把握した上で画像端部の濃度階調を補正することができる。
【発明を実施するための最良の形態】
【００２０】
［概要］
以下に説明する、実施形態１では、画像端部の濃度階調補正のために使用する複数のパッチを、予め指定された濃度レベルを有する濃度域毎に作成する。そして、印刷したパッチの印字状態から視覚的に適切な濃度レベルをユーザが指定し、指定された濃度レベルに基づいて、画像端部の濃度階調の補正を実施する。また、実施形態２では、読取装置を利用してパッチを読み取り、自動的に適切に補正するための濃度レベルを解析し、解析した濃度レベルに基づいて、画像端部の濃度階調の補正を実現する。
【００２１】
以下、図面を参照して本発明の好適な実施の形態を詳しく説明する。
【００２２】
尚、本実施形態では、電子写真技術を用いた複合機を例として説明するが、本発明はこれに限定されるものではない。
【００２３】
[実施形態１]
［複合機の全体構成の説明］
図２は、本実施形態に係る多機能複合機の機械的構成を示す概略断面図である。この複合機は、カラースキャナ部Ａとプリンタ部Ｂとを備えている。
【００２４】
以下では先ずにカラースキャナ部Ａについて説明し、引き続きプリンタ部Ｂについて説明する。
【００２５】
原稿給送装置２０１Ａは、原稿を最終頁から順に１枚ずつプラテンガラス２０２Ａ上へ給送する。そして、その原稿が読み取られた後、プラテンガラス２０２Ａ上の原稿を排出する。この原稿給送装置２０１Ａにより原稿がプラテンガラス２０２Ａ上に搬送されるとランプ２０３Ａを点灯し、このランプ２０３Ａを搭載したスキャナユニット２０４Ａを移動させて原稿を露光走査する。この露光走査による原稿からの反射光は、ミラー２０５Ａ，２０６Ａ，２０７Ａ及びレンズ２０８ＡによってＣＣＤカラーイメージセンサ（以下、単にＣＣＤという）２０９Ａへ導かれる。そして、ＣＣＤ２０９Ａに入射した反射光は、Ｒ，Ｇ，Ｂの３色に色分解された色毎の輝度信号に変換される。更に、ＣＣＤ２０９Ａから出力される輝度信号はＡ／Ｄ変換によってデジタルの画像データに変換されて画像処理部３０４（図３参照）に入力される。そして、シェーディング補正、階調補正、２値化などの周知の画像処理が施された後、プリンタ部Ｂ（３０５）へ出力されて印刷される。
【００２６】
プリンタ部Ｂにおいて、レーザドライバ２２１Ｂは、レーザ発光部２０１Ｂを駆動するもので、レーザ発光部２０１Ｂを駆動することにより、画像処理部３０４から出力された色毎の画像データに応じたレーザ光を出力させる。こうして出力されたレーザ光は感光ドラム２０２Ｂに照射され、そのドラム２０２Ｂの表面にレーザ光に応じた静電潜像が形成される。そして、この感光ドラム２０２Ｂの潜像の部分に、現像器２０３Ｂによって現像剤であるトナーが付着される。尚、図２では、現像器は、図示の簡略化のため、唯一つのみが示されるが、Ｃ，Ｍ，Ｙ，Ｋの色毎にトナーが用意されており、それに応じて４つの現像器が設けられることは勿論である。また、以上の構成の代わりに感光ドラムや現像器等を色毎に４組設ける構成であってもよい。
【００２７】
上述のレーザ光の照射開始と同期したタイミングで、カセット２０４Ｂ又はカセット２０５Ｂの内の選択されたいずれかから記録紙が給紙され、その記録紙が転写部２０６Ｂへ搬送される。これにより、感光ドラム２０２Ｂに付着した現像剤を記録紙に転写することができる。こうして現像剤が転写された記録紙は定着部２０７Ｂに搬送され、定着部２０７Ｂの熱と圧力により現像剤が記録紙へ定着される。そして、定着部２０７Ｂを通過した記録紙は、排出ローラ２０８Ｂによって排出される。ソータ２２０Ｂは、この排出された記録紙をそれぞれ所定のビンに収納して記録紙の仕分けを行う。尚、ソータ２２０Ｂは、仕分けが設定されていない場合は、最上位のビンに記録済みの記録紙を収納する。
【００２８】
また、両面記録が設定されている場合は、排出ローラ２０８Ｂの位置まで記録紙を搬送した後、排出ローラ２０８Ｂを逆転させ、フラッパ２０９Ｂによって、その記録紙を再び給紙搬送路へ導く。こうして再び給紙搬送路へ導かれた記録紙は、上述したタイミングで転写部２０６Ｂへ給紙される。尚、色毎の潜像及び現像の処理や定着は、上述の記録紙の搬送機構を用い、潜像形成等を４回分繰り返すことによって実現することは周知の通りである。
【００２９】
また３１４はネットワークであり、一般的にイーサネット（登録商標）と呼ばれるネットワーク等に接続されている。これにより、１０ＢａｓｅＴや１０Ｂａｓｅ５などの物理的なケーブルを用いてＴＣＰ／ＩＰなどのプロトコルにより、接続される各ユニット相互の情報の授受やデータ転送を行うことができる。無論、この通信は、ネットワークケーブルを用いた有線に限定されるものではなく、無線を用いても同様な環境構築ができる。こうして、ネットワークに接続されているＰＣからＰＤＬデータやビットマップイメージデータを受信し、プリンタ部Ｂで印刷することも可能である。
【００３０】
［システム全体の電気的構成とその動作の概要］
図３は、本実施の形態に係る複合機における電気的な処理概要を説明するためのブロック図であり、必要に応じて図４を使って画像処理部３０４の処理も補足しながら、システム構成を説明する。
【００３１】
画像読み取り部３０９は、レンズ３０１、ＣＣＤセンサ３０２、アナログ信号処理部３０３等を有し、レンズ３０１を介してＣＣＤセンサ３０２に結像された原稿画像３００の画像信号が、ＣＣＤセンサ３０２によりアナログ電気信号に変換される。この変換された電気信号はアナログ信号処理部３０３に入力され、この信号に対しサンプル＆ホールド、ダークレベルの補正等が行われた後、アナログ→デジタル変換（Ａ／Ｄ変換）される。
【００３２】
このようにして変換されたデジタル信号は、本実施の形態の特徴部分である画像処理部３０４において、シェーディング補正４０３、副走査オフセット補正４０４、続いて入力色空間変換４０５の各処理が実施される。副走査オフセット補正４０４は、カラースキャナの場合には、ＲＧＢ各チャンネルがラインセンサーとして構成されるため、副走査方向の位相や光学特性による僅かな位相ずれを補正するための処理である。また、入力色空間変換４０５は、入力されるＲＧＢ信号を画像処理しやすく他のＲＧＢ空間に変換するための処理である。入力色空間変換４０５は、周知の行列演算で実施しても、所定の三次元のＬＵＴ（ルックアップテーブル）を利用して変換を行っても構わない。
【００３３】
続いてＣＣＤやレンズなどの光学特性により劣化したＭＴＦ（Modulation  Transfer  Function）を補正する入力フィルタ処理４０６が実施される。さらに、操作部３１３の指示で指定された倍率に変倍したり、不図示のＦＡＸやネットワーク３１４を介して、３１５に示すＰＣへ送信するための解像度変換３０７が実施される。必要に応じて、メモリ（ＲＡＭ）３０８やハードディスク（記憶部）３１７へ保存するための圧縮処理４０８を実施し、スキャナ側の処理を行う。図４の４０１は、このスキャナ側画像処理のフローを示している。
【００３４】
スキャナ側画像処理４０１が終了すると、処理済データは、一旦、記憶部３１７へ格納され、その後、プリント側画像処理４０２へ送出される。
【００３５】
プリント側画像処理４０２としては、はじめに、伸張処理４０９にて圧縮された画像を元のラスター画像へと展開する。
【００３６】
続いて、下地飛ばし処理４１０にて、必要に応じて原稿画像の下地部分を飛ばし、入力されたＲＧＢの輝度信号を濃度信号に変換するＬＵＴ４１１にて処理を行い、出力色空間変換４１２にてＣＭＹＫの信号を生成する。
【００３７】
出力色変換４１２は、周知の行列演算での実施や、入力色空間変換と同様に所定の三次元ＬＵＴを利用してＣＭＹＫ信号を生成しても構わない。引き続き、後述する端部階調補正処理４１４、プリンタエンジンの階調特性を補正するγ処理４１５にて階調特性が補正され、ハーフトーニング処理４１６にて面積階調で画像を表現するスクリーン処理や誤差拡散処理が実施される。その後、周知のスムージング処理４１７を実施してプリンタ３０５へ送出される。
【００３８】
図４では記載していないが、スキャナ側画像処理４０１では、必要に応じて、入力されるＲＧＢ信号が、文字や細線などの高周波成分をもつ画像の特徴領域や、注目画素が鮮やかな有彩色を持つか否かを認識する像域分離処理を持つこともできる。その処理結果を利用して、プリンタ側画像処理４０２で適応的な処理を実施することも可能である。
【００３９】
また、この画像処理部３０４には、アナログ信号処理部３０３からのデジタル信号以外にも、ネットワーク３１４を介して送られてくる画像信号も入力される。この画像信号には、ＰＣ３１５から送られてくるＰＳ（PostScript）やＬＩＰＳなどによるＰＤＬデータが含まれる。無論、これらデータは圧縮されて送られてくることもあり、その場合は、画像処理部３０４にて、伸張処理４１３で伸張されて展開されることになる。
【００４０】
これら展開された画像信号に対して、画像読取り部３０９の信号に対して実施できる画像処理部３０４の処理は、そのまま適用できる。つまり、前述した圧縮／伸張処理に加え、色補正処理、スムージング処理、エッジ強調、ハーフトーニング、γ補正等が可能である。また、ＰＤＬデータから解析されたオブジェクト（文字、グラフィック、イメージなど）に応じて適応的にこれらの処理を切り替えることなども可能であり、それら処理を行った後、その処理済みの画像信号をプリンタ３０５に出力する。このプリンタ３０５は図２を参照して説明したプリンタ部Ｂと同様である。
【００４１】
続いて、ＣＰＵ回路部３１０について説明する。
【００４２】
ＣＰＵ回路部３１０は、図３に示すＣＰＵ３０６、ＲＯＭ３０７、ＲＡＭ３０８、ネットワーク・インターフェース部３１６等を備える。ＣＰＵ３０６は、この装置全体を制御するための制御手段である。ＲＯＭ３０７は、ＣＰＵ３０６により実行されるプログラムやデータを記憶する不揮発性メモリであり、ＲＡＭ３０８は、ＣＰＵ３０６による制御動作時に使用されるワークエリアなどを含む揮発性メモリである。ネットワーク・インターフェース部３１６は、ネットワーク３１４とのインターフェースを制御する入出力制御装置である。このように構成されるＣＰＵ回路部３１０は、画像読み取り部３０９、画像処理部３０４、プリンタ３０５、操作部３１３等を制御し、本実施の形態に係る複合機の動作シーケンスを統括的に制御する。後述する各処理フローに示される制御（処理）は、操作者による操作を除いて、ＣＰＵ回路部３１０内のＲＡＭ３０８のワークエリアに予めロードされたソフトウェアに従うＣＰＵ回路部３１０により実行される。
【００４３】
操作部３１３は、ＲＡＭ３１１、ＲＯＭ３１２を備えており、操作部３１３の画面上にＵＩ画面を表示、ユーザが設定した情報を記憶することが可能となっている。こうしてユーザによって操作部３１３で設定された情報は、ＣＰＵ回路部３１０を介して、画像読み取り部３０９、画像処理部３０４、プリンタ３０５などに送られる。
【００４４】
以上説明した画像信号の流れの中で、本発明のポイントは、画像処理３０４に含まれる端部補正処理４１８（端部画像補正手段）および、その処理モジュールを活用するためＣＰＵ回路部３１０を利用する点にある。
【００４５】
本実施の形態で説明する画像端部の補正を行う処理部は、補正箇所を認識してその補正値を生成する補正値生成部と、その補正値を画像端部に適用する端部階調補正部の大きく２つに分けられる。
【００４６】
［補正値生成部の説明］
続いて、図５を用い補正箇所の補正値（補正濃度）を生成する補正値生成部について説明する。
【００４７】
［端部補正値の生成］
図１に示すような矩形オブジェクトなど、均一な濃度特性で且つ、端部のエッジがシャープなオブジェクトでは、端部の濃度変化が目立ちやすい。このような画像オブジェクトに対する端部補正を行う場合、その劣化度合いはプリンタの特性によっても異なる。
【００４８】
以下の処理ステップを説明する前に、図６を用いて本実施形態で用いる、画像端部のエッジ特性を観測するためのパッチ（印字サンプル）についてその全体構造を説明する。
【００４９】
図６では、１枚の紙面に対し、左側には「シアンパッチ群」と名づけ６種類の均一な濃度信号のパッチが並べられ、その右側には、「マゼンタパッチ群」のパッチが並べられている。これら各６種類のパッチには、予め指定された濃度域毎に６種類（例えば、濃度が２０％、３０％、４０％、５０％、６０％、７０％）のパッチ画像が生成される。
【００５０】
本実施の形態では１紙面に２色しか作成していないため、他の色（例えば、イエロー、ブラック）で実施する場合は、他の色で同様の紙面をさらに１枚出力することで、同様の画像を作成することができる。本発明では、補正する濃度域を６種類に限定しているが、この数に限定されるものではない。
【００５１】
ステップＳ５０１では、はじめに補正を行う色（シアン、マゼンタ、イエロー、ブラック）と、ハーフトーニングで使用するスクリーン（画像形成パターン）の種類とを、操作部３１３を使って指定する。指定された色、スクリーン種は、一旦、ＣＰＵ回路部３１０のＲＡＭ３０８に一時的に保持される。
【００５２】
ステップＳ５０２では、図６で説明した端部補正用のパッチデータを生成するにあたり、注目する濃度に対して主々の濃度値を生成するための補正ゲイン（詳細は後述）が入力される。
【００５３】
図７は、図６に示したひとつのパッチについてその状態を説明するものである。図７に示すパッチでは、左右に０から１５まで１６段階の目盛り（インデックス）が配置されている。これは、パッチの主走査方向の幅を１６段階にわけて、注目する濃度に対して上下の端部における各段階においてその補正の程度を変更した濃度（補正値）をもたせることを明示するものである。この目盛り（インデックス）は、操作者が、視覚的に濃度が均一の領域を選択する際（後述のステップＳ５０６）、その指定に用いることができる。
【００５４】
本実施形態では、図４で説明した端部階調補正処理４１４を、ハーフトーニング処理４１６の前に実施しているが、ハーフトーニング処理４１６の後に端部補正処理を実施しても構わない。その場合、図７で説明する１６段階は、ハーフトーニング後のビット精度に依存し、補正値の設定の自由度が限定されることになる。尚、本実施形態では、補正段階を１６レベルに限定しているが、本実施形態に示すように端部階調補正処理４１４をハーフトーニング処理４１６の前に実施する場合は、さらに多くの補正段階を持つこともできる。
【００５５】
本発明では、図１に示すような端部における印字の指向特性（上側が濃く出力され、下側が薄く出力される）が確認されたことが前提である。そのため、上側は元の濃度値に対して主走査方向に徐々に薄く、下側は徐々に濃くする構成をとっている。いずれもインデックス０は、パッチの元の濃度値そのままとしていることに注意されたい。
【００５６】
またステップＳ５０２で指定する補正ゲインとは、１６段階の補正値を得るのに適用される補正ゲインのうちの最大補正ゲインを指定するものである。本実施形態では、指定されるパッチ濃度毎（図６では６段階）に、上下独立の最大補正ゲイン（すなわち下側補正ゲインおよび上側補正ゲイン）を設定することが可能となる。以下に示す式（１）は下側、式（２）は上側における注目するパッチ濃度の各インデックス毎の補正値を求める計算式である。  
下側各インデックス（ｉ）の濃度
＝  注目パッチの濃度×｛１＋（ｉ／１５）×注目パッチの下側補正ゲイン｝
…（１）
ただし、ｉはインデックスを表し、０〜１５までの整数値範囲をとる。  
上側各インデックス（ｉ）の濃度
＝  注目パッチの濃度×｛１−（ｉ／１５）×注目パッチの上側補正ゲイン｝
…（２）
ただし、ｉはインデックスを表し、０〜１５までの整数値範囲をとる。
【００５７】
例えば、濃度４０％のパッチに注目した場合、操作部３１３より当該パッチの上側補正ゲインを０．８、下側補正ゲインを０．１８として指定された場合、上側インデックス０は、４０％は注目信号そのままで１０２となる。ただし、濃度信号のダイナミックレンジを８ｂｉｔ（＝２５５）とする。一方、下側インデックス１では１０３（四捨五入）、下側インデックス１５では、１２０となる。ただし、式（１）、および式（２）でダイナミックレンジを超えた演算結果になる場合は超えた部分をクリップした値を用いる。
【００５８】
図９は、本実施形態において、注目した４０％パッチ下側の各インデックスの補正ゲインと最大濃度の関係を表したものである。図９の表では一番左側の列に、４０％パッチ下側のインデックス値が、右側の列に最大濃度が（最大濃度については後述する）、そして真中の列には計算され求められた補正ゲインが示されている。図９に示す表では、操作部３１３より指定された下側補正ゲインから、式（１）に従い、各インデックスの補正ゲインを算出している。なお、ここで言う、“下側の各インデックスの補正ゲイン”は、式（１）の“１＋（ｉ／１５）×注目パッチの下側補正ゲイン”に相当する。各インデックスの最大濃度が分かっている場合は、以下の式（３）により下側の各インデックスの補正ゲイン（ｉ）が求められる。例えば、下側のインデックス（１）の補正ゲイン（１）は、以下の式（３）にｉ＝１を代入して求められる。  
補正ゲイン（ｉ）
＝インデックス（ｉ）の最大濃度／インデックス（０）の最大濃度  …（３）
【００５９】
よって補正ゲイン（１）は、１０３／１０２＝約１．０１（小数点以下２桁有効）として求まる。これらの計算値は、ＣＰＵ回路部３１０内のＲＡＭ３０８のワークエリアに予めロードされたソフトウェアにより式（１）および式（２）、あるいは式（３）を用いて求められる。その結果は、ＲＡＭ３０８の所定の領域に一時的に格納される。もちろん、上側の各インデックス（ｉ）の補正ゲインも同様の手法で求めることができる。
【００６０】
本実施形態では、指定された最大補正ゲインをもとに、パッチを主走査方向に等分割したインデックス毎に、パッチのデータを生成するが、非線型に分割してパッチデータを生成しても構わない。
【００６１】
ステップＳ５０３では、ステップＳ５０２で濃度域別に上下独立に指定された最大補正ゲインをもとに端部階調補正用パッチを生成する（印字サンプル生成手段）。以下に、その詳細を説明する図８のフローを用いて説明する。
【００６２】
［端部階調補正用パッチの生成］
ステップＳ８０１では、図５のステップＳ５０２で説明した式（１）、（２）を利用して、出力する同一色６種類のパッチに対する各インデックス（ｉ）における最大濃度を求める。ここで説明する最大濃度とは、各インデックス（ｉ）にて、元の濃度値から徐々に内側から副走査方向端部まで、式（１）、（２）で求めた最大濃度（補正値）まで変化させるパッチを生成させるため、あくまで形式的に「最大濃度」という表現を用いている。
【００６３】
よって注目する濃度パッチに対してそのパッチの濃度をもつインデックス（０）を除き、最大濃度は下側で１５種類、上側で１５種類、合わせて３０種類存在することになる。もちろん、インデックス数を変更すれば、この数も変わり、また演算誤差により同じインデックスの小さな所では同じ数値が算出される場合もある。
【００６４】
ステップＳ８０２では、これから生成するパッチが最終のパッチか否かを判断する。  
ステップＳ８０３では、ステップＳ８０２でこれから処理するパッチが最終のパッチではないと判断された場合のみ実行される。このステップでは、ステップＳ８０１にて求められた各インデックス（ｉ）の最大濃度を用いて、その副走査方向に内側から徐々に濃度を変化させる濃度値を生成する。
【００６５】
図７に示すポイント（ａ）は、画像端部から副走査方向にＮ画素内側に移動した位置を示す。この位置は、今、注目する上側画像端部の画素位置を、主走査方向、副走査方向のアドレス（座標）で表現すれば、（ｘ、ｙ）と表せ、そこから副走査方向にＮ画素分だけ内側の位置なので、（ｘ、ｙ−Ｎ）なる。同様に、下側画像端部の画素位置を（ｘ、ｙ）と表したとき、下側画像端部から副走査方向にＮ画素分だけ内側の位置は（ｘ、ｙ＋Ｎ）と表現できる。なお、この例では、副走査方向に向かってアドレス値が画素単位で減少する座標系としている。
【００６６】
画素数Ｎは、操作部３１３より任意に決めても良いが、固定値（例えば１０画素）として適用しても構わない。本実施形態では、Ｎは１０画素として固定値とし、段階的に濃度を端部まで変化させる。端部までの濃度の変更方法として、線形演算を用いることができ、これにより中間点の濃度を求めることができる。ただし、最大濃度および最小濃度と、元のパッチ濃度が分かれば、線形演算だけでなく、非線形の二次関数を適用させ、濃度の変化が上凸や下凸となるよう求めても構わない。また、最大濃度および最小濃度をそのまま上記Ｎ画素位置まで広げてデータを作成しても構わない。これらの演算方法についても、操作部３１３を利用して選択することもできる。
【００６７】
ステップＳ８０４では、ステップＳ８０３で求めたＮ画素分離れた位置から画像端部まで徐々に変化する、図６に示すようなパッチを形成する画像データを生成する。図６では、シアンとマゼンタ色に限定して作成しているが、図８に示すルーチンは、複数のハーフトーニング手法、他の色にもそのまま繰り返して適用することで、他の端部階調補正用のパッチを生成できる。
【００６８】
ステップＳ８０５：以上のステップを終了後、次のパッチの処理に移動する。引き続き、ステップＳ８０２の戻り、これ以上、処理する濃度パッチがなくなれば、この処理モジュールは終了となる。以上の計算をＣＰＵ回路部３１０のＲＡＭ３０８を利用して、各インデックス（ｉ）に対して実施し求めたものを、同様にＲＡＭ３０８に一時的に保持する。
【００６９】
ここで図５に戻り、ステップＳ５０４では、ステップＳ５０３にて生成された端部階調補正用に作成された端部階調補正用パッチ（画像データ）を出力する。出力は、ＲＡＭ３０８に一時的に格納されたデータを画像処理部３０４にＣＭＹＫ信号として送出する。送出された信号は、端部階調補正処理４１４からスムージング処理４１７までの処理モジュールの中で、ステップＳ５０１で指示されたように、γ処理４１５およびハーフトーニング処理４１６だけアクティブにされ処理される。その他のモジュールは処理を適用させない設定でプリンタ３０５へ送出され、この信号に基づいてプリントが行われる。
【００７０】
ステップＳ５０５では、出力されたプリント物の各濃度域のパッチに対し、操作者が、その端部が均一な濃度となっている部分を目視にて探す。このとき、ステップＳ５０２からステップＳ５０４までの処理が適切でなく、濃度段差が目立つ場合は、やり直すための操作者による所定の指示入力に従って、再びステップＳ５０２から処理をやり直す。
【００７１】
ステップＳ５０６は、ステップＳ５０５にてパッチの端部で図１に示したものより濃度の均一感が認められた場合、操作者は、操作部３１３（濃度域選択手段）を利用して、各色６つある各濃度域で、その上側、下側で適切なもののインデックス（ｉ）を指定する。すなわち、本装置は、操作者による操作部３１３を介した、適切なものとして選択されたインデックスの選択入力を受け付ける。
【００７２】
例えば、シアンの２０％パッチでは、その端部にもともと濃度の階調段差が発生していないような場合、上側、下側ともにインデックス（０）が入力される。また、シアン４０％パッチでは、上側はインデックス（５）を、下側ではインデックス（３）が入力される、というように、出力するプリンタの状態によって、その選択は変わる。
【００７３】
ステップＳ５０７では、ステップＳ５０６にて操作部３１３より指定されたインデックス値を、ＣＰＵ回路部３１０が解釈する。そして、ステップＳ５０２におけるデータ生成時にＲＡＭ３０８に保持していた補正ゲイン値を端部補正処理４１８で利用する。例えば、下側でインデックス（３）が選択された場合、濃度４０％の濃度域の下側の補正ゲイン＝１．０４が代表補正ゲインとして、端部補正処理４１８の所定のレジスタにセットされる。
【００７４】
［端部補正値の適用］
次に、端部補正値を適用する端部階調補正処理について説明する。
【００７５】
図１０に、上述のようにして求められた代表補正ゲイン値を画像端部に反映させる端部階調補正処理４１４の処理ブロック図を示す。
【００７６】
端部階調補正処理４１４は、前段の出力色空間変換４１２からの出力信号や、記憶部３１７の予め保存されていたＣＭＹＫ空間の画像信号、もしくは、ネットワーク３１４を介して送信されたＣＭＹＫ色空間の画像信号に対して処理することができる。また、処理対象画像を、その属性情報を元に適応的に処理することもできる。この属性情報とは、画像中のオブジェクトを、イメージ、グラフィックス、文字、ラインなど、画像の特徴から各オブジェクトを分類する情報を言う。
【００７７】
一般には、ＰＤＬ形式で実施されるジョブにて、不図示のドライバーなどで送られるＰＤＬ言語のコマンドから、ＰＤＬ展開部３０８にてこうした属性情報を生成する。生成された情報はそのまま、後段の処理に送出することもあるが、ＰＤＬ展開部３０８による展開後の画像データとともに、ファイルフォーマットとして管理・保存する場合もある。この場合は、記憶部３１７にこのファイルフォーマットの形式で保存されることになる。  はじめに、入力されるＣＭＹＫ色空間の信号は、端部計測処理１００１及び、遅延処理１００３へ送出される。遅延処理１００３では、最終的に画像端部の補正値を決定した後、本画像処理部における副走査方向の信号の遅延量を合わせるため回路である。通常、ＦＩＦＯなどのラインメモリで実現される。
【００７８】
端部計測処理１００１は、入力するＣＭＹＫ画像中から、文字／グラフィックス／ラインなどの属性をもつ画像データを対象として適用される。属性情報抽出処理１００５で扱う属性情報は、展開されたＣＭＹＫ画像の各画素に対し４ビットの属性（オブジェクト）情報として表現したものである。本実施形態では、この属性情報抽出処理１００５から送られてくる４ビット情報を基に、グラフィック、文字、ラインを表すビット列のみ端部計測処理１００１を適用する。ここで図１１に、本実施形態で想定する属性情報の一例を示す。  
入力されるビット列に対して、図１１に示すようなビット列とオブジェクトの関係を解釈することで、ビット列が示す属性（オブジェクト）を判断し、その結果を画素単位に端部計測処理１００１とゲイン算出処理１００１に入力する。また、属性情報抽出処理１００５では、画像端部の階調補正処理を適用するオブジェクトの属性情報を不図示のレジスタ設定によって変更可能にすることもできる。
【００７９】
端部計測処理１００１は、入力されるＣＭＹＫ信号を単色毎に処理する。図１２、１３は、本処理により注目するオブジェクトの副走査方向端部からの距離を計測する様子を表すもので、図１２のパッチ１２０１は、信号値＝１１８（約４６％）の均一な信号成分をもつ。フィルタ１２０２はエッジ検出用の差分フィルタである。また、図の左に記載されたものは、パッチ１２０１の副走査方向のライン数を明示するものであり、上からｉ番目、ｉ＋１番目、ｉ＋２番目、…、ｉ＋Ｎ番目、と先端からのライン数を表現している。下側は、ｊ番目から、ｊ＋１番目、…、ｊ＋１０の後端までのライン情報を表現している。
【００８０】
［端部計測処理１００１の処理フロー］
続いて端部計測処理１００１（端部計測手段）の処理フローについて図１３を使って説明するが、本処理で、注目する画素が、補正対象となる画素か否かは、注目画素のエッジ量、オブジェクト情報、ライン幅の３要素によって決定される。特にライン幅、すなわち補正したい副走査方向の画像幅を予め設定することができ、本実施形態では（副走査方向に）Ｎ画素とした（ただし、Ｎは６以上の整数値）。
【００８１】
ここでこの処理フローの各ステップにおける処理内容を以下に示す。
【００８２】
ステップＳ１３０１（ライン数カウンタ初期化）：端部における補正対象領域のライン数を計数するための内部カウンタをリセットする。
【００８３】
ステップＳ１３０２（エッジ検出）：パッチの上側端部を検出するため、上側端部のエッジを抽出する。今、注目画素ｉライン目に注目する。ｉラインにおけるエッジ量は、フィルタ１２０２により、以下の式（４）によって決定される。尚、注目画素は、（ｘ，ｉ）とする。  
エッジ量（ｘ，ｉ）＝画素値（ｘ，ｉ−１）＋（−１）×画素値（ｘ，ｉ）
…（４）
【００８４】
上記エッジ量の絶対値が所定の閾値（ＴＨ）以上あれば、注目画素にはエッジがあると判断する。このエッジの判断について具体例を挙げさらに説明する。尚、閾値ＴＨ＝１０とする。また、パッチ１２０１の濃度は前述のように１１８である。このときのエッジ量は以下のとおりである。  
（例）  エッジ量（ｘ，ｉ）＝０＋（−１）×１１８＝−１１８
この例では、｜エッジ量（ｘ，ｉ）｜＞＝４０であるため、（ｘ，ｉ）は、エッジ領域と判断される。
【００８５】
ステップＳ１３０３（上側端部の検出）：ステップＳ１３０２により注目画素をエッジと判断（＝Ｙ）とした場合は、内部カウンタをインクリメントして上側端部からの計測を開始する。
【００８６】
ステップＳ１３０４（エッジ検出）：引き続き、続く副走査方向にエッジ部の検出を行う。
【００８７】
ステップＳ１３０５（ライン数カウント）：ステップＳ１３０４において、ステップＳ１３０２で示した方法でエッジを検出できなかった場合、上側端部からのライン幅をカウントする内部カウンタをカウントアップする。ステップＳ１３０４でのエッジ検出は上記Ｓ１３０２と同様にして行い、（ｘ，ｉ＋１）のエッジ量を求める。パッチ内部では、計算されるエッジ量は“０”となる。従って、この領域は、非エッジ領域であるので、＋１が不図示の内部カウンタに加算される。
【００８８】
ステップＳ１３０６（２×Ｎライン分の計測判断）：この処理をエッジが観測された地点から副走査方向に２×Ｎラインまで実施する。エッジが観測された地点から２×Ｎライン分存在する場合は続くステップＳ１３０８を実施し、２×Ｎラインに満たない場合は、ステップＳ１３０４から処理を繰り返す。
【００８９】
ステップＳ１３０８（補正位置の決定）：図１２の１２０３はその結果を表しており、ｉライン目に対し、エッジを表現する（Ｎ，Ｎ）が生成される。この（）内部の数値の詳細については、後述する。図１２の例では、上側端部より２×Ｎライン分のライン幅が確保されたため、ｉ番目からｉ＋Ｎ−１番目までのＮライン分は補正の対象画素として、後述するゲイン算出処理１００２へ画素単位に、注目画素情報（＊，Ｎ）が送出される。ただし、上述の記号「＊」は、１〜Ｎの整数値を表す。なお、補正対象でない画素については、後述するように注目画素情報として（０，１）が送出される。
【００９０】
このように、注目画素が、補正すべきものか、否かは、補正したい画像端部のライン幅Ｎの２倍のライン幅が観測できないと、補正位置を決定しないとするアルゴリズムを基本としている（例外処理は後述）。
【００９１】
このようなアルゴリズムにしている理由は、例えば、注目する画像の幅が１３画素分あり、補正したい領域のライン幅Ｎを６画素としたい場合、上側端部より内側まで６画素を徐々に濃度を変化させることになる。さらにこの１３画素の並びの後端部より上側６画素を同じように濃度を変化させることになるが、この上側６画素を補正領域として決定するためには、その２倍の画像幅を必要とする。これは、下側端部がこの２倍の画像幅の間に存在しないことが必要だからである。
【００９２】
このようにエッジ量検出を副走査方向に処理していく。そして、ｊ＋１０ライン目に下側端部のエッジが検出されたところで、ｊ＋１０ラインから上側Ｎ画素分が補正すべき画素として、後述のゲイン算出処理１００２へ上側の場合と同様に、下側端部の注目画素情報として（＊，Ｎ）が送出される。それ以外の領域は、端部の階調を補正しないとして注目画素情報として（０，Ｎ）を送出する。
【００９３】
ここで、注目画素情報として送出される（）内の数値について説明する。
【００９４】
（ｐ，ｑ）におけるｑは、上記処理で確認されたライン幅を示し、ステップＳ１３０３によれば、上側端部からＮライン分の、所定の画像幅Ｎが保証されたので、ｑ＝Ｎと確定している。もし、Ｎラインより小さい幅しか存在しない場合は、ｑはそのライン幅となり、送出されることになる。ｐは、中心側から端部画素までの距離を示している。よって端部を示すｉラインはＮとなり、最も内側の位置では、ｐ＝１となっている。この距離を表す数値：ｐは、後述するゲイン算出処理１００２で利用する。
【００９５】
ステップＳ１３０９（最終ラインの確認）：この判断処理を逐次、処理対象の画像の主走査方向に行い、その最終ラインに達しているか否かを判断する。最終ラインであれば（＝Ｙ）処理を終了し、そうでない場合（＝Ｎ）は、ステップＳ１３０１より処理を繰り返す。
【００９６】
ここで、上記ステップＳ１３０２のエッジ検出に話を戻す。このステップにおけるエッジ検出で、エッジが存在しない（＝Ｎ）場合は、続くステップＳ１３１０に移る。
【００９７】
ステップＳ１３１０（２×Ｎライン分の計測判断）：ステップＳ１３０６と同様に２×Ｎライン分計測したか判断し、２×Ｎライン分計測した場合は、ステップＳ１３１１へと続き、２×Ｎライン分に満たない場合は、ステップＳ１３１４へ続く。
【００９８】
ステップＳ１３１１（非補正の画素位置として決定）：注目の領域（カウンタリセット位置からＮライン分）を非補正の（補正対象でない）画素位置（ｐ＝“０”）として注目画素情報を後段のゲイン算出処理１００２へ送出する。
【００９９】
ステップＳ１３１４（ライン数カウンタカウントアップ）：次のラインに処理を進める為、内部カウンタをインクリメントする。
【０１００】
ステップＳ１３１２（２×Ｎライン未満のカウント値の振る舞い）：カウント値が２×Ｎライン未満であって、対象オブジェクトの幅が２ライン以上の場合、続くステップＳ１３１３に従う。一方、対象オブジェクトの幅が２ライン未満の場合、すなわち、対象オブジェクトの幅が１画素の場合はステップＳ１３１１に従う。
【０１０１】
ステップＳ１３１３（補正位置として決定）：ステップＳ１３１２にて、対象オブジェクトの幅が２以上かつ２×Ｎライン未満における、注目画素情報（ｐ，ｑ）の決定方法について説明する。まず、本ステップで判定されたカウント数が奇数と偶数の場合でｐ、ｑの計算方法が異なる。
【０１０２】
まず、奇数の場合として、５ラインのカウント結果を例にとって説明する（図１４参照）。
【０１０３】
カウント値が５ラインの場合、図１４に示すとおり、副走査ライン数が１、２、３、４、５のものが存在する。このとき、ｑは、ｑ＝ｒ＝（カウンタ値（＝５）／２）＝２（小数点以下切り捨て）として求める。それに対しｐは、中心ライン＝（カウンタ値／２）＋１＝５／２＋１＝３以下とそれ以外で算出方法が異なる。ここでの割り算は小数点以下切り捨てとしている。
【０１０４】
ここで、中心ラインの副走査ライン数が３以下の場合は、ｒ＋１−注目のライン数として求め、それ以外の場合は、ｒ−（カウンタ値−注目のライン数）として求める。
【０１０５】
すると、図１４のように１ライン目のｐ＝２＋１−１＝２、２ライン目はｐ＝２＋１−２＝１、３ライン目はｐ＝２＋１−３＝０、４ライン目はｐ＝２−（５−４）＝１、５ライン目はｐ＝２−（５−５）＝２、として求まる。
【０１０６】
続いて偶数カウント（＝４）の場合を、図１５を例で説明する。  
この場合、副走査ライン数が１，２、３、４のものが存在し、カウンタ値は４を示している。このときｑは奇数時と同じである。ｐも奇数時と同様に、中心ラインより下か否かで、処理が異なる。偶数カウントの場合、中心ラインが存在しないため、処理の切り分けは、中心ライン＝（カウンタ値／２）＝２として求める中心で切り分ける。切り分けた後のｐの求め方は上述した奇数時と同じである。参考として、図１６（３ラインの場合）、図１７（２ラインの場合）の結果も示す。
【０１０７】
［補正ゲイン算出処理１００２］
続いて、ゲイン算出処理１００２（補正ゲイン算出手段）について説明する。
【０１０８】
ゲイン算出処理１００２は、入力として、前段の端部計測処理１００１の出力を入力として受け取る。また、補正ゲイン値を決定するための参考値として、［端部補正値の生成］で決定した、各色、各スクリーン種別、各濃度域における、上側補正ゲイン値および下側補正ゲイン値を用いて、最終的に注目画素における補正ゲイン値を決定する。本ゲイン算出処理１００２は、そのような処理を行う処理モジュールである。
【０１０９】
はじめに、属性情報として補正適用外のオブジェクトと通知された画素（ｐ＝“０”）、もしくは、端部計測処理にて、非補正として通知された画素（ｐ＝“０”）は、補正ゲイン値を１．０として後段の階調補正処理１００４に通知する。
【０１１０】
上記処理は、属性情報抽出処理１００５にて抽出された属性情報に従い補正したいオブジェクトの画素にのみ適用される処理である。それ以外の補正対象でない画素については、注目画素情報として（ｐ，ｑ）＝（０，１）が端部計測処理１００１から送出され、このときの補正ゲイン値は１．０とする。
【０１１１】
ゲイン算出処理は不図示の内部レジスタを有し、そのきは、上述したような注目する濃度域における上側、下側の補正ゲイン値（すなわち、上側補正ゲイン値および下側補正ゲイン値）が格納されている。図１８はその様子を表している。１８０１は、上述した［端部補正値の生成］にて算出されたディザタイプ（Ｄｉｔｈｅｒ＿ｔｙｐｅ）＝Ａにおける、シアンのデータ情報を表しており、管理情報として、ディザ種、色が明示されている。
【０１１２】
１８０２は、濃度域別の上下の代表補正ゲイン値であり、同様のデータが、１８０３に示すディザタイプ＝Ｂについても同じフォーマットで格納されている。このように、代表補正ゲイン値は、色別、（ディザ種やスクリーン種のような）画像形成パターン別に管理することができる。図１８の１８０２の例では、理解しやすいように、縦軸に濃度域を、横軸に上下の指向情報（上側／下側）を、その中身のデータとして補正ゲイン値をそのまま記載している。しかし現実には、端部階調補正処理４１４では、ハードウェアやソフトウェアとして運用しやすい数値を割り当てて利用する。
【０１１３】
今、図１９に示す注目画素情報を使って、処理すべき注目画素の具体的な補正ゲイン値の算出方法について説明する。
【０１１４】
ゲイン算出処理１００２に送出されたＬＵＴ１９００は、１９０１は下側端部、１９０２は補正効果がもっとも低い画素、１９０３は補正しない画素をそれぞれ表現している。それぞれ（ｐ，ｑ）の値を使って、注目画素における最終的な補正ゲインは、以下の式（６）によって求められる。
【０１１５】
最終補正ゲイン（ｘ，ｙ）
＝｛１．０×（ｑ−ｐ）＋（実補正ゲイン）×ｑ｝／ｑ  …（６）
ここで図２０に、式（６）に適用するために用いる、実補正ゲインを求めるＬＵＴの一例を示す。
【０１１６】
図２０に示すように、すべての濃度域については不確定だった代表補正ゲインは、図２０に示す関係で、すべての濃度域に対して連続的にその数値を規定している。図２０は、１８０２にて指定された濃度域に対し、０％から最初の濃度域である２０％までは強制的に１．０の最大補正ゲインに、さらに７０％以上は全て７０％の最大補正ゲインに設定している。一方、残りの、指定された濃度域間の濃度域の補正ゲインは、観測結果をそのまま利用するルールで設定されている。このルールで作成された補正ゲインを、本実施形態では、実補正ゲインと呼ぶ。
【０１１７】
なお、本実施形態では、上記に示す置き換えで実補正ゲインを作成したが、濃度域のパーセンテージによって、不確定であった中間の濃度域の実補正ゲインを線形補間により求めても構わない。
【０１１８】
最後に、階調補正処理１００４では、ゲイン算出処理１００２にて生成された代表補正ゲインを用いて、注目濃度域に対して以下の式（７）から求める。
【０１１９】
補正後の濃度値ｖａｌ（ｘ，ｙ）
＝  元の濃度値ｖ（ｘ，ｙ）×最終補正ゲイン（ｘ，ｙ）  …（７）
ただし、（ｘ，ｙ）は、補正対象の画素の位置を表すものである。
【０１２０】
以上の処理をもって、指定したオブジェクトに対して、上下方向の指向特性に合わせた濃度補正を実現し、端部の画像を補正する。
【０１２１】
［実施形態２］
次に、本発明の第２の実施形態について説明するが、前述した実施形態１と同様の構成の説明は省略し、異なる部分についてのみ説明する。
【０１２２】
実施形態１では、上下方向の濃度階調特性を把握するために、パッチを出力し、その出力パッチから視覚的に必要な補正レベル決定していた。本実施形態では、実施形態１と同様にパッチを生成するが、その出力結果を読取装置で読み取ることで、滑らかな濃度階調となる補正レベルを自動的に検出することが特徴とするものである。
【０１２３】
［端部補正値の生成］
以下に、端部補正値の生成処理について、図２１を参照し説明する。  
図２１は、本実施形態における端部補正値の生成処理を示すフローチャートである。
【０１２４】
はじめに、ステップＳ２１０１では、操作部３１３を使って指定される、補正を行う色（シアン、マゼンタ、イエロー、ブラック）と、ハーフトーニングで使用するスクリーンの種類の指定入力を受ける。ここで指定された色、スクリーン種は、一旦、ＣＰＵ回路部３１０のＲＡＭ３０８に一時的に保持される。なお、以下の処理は、ＣＰＵ回路部３１０により実行される。
【０１２５】
次いでステップＳ２１０２では、図６で説明した端部補正用のパッチデータを生成するにあたり、注目する濃度域に対して主々の濃度（補正値）を生成するため予め用意された補正ゲインを選択する。
【０１２６】
ここで図２２を示す。図２２は、図６に記載されたひとつのパッチについてその状態を説明するものである。図２２は実施形態１の図７と比較し、パッチの上下に０から１５までの１６段階の目盛りが配置されていない点を除き、データの配列条件は図７と同一である。本実施形態においても、図１に示すような端部特性が確認されたことが前提（上側が濃く出力され、下側が薄く出力される）であるため、図２２に示すように、上側は元の濃度に対して主走査方向に徐々に薄く、下側は徐々に濃くする構成をとっている。図２２では、インデックスをデータ上に明示していないが、図７と同様にインデックス０に対応する部分は、パッチの元の濃度そのままとしていることに注意されたい。
【０１２７】
またステップＳ２１０２で指定する補正ゲインとは、補正レベル１６段階にわけた時の最大補正ゲインを規定するものである。本実施形態では、指定されるパッチ濃度毎（図６では６段階）に上下独立の補正ゲインを設定することが可能となる。本ステップＳ２１０２の処理は、実施形態１のステップＳ５０２と実質同様である。  続くステップＳ２１０３では、前述のステップＳ５０３と同様の動作ステップを行い、端部階調補正用パッチを生成する。
【０１２８】
次に、ステップＳ２１０４では、ステップＳ２１０３にて生成された端部階調補正用に作成されたパッチ（画像データ）を出力する。出力は、ＲＡＭ３０８に一時的に格納されたデータを画像処理部３０４にＣＭＹＫ信号として送出する。送出された信号は、端部階調補正処理４１４からスムージング処理４１７までの処理モジュールの中で、ステップＳ５０１で指示されたように、γ処理４１５およびハーフトーニング処理４１６だけアクティブにされ処理される。その他のモジュールは処理を適用させない設定でプリンタ３０５へ送出され、この信号に基づいてプリントが行われる。
【０１２９】
ステップＳ２１０５では、操作者が、出力されたプリント物を画像読取部３０９にセットし、操作部３１３のスキャンボタンを押下することで、カラースキャナ部がパッチの出力物を読み取る。
【０１３０】
ステップＳ２１０６では、読み取られたパッチ画像を解析する（濃度域検出手段）。図２３、２４、２５はその解析方法を示す処理フローである。ここで、この解析方法の詳細を説明する。
【０１３１】
ステップＳ２３０１：得られたパッチのデータから、主走査方向のプロファイルを取得する。ここで説明するプロファイルとは、図２２の左側では２２０１、右側では２２０２に示す主走査方向端部のエッジ部分の濃度特性を示すものである（詳細は後述）。
【０１３２】
引き続き、図２４を参照して、このプロファイル取得処理の詳細を説明する。図２４は、このプロファイル取得の詳細を説明する処理フローである。
【０１３３】
ステップＳ２４０１は、図６に示すデータをブロック単位（各色の濃度域で指定されたパッチ）で計測する。このとき、どのブロックを計測中か観測するため、内部にブロックカウンタを持ち、処理開始時にはそのカウンタをリセットする。尚、図６の例では、シアン６ブロック、マゼンタ６ブロックの計１２ブロックのプロファイルを、１枚の画像から計測することになる。
【０１３４】
ステップＳ２４０２：本実施形態では、エッジ２２０１の特性を求めるため、以下に示す手法で、主走査方向に２０画素、副走査方向１０ライン分のデータ（濃度）を取得し代表の濃度特性（プロファイル）求める。本ステップでは、副走査方向に１０ライン分を計測するためのラインカウンタ（内蔵）を処理の開始時にリセットする。
【０１３５】
ステップＳ２４０３：注目するラインにてＮ×Ｍ画素のウィンド幅における、主走査方向の各位置における副走査方向平均値を求める。なお、図２６に示す例では、Ｎ＝１画素、Ｍ（は主走査方向の幅）＝２０画素としているので、副走査方向に１画素しか存在せず、結局、平均値を求めても求めなくても同じ結果となる。
【０１３６】
ステップＳ２４０４：次の主走査方向のライン（主走査ライン）に位置を進める為、ラインカウンタをインクリメントし、次の主走査ラインに処理を移す。
【０１３７】
ステップＳ２４０５：以上のステップＳ２４０３、Ｓ２４０４の処理の結果、副走査方向にＱライン分処理が進んだか否かを判断する。ここでは、Ｑ＝１０ラインを設定しているが、この値に限定されない。ここでＹｅｓと判断されるとステップＳ２４０６へ、Ｎｏと判断されるとステップＳ２４０３へ処理が移る。
【０１３８】
ステップＳ２４０６：Ｑライン分のエッジ部特性（濃度）が収集できると、図２６の２６０１で囲まれているように、注目する主走査方向の位置（主走査位置）における副走査方向にステップＳ２４０３で求めた平均値をさらに平均した代表値を得る。図２６の例では、各主走査位置で平均値が算出されるため、注目するブロックにおけるＭ（＝２０）画素分の片側（左側）主走査プロファイルが作成される。
【０１３９】
ステップＳ２４０７では続く、副走査下方向のブロック（図６）への処理を移すため、ブロック数を管理する内部カウンタをインクリメントする。
【０１４０】
ステップＳ２４０８では、ステップＳ２４０７でインクリメントされたブロック数から、所定のブロック数（＝Ｐ）（本実施形態では、１色あたり６ブロック）分処理すると処理は終了、Ｐに満たない場合は、再度ステップＳ２４０２からの処理が続く。
【０１４１】
以上の処理ステップを指定されたスクリーン、色毎に行い、左側の主走査プロファイルが作成される。以上の各ステップをそのまま右側のエッジ部に対して実施し、右側のプロファイルを作成することで、主走査方向に４０画素分のプロファイルが作成される。
【０１４２】
このように、主走査プロファイルを作成する理由は、副走査方向端部の劣化度合いを確認するための参照データとして主走査側が有効な端部特性を示すからである。主走査方向の端部は一般に、副走査方向で発生しやすい、はき寄せや白抜けといった現象やそれに似た劣化特性が少ない端部特性を有しているため、本実施形態では、この特性を利用して主走査方向端部のプロファイルを事前に取得する処理を行っている。
【０１４３】
以上、ステップＳ２３０１におけるプロファイル取得処理の詳細を説明した。
【０１４４】
引き続き、上記ステップＳ２３０１の処理の後、ステップＳ２３０２を行う。
【０１４５】
ステップＳ２３０２：本ステップは、ステップＳ２３０１で説明した処理の後、図２２の２２０３、及び２２０４に示す副走査方向のエッジ特性を取得するための処理である。図２５はその処理フローを示している。ここで、この副走査側のエッジ特性を取得するための処理の詳細を、図２５を参照し説明する。
【０１４６】
ステップＳ２５０１：本実施形態では、図６に示すデータをブロック単位（各色の濃度域で指定されたパッチ）で計測する。このとき、どのブロックを計測中か観測するため、内部にブロックカウンタを持つ。ステップＳ２５０１では、処理開始時にそのカウンタをリセットする。尚、図６の例では、シアン６ブロック、マゼンタ６ブロックの計１２ブロックのプロファイルを、１枚の画像から計測することになる。
【０１４７】
ステップＳ２５０２：ここでは、エッジ２２０４（図２２）の濃度特性を求めるため、図２７に示すように、副走査方向に２０ライン、主走査方向に１０画素分のデータ（濃度）を取得することで代表の濃度特性（プロファイル）求める。本ステップでは、主走査方向に１０画素分ある副走査方向のライン（副走査ライン；同図において縦のライン）をカウントするためのラインカウンタ（内臓）を処理の開始時にリセットする。
【０１４８】
ステップＳ２５０３：このステップでは、注目する副走査ラインにてＭ×Ｎ画素のウィンド幅における、主走査方向の平均値を求める。図２７に示すようにこの例では、Ｎ＝１画素、Ｍ（副走査方向の幅）＝２０画素としているので、主走査方向に１画素しか存在せず、結局、平均値をもとめても求めなくても同じ結果となる。
【０１４９】
ステップＳ２５０４：次の副走査ラインに位置を進める為、ラインカウンタをインクリメントし、注目の画素位置を次の主走査方向の位置に移動する。
【０１５０】
ステップＳ２５０５：以上のステップＳ２５０３、Ｓ２５０４の処理の結果、主走査方向にＱ画素分進んだか否かを判断する。本例では、Ｑ＝１０画素を設定しているが、この値に限定されない。ここでＹｅｓと判断されるとステップＳ２５０６へ、Ｎｏと判断されるとステップＳ２５０３へ処理が移る。
【０１５１】
ステップＳ２５０６：Ｑ画素分のエッジ部特性（濃度）が収集できると、図２７の２７０１で囲まれているように、注目する副走査方向の位置（副走査位置）における主走査方向にステップＳ２５０３で求めた平均値をさらに平均した代表値を得る。図２７の例では、各副走査位置で平均値が算出されるため、注目するブロックにおけるＭ（＝２０）画素分の片側（上側）副走査プロファイルが作成される。
【０１５２】
ステップＳ２５０７：このステップでは、続けて、副走査下方向のブロックへの処理を移すため、ブロック数を管理するブロックカウンタをインクリメントする。
【０１５３】
ステップＳ２５０８：このステップでは、ステップＳ２５０７でインクリメントされたブロック数から、所定のブロック数（＝Ｐ）（本実施例では、１色あたり６ブロック）処理すると処理は終了、Ｐに満たない場合は、再度ステップＳ２５０２からの処理が続く。
【０１５４】
以上、ステップＳ２３０２における副走査方向のエッジ特性を取得するための処理の詳細を説明した。
【０１５５】
引き続き、上記ステップＳ２３０２の処理の後、ステップＳ２３０３を行う。
【０１５６】
ステップＳ２３０３：本ステップは、上述のステップＳ２３０１およびステップＳ２３０２にて得られた主走査プロファイル、副走査プロファイルを用いて、各ブロック毎の主走査プロファイルと副走査プロファイルとの差の加算値を算出する。
【０１５７】
ここで、図２８に、注目するブロックの、あるインデックスにおける読取結果の例を示す。同図の縦軸は読取輝度信号（濃度）、横軸は副走査位置を表している。同図において実線は、副走査方向端部の濃度特性を、破線は主走査方向端部の濃度特性を示している。また、同図左側の２８０１は、副走査方向の一端部が濃い特性になっていること、右側の２８０２に示すもう一方の端部では薄くなっていることを示している。
【０１５８】
本ステップＳ２３０３では、ステップＳ２３０１とステップＳ２３０２から得られた各プロファイルから、図２８に示したような特性の各位置での差分を加算した値の絶対値を、注目するブロックのインデックス毎に、左側２０画素分、右側２０画素分、計算する。これは、実施形態１でパッチの上側、下側の濃度特性を目視するのと等価な処理となる。尚、上記特性の差分は、具体的には、図２８に示したような各副走査位置における実線で示した濃度値から破線で示した濃度値を減算して得られる差分である。
【０１５９】
ステップＳ２３０４：このステップでは、ステップＳ２３０３で計算された各インデックスの右側、左側の上記加算値の絶対値を所定の閾値と比較して、所定の閾値より小さなインデックスが存在する領域を検出し、ＲＡＭ３０８に一時的に格納する。このとき閾値を満足するものが複数存在した場合、上記加算値の絶対値が最も小さいものを代表インデックスとして格納する。上記加算値の絶対値が小さいことは、特性が理想に近いことを表すので、上記のように最も小さいものを代表インデックスとして採用している。さらに上記加算値の絶対値が最も小さいものが複数存在した場合は、例外処理として、インデックスの小さい方を採用する。
【０１６０】
このように閾値以下の領域を探すのは、本来、はき寄せや白抜けなどの特性がなければ、主走査方向端部のような理想的なエッジ特性となり、上記で求まる特性の差分の加算値はほぼ０になることを前提としているからである。
【０１６１】
以上、ステップＳ２１０６における解析処理の詳細を説明した。引き続き、ステップＳ２１０７以降の処理に戻る。
【０１６２】
ステップＳ２１０７：このステップでは、ステップＳ２１０６で得られた解析結果を元に、各ブロックの上下のインデックスにて適正な補正箇所があるか確認する。これは、ステップＳ２１０６にてＲＡＭ３０８にインデックス毎に格納されたデータが存在するか否かで判断される。全ての濃度域にて閾値を満足するものが存在した場合は続くステップＳ２１０８へ、存在しない場合は、その濃度域を操作部３１３に明示し、再度、ステップＳ２１０２にて選択した補正ゲインを選択し直して続くステップを繰り返す。
【０１６３】
ステップＳ２１０８：以上のステップにて各濃度域の補正箇所（代表インデックス）がすべて見つかった場合は、対応する補正ゲインが、夫々の濃度域の代表補正ゲインとして、端部補正処理４１８の所定のレジスタ（端部階調補正用テーブル）にセットされる。
【０１６４】
以降の処理は実施形態１と同様のため割愛する。
【０１６５】
以上で、本実施形態における［端部補正値の生成］の説明を終える。
【０１６６】
なお、図６の出力サンプルから特定のパッチを検出する方法としては、以下の方法がある。
【０１６７】
すなわち、図６に示すシアンパッチの読取開始地点６０１とマゼンタパッチの読取終了地点６０２と、図６の電子データ作成時に用いたパッチの大きさ、互いのブロックの配置関係から、相対的なブロックのアドレス情報を算出することで検出できる。もちろん、各ブロックのアドレス情報を予め定義しておいてもよい。また、各ブロックの画像位置は、位置を特定できる他のパターンを図６の紙面の４隅に配置し、そのパターンを相関演算を利用して検出することで求めても良く、これらの方法に限定しない。
【０１６８】
［他の実施例］
上述の実施形態１および２では、画像端部の濃度階調特性を改善するため、パッチ端部の上下の濃度階調特性を、スクリーンパターンや色毎に管理して、改善を行うものとして説明を行った。しかし、これ以外にこれらの特性に影響するものとして、メディア種の影響は大きく、厚紙、普通紙、コート紙、などメディアの特性により、プリンタエンジンの電子写真特性は変動する。これは、電子写真に限らず、昇華型プリンタ、インクジェットプリンタについてもいえることで、メディアに対する濃度ムラの挙動を管理することは、高画質化にとって重要である。
【０１６９】
このため、実施形態１の図５に示すステップＳ５０１や、実施形態２の図２１に示すステップＳ２１０１に、メディア種の指定を設け、メディア種毎に端部濃度特性を管理することが好ましい。このようにすると、実施形態１の図１８にて説明したような管理が、図２９の２９０１に示すように、メディア種によるタグ（Ｐａｐｅｒ＿ｔｙｐｅ）で、メディア別にも代表補正ゲインを管理でき、メディア種毎にも、本発明による効果を得ることができる。
【０１７０】
また、本発明の係る画像処理装置は、図３、及び図４に示す画像処理部に限定するものではなく、専用の画像処理装置、汎用スキャナ、汎用コンピュータを関連づけた手段を採用し得る。
【０１７１】
また、本発明の目的は、上述した実施形態で示したフローチャートの手順を実現するプログラムコードを記憶した記憶媒体から、システムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）がそのプログラムコードを読出し実行することによっても達成される。
この場合、記憶媒体から読み出されたプログラムコード自体が、コンピュータに、上述した実施形態の機能を実現させることになる。そのため、このプログラムコード及びプログラムコードを記憶／記録したコンピュータ読み取り可能な記憶媒体も本発明の一つを構成することになる。
【０１７２】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【０１７３】
また、前述した実施形態の機能は、コンピュータが、読み出したプログラムを実行することによって実現される。また、このプログラムの実行とは、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行う場合も含まれる。
【０１７４】
さらに、前述した実施形態の機能は、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットによっても実現することもできる。この場合、まず、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行う。こうした機能拡張ボードや機能拡張ユニットによる処理によっても前述した実施形態の機能が実現される。
【０１７５】
また本発明の趣旨と範囲は、本発明の特定の説明と図に限定されるものではなく、特許請求の範囲に述べられた内容の様々な修正及び変更に及ぶことは当業者にとって理解されるであろう。
【図面の簡単な説明】
【０１７６】
【図１】本発明で前提となるパッチ端部のよる濃度変化を示す図である。
【図２】本発明に係る画像処理装置の概略図である。
【図３】本発明に係る画像処理装置の電気的な構成を示すブロック図である。
【図４】本発明に係る画像処理ブロック図である。
【図５】本発明の実施形態１における補正値生成のフローチャートである。
【図６】本発明に係る補正レベル計測用のチャートの一例である。
【図７】図６で説明するチャート内のパッチの作成例である。
【図８】図７の端部階調補正用パッチを生成するフローチャートである。
【図９】本発明の実施形態１、２における４０％パッチ下側の補正ゲインと最大濃度の関係を示す図である。
【図１０】本発明に係る端部補正処理の処理ブロック図である。
【図１１】本発明で想定する属性情報の一例である。
【図１２】本発明の実施形態１、２で説明する端部計測処理を説明する概念図である。
【図１３】本発明の実施形態１、２で説明する端部計測処理のフローチャートである。
【図１４】本発明の実施形態１、２における補正位置決定の例外処理の一例である。
【図１５】本発明の実施形態１、２における補正位置決定の例外処理の一例である。
【図１６】本発明の実施形態１、２における補正位置決定の例外処理の一例である。
【図１７】本発明の実施形態１、２における補正位置決定の例外処理の一例である。
【図１８】本発明の実施形態１、２にて生成される代表補正ゲインの管理例である。
【図１９】本発明の実施形態１、２にて説明される補正ゲイン算出に用いられる注目画素情報の一例である。
【図２０】本発明の実施形態１、２にて説明される実補正ゲインの一例である。
【図２１】本発明の実施形態２における補正値を生成するフローチャートである。
【図２２】本発明の実施形態２にて説明されるチャート内のパッチの作成例である。
【図２３】本発明の実施形態２におけるパッチ画像の解析処理フロー図である。
【図２４】本発明の実施形態２におけるパッチ画像の解析処理フロー図である。
【図２５】本発明の実施形態２におけるパッチ画像の解析処理フロー図である。
【図２６】本発明の実施形態２における主走査プロファイル算出を説明するための概念図である。
【図２７】本発明の実施形態２における副走査プロファイル算出を説明するための概念図である。
【図２８】本発明の実施形態２におけるパッチの読取結果の一例である。
【図２９】本発明の他の実施形態で説明される代表補正ゲインの管理例である。
【符号の説明】
【０１７７】
３００  原稿
３０１  レンズ
３０２  ＣＣＤ
３０３  アナログ信号処理部
３０４  画像処理部
３０５  プリンタ
３０６  ＣＰＵ
３０７  ＲＯＭ
３０８  ＲＡＭ
３０９  画像読み取り部
３１０  ＣＰＵ回路部
３１１  ＲＡＭ
３１２  ＲＯＭ
３１３  操作部
３１４  ネットワーク
３１５  ＰＣ
３１６  ネットワーク・インターフェース部
３１７  記憶部
４１４  端部階調補正処理部
１００１  端部計測処理部
１００２  ゲイン算出処理部
１００３  遅延処理部
１００４  階調補正処理部
１００５  属性情報抽出処理部
【図１】
0004989497.tif 000002
【図２】
0004989497.tif 000003
【図３】
0004989497.tif 000004
【図４】
0004989497.tif 000005
【図５】
0004989497.tif 000006
【図６】
0004989497.tif 000007
【図７】
0004989497.tif 000008
【図８】
0004989497.tif 000009
【図９】
0004989497.tif 000010
【図１０】
0004989497.tif 000011
【図１１】
0004989497.tif 000012
【図１２】
0004989497.tif 000013
【図１３】
0004989497.tif 000014
【図１４】
0004989497.tif 000015
【図１５】
0004989497.tif 000016
【図１６】
0004989497.tif 000017
【図１７】
0004989497.tif 000018
【図１８】
0004989497.tif 000019
【図１９】
0004989497.tif 000020
【図２０】
0004989497.tif 000021
【図２１】
0004989497.tif 000022
【図２２】
0004989497.tif 000023
【図２３】
0004989497.tif 000024
【図２４】
0004989497.tif 000025
【図２５】
0004989497.tif 000026
【図２６】
0004989497.tif 000027
【図２７】
0004989497.tif 000028
【図２８】
0004989497.tif 000029
【図２９】
0004989497.tif 000030