(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-09
(45)【発行日】2024-02-20
(54)【発明の名称】画像処理装置、画像処理方法、プログラム
(51)【国際特許分類】
B41J 2/525 20060101AFI20240213BHJP
B41J 2/21 20060101ALI20240213BHJP
B41J 2/01 20060101ALI20240213BHJP
G03G 15/01 20060101ALI20240213BHJP
【FI】
B41J2/525
B41J2/21
B41J2/01 201
G03G15/01 S
(21)【出願番号】P 2022186774
(22)【出願日】2022-11-22
(62)【分割の表示】P 2019013881の分割
【原出願日】2019-01-30
【審査請求日】2022-11-22
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】武末 直也
(72)【発明者】
【氏名】石川 尚
(72)【発明者】
【氏名】山田 顕季
【審査官】大浜 登世子
(56)【参考文献】
【文献】特開2016-127479(JP,A)
【文献】特開2004-296548(JP,A)
【文献】特開2005-072748(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B41J 2/525
B41J 2/21
B41J 2/01
G03G 15/01
(57)【特許請求の範囲】
【請求項1】
複数種類の色材それぞれに対応する画像に基づいて、前記複数種類の色材それぞれに対応するドットの配置を決定する画像処理装置であって、
前記複数種類の色材それぞれの色材データを取得する取得手段と、
前記画像の注目画素において、前記複数種類の色材のうち第1色材と第2色材とに対応する第1ドットおよび第2ドットの配置を、前記色材データを用いて決定する決定手段と
を有し、
前記注目画素を含む近傍領域における前記第1ドットと前記第2ドットとの排他の度合いは、
前記注目画素にドットが配置され、かつ、前記近傍領域が第1のコントラストである場合に、
前記注目画素でドットが配置され、かつ、前記近傍領域が前記第1のコントラストより低い第2のコントラストである場合より、低いことを特徴とする画像処理装置。
【請求項2】
前記近傍領域が前記第1のコントラストである場合、前記近傍領域における前記画像はエッジ部を表すことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記近傍領域が前記第2のコントラストである場合、前記近傍領域における前記画像は平坦部を表すことを特徴とする請求項1に記載の画像処理装置。
【請求項4】
前記第1色材は、シアン色であり、前記第2色材は、マゼンタ色であることを特徴とする請求項1に記載の画像処理装置。
【請求項5】
コンピュータを請求項1乃至4のいずれか1項に記載の画像処理装置として機能させるためのプログラム。
【請求項6】
複数種類の色材それぞれに対応する画像に基づいて、前記複数種類の色材それぞれに対応するドットの配置を決定する画像処理方法であって、
前記複数種類の色材それぞれの色材データを取得する取得工程と、
前記画像の注目画素において、前記複数種類の色材のうち第1色材と第2色材とに対応する第1ドットおよび第2ドットの配置を、前記色材データを用いて決定する決定工程と
を有し、
前記注目画素を含む近傍領域における前記第1ドットと前記第2ドットとの排他の度合いは、
前記注目画素にドットが配置され、かつ、前記近傍領域が第1のコントラストである場合に、
前記注目画素でドットが配置され、かつ、前記近傍領域が前記第1のコントラストより低い第2のコントラストである場合より、低いことを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、記録媒体に画像を形成するための量子化データを生成する画像処理技術に関する。
【背景技術】
【0002】
擬似階調法を用いて画像を記録する際の量子化方法として、ディザ法が知られている。ディザ法とは、個々の画素に対応づけられた閾値が配列されて成る閾値マトリクスを用いて、これら閾値と画像データが示す画素値とを比較して、ドットの記録または非記録を画素ごとに決定する方法である。
【0003】
特許文献1には、閾値マトリクスを用いて量子化する際に、他の色のドットの配置を考慮することで、過剰なドット重複を避け、分散性を向上する方法を記載している。具体的には、分散型の閾値マトリクスを用いて色毎に量子化する際に、先行して決定した色のドット配置に基づいて閾値をシフトさせることで、色間のドットを排他的に決定する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら特許文献1に記載の方法では、画像のエッジ部分のような急峻に画素値が変化する領域において、異なる色間で互いに排他するようにドットを形成すると、優先順位の高い色のドットがエッジ部分に集中しやすい。その結果、優先順位の低い色のドットがエッジ部分の周りに配置されるため、鮮鋭性の低下や局所的な色付きなどが生じる場合がある。
【0006】
そこで本発明は、異なる色の画像を量子化する際に、画像における特徴に応じて適切に色間のドットの重なり度合いを制御することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明に係る画像処理装置は、複数種類の色材それぞれに対応する画像に基づいて、前記複数種類の色材それぞれに対応するドットの配置を決定する画像処理装置であって、前記複数種類の色材それぞれの色材データを取得する取得手段と、前記画像の注目画素において、前記複数種類の色材のうち第1色材と第2色材とに対応する第1ドットおよび第2ドットの配置を、前記色材データを用いて決定する決定手段とを有し、前記注目画素を含む近傍領域における前記第1ドットと前記第2ドットとの排他の度合いは、前記注目画素にドットが配置され、かつ、前記近傍領域が第1のコントラストである場合に、前記注目画素でドットが配置され、かつ、前記近傍領域が前記第1のコントラストより低い第2のコントラストである場合より、低いことを特徴とする。
【発明の効果】
【0008】
本発明によれば、画像における特徴に応じて適切に色間のドットの重なり度合いを制御することができる。
【図面の簡単な説明】
【0009】
【
図3】画像処理の工程を説明するためのフローチャート
【
図4】ソフトウェア構成を説明するためのブロック図である
【
図5】量子化処理の工程を説明するためのフローチャート
【
図11】ソフトウェア構成を説明するためのブロック図である
【
図12】量子化処理の工程を説明するためのフローチャート
【
図19】色間排他処理および抑制処理の結果を示す図
【発明を実施するための形態】
【0010】
以下、添付の図面を参照して、本発明を好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例にすぎず、本発明は図示された構成に必ずしも限定されるものではない。
【0011】
<第1の実施形態>
図1(a)および(b)は、本実施形態で使用する記録装置100及び記録ヘッド102の概略図である。本実施形態で使用する記録装置100は、シリアル型のインクジェット記録装置とする。図において、x方向は記録ヘッドの主走査方向、y方向は記録媒体Sの搬送方向、z方向は色材(インク)の吐出方向をそれぞれ示す。
図1(b)に示すように、記録ヘッド102には、シアン(C)、マゼンタ(M)、イエロー(Y)およびブラック(K)のインクを夫々吐出するノズル列が、x方向に並列配置されている。また、夫々のノズル列には、記録データに従ってインクをz方向に吐出するノズル101が、y方向に複数配列されている。
図1(a)に示すように、記録ヘッド102はキャリッジ103に装着され、キャリッジ103はキャリッジ軸107に沿って±x方向に移動可能である。キャリッジ103が±x方向に移動する間に、記録ヘッド102が記録データに従って吐出口101からインクを吐出することにより、記録媒体Sに1バンド分の画像が記録される。記録ヘッド102の吐出口面と対向する位置には、平板からなるプラテン105が配されている。プラテン105は、記録ヘッド102によって記録される領域の記録媒体Sを背面から支持し、記録ヘッド102の吐出口面と記録媒体Sとの距離を一定に保っている。
【0012】
記録ヘッド102による1バンド分の記録走査が完了すると、記録媒体Sを挟持する2組の搬送ローラ104が回転し、上記1バンド分に相当する距離だけ記録媒体を+y方向に搬送する。以上のような記録ヘッド102による1バンド分の記録走査と、搬送ローラ104による記録媒体Sの搬送動作とを交互に繰り返すことにより、記録媒体Sには段階的に画像が形成されていく。
【0013】
図2は、本実施形態における制御の構成を説明するためのブロック図である。画像処理装置200はホストPCなどからなり、CPU201は、不揮発性の記憶部であるHDD203に保持されるプログラムに従って揮発性の記憶部であるRAM202をワークエリアとしながら各種処理を実行する。例えばCPU201は、キーボード・マウスI/F 205を介してユーザより受信したコマンドやHDD303に保持されるプログラムに従って、記録装置100が記録可能な記録データを生成し、これを記録装置100に出力する。また、データ転送I/F 204を介して記録装置100から受信した情報をディスプレイI/F 206を介して不図示のディスプレイに表示する。
【0014】
一方、記録装置100において、CPU211は、不揮発性の記憶部であるROM213に保持されるプログラムに従って揮発性の記憶部であるRAM212をワークエリアとしながら各種処理を実行する。更に、記録装置100は、高速な画像処理を行うための画像処理アクセラレータ216、記録ヘッド102を制御するためのヘッドコントローラ215を備えている。画像処理アクセラレータ216は、CPU211よりも高速に画像処理を実行可能なハードウェアである。画像処理アクセラレータ216は、CPU211が画像処理に必要なパラメータとデータをRAM212の所定のアドレスに書き込むことにより起動され、上記パラメータとデータを読み込んだ後、上記データに対し所定の画像処理を実行する。但し、画像処理アクセラレータ216は必須な要素ではなく、同等の処理はCPU211で実行してもよい。
【0015】
ヘッドコントローラ215は、記録ヘッド102に記録データを供給するとともに、記録ヘッド102の記録動作を制御する。ヘッドコントローラ215は、CPU211が、記録ヘッド102が記録可能な記録データと制御パラメータをRAM212の所定のアドレスに書き込むことにより起動され、当該記録データに従って吐出動作を実行する。
【0016】
キャリッジコントローラ217は、CPU211の指示に従ってキャリッジ103の±x方向への移動を制御する。また、搬送コントローラ218は、CPU211の指示に従って搬送ローラ104の回転即ち記録媒体Sの搬送を制御する。
【0017】
画像処理装置200のデータ転送I/F 204および記録装置100のデータ転送I/F 214における接続方式としては、USB、IEEE1394、LAN等を用いることができる。
【0018】
図3は、印刷コマンドが発生した際に画像処理装置200のCPU201が実行する画像処理の工程を説明するためのフローチャートである。本処理は、CPU201が、HDD203に記憶されたプログラムに従ってRAM202をワークエリアとして利用しながら実行する。以下では、フローチャートにおける各ステップを「S」と表記することとする。
【0019】
本処理が開始されると、CPU201は、まず、アプリケーションプログラムなどで作成された画像データを取得しRAM202に展開する。本実施形態では個々の画素についてレッド(R)、グリーン(G)、ブルー(B)それぞれの輝度を示す8bit(256階調)の画素値を有する画像データが取得されるものとする。以下、このように例えばR、G、Bのような複数の成分の画素値を有する画素によって構成される画像データを、その成分を用いてRGBデータのように表記する。
【0020】
S301において、CPU201はRAM202に展開した画像データに対し、色補正処理を実行する。色補正処理とは、sRGB等の規格化された色空間を表現する画像データを、記録装置100が記録可能な色空間に対応づけた画像データに変換するための処理である。具体的には、CPU201は、予め記憶されたRGBの3次元ルックアップテーブルを参照し、8bit(256階調)の画素値を有するRGBデータを、8bit(256階調)の画素値を有するR´G´B´データに変換する。
【0021】
S302において、CPU201はS301で生成したR´G´B´データに対し、色変換処理を実行する。色変換処理とは、輝度情報を示すR´G´B´データを、記録装置100が使用する色材の色(以下インク色)に対応した、K、C、M、及びYのそれぞれの濃度情報を示すデータに変換するための処理である。具体的には、CPU201は、予め記録された3次元ルックアップテーブルを参照し、各画素の8bit(256階調)のR´G´B´データを、8bit(256階調)のKCMYごとのデータに変換する。色変換処理された各インク色に対応したデータをまとめてKCMYデータと呼ぶ。
【0022】
S303において、CPU201はS302で生成したKCMYデータに対し、量子化処理を行う。量子化処理については後に詳しく説明するが、この量子化処理によって、8bit(256階調)のKCMYデータは、1bitのK´C´M´Y´データに変換される。本実施形態において、K´C´M´Y´データは、KCMYの各インク色について、ドットの記録(1)又は非記録(0)を画素ごとに指定する2値データとする。
【0023】
S304において、CPU201はS303で生成したK´C´M´Y´データを記録データとして記録装置100に出力する。以上で本処理が終了する。
【0024】
記録データを受信した記録装置100のCPU211は、記録データをRAM212に展開する。そして、ヘッドコントローラ215、キャリッジコントローラ217及び搬送コントローラ218を制御しながら、RAM212に展開した記録データに従って、記録媒体に画像を記録する。なお、
図3の各ステップで示したそれぞれの工程は、本実施形態のインクジェット記録システムにおいて処理されるが、どの工程までをホストPC200が行い、どの工程以降をプリンタ100が行うか、という切り分けは任意に設定できる。たとえば、量子化までをホストPC200が行う場合は、量子化済みのデータをプリンタ100に転送すればよい。また、プリンタ100の性能によっては、多値のRGB画像データを直接受け取って、S300~S304のすべての工程を行うことも可能である。
【0025】
図4は、本実施形態の量子化処理における機能構成を説明するためのブロック図である。以下、簡単に各ブロックの役割を説明する。S302のインク色分解処理で生成されたKCMYデータは、インク色ごとに領域選択部401に入力される。以下、KCMYデータを構成するインク色ごとのデータを、本明細書では階調データと称する。各階調データは、同じ画素数であり、縦方向の画素数および横方向の画素数も同じである。
図4において、第1色はブラック(K)、第2色はシアン(C)、第3色はマゼンタ(M)、第4色はイエロー(Y)とする。
【0026】
画素選択部401は、複数の画素で構成される階調データから1つの画素を注目画素として設定する。そして、設定した注目画素に対応する各色の階調値をインク色選択部402に提供する。つまりここでは、画素選択部401は、注目画素を設定すると、4色に対応する注目画素の階調値をインク色選択部402に出力する。
【0027】
インク色選択部402は、メモリに保存されている量子化順情報408を参照し、第1色~第4色の中から処理対象色を選択し、選択したインク色の処理対象領域に対応する階調データを、閾値処理部403に提供する。量子化順情報408は、量子化処理を実行する色順を示す情報である。
【0028】
閾値処理部403は、予めメモリ内に格納された閾値マトリクス409を用いて、画素毎に量子化処理を実行する。
図6は、本実施形態で用いる閾値マトリクス409の一部を示す図である。閾値マトリクス409には、各画素に対応するように値の異なる複数の閾値がランダムに配置されている。閾値マトリクス409を、処理対象とする画像にタイル状に対応付けることで、画像における各画素は何れかの閾値に対応づけられる。また閾値処理部403は、CMYK各色の階調データに対して、同じ閾値マトリクス409を同様の位置に対応付けて用いるものとする。
【0029】
排他処理部404は、注目画素においてできるだけ異なる色のドットが重ならないように、次に処理する色に対応する閾値を制御する。そのため排他処理部404は、閾値処理部403が注目画素の階調値を量子化するたびに、注目画素に対応する閾値を更新する。
【0030】
コントラスト算出部405は、注目画素を含む近傍の領域におけるコントラストの度合いに相関のあるコントラスト値を算出する。近傍の領域において階調値の差が大きい場合はコントラストが高く、階調値の差があまりない場合はコントラストが低い。排他制御部406は、排他処理部404による排他効果の度合いを制御する。
【0031】
量子化データ作成部407は、閾値処理部403が生成したドット配置データに基づいて、記録装置100が記録可能な量子化データを生成し、記録データとして記録装置100に出力する。ここで言う各色の量子化データは、
図3のフローチャートで説明したK´C´M´Y´データに相当する。
【0032】
なお、
図4において、メモリは、
図2で説明した画像処理装置200における不揮発性のHDD203と揮発性のRAM202を統合して示したものである。また、以上説明した各ブロックは、実質的には
図2に示したCPU201が実行するソフトウェア上の機能単位である。なお、以下の説明では、単一ドットサイズであるとし、画素ごとにドットのON/OFFを示す1bitの量子化データがCMYKそれぞれについて生成するとして説明する。
【0033】
図5は、CPU201が、S303の量子化処理において、
図4に示す各ブロックを用いながら実行する処理工程を説明するためのフローチャートである。以下、
図6、
図7(a)~(k)を参照しながら、
図5に示すフローチャートに従って、本実施形態で実行する量子化処理を詳細に説明する。
【0034】
本処理が開始されると、まずS501において画素選択部401は、印刷対象となる画像から処理の対象とする画素(x,y)を注目画素として選択する。
【0035】
次にS502においてインク色選択部402は、ブラック(第1色)、シアン(第2色)、マゼンタ(第3色)、イエロー(第4色)の中から処理対象色を設定する。処理対象色に設定する色順序は、量子化順情報408としてHDD203のメモリに予め格納されており、インク色選択部402は、本工程が行われる度に新たな色を量子化順情報408が示す色順序に従って設定する。ここでは、量子化順はK→C→M→Yであるものとする。
【0036】
S503において閾値処理部403は、色分解処理(
図3のステップS302)により得られた階調データのうち、注目画素に対応する処理対象色の階調値I(x,y)を取得する。なお、本実施形態において階調データは、画素毎に0~255の階調値が格納された8bitデータとして説明する。
【0037】
S504において閾値処理部403は、注目画素の量子化処理に用いる閾値thを取得する。注目画素(x,y)に対応する閾値を閾値th(x,y)と表記する。
【0038】
次にS505において閾値処理部403は、階調値I(x,y)と閾値th(x,y)の大小を比較することにより、注目画素におけるドットのON、OFFを示す出力値を決定する。より詳細には、I(x,y)>th(x,y)であれば、S507へ進み、S507において注目画素(x,y)のドットをON(出力値=1)とする。一方で、I(x,y)≦th(x,y)であれば、S506へ進み、S506において注目画素(x,y)のドットをOFF(出力値=0)とする。
【0039】
次にS508において排他処理部404は、後続の処理対象色の際に用いる注目画素に対応する閾値th(x,y)を変更する。より詳細には、S507においてドットONとなった注目画素(x,y)に、他の色のドットが配置されにくくなるように閾値th(x,y)を閾値th´(x、y)へと更新する。本実施形態においては、排他処理部404は、式(1)により閾値を更新する。
th´=th(x,y)-I(x,y)(1)
【0040】
ここで算出される閾値th´に階調データの最大値255が加算されて量子化処理に用いられると、ドットが配置された画素は、元の閾値thよりも閾値th´の方が大きな値となるため、後続の処理ではドットが配置されにくくなり、排他効果が得られる。排他制御部は、新たな閾値th(x,y)をメモリに保存する。なお、このような閾値の更新により注目画素において色間のドットが排他的に配置されることについては、後述する。
【0041】
次にステップS509においてコントラスト算出部405は、注目画素を中心とする所定の領域に含まれる各画素について、累積階調データSを算出する。たとえば、
図7に示すように入力画像700において、画素701が注目画素であるとする。このときコントラスト算出部405は、注目画素701を中心とする3画素×3画素のブロックを処理領域とする。なお例えば画素702のように、画素位置が画像の端にあり、3画素×3画素の処理領域を確保できない場合には、2×2などより小さなブロックを処理領域とすることとする。本実施形態においてコントラスト算出部405は、注目画素において処理済の色の階調値および処理対象色の階調値Iの総和を累積階調データSとして算出する。
【0042】
たとえば、注目画素における注目対象色がKであるとする。本実施形態では量子化順がK→C→M→Yなので、注目画素において処理済の色はまだ存在せず、処理領域における各画素の累積階調データSは、Kインクの階調値Ikとなる。また、注目対象色がCインクである場合、処理領域における各画素について、注目画素における処理済の色のKインクの階調値Ikと処理対象色Cインクの階調値Icとの和が累積階調データSとして算出される。同様に、注目画素において処理対象色がMインクである場合、処理領域の画素毎に階調値Ikと階調値Icと階調値Imとの和を累積階調データとして算出する。さらに、注目画素において処理対象色がYインクである場合、処理領域の画素毎に階調値Ik、Ic、Im、Iyの総和を累積階調データとして算出する。
図8は、処理領域における各画素のK、C、Mインクそれぞれの階調値Ik、Ic、Imの例を示している。ここで注目画素における処理対象色がMインクである場合、S509において算出される各画素の累積階調データSはそれぞれ
図8(d)に示す値となる。
【0043】
次にステップS510においてコントラスト算出部405は、処理領域における各画素の累積階調データSに基づいて、処理領域内のコントラストを示すコントラスト値cntを算出する。具体的に本実施形態においては、以下の式(2)によりコントラスト値cntを算出する。ただし、処理領域における各画素の累積階調データSのうち最大値をmax_S、最小値をmin_Sとする。
cnt=(max_S-min_S)/(max_S+min_S)(2)
【0044】
ただし、max_S=0の場合には、cnt=0とする。式(2)により算出されたコントラスト値cntは、0から1の間の値であり、処理領域においてコントラストが高いほど、大きい値になる。
【0045】
S511において排他制御部406は、注目画素に対応する処理領域内のコントラストcntに基づいて、注目画素に対する排他処理の強度を抑制する処理をおこなう。より詳細には、処理領域に対応するコントラスト値cntの値が大きい(コントラストが高い)ほど、S508における閾値の変更が打ち消されるように、注目画素に対応する閾値th(x,y)をさらに更新する。本実施形態では排他制御部406は、新たな閾値th´´を以下の式(3)により算出し、メモリ内に閾値th´´を注目画素に対応する閾値として保存する。
th´´=th´(x,y)+I(x,y)×cnt(3)
【0046】
式(3)においてI(x,y)×cntは、排他の度合いを制御する排他制御値として機能する。すなわち近傍領域においてコントラスト値が小さい(コントラストが低い)画素については、ドットを排他的に配置するための閾値th´が維持される。一方、近傍領域においてコントラスト値が大きい(コントラストが大きい)画素では、閾値th´が更新されることになる。特に注目画素のコントラスト値が1である場合、閾値は元の閾値thの値に更新されることになる。この処理の詳細については後述する。
【0047】
次にS512において排他制御部406は、閾値th´´(x,y)が0より小さいか否かを判定する。閾値th´´(x,y)が0より小さい場合、S513へと進む。S513において排他制御部406は、閾値th´´(x,y)に階調データにおいて上限値i_max(ここでは255)を加えた値を新たな閾値th´´´とすることにより、注目画素の閾値を更新する。一方で、閾値th´´(x,y)が0以上の場合には、S513をスキップしてS514へと進む。
【0048】
次にS514においてインク色選択部402は、量子化順408に従って注目画素において全色の量子化処理を実行したか否かを判定する。注目画素における全色の量子化処理が完了していれば、S515へと進む。未処理の色がある場合には、S502へと進み、注目画素のおける処理対象色を選択し、注目画素における量子化処理を続行する。
【0049】
S515において量子化データ作成部407は、注目画素の各色の量子化値をRAM212に出力する。S516において画素選択部401は、入力画像の全画素について量子化処理を実行したか否かを判断する。たとえば、左上から順に画素を選択している場合には、最も右下の画素の量子化データを作成済みであるか否かを判定すればよい。判定の結果、入力画像の全画素について量子化処理を実行済みであれば、量子化処理を終了する。未作成の画素がある場合には、S501へと戻り、新たに注目画素を選択して量子化処理を続行する。
【0050】
以下、
図9および
図10を用いて、本実施形態における量子化処理について具体的に例をあげて説明する。
図9(a)は、入力画像における部分領域のKインクの階調データを示す。矩形は1画素を示し、各画素には階調値が格納されている。
図9(b)は、
図9(a)に示す部分領域に対応する閾値群を示す。
図9(c)は、Kインクの量子化処理の結果を示す。
図9(c)において黒く塗りつぶされた画素は、Kインクのドット(以降、単にKドットとも記す)が配置される(出力値が1)ことを示している。Kインクは第1色なので、各画素の階調値が対応する閾値よりも大きい画素については、出力値が1となっている。Kインクの量子化処理を実行する際には、S508~S514の処理により、各画素に対応する閾値の少なくとも一部が更新される。
図9(d)は、S508において式(1)により設定される閾値th´を示す。Kインクの出力値が0の画素については、閾値は変更されず、
図9(b)に示す閾値と同じ閾値が保持されている。一方、Kインクの出力値が1の画素については、閾値から階調値を減算した値が、閾値th´として格納されている。ここで出力値が1ということは、画素の階調値が閾値よりも大きいことを意味している。そのため出力値が1の画素では必ず閾値th´が負の値となる。
【0051】
図9(e)は、S510で算出される各画素のコントラスト値cntを示す。ただし、コントラスト値を算出する処理領域は。注目画素を中心とする3画素×3画素の領域とする。近傍の領域において平坦(画素値の変化がない)でコントラストの低い画素については、コントラスト値が小さい(0.00)である。また近傍の領域においてコントラストの高い画素ほど、コントラスト値が大きいことがわかる。
【0052】
図9(f)は、排他処理による強度を制御する排他制御値に基づいて算出された閾値th´´を示す。ただし、th´´<0の場合にはth´´にi_max=255を加えている。排他制御の結果、部分領域における右下の画素のようにKドットが配置され、かつコントラストの低い画素については、元の閾値19よりも大きな値が閾値として採用されている。また2列目の下2画素のようにKドットが配置され、かつコントラストの低い画素では、元の閾値より小さい値が採用され、排他処理の強度が抑制されていることがわかる。さらに、右上の画素や2列目2行目の画素のようにKドットが配置されない画素は、いずれも元の閾値より小さい値が採用されている。
【0053】
次に、処理対象色としてCインクが選択される。
図10(a)は、
図9(a)に示す部分領域と同じ部分領域におけるCインクの階調データを示す。
【0054】
本実施形態では、
図9(b)に示す閾値群ではなく、
図9(f)に示す排他制御後の閾値群を用いて、
図10(a)に示すCインクの各階調値を量子化する。この本実施形態における量子化の結果を
図10(d)に示す。ここで本実施形態による効果を説明するため、
図9(b)に示す閾値群を用いて量子化した結果を
図10(b)に示す。また排他処理後の閾値th´を用いて量子化した結果を
図9(c)に示す。なお
図10において、図中で黒く塗りつぶされた画素に、Cインクのドット(以降、Cドットと記す)が配置されたことを示している。
【0055】
図9(c)および
図10(b)より、同じ閾値群を用いてそれぞれの色の階調値を量子化した場合には、Kドットが形成されたいずれの画素にも、Cドットが形成されることがわかる。すなわち、異なるインク色について、同一の閾値群を使用した場合、色の異なるドットの重複率が大きくなる。
図9(a)と
図10(a)はいずれも左から2列目に1画素幅のラインがあるように、階調データの特徴が似ている場合は特に、同じ閾値群を用いて量子化するとドットの重複率は高くなりやすい。しかしながら、量子化データに基づいて記録装置200が記録媒体にインクを吐出すると、平坦な領域においてはドットの重なりと紙白の露出が混在してしまう。その結果、平坦な領域であるにも関わらずコントラストが高くなり、また重複したドットにより粒状性が悪化し、画質が損なわれる場合があった。
図10(b)に示す部分領域においては、右3列については平坦な領域であり、ドットの重複による画質劣化が生じる可能性がある。また、重複したドット増えることにより紙白が増え、所望の濃度に達成しない場合があった。
【0056】
ここで、
図9(d)に示す排他処理後の閾値th´を用いて各画素の階調値を量子化すると、
図10(c)に示す量子化データが得られる。なお上述の通り排他効果のため、閾値th´<0の場合にはth´にi_max=255を加えて量子化している。
図9(c)および
図10(c)より、排他処理後の閾値th´を用いた場合には、Kドットが形成された画素には、Cドットが形成されないことがわかる。すなわち、S508における閾値の変更により、異なる色のドット同士が互いに排他的に配置されていることがわかる。このような色間のドットを排他的に配置により、平坦な領域では粒状性の悪化を抑制することができる。
【0057】
一方、コントラストの高い領域に対しては、異なる色のドット同士が互いに排他的に配置することが好ましくない場合がある。たとえば、
図9(a)および
図10(a)に示す階調データでは、左から2列目の階調値が他の列の階調値に比べて大きく、K+Cのラインが形成されている。しかしながら、
図10(c)に示すCインクの量子化データに基づいて記録装置200が記録媒体にインクを吐出すると、KとCとが重複した高濃度のラインが形成されるはずの領域にもかかわらず、KインクとCインクが重なったドットが存在しない。その結果、KドットとCドットが分散して配置されているため部分領域としては平坦な濃度になってしまう。その結果、記録媒体においてK+Cのラインが知覚されにくい。
【0058】
そこで本実施形態においては、S511においてコントラストに基づいて画素ごとに色間ドットの排他の度合いを制御する処理をおこなう。排他制御後の閾値群は、
図9(f)に示す排他制御後の閾値マトリクスにより得られるCインクの量子化データを
図10(d)に示す。
図9(c)および
図10(d)より、コントラストの高いK+Cライン付近ではドットが重なることでK+Cラインが再現される一方で、右側の均一領域ではCドットとKドットとが互いに排他されていることがわかる。
【0059】
このように本実施形態では、色間排他処理および排他処理による強度を制御している。高コントラストの領域では異なる色のドットが重なりやすいように制御し、低コントラストの領域では異なる色のドットが重なりにくいように制御している。これにより、記録媒体において適切に異なる色のドットが重ねて記録した際に高画質な画像を実現することができる。
【0060】
なお、コントラスト値cntの算出する処理領域は3画素×3画素に限らない。また、注目画素が中心でなくてもよく、注目画素を左上とする4×4領域でコントラストcntを算出してもよい。あるいは、連続領域ではなくて千鳥格子や奇数もしくは偶数列の画素のみを算出する処理領域としてもよい。また、コントラスト値cntを算出する方法として、式(2)による算出方法以外を適用することもできる。たとえば、累積階調データSのヒストグラムに基づいてコントラスト値cntを算出してもよい。具体的には、注目画素を中心とする所定領域内のヒストグラムから算出される尖度を算出し、尖度が小さいほどコントラストcntが高くなるように定めてもよい。
【0061】
<第2の実施形態>
第1の実施形態では、同一の閾値マトリクスを各色の階調データに用いる方法において、色間のドットの排他の度合いを制御する方法について説明した。本実施形態では、所定領域内の平均値を用いてドット数を算出した後、該ドット数の配置を決定することで、異なる閾値マトリクスを用いても異なる色間での排他の度合いを制御する方法について説明とする。第1の実施形態と同様の構成については、同じ名称を用いて説明し、詳細な説明を省略する。
【0062】
図11は、本実施形態の量子化処理における機能構成を説明するためのブロック図である。領域選択部1101は、複数の画素で構成される階調データを複数の単位領域に分割し、その中から1つの単位領域を処理対象領域として設定する。このとき領域選択部401は、各色の階調データについて、同じ位置の複数の単位領域により分割する。
【0063】
インク色選択部1102は、領域ごとに処理の対象とするインク色を決定する。
【0064】
メモリには、インク色毎の閾値マトリクス1110が保存されている。またドット履歴情報1111には、単位領域における各色の画素の出力値が保存される。つまりドット履歴情報111は、処理対象領域における各画素について、先行して決定されたインク色毎のドットの有無を示す。なお本実施形態では4色のインク色があるため、ドット履歴情報1111は3色分の単位領域の出力値を保存可能なように構成されている。
【0065】
目標ドット数設定部1103は、処理対象領域に配置するべき目標ドット数Dを色ごとに設定する。目標ドット数とは、処理対象領域においてドットを配置すべき数である。ここでは量子化処理により、各画素をドットの記録(1)又は非記録(0)を画素ごとに指定する2値に変換する。すなわち目標ドット数とは、処理対象領域に含まれる画素のうち、量子化により記録を示す値(ここでは、1)にすべき画素の数とも言い換えることができる。
【0066】
評価値設定部405は、処理対象領域の階調データ、処理対象領域に対応する閾値群およびドット履歴情報に基づいて、処理対象色の処理対象領域に含まれる画素のそれぞれに対し評価値Hを設定する。詳細な算出方法は後述する。ドット配置部1107は、目標ドット数と各画素の評価値に基づいて、処理対象領域におけるドット配置を決定する。量子化データ作成部407は、画像の量子化データを作成し、出力する。
【0067】
図12は、CPU201が、S303の量子化処理において、
図11に示す各ブロックを用いながら実行する処理工程を説明するためのフローチャートである。
【0068】
まずS1200において領域選択部1101は、印刷対象となる画像領域の中から1つの単位領域を処理対象領域として設定する。
図13は、処理対象領域の設定方法を説明するための概念図である。領域選択部1101は、印刷対象となる画像1300を、同型の複数の単位領域に分割し、その中から1つの単位領域を処理対象領域として設定する。本実施形態では印刷対象となる画像領域を4画素×4画素の単位で区画し、それぞれの4画素×4画素領域を単位領域として扱う。そして、これら複数の単位領域を順番に処理対象領域に設定して所定の量子化処理を行う。処理対象領域を設定する順番は特に限定されるものではないが、本実施形態では図の左上から+x方向に順番に設定し、最端部の処理が修了すると+y方向に隣接する段に移る順番とする。
【0069】
S500で処理対象領域が設定されると、S1201においてインク色選択部1102は、量子化順情報1108に基づいてブラック(第1色)、シアン(第2色)、マゼンタ(第3色)、イエロー(第4色)の中から処理対象色を設定する。
【0070】
次にS1202においてドット数決定部1103は、インク色分解処理(
図3のS302)により得られた階調データのうち、処理対象領域の処理対象色の階調データをメモリに展開する。
図14(a)は、S1202で展開される階調データの一例を示す。処理対象領域1301に含まれる4×4の画素のそれぞれに0~255の階調値Iが対応づけられている。S1203において目標ドット数決定部1103は、処理対象色の閾値マトリクス1110から処理対象領域に含まれる16画素のそれぞれに対応する閾値th(x,y)を取得する。
図14(b)は、処理対象色の閾値マトリクスの一部を示す図である。目標ドット数決定部1103は、閾値マトリクスから処理対象領域に対応する位置にある16の閾値をメモリから読み出す。
【0071】
次にS1204において目標ドット数決定部1103は、S1202において取得された階調データとS1203において取得された閾値th(x,y)とに基づいて、処理対象領域に配置すべきドット数を決定する。具体的には、処理領域内の階調データの総和SUMを画素数16で除算した平均値と、処理対象領域の各閾値との大小の比較をおこない、平均値>閾値となる画素数をドット数とする。なお、本実施形態においては処理対象色ごとに異なる閾値マトリクスから閾値thを取得する。例えば
図14(a)に示す処理対象領域の場合、目標ドット数決定部1103はまず、処理対象領域の階調値の平均値109.75(=1756/16)を算出する。次に平均値と各閾値とをそれぞれ比較することで、平均値>閾値となる画素数=7が処理対象領域のドット数として算出される。
【0072】
次にS1205において配置評価部1104は、処理対象領域における16画素のそれぞれについて、ドットを配置する優先順位を評価するための評価値Eを算出する。評価値Eは、値が大きいほど、ドットが優先して配置されることを示す実数である。具体的には、配置評価部1104は、以下の式(4)に基づいて各画素の評価値Eを算出する。
E=I/I_max - th/th_max(4)
【0073】
ただし、Iは注目画素の階調値であり、I_maxは階調データの上限値である。たとえば、階調データが8bitの場合にはI_max=255、16bitの場合には、I_max=65535である。すなわち、I/I_maxは0~1までの実数であり、値が大きいほどドットが配置されやすいことを示す。また、thは注目画素に対応する閾値であり、th_maxは閾値の上限値である。たとえば閾値が0~254であれば、th_max=254とすればよい。このとき、th/th_maxは0~1までの実数であり、値が大きいほどドットが配置されにくいことを示す。
【0074】
つづいて、S1206において排他処理部1105は、処理対象領域における16画素のそれぞれについて、メモリ内に格納されたドット履歴情報1111から各画素におけるドットの累積値を取得する。
【0075】
たとえば、処理対象色がCであるとき、ドット履歴情報1111には処理済みであるKインクの出力値が保存されている。同様に、処理対象色がMであるときは、ドット履歴情報1111にはKインクの出力値とCインクの出力値の合計が、処理対象色がYであるときはK、C、Mインクそれぞれの出力値の合計が保存されている。なお、処理対象色がKインクである場合には、処理済みのインク色が存在しないため、排他処理部1105はドット履歴情報1111から何も取得しない。
【0076】
次にS1207において排他処理部1105は、ドット履歴情報1111に基づいて各画素の評価値Eを補正する。具体的には排他処理部1105は、式(5)、(6)により、排他処理後の評価値E´を算出する。
E´=E - H/H_max(5)
ただし、H=Σ(wi×Di)(6)
【0077】
式(5)におけるHは履歴情報から算出される排他制御値であり、値が大きいほどドットが配置されにくいことを示す実数である。本実施形態においては、より濃度の高いドットがより多く配置されている画素ほど、排他制御値Hがより大きな値となる。
【0078】
また、上記の式(6)においてiは処理対象色の処理順を示す番号である。たとえば本実施形態では処理順がK→C→M→Yであるので、処理対象色がKの場合にはi=1、Cの場合にはi=2である。また、wiは、予め設定されたi番目のインク色に対する重みである。本実施形態では濃度の高いインク色ほど重みを大きくする。具体的には各インク色の重みをK:C:M:Y=4:2:2:1とする。つまり、w1=4、w2=2、w3=2、w4=1となる。このように重みを定めることで、より濃度の高いドットが配置されているほど、排他制御値Hがより大きな値として算出される。
【0079】
またDiはi番目のインク色のドット数を示している。たとえば、注目画素にKインクのドットが1個配置されている場合は、D1=1である。また、Σはi-1番目までの総和を示す。ただし、i=1の場合にはH=0とする。以上のように算出された排他制御値Hは、既に配置されたドットの数および配置されたドットの濃度の高さに応じて算出される。ドットの数が多い、また配置されているドットの濃度が高い場合ほど、大きな値とある。
【0080】
また、H_maxは処理領域内の排他制御値Hの最大値を示している。排他制御値HをH_maxで除算することで、処理領域内の排他制御値Hが0~1に正規化される。なお、式(5)において、H_max=0である場合には、E´=Eとする。つまり処理対象色が第1色目である場合には、まだドットが配置されていないので、評価値Eは補正されない。
【0081】
次にS1208において排他制御部1106は各画素における累積階調データSに基づいて、ステップS1207における評価値の補正効果を打ち消すように評価値E´を再度補正する。具体的には、排他制御部1106は、以下の式(7)により、各画素の排他制御後の評価値E´´を算出する。
E´´=E´+S/S_max(7)
ただし、S=Σ(wi×Ii)(8)
【0082】
ここで、累積の階調データSは、すでに処理済みのインク色の階調値Iの重みづけ和である。たとえば、処理対象色がKであれば、各画素の累積階調データSは0である。また、処理対象色がCインクであれば画素毎にKインクの階調値IkとKインクに対する重みw1との積を累積階調データSとして取得する。同様に、処理対象色がMインクであれば画素毎にIk×w1+Ic×w2を取得する。
【0083】
なお、式(7)のS_maxは、累積階調データSの理論的な上限値を示している。たとえば、w1=4、階調データが0~255の値をとりうる8bitのデータであれば、i=2におけるS_maxの値は1020(=255×4)となる。さらに、w2=2であれば、i=3におけるS_maxの値は1530(=255×4+255×2)となる。なお、S_max=0である場合には、E´´=E´とする。
【0084】
なお本実施形態では式(6)および(8)の各インクの重みwiは共通としているが、同一のインクについて異なる重みをそれぞれの式で使用することも可能である。
【0085】
次にS1209においてドット配置部1107は、処理対象領域における各画素の評価値E´´に基づいて、処理対象領域のドット配置を決定する。具体的は、評価値E´´の大きい画素から順に、ステップS1204で算出された目標ドット数だけ、ドットを領域内に配置する。なお、評価値E´´が同じ値である場合には、階調値Iがより大きい画素に優先して配置する。その結果、
図14(c)に示すように処理単位領域に対してドット配置が決定されることになる。あるいは評価値が同じ値である画素からランダムに優先する画素を選択してもよいし、より左上の画素を優先して配置するようにすることもできる。ドット配置部1107は、処理対象領域においてドットを配置した画素の出力値を1とし、ドットを配置しない画素の出力値を0と決定する。
図14(d)は、各画素の出力値を示す図である。
【0086】
次にS1210においてドット配置部1107は、ドット履歴情報1111を更新する。具体的には、S1209にて決定された各画素の出力値インク色に対応付けてメモリ上に格納する。格納されたドット履歴情報は、以降のインク色のS1206において処理済みのインク色のドット履歴として取得される。
【0087】
次にS1211において量子化データ作成部は、S1209において決定した単位領域毎の出力値から画像の量子化データを作成し、RAM212に出力する。
【0088】
次にS1212においてインク色選択部1102は、量子化順に従って処理対象領域について全インク色の量子化データを作成済みであるか否かを判断する。全インク色の量子化データを作成済みと判断された場合、S1213へと進む。未作成のインクがある場合には、S1201へと進み、処理対象色を選択しなおして量子化処理を続行する。
【0089】
S1213において領域選択部1101は、入力画像の全画素について量子化データの作成済みか否かを判定する。すなわち、
図13に示す4画素×4画素で分割された全ブロックを処理対象領域として選択し、量子化データが作成済みか否かを判断する。たとえば、左上から順にブロックを選択している場合には、処理領域が最も右下のブロックであるか否かを判定すればよい。判定の結果、入力画像の全画素について量子化データを作成済みであれば、量子化処理を終了する。未作成の画素がある場合には、S1200へと進み、処理領域を選択して量子化処理を続行する。
【0090】
以下、
図15、
図16を用いて、本実施形態における量子化処理を具体的に説明する。なお、まず
図15を用いて、1色目のKインクにおける量子化処理を説明する。
【0091】
図15(a)は、処理対象領域におけるKインクの階調データIkである。
図15(b)は、処理対象領域に対応する閾値群を示す。
【0092】
このときS1204において、
図15(a)に示す階調データIkの平均値60と、
図15(b)に示す各閾値との比較から、目標ドット数=4が算出される。
【0093】
さらに、S1205において式(3)を用いて算出される評価値Eを
図15(c)に示す。
図15(d)に、正規化前の排他制御値Hを示す。なお、Kインクは第1色(w=1)であるため、領域内の全画素にてH=0である。そのため、
図15(e)に示す通り、S1207における排他処理後の評価値E´はE´=Eとなる。
【0094】
同様に、
図15(f)に示す累積の階調データSも領域内の全画素にてS=0であり、
図15(g)に示す排他制御処理後の評価値E´´はE´´=Eとなる。このとき、
図15(g)に示す評価値E´´の高い画素から順に、4つのドット(ドット数=4)を配置することで、
図15(h)に示すKインクのドット配置が得られる。また、
図15(i)に示す量子化データがドット履歴情報1111として、重みw1=4と対応付けてメモリ上に格納される。
【0095】
次に、
図16に2色目のCインクの量子化処理の過程を示す。まず、処理対象領域におけるCインクの階調データIcと、処理対象領域に対応する閾値群をそれぞれ
図16(a)、
図16(b)に示す。このとき、
図16(c)に示す評価値Eとドット数=4とがそれぞれ算出される。
【0096】
また、
図15(i)に示すKインクの量子化データとKインクに対する重みw1=4とから、
図16(d)に示す各画素の排他制御値Hが算出される。このとき、H_max=4である。
【0097】
さらに、
図16(c)に示す評価値EとH_maxで正規化した排他制御値Hとから
図16(e)に示す排他処理後の評価値E´が算出される。
【0098】
同様に、
図15(a)に示すKインクの階調データとKインクに対する重みw1=4とから、
図16(f)に示す各画素の累積の階調データSが算出される。なお、w1=4より、S_max=1020となる。さらに、排他処理後の評価値E´とS_maxで正規化した累積階調データSとから、
図16(g)に示す排他制御処理後の評価値E´´が算出される。
【0099】
このとき、
図16(g)に示す評価値E´´の高い画素から順に、4つのドット(ドット数=4)を配置することで、
図16(h)に示すCインクのドット配置が得られる。また、
図16(i)に示す量子化データがドット履歴情報1111として、Cインクに対する重みw2=2と対応付けてメモリ上に格納される。
【0100】
同様に、
図17に3色目のMインクの量子化処理の過程を示す。この例では、H_max=6、S_max=1530、ドット数=4となる。よって、
図17(i)に示すMインクの量子化データが得られる。
【0101】
さらに、
図18に4色目のYインクの量子化処理の過程を示す。ただし、Mインクに対する重みw3=2とする。この例では、H_max=8、S_max=2040、ドット数=4となる。よって、
図18(i)に示すYインクの量子化データが得られる。以上の処理により、CMKY4色の量子化データを得ることができる。
【0102】
ここで本実施形態における排他制御の効果について説明する。処理対象色が2色目以降であれば、排他制御値Hはすでに決定済みのドット配置に基づいた値となる。たとえば、処理対象色がCインクであれば、Kドットが配置済みの画素に対しては排他制御値Hが正の値となりドットが配置されにくくなる。具体的に、
図16(c)に示す排他処理前の評価値Eに基づいてドット数=4を配置した場合のドット配置、を
図19(a)に示す。同様に、
図16(e)に示す排他処理後の評価値E´に基づいてドット数=4を配置した場合のドット配置を
図19(b)に示す。
図19(a)に示す通り、排他処理前の評価値Eに基づくドット配置では、Kインクが配置済みの画素にもドットが配置されており、色間で排他した配置とはならない。一方で、
図19(b)に示す通り、排他処理後の評価値E´に基づくドット配置では、Kインクが配置された画素を避けてドットが配置されている。すなわち、異なる色間で排他した配置が得られている。このように、異なる色間で排他したドット配置とすることで、ドットの重なりや紙白の過剰な露出が低減される。特に平坦な階調データにおいては局所領域内でコントラストが上がってしまうの抑制し、重複したドットによる粒状性の悪化が抑制される。また異なるインク色のドットが重複することによる色の濁りが抑制され、特に暗部(高濃度部)において発色性が向上する。
【0103】
しかしながら、処理対象領域において階調データが急峻に変化する場合など、異なる色のドット同士が互いに排他的に配置することが好ましくない場合もある。たとえば、
図15(a)~18(a)に示す階調データ上では、左から2列目にCMYK4色混合のラインが形成されている。しかしながら、
図19(b)に示す排他処理後の評価値E´を用いたドット配置では、KとCとが重ならず、排他された配置となっている。そのため、4色混合のラインが形成されるべき画素にドットが重複されず、混合色のラインとして知覚されない可能性がある。あるいは、混合色以外の色付きが局所的に発生する可能性がある。
【0104】
一方で、
図16(h)に示す排他制御処理後の評価値E´´に基づくドット配置では、CインクとKインクとがCMYK混合ライン上で重複している。同様に
図17(h)、
図18(h)に示すMインクおよびYインクもCMYK混合ライン上にドットが配置されている。すなわち、排他制御処理後の評価値E´´にしたがってドットを配置することで、階調データが急峻に変化する領域では排他を抑制し、重複を容認したドット配置が得られている。またこのとき、階調データ上で右から1列目の均一な領域において、排他制御処理後の評価値E´´に基づくドット配置では、異なる色間で排他した配置が得られている。
【0105】
しかしながら、
図16(c)に示す排他処理前の評価値Eに基づくドット配置では、KインクとCインクとが重複し、異なる色間で排他した配置となっていない。本実施形態では、階調データIが平坦であれば、累積の階調データSも平坦となる。このとき、評価値E´とE´´とでは、絶対値は変化するが、相対的な大小関係は変わらない。つまり、平坦な階調データ領域では、ドットが配置される順序は評価値E´とE´´とでは変わらない。したがって、累積階調データSを用いた排他制御処理をおこなっても、平坦な階調データの領域に対しては、異なる色のドットが排他したドット配置を得ることができる。
【0106】
換言すると、本実施形態においては、ドットの履歴情報を参照し、まずはドットが配置されている画素にドットが配置されにくくなるように評価値を補正している。そのうえで、階調データのコントラストに基づいてその補正を抑制するようにドット配置評価値をさらに補正している。このように処理することで、コントラストの低い領域では、閾値マトリクスの大小に基づいて色間を含めた排他対象ドットを分散して配置し、粒状性を向上させることができる。一方、コントラストの高い領域では、階調データの大小に基づいてドット排他を抑制して、画像データ上の形状を再現性向上させることができる。
【0107】
(変形例)
なお、上記の実施形態においては、価値Eを実数として説明したが、8bitの整数としても算出することも可能である。
【0108】
また、排他制御値Hと累積階調データSに0~1の係数をかけることで平坦な領域における排他の度合いを調整することも可能である。このとき、係数に1を使用すると、上述の実施例と同じ結果を得ることができる。一方で係数が小さいほど平坦な領域における排他処理が抑制され、色間で重複するドットが増加し、係数に0を使用すると均一領域に対しても排他処理がおこなわれないこととなる。たとえば、プリンタで想定される色間のレジずれ(相対的な位置ずれ)に応じて、排他値Hおよび階調データSに対する係数を決定するとよい。具体的には、色間の相対的な位置ずれが大きく色ムラが目立つ領域の係数を小さくする等の調整を行うことで色間のレジずれに対するロバスト性が向上する。
【0109】
また、ドットが少ないハイライト部においては、上記レジずれはほとんど検知されないので、入力画像の明度に応じて上記係数を制御するようにしても良い。
【0110】
また、排他対象色を限定しても良い。即ち、排他対象色に対してのみ、上記処理を行い、排他非対象色は通常のディザ処理を行えばよい(もしくは、排他非対象色では上記係数を0に設定する)。
【0111】
また上述の実施形態では、4画素×4画素の単位領域において、目標ドット数は16以下であった。しかしながら、複数のノズル列を保持する場合や同一領域を複数回スキャンすることで、各画素に同一のインクを重ねて吐出できる場合には、16を超えるドット数が領域内に配置される場合がある。たとえば、各画素に2回までインクを吐出できる場合には、階調データをI/I_maxを0~2に正規化するように、階調データ、I_maxを定めればよい。そして、th/th_maxを0~1に正規化し、正規化した階調データと閾値とで領域内に配置するドット数を算出すればよい。即ち、まず、I/I_maxが1以上の画素にドットを1つずつ配置し、次に、ドットを配置した画素のI/I_maxから1を減算して、残りのドットを配置すればよい。このとき、履歴情報1111には、配置されたドット数0~2を画素ごとに保持すればよい。
【0112】
また、記録ヘッドが吐出量を変えてドットを形成できる場合がある。たとえば、大中小の3段階のドットを形成できる場合にも、同様に処理できる。たとえば、ドットが1個配置された画素は小ドット、2個配置されたところは中ドット、3個配置されたところは大ドットとすればよい。
【0113】
また上述の実施形態では、各インク色に対して異なる閾値マトリクスを、ドット数の算出およびドット配置順の取得に用いた。しかしながら、すべてのインク色もしくは複数のインク色に対して同一の閾値マトリクスを用いることも可能である。とくに平坦な領域においては、全インク色の累積ドットパターンが単一の閾値マトリクスにより生成したパターンとなるため、ドットの分散性が向上する。また、色間のドットに重み付して排他処理することで、ドットの重なりを含めたドットの明度順にドットを配置できる。これにより、ドット間のコントラストを下げ、さらなる粒状性の改善が可能となる。
【0114】
また上述の実施形態では、処理対象色より前に処理した色のドット配置を全て参照して排他制御値Hおよび累積階調データSを算出している。しかしながら、一部の色間のみ排他制御する構成としても良い。この場合、参照色を指定する手段によって、指定された色のみのドットパターンから排他制御値Hおよび累積階調データSを生成するようにすればよい。また、注目色の累積階調データSを算出する際に注目色の階調データを加算して算出してもよい。
【0115】
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
【0116】
403 閾値処理部
404 排他処理部
405 コントラスト算出部
406 排他制御部
407 量子化データ作成部