(57)【要約】      （修正有）【課題】ディザ法と誤差拡散法の利点を生かしながら淡い背景部にある文字・線の品質が向上できる印刷装置を提供する。【解決手段】画像データに基づいて画像を印刷する印刷装置であって、画像データを入力する入力部４１と、入力した画像データの階調値である入力階調値を変換して変換階調値を生成する変換部５１と、変換階調値に基づいてディザマスクの閾値と比較して比較結果を出力する比較部５３と比較結果と入力階調値とに基づいて、誤差拡散法によりドットデータを生成する誤差拡散処理部５５と、生成されたドットデータを用いて画像を印刷する印刷部５７と、を備え、変換部５１は、入力階調値が所定範囲内である場合は、入力階調値から所定階調値を減算して変換階調値を生成する。【選択図】図１
2017114033.tif 000002
【特許請求の範囲】
【請求項１】
画像データに基づいて画像を印刷する印刷装置であって、
前記画像データを入力する入力部と、
前記入力した画像データの階調値である入力階調値を変換して変換階調値を生成する変換部と、
前記変換階調値に基づいてディザマスクの閾値と比較して比較結果を出力する比較部と、
前記比較結果と前記入力階調値とに基づいて、誤差拡散法によりドットデータを生成する誤差拡散処理部と、
前記生成されたドットデータを用いて前記画像を印刷する印刷部と、
を備え、
前記変換部は、前記入力階調値が所定範囲内である場合は、前記入力階調値から所定階調値を減算して前記変換階調値を生成することを特徴とする印刷装置。
【請求項２】
前記変換部は、前記所定範囲を分割した範囲において、前記入力階調値が相対的に最小である第１範囲では、前記所定階調値を前記入力階調値として、前記変換階調値を生成することを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記変換部は、前記所定範囲を分割した範囲において、前記入力階調値が相対的に最小となる範囲以外の第２範囲では、前記所定階調値を前記入力階調値以下の階調値として、前記変換階調値を生成することを特徴とする請求項１に記載の印刷装置。
【請求項４】
前記所定範囲は、階調値の最濃度を示す最大値である最大階調値と、階調値の最淡度を示す最小値である最小階調値との中間を示す中間階調値以下で、前記最小階調値以上であることを特徴とする請求項１から請求項３のいずれか一項に記載の印刷装置。
【請求項５】
前記所定範囲は、階調値の最濃度を示す最大値である最大階調値および階調値の最淡度を示す最小値である最小階調値の四半を示す階調値の範囲うち、最も最小階調値に近い範囲であることを特徴とする請求項１から請求項３のいずれか一項に記載の印刷装置。
【請求項６】
前記誤差拡散処理部は、前記画像データを構成する画素において前記比較結果と前記入力階調値との誤差値を前記画素の周囲の画素に拡散させ、前記誤差値が加算されて生成された補正階調値を誤差拡散の閾値と比較してドットデータを生成することを特徴とする請求項１から請求項５のいずれか一項に記載の印刷装置。
【請求項７】
画像データに基づいて画像を印刷する印刷方法であって、
前記画像データを入力する入力工程と、
前記入力した画像データの階調値である入力階調値を変換して変換階調値を生成する変換工程と、
前記変換階調値に基づいてディザマスクの閾値と比較し比較結果を出力する比較工程と、
前記比較結果と前記入力階調値とに基づいて、誤差拡散法によりドットデータを生成する誤差拡散処理工程と、
前記生成されたドットデータを用いて前記画像を印刷する印刷工程と、
を備え、
前記変換工程は、前記入力階調値が所定範囲内である場合は、前記入力階調値から所定階調値を減算して前記変換階調値を生成することを特徴とする印刷方法。
【請求項８】
画像データを入力する入力工程と、
前記入力した画像データの階調値である入力階調値を変換して変換階調値を生成する変換工程と、
前記変換階調値に基づいてディザマスクの閾値と比較し比較結果を出力する比較工程と、
前記比較結果と前記入力階調値とに基づいて、誤差拡散法によりドットデータを生成する誤差拡散処理工程と、
前記生成されたドットデータを用いて画像を印刷する印刷工程と、
を備え、
前記変換工程は、前記入力階調値が所定範囲内である場合は、前記入力階調値から所定階調値を減算して前記変換階調値を生成すること、
をコンピューターに実行させることを特徴とするプログラム。
【請求項９】
画像データに基づいてドットデータを生成する画像処理装置であって、
前記画像データを入力する入力部と、
前記入力した画像データの階調値である入力階調値を変換して変換階調値を生成する変換部と、
前記変換階調値に基づいてディザマスクの閾値と比較し比較結果を出力する比較部と、
前記比較結果と前記入力階調値とに基づいて、誤差拡散法により前記ドットデータを生成する誤差拡散処理部と、
を備え、
前記変換部は、前記入力階調値が所定範囲内である場合は、前記入力階調値から所定階調値を減算して前記変換階調値を生成することを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置、印刷方法、画像処理装置、及びプログラムに関する。
【背景技術】
【０００２】
従来、特許文献１に示すように、印刷装置において、写真や図・グラフと文字・線とが含まれたオブジェクトを印刷した場合に、両方の印刷品質を両立させるハーフトーン技術として、写真画質に有効なディザ法と文字・線の印刷品質に有効な誤差拡散法とを組み合わせたハイブリッドハーフトーン技術が提案されていた。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−７８９８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の印刷装置では、淡い背景に配置された文字・線に対してハイブリッドハーフトーン技術を適用すると、淡い背景領域ではディザ法によるドットが発生する。このようなディザ結果に対して誤差拡散法を適用すると負の誤差値が溜まってしまい、文字・線の部分でドットが発生しにくくなってしまうという課題があった。その結果、淡い背景部の線が途切れたり、文字の輪郭部の一部が欠如してしまうという問題が生じていた。
【課題を解決するための手段】
【０００５】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【０００６】
［適用例１］本適用例に係る印刷装置は、画像データに基づいて画像を印刷する印刷装置であって、前記画像データを入力する入力部と、前記入力した画像データの階調値である入力階調値を変換して変換階調値を生成する変換部と、前記変換階調値に基づいてディザマスクの閾値と比較して比較結果を出力する比較部と、前記比較結果と前記入力階調値とに基づいて、誤差拡散法によりドットデータを生成する誤差拡散処理部と、前記生成されたドットデータを用いて前記画像を印刷する印刷部とを備え、前記変換部は、前記入力階調値が所定範囲内である場合は、前記入力階調値から所定階調値を減算して前記変換階調値を生成することを特徴とする。
【０００７】
本適用例によれば、変換部は、入力階調値から所定階調値を減算し変換階調値を生成する。減算された変換階調値では、入力階調値よりもディザマスクの閾値を超えにくくなるため、比較結果におけるドットの発生が減る。これにより、誤差拡散処理部では負の誤差値が溜まりにくくなり、入力した画像データに存在していたドットを発生しやすくすることができる。また、変換部では、所定範囲における入力階調値を減算する。例えば、所定範囲を文字・線部のドットが有する階調値以外の範囲を指定することで、文字・線部以外の領域の比較結果におけるドットの発生が減り、入力した画像データから存在していた文字・線部のドットが欠如しにくくなる。従って、淡い背景部の線が途切れたり、文字の輪郭部の一部が欠如してしまうことが少なくなる。
【０００８】
［適用例２］上記適用例に記載の印刷装置は、前記変換部は、前記所定範囲を分割した範囲において、前記入力階調値が相対的に最小である第１範囲では、前記所定階調値を前記入力階調値として、前記変換階調値を生成することを特徴とする。
【０００９】
本適用例によれば、第１範囲では、所定階調値を入力階調値として生成された変換階調値の値はゼロになるため、ディザマスクの閾値を超えることはない。第１範囲ではディザによるドット発生が無くなる。また、第１範囲は、相対的に最小である範囲であるため、例えば、淡い背景部とすることができる。これにより、淡い背景部においてドット発生がなくなるため、淡い背景部を有する文字・線部ではドット発生のしやすさを最大にできる。
【００１０】
［適用例３］上記適用例に記載の印刷装置は、前記変換部は、前記所定範囲を分割した範囲において、前記入力階調値が相対的に最小となる範囲以外の第２範囲では、前記所定階調値を前記入力階調値から前記入力階調値以下の階調値として、前記変換階調値を生成することを特徴とする。
【００１１】
本適用例によれば、第２範囲の変換階調値では、入力階調値以下の階調値を減算して算出されているため、第１範囲の最大値と所定範囲以外の最小値との間の値をとることができる。算出される変換階調値は、第１範囲の最大値と所定範囲以外の最小値との間を滑らかに増加させることができる。このように第２範囲の変換階調値によって、例えば、グラデーション画像の淡い部分を滑らかに表現することができる。
【００１２】
［適用例４］上記適用例に記載の印刷装置は、前記所定範囲は、階調値の最濃度を示す最大値である最大階調値と、階調値の最淡度を示す最小値である最小階調値との中間を示す中間階調値以下で、前記最小階調値以上であることを特徴とする。
【００１３】
本適用例によれば、所定範囲は、中間階調値以下の淡い領域を取り得ることができる。例えば、最大階調値が２５５で、最小階調値が０である場合では、所定範囲の階調値は０以上１２７以下の淡い濃度の階調値を有する淡い背景部に有効である。
【００１４】
［適用例５］上記適用例に記載の印刷装置は、前記所定範囲は、階調値の最濃度を示す最大値である最大階調値および階調値の最淡度を示す最小値である最小階調値の四半を示す階調値の範囲うち、最も最小階調値に近い範囲であることを特徴とする。
【００１５】
本適用例によれば、所定範囲は、最も最小階調値に近い淡い領域を取り得ることができる。例えば、最大階調値が２５５で、最小階調値が０である場合では、所定範囲の階調値は０以上６３以下の淡い濃度の階調値を有する淡い背景部に有効である。
【００１６】
［適用例６］上記適用例に記載の印刷装置は、前記誤差拡散処理部は、前記画像データを構成する画素において前記比較結果と前記入力階調値との誤差値を前記画素の周囲の画素に拡散させ、前記誤差値が加算されて生成された補正階調値を誤差拡散の閾値と比較してドットデータを生成することを特徴とする。
【００１７】
本適用例によれば、補正階調値を用いることで、誤差拡散における２値化処理で生じた誤差値を捨て切らないため、周囲の画素に誤差値を反映させたドットデータを生成することができる。
【００１８】
［適用例７］本適用例に記載の印刷方法は、画像データに基づいて画像を印刷する印刷方法であって、前記画像データを入力する入力工程と、前記入力した画像データの階調値である入力階調値を変換して変換階調値を生成する変換工程と、前記変換階調値に基づいてディザマスクの閾値と比較し比較結果を出力する比較工程と、前記比較結果と前記入力階調値とに基づいて、誤差拡散法によりドットデータを生成する誤差拡散処理工程と、前記生成されたドットデータを用いて前記画像を印刷する印刷工程とを備え、前記変換工程は、前記入力階調値が所定範囲内である場合は、前記入力階調値から所定階調値を減算して前記変換階調値を生成することを特徴とする。
【００１９】
本適用例によれば、入力階調値から所定階調値を減算した変換階調値はディザマスクの閾値を超えにくくなるため、比較結果におけるドットの発生が減る。これにより、誤差拡散処理工程では負の誤差値が溜まりにくくなり、原画像データから存在していたドットを発生しやすくすることができる。変換工程では、例えば、所定範囲を文字・線部のドットが有する階調値以外の範囲を指定することで、文字・線部以外の領域の比較結果におけるドットの発生が減り、元から存在していた文字・線部のドットが欠如しにくくなる。従って、淡い背景部の線が途切れたり、文字の輪郭部の一部が欠如してしまうことが少なくなる。
【００２０】
［適用例８］本適用例に記載のプログラムは、画像データを入力する入力工程と、前記入力した画像データの階調値である入力階調値を変換して変換階調値を生成する変換工程と、前記変換階調値に基づいてディザマスクの閾値と比較し比較結果を出力する比較工程と、前記比較結果と前記入力階調値とに基づいて、誤差拡散法によりドットデータを生成する誤差拡散処理工程と、前記生成されたドットデータを用いて画像を印刷する印刷工程とを備え、前記変換工程は、前記入力階調値が所定範囲内である場合は、前記入力階調値から所定階調値を減算して前記変換階調値を生成することをコンピューターに実行させることを特徴とする。
【００２１】
本適用例によれば、入力階調値から所定階調値を減算した変換階調値はディザマスクの閾値を超えにくくなるため、比較結果におけるドットの発生が減る。これにより、誤差拡散処理工程では負の誤差値が溜まりにくくなり、原画像データから存在していたドットを発生しやすくすることができる。変換工程では、例えば、所定範囲を文字・線部のドットが有する階調値以外の範囲を指定することで、文字・線部以外の領域の比較結果におけるドットの発生が減り、元から存在していた文字・線部のドットが欠如しにくくなる。従って、淡い背景部の線が途切れたり、文字の輪郭部の一部が欠如してしまうことが少なくなる。
【００２２】
［適用例９］本適用例に記載の画像処理装置は、画像データに基づいてドットデータを生成する画像処理装置であって、前記画像データを入力する入力部と、前記入力した画像データの階調値である入力階調値を変換して変換階調値を生成する変換部と、前記変換階調値に基づいてディザマスクの閾値と比較し比較結果を出力する比較部と、前記比較結果と前記入力階調値とに基づいて、誤差拡散法により前記ドットデータを生成する誤差拡散処理部とを備え、前記変換部は、前記入力階調値が所定範囲内である場合は、前記入力階調値から所定階調値を減算して前記変換階調値を生成することを特徴とする。
【００２３】
本適用例によれば、入力階調値から所定階調値を減算した変換階調値はディザマスクの閾値を超えにくくなるため、ディザによるドット発生が減る。これにより、誤差拡散処理部では負の誤差値が溜まりにくくなり、原画像データから存在していたドットを発生しやすくすることができる。変換部では、例えば、所定範囲を文字・線部のドットが有する階調値以外の範囲を指定することで、文字・線部以外の領域の比較結果におけるドットの発生が減り、元から存在していた文字・線部のドットが欠如しにくくなる。従って、淡い背景部の線が途切れたり、文字の輪郭部の一部が欠如してしまうことが少なくなる。
【図面の簡単な説明】
【００２４】
【図１】プリンターの概略構成を示すブロック図。
【図２】プリンターにおける印刷処理の流れを示すフローチャート図。
【図３】ハーフトーン処理の流れを示すフローチャート図。
【図４】ディザハーフトーン処理の流れを示すフローチャート図。
【図５】入力階調値と変換階調値との関係を示すグラフ。
【図６Ａ】効果を説明するドットパターン図（原画像データ）。
【図６Ｂ】効果を説明するドットパターン図（従来方法によるハーフトーン結果）。
【図６Ｃ】効果を説明するドットパターン図（実施形態によるハーフトーン結果）。
【発明を実施するための形態】
【００２５】
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の各図においては、各部を認識可能な程度の大きさにするため、各部の尺度を実際とは異ならせしめている。
【００２６】
（実施形態１）
（印刷装置の構成）
図１は、プリンターの概略構成を示すブロック図である。印刷装置としてのプリンター２０は、操作パネル９９、メモリカードスロット９８、制御ユニット３０、印刷機構部７０などを備えた双方向印刷を行うシリアル式インクジェットプリンターである。
【００２７】
制御ユニット３０は、制御部４０および記憶部６０などから構成される制御回路またはＡＳＩＣ（Application Specific Integrated Circuit）である。
【００２８】
制御部４０は、ＣＰＵ（Central Processing Unit）であり、記憶部６０、印刷機構部７０、メモリカードスロット９８、および操作パネル９９などの各部を統括的に制御する。
制御部４０は、入力部４１、ハーフトーン処理部５０、印刷部５７などを機能部として有している。但し、これらの機能部は一実施例として記載したものに過ぎず、必ずしもこれらすべての機能部を必須構成要素としなければならないわけではない。また、これら以外の機能部を必須構成要素としてもよい。
さらに、図１の例のみでなく、操作パネル９９とメモリカードスロット９８と制御ユニット３０の全体または一部の構成をホスト装置内に構成してもよい。ホスト装置には、パーソナルコンピューターといったコンピューター、デジタルカメラ、デジタルビデオカメラ、スマートフォンといった携帯電話、等が含まれる。
【００２９】
入力部４１は、メモリカードスロット９８のメモリカードＭＣから、印刷対象であるＲＧＢ（レッド、グリーン、ブルー）形式の画像データを読み込む。入力部４１では、ＲＧＢ色空間の画像データをインク等の記録材の色空間に変換する。記録材の色空間は、例えば、ＣＭＹＫ（シアン、マゼンタ、イエロー、ブラック）の色空間である。色空間の変換処理では、ＲＧＢの各色の階調値を、色変換テーブル（図示は省略）を用いて、ＣＭＹＫの各色の階調値に変換する。変換された画像データは、画素毎にＣＭＹＫの各色の階調値を有して構成されている。なお、記録材の色空間はＣＭＹＫの４色に限定されず、Ｌc（ライトシアン）、Ｌm（ライトマゼンタ）などを含む６色であってもよく、また、単色（１色）などを含みその他の色数であってもよい。
【００３０】
ハーフトーン処理部５０は、変換部５１、比較部５３、誤差拡散処理部５５などを有して構成され、入力された画像データの階調値である入力階調値をハーフトーン処理（詳細は後述）してドットデータを生成する。なお、ドットデータは、画像データを構成する画素におけるドットの形成状態（ドットパターン）を表すデータであり、具体的には、画素が有する記録材の色空間の階調値毎にドットを形成するかしないか（あるいは、どのサイズのドットを形成する）を示すデータである。ここで、「ドット」とは、プリンター２０のインクヘッドに備えられたインクノズルから吐出されるインク滴またはインク滴群が印刷用紙などの印刷媒体に着弾して形成される一つの領域をいう。ドットデータは、色毎に生成されるが、ハーフトーン処理は、各色に対して同様な処理が適用される。以降の説明では単色の処理として説明する。
【００３１】
変換部５１は、入力階調値変換テーブル６１（詳細は後述）を用いて、入力階調値を変換階調値へ変換する。詳しくは、所定範囲に該当する入力階調値を減算して、変換階調値へ変換している。階調値が、例えば、２５６段階で最も淡い階調値を０として、もっとも濃い階調値を２５５とした場合では、淡い濃度を表す階調値が０〜６４の範囲を所定範囲とする。このようにすることで、淡い濃度を表す階調値を減算し、それ以外の範囲は、減算を行わない。以降の説明では、特に断りのない限り階調値を２５６段階として説明する。
所定範囲に該当する入力階調値を減算方向に変換する方法は、入力階調値変換テーブル６１を参照して、画像データの各画素の階調値を変換して、画素ごとに変換階調値を算出する。入力階調値変換テーブル６１には、入力階調値に対応する変換階調値が格納されている。詳細は後述する。
【００３２】
比較部５３は、変換階調値とディザマスク６３の閾値との比較結果を出力する。詳しくは、各画素の変換階調値をディザマスク６３の閾値と比較する。ディザマスク６３を変換階調値を有する各画素と比較して、変換階調値が閾値を超えている場合はディザ結果ＯＮ（ドット発生）とし、そうでない場合はディザ結果ＯＦＦ（ドットなし）とする。
【００３３】
誤差拡散処理部５５は、比較部５３でディザマスク処理された比較結果と、誤差拡散閾値テーブル６５とを用いて誤差拡散処理を行い、ドットデータを生成する。誤差拡散閾値テーブル６５は、複数の種類の閾値テーブルを有し、その中から選択してもよい。例えば、比較結果がディザ結果ＯＮの場合は、ディザ結果ＯＮ用誤差拡散閾値テーブルを選択し、比較結果がディザ結果ＯＦＦの場合は、ディザ結果ＯＦＦ用誤差拡散閾値テーブルを選択する。
【００３４】
印刷部５７は、印刷機構部７０を制御して、ドットデータを印刷機構部７０へ出力する。詳しくは、誤差拡散処理部５５によって記録材の色ごとに生成されたドットデータを印刷ヘッド（図示は省略）を有する印刷機構部７０へ出力して、印刷ヘッドによって印刷媒体に印字する。
【００３５】
記憶部６０は、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、ＮＶＲＡＭ（Non Volatile Random Access Memory）、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory)などの演算処理装置、揮発性メモリー、不揮発性メモリーなどであり、入力階調値変換テーブル６１、ディザマスク６３、誤差拡散閾値テーブル６５、およびプログラム６７などが格納されている。
【００３６】
入力階調値変換テーブル６１は、ディザマスク６３の閾値と比較する入力階調値を変換するものであり、入力階調値の最濃度を示す最大階調値と最淡度を示す最小階調値との範囲により構成される。精度拡張のために入力階調値よりも分解能を上げてもよい。なお、入力階調値変換テーブル６１の詳細については、図５を用いて後述する。
【００３７】
ディザマスク６３は、公知の組織的ディザ法によるハーフトーン処理に用いるテーブルであり、マトリックス状に配置された複数の閾値により構成される。
【００３８】
誤差拡散閾値テーブル６５は、誤差拡散法によるハーフトーン処理に用いるものであり、入力階調値に応じた閾値が格納されている。
【００３９】
プログラム６７は、入力された画像データからハーフトーン処理を行いドットデータを出力するまでの処理が記述されたプログラムであり、制御部４０によって読み込まれて実行される。
【００４０】
印刷機構部７０は、印刷媒体を搬送する搬送機構、キャリッジを往復運動させる往復動機構、印刷媒体に対してインク滴を吐出してドット形成を行うドット形成機構（いずれも図示は省略）を備えている。印刷機構部７０では、印刷部５７から出力されたドットデータに基づいて印刷媒体にインク滴を吐出すると、印刷媒体には画像や文字が印刷される。これらは、シリアル式インクジェットプリンターの構成例を示しているが、むろん、本技術を適用可能なインクジェットプリンターは、ライン式インクジェットプリンター等でもよい。本技術を適用可能な印刷装置は、レーザー式プリンターといった電子写真方式のプリンター等でもよく、複写機、ファクシミリ、これらの機能を備えた複合機、等でもよい。
【００４１】
（印刷処理）
図２は、プリンターにおける印刷処理の流れを示すフローチャート図である。印刷処理は、例えば、ユーザーが操作パネル９９等を用いて、メモリカードＭＣに記憶された所定の画像に対する印刷指示操作を行うことを開始トリガーとする。なお、以下のフローは、印刷方法に相当し、図１に示すプログラム６７に基づいて制御部４０が記憶部６０および印刷機構部７０を含む各部を制御することにより実行される。
【００４２】
ステップＳ１００では、画像データを入力する。詳しくは、メモリカードスロット９８にメモリカードＭＣが挿入されたことを検出すると、印刷対象であるＲＧＢ形式の画像データＯＲＧを読み込む。なお、本ステップは、入力工程に相当する。
【００４３】
ステップＳ１１０では、色変換処理を行う。詳しくは、記憶部６０に記憶された色変換テーブル（図示省略）を参照し、ＲＧＢ形式の画像データを、ＣＭＹＫＬｃＬｍ形式に色変換する。なお、本ステップでは、色変換処理の前後において、解像度変換やスムージング処理などの画像処理を施してもよい。
【００４４】
ステップＳ１２０では、ハーフトーン処理を実行する。ハーフトーン処理とは、画像データの画素ごとに与えられる階調値（入力階調値）を、キャリッジに搭載されている各色インクノズルから吐出される小中大インク滴を吐出する／吐出しないを定めたデータ（上述したドットデータ）へと変換する処理である。なお、本実施形態のハーフトーン処理では、小中大インク滴を吐出する／吐出しないを定めたドットデータへと変換したが、ハーフトーン処理では、多値化処理を含んだ階調数変換（低減）処理であれば、この例に限られない。例えば、濃淡ドットのＯＮ／ＯＦＦを定めたドットデータへ変換してもよいし、小中大および濃淡のないドットのＯＮ／ＯＦＦを定めたドットデータへと変換してもよい。
【００４５】
ステップＳ１３０では、インターレース処理を実行する。詳しくは、ハーフトーン処理されたドットの配列を、プリンター２０のノズル配置や紙送り量などに合わせて、１回の主走査単位で形成するドットパターンのデータに並び替える処理である。
【００４６】
ステップＳ１４０では、印刷を実行する。詳しくは、印刷機構部７０を制御して、印刷ヘッド、キャリッジモーター、紙送りモーター等（いずれも図示を省略）を駆動し、印刷を実行する。
なお、ステップＳ１３０，Ｓ１４０は、印刷工程に相当する。
【００４７】
（ハーフトーン処理）
図３は、ハーフトーン処理の流れを示すフローチャート図である。ハーフトーン処理は、ディザハーフトーンの結果に基づいて誤差拡散処理を行い、ドットのＯＮ／ＯＦＦデータを生成する。本フローは、ステップＳ１２０（図２）におけるハーフトーン処理を実現するフローである。本フローが、終了するとステップＳ１３０（図２）へ処理が移される。
【００４８】
ステップＳ２００では、ディザハーフトーン処理を実行する。ディザハーフトーンは、記憶部６０に格納されているディザマスク６３の閾値と入力階調値を比較する処理である。画素ごとに比較した結果、入力階調値がディザマスク６３の閾値より大きい場合はその画素が「ドットＯＮ」として出力され、そうでない場合は「ドットＯＦＦ」として出力される。
【００４９】
ステップＳ２１０は、ステップＳ２００のディザ比較結果がＯＮであるかＯＦＦであるかを判定する。本ステップは、ステップＳ２００において出力された画素のドットＯＮ／ＯＦＦを参照して、ドットＯＮの場合は（ＯＮ）、ステップＳ２２０へ進み、ドットＯＦＦの場合は（ＯＦＦ）、ステップＳ２３０へ進む。
【００５０】
ステップＳ２２０では、ステップＳ２１０のディザ比較結果がＯＮという出力を参照して、ディザ結果ＯＮ用誤差拡散閾値テーブルを選択する。誤差拡散ＯＮ用閾値テーブルとは、記憶部６０に格納されている誤差拡散閾値テーブル６５のひとつであり、ディザ比較でＯＮと判定された結果と一致するように閾値を低く（−２５５）設定した誤差拡散閾値である。
【００５１】
ステップＳ２３０では、ステップＳ２１０のディザ比較結果がＯＦＦという出力を参照して、ディザ結果ＯＦＦ用誤差拡散閾値テーブルを選択する。誤差拡散ＯＦＦ用閾値テーブルとは、記憶部６０に格納されている誤差拡散閾値テーブル６５のひとつであり、通常の誤差拡散閾値テーブルと同等の閾値テーブルである。したがって、ディザ比較でＯＦＦと判定された場合は２値化誤差を周囲の画素に拡散し誤差を捨て切らないため、線のつながりが良くなるという誤差拡散の特性を発揮する。
【００５２】
ステップＳ２４０では、入力階調値と誤差拡散閾値とを比較し、入力階調値が誤差拡散閾値よりも大きいか否かを判定する。このときの誤差拡散閾値はステップＳ２２０およびステップＳ２３０で選択された誤差拡散閾値テーブルの値を用いる。対象とする画素の入力階調値が誤差拡散閾値よりも大きい場合は（Ｙｅｓ）、ステップＳ２５０へ進み、入力階調値が誤差拡散閾値以下の場合は（Ｎｏ）、ステップＳ２６０へ進む。
【００５３】
ステップＳ２５０では、対象の画素のドットをＯＮにする。ステップＳ２４０で入力階調値と誤差拡散閾値を比較した結果、入力階調値が誤差拡散閾値を超えている場合、生成するドットデータをＯＮとする。
【００５４】
ステップＳ２６０では、対象の画素のドットをＯＦＦにする。ステップＳ２４０で入力階調値と誤差拡散閾値を比較した結果、入力階調値が誤差拡散閾値以下であった場合、生成するドットデータをＯＦＦとする。
【００５５】
ステップＳ２７０では、ステップＳ２５０またはステップＳ２６０で生じた２値化結果の誤差値を周囲の画素の階調値に拡散して適用する。
ステップＳ２００〜Ｓ２７０までの処理は、画像データの画素ごとに繰り返し処理され、画像データの全画素の処理が終了すると、ステップＳ１３０へ処理を移す。なお、ステップＳ２７０によって誤差値が適用された画素の階調値は、ステップＳ２４０における入力階調値に反映され、処理が繰り返されている。
なお、ステップＳ２２０〜Ｓ２７０までの処理は、誤差拡散処理工程に相当する。
【００５６】
（ディザハーフトーン）
図４は、ディザハーフトーンの流れを示すフローチャート図である。ディザハーフトーンでは、入力階調値を図５において説明する入力階調値変換テーブル６１を用いて変換階調値へ変換する。変換された変換階調値とディザマスク６３の閾値とを比較し、変換階調値がディザマスク６３の閾値を超えている場合はディザ結果ＯＮ、そうでない場合はディザ結果ＯＦＦと判定する。
【００５７】
ステップＳ３００では、入力階調値の変換を実行する。入力階調値の変換では、入力階調値変換テーブル６１を使用し、入力階調値を変換階調値へ変換する。なお、本ステップは、変換工程に相当する。
【００５８】
ステップＳ３１０では、ステップＳ３００で変換された変換階調値とディザマスク６３の閾値との比較を行う。両者を比較した結果、変換階調値がディザマスク６３の閾値を超えている場合は（Ｙｅｓ）、ステップＳ３２０へ進み、変換階調値がディザマスク６３を超えていない場合（Ｎｏ）は、ステップＳ３３０へ進む。
【００５９】
ステップＳ３２０では、ディザ結果ＯＮにする。詳しくは、ステップＳ３１０で比較した結果、変換階調値がディザマスク６３の閾値を超えている場合、ディザ結果を「ＯＮ」に設定する。本ステップにおいて「ＯＮ」に設定された画素は、最終的に出力されるドットデータではなく、以降に処理される誤差拡散処理でディザ結果ＯＮ用誤差拡散閾値テーブルを選択する際（ステップＳ２１０，Ｓ２２０）に参照される。
【００６０】
ステップＳ３３０では、ディザ結果ＯＦＦにする。詳しくは、ステップＳ３１０で比較した結果、変換階調値がディザマスク６３の閾値以下であった場合、ディザ結果を「ＯＦＦ」に設定する。本ステップにおいて「ＯＦＦ」に設定された画素は、最終的に出力されるドットデータではなく、以降に処理される誤差拡散処理でディザ結果ＯＦＦ用誤差拡散閾値テーブルを選択する際（ステップＳ２１０，Ｓ２３０）に参照される。
なお、ステップＳ３１０〜Ｓ３３０は、比較工程に相当する。
【００６１】
このようにして、淡い階調値に該当する入力階調値が減算され、減算された変換階調値にディザマスク処理を施すことで、淡い階調値のディザ結果をＯＮになりにくくすることができる。
【００６２】
（入力階調値から変換階調値への変換）
次に、図５を用いて、変換部５１において変換される入力階調値と変換階調値との関係について説明する。
図５は、入力階調値と変換階調値との関係を示すグラフである。
グラフ１００は、記憶部６０に格納されている入力階調値変換テーブル６１により変換される入力階調値と変換階調値との関係を示すグラフである。横軸は入力階調値、縦軸は変換階調値であり、両軸とも「０」（淡い）〜「２５５」（濃い）の整数値を示している。実線１０１は、入力階調値と変換階調値との関係を示しており、入力階調値が実線１０１に交わった点が変換階調値として変換される。点線１０３は、実線１０１と比較するために設けた補助線であり、入力階調値と変換階調値とが等しい場合の関係を示している。
範囲Ａは、入力階調値が「０」以上「６３」以下の範囲を示している。範囲Ｄは、入力階調値が「６４」以上「２５５」以下の範囲を示している。範囲Ｂは、入力階調値が「０」以上「１５」以下の範囲を示している。範囲Ｃは、入力階調値が「１６」以上「６３」以下の範囲を示している。
【００６３】
範囲Ａでは、実線１０１が点線１０３よりも変換階調値「０」側に偏っている。また、偏り傾向は、範囲Ａの終端に近づくに連れて、点線１０３は実線１０１に近接し、範囲Ｄの先端である入力階調値が「６４」においては、変換階調値は「６４」を示し一致している。
範囲Ｂは、範囲Ａに含まれ、入力階調値が「０」以上「１５」以下の範囲を示している。この範囲では、実線１０１においては、変換階調値は「０」を示している。つまり、範囲Ｂ（入力階調値「０」以上「１５」以下）の変換階調値は「０」（最淡の濃度）である。
範囲Ｃでは、実線１０１が、範囲Ｂの終端である変換階調値「０」から、範囲Ａの終端に向けて、点線１０３と等しい変換階調値の値まで徐々に増加している。
範囲Ｄでは、実線１０１は、点線１０３と重なっているため、入力階調値はそのまま変換階調値として出力されている。
【００６４】
このような変換により、範囲Ｂでは、入力階調値をゼロに変換することで、ステップＳ３１０において変換階調値がディザマスク６３の閾値を超えなくする。これにより、範囲Ｂの入力階調値では、例えば、入力階調が小さい淡い背景部ではディザによるドット発生を無くすことができる。
【００６５】
範囲Ｃでは、範囲Ｂの終端から範囲Ｄの先端までの不連続となる領域を連続的になるように補間する。これにより、グラデーション画像などを滑らかに表現することができる。
【００６６】
入力階調値変換テーブル６１では、入力階調値に対応する入力項目と変換階調値に対応する出力項目が備えられており、入力項目には、「０」〜「２５５」の数値、出力項目には、入力項目の数値（入力階調値）に対応する実線１０１の変換階調値の数値が格納されている。変換部５１では、この入力階調値変換テーブル６１の入力項目に入力階調値を入力して、変換階調値の数値を取得することができる。
【００６７】
なお、範囲Ａは所定範囲に相当し、相対的に最小である範囲Ｂが第１範囲に相当する。また、範囲Ｂ以外の範囲Ｃは第２範囲に相当する。点線１０３と実線１０１との差分は、入力階調値から変換階調値を減算した所定階調値に相当する。
また、最大階調値は「２５５」であり、最小階調値は、「０」である。「０」から「２５５」までの階調値における四半（四分の一）を示す階調値の範囲は、「０」〜「６３」、「６４」〜「１２７」、「１２８」〜「１９１」、「１９２」〜「２５５」であり、その中で最も最小階調値「０」に近い範囲は、「０」〜「６３」の範囲であり、この範囲は所定範囲に相当する。
【００６８】
（効果の説明）
次に、図６Ａ〜Ｃを用いて、プリンター２０において画像データを印刷した場合の効果について、例示をして説明する。
図６Ａ〜Ｃは、効果を説明するドットパターン図である。図６Ａは原画像データ、図６Ｂは従来方法によるハーフトーン結果、図６Ｃは、本実施形態によるハーフトーン結果の例示を示している。
【００６９】
図６Ａは入力される原画像データであり、格子の一つ一つが原画像の各画素を表す。各画素は左上からＰＡ（１，１）、右下をＰＡ（６，６）とする。点描で示した画素（ＰＡ（１，１），ＰＡ（２，１）など）は、入力階調値が小さく（「１６」以下）淡い背景部である。斜線格子で示した画素（ＰＡ（６，１），ＰＡ（５，２）など）は、入力階調値が背景部より大きく（入力階調値「６４」超「２５５」以下）直線部を表している。原画データは、例えば、表示画面等に表示すると、淡い濃度の背景部に濃い濃度の斜めの直線が繋がっているように表示される。このような原画像の各画素を２値化して、ドットＯＮおよびドットＯＦＦを決定された結果について図６Ｂおよび図６Ｃを用いて説明する。
【００７０】
図６Ｂと図６Ｃとは、図６Ａの原画像データをハーフトーンした結果であり、図６Ｂは従来の方法でハーフトーンを行い、図６Ｃは本実施形態でハーフトーンを行った結果のドットパターン図である。図６Ｂと図６Ｃの各画素は図６Ａのドットパターンと同様の領域を表し、各画素の位置を図６Ｂでは、ＰＢ（１，１）〜ＰＢ（６，６）として示し、図６Ｃでは、ＰＣ（１，１）〜ＰＣ（６，６）として示す。斜線で示す画素はドットがＯＮとなった画素で、白で示す画素はドットがＯＦＦの画素である。
【００７１】
図６Ｂでは、背景部の入力階調値が変換されることなくディザマスク６３の閾値と比較されるため、背景部の入力階調値がディザマスク６３の閾値よりも大きければドットＯＮとなる。例えば、斜線で示すＰＢ（２，３）がそのドットＯＮの画素である。その結果、誤差拡散処理部５５において負の誤差値が溜まり、ＰＢ（２，３）の直後にある線部のドットがＯＮになりにくくなる。つまり、原画像データのＰＡ（４，３）とＰＡ（３，４）の濃い濃度のドットが、ＰＢ（４，３）およびＰＢ（３，４）では、ドットＯＦＦになってしまうおそれがある。
【００７２】
一方、図６Ｃは、背景部の入力階調値が入力階調値変換テーブル６１によって変換階調値に変換され、変換階調値はディザマスク６３の閾値を超えないため、ドットは発生しなくなる。例えば、白抜きで示したＰＣ（２，３）がそのドットＯＦＦの画素である。その結果、誤差拡散処理部５５において正の誤差値が蓄積され、図６Ｂでは発生しなかったドット（ＰＢ（４，３）、ＰＢ（３，４））が図６Ｃでは発生するようになる（ＰＣ（４，３）、（３，４））。
なお、図６ＣにおけるＰＣ（１，１）の斜線の画素では、ドットが発生しているが、淡い濃度の背景部において、多少のドットＯＮの画素が必要であり、そのドット発生である。なお、このドットＯＮは、濃い濃度の線部に影響を与えていない。
【００７３】
このような本実施形態のハーフトーン処理によれば、変換部５１において入力階調値が小さい画素はディザマスク６３の閾値を超えないため、ディザ結果がＯＮになりにくくなる。これにより、誤差拡散処理部５５では負の誤差値が溜まりにくくなり、原画像データから存在していたドットを発生しやすくすることができる。
【００７４】
以上述べたように、本実施形態におけるプリンター２０は、以下の効果を得ることができる。
変換部５１は、入力階調値の中で淡い濃度の階調値（「０」以上「６４」以下）の階調値を有する画素の階調値を入力階調値変換テーブル６１に基づいて、減算して変換階調値を出力する。入力階調値を減算した変換階調値はディザマスク６３の閾値を超えにくくなるため、ディザによるドット発生が減る。これにより、誤差拡散処理部５５では負の誤差値が溜まりにくくなり、原画像データから存在していたドットを発生しやすくすることができる。図６で示したように、淡い濃度の背景部を有する比較的濃い線部は、従来の方法では、途切れてしまったが、本実施形態では途切れずに線を繋げることができている。
このようにして、淡い濃度の背景部における入力階調値を減算することで、淡い濃度の背景部との境界に近い部分で発生していた濃い濃度の線の途切れや、や文字等の輪郭のドットの欠如してしまうことが少なくなる。
【００７５】
なお、本発明は上述した実施形態に限定されず、上述した実施形態に種々の変更や改良などを加えることが可能である。変形例を以下に述べる。
【００７６】
（変形例１）
上述の実施形態では、印刷装置の一例としてプリンター２０を用いて説明したが、このような構成に限定されない。画像を印刷する装置だけではなく表示形式の異なる画像処理装置であってもよい。図１を用いて画像処理装置の構成について説明する。画像処理装置では、入力部４１、変換部５１、比較部５３、誤差拡散処理部５５、および記憶部６０が少なくとも備えられていればよい。この場合、制御部４０（ＣＰＵ）により、入力部４１から画像データを入力し、変換部５１、比較部５３、誤差拡散処理部５５の各部の機能が実現されることでドットデータが生成される。ドットデータは、記録材の色ごとに生成された画像データとして出力することができる。上述の実施形態と同様な効果を得ることができている。更に、画像処理装置では、例えば、電子ペーパーや液晶ディスプレイのような表示装置（図示は省略）を備えてもよく、表示装置には図・グラフと文字・線といった情報をドットのＯＮ／ＯＦＦの２値のみで表示する機器であってもよい。上述した実施形態の印刷媒体が、表示装置に置き換わるだけであるため、上述の実施形態と同様の効果が得られる。
【００７７】
（変形例２）
上述の実施形態および変形例におけるハーフトーン処理のフロー（図３、図４）においては、ハーフトーン処理の手順はあくまで一例であり、一部のステップを省略、更なるほかのステップの追加、実行されるステップの順序の変更といった種々の変形をしてもよい。例えば、ステップＳ２１０のディザ結果判定ステップでディザ結果ＯＮの場合は、後のステップＳ２４０において必ず「ドットＯＮ」となるため、ステップＳ２５０のドットデータＯＮを先に行ってもよく、上述の実施形態と同様の結果を出力することができる。
【００７８】
（変形例３）
上述の実施形態および変形例での記憶部６０（図１）に格納されている入力階調値変換テーブル６１は、テーブルで入力階調値から変換階調値へ変換するとしているが、テーブルに限らず、算術式であってもよい。算術式としては、例えば、２５６階調の処理対象画素（ｘ，ｙ）の入力階調値が１６以下であった場合、（式１）を用いる。
変換階調値（ｘ，ｙ）＝入力階調値（ｘ，ｙ）−入力階調値（ｘ，ｙ）・・・（式１）
また、入力階調値が１７以上６４以下の場合は、（式２）を用いる。
変換階調値（ｘ，ｙ）＝入力階調値（ｘ，ｙ）−Ｘ  ・・・（式２）
但し、Ｘは入力階調値（ｘ，ｙ）以下の値。
このような（式１）および（式２）であっても、入力階調値を減算することができるため、入力階調値変換テーブル６１と同様の効果が得られる。
【００７９】
（変形例４）
上述の実施形態および変形例では、入力階調値の所定範囲を０〜６４としているが、所定範囲は淡い背景部の階調値に該当すれば他の範囲であってもよい。最も効果が得られる範囲は、正の誤差が溜まりにくく文字・線部でドットがＯＮになりにくい０〜１６付近であり、１６より大きい範囲では、正の誤差が溜まりやすいため、所定範囲の最大値は６４から広げたり狭めたりしてもよい。
【００８０】
（変形例５）
上述の実施形態および変形例では、淡い背景部におけるディザによるドットの発生を減らすため、入力階調値の所定範囲を０〜６４の１つだけを例示したが、所定範囲は複数あってもよい。例えば、さらに濃い濃度（階調値８０〜１２８）で誤差拡散によるドットの発生を増やして文字・線の品質を良くしたい場合は、２つ目の所定範囲８０〜１２８を追加してもよい。
【００８１】
（変形例６）
上述の実施形態の所定範囲は、ＣＭＹＫなどの記録材ごとに異なる値であってもよい。例えば、Ｃの所定範囲は０〜４８、Ｍの所定範囲は０〜８０であっても、最も効果が得られる０〜１６の範囲が含まれていれば、上述の実施例と同様の効果が得られる。
【００８２】
（変形例７）
上述の実施形態の第１範囲では、入力階調値から入力階調値を減算し、減算後の変換階調値は０にしているが、負の値になってもよい。ディザマスク６３の閾値の最小値が正の値であるため、変換階調値が０以下であればディザマスク６３の閾値を超えず、上述の実施形態と同様の効果が得られる。
【符号の説明】
【００８３】
２０…プリンター、３０…制御ユニット、４０…制御部、４１…入力部、５０…ハーフトーン処理部、５１…変換部、５３…比較部、５５…誤差拡散処理部、５７…印刷部、６０…記憶部、６１…入力階調値変換テーブル、６３…ディザマスク、６５…誤差拡散閾値テーブル、６７…プログラム、７０…印刷機構部、９８…メモリカードスロット、９９…操作パネル、ＭＣ…メモリカード。
【図１】
2017114033.tif 000003
【図２】
2017114033.tif 000004
【図３】
2017114033.tif 000005
【図４】
2017114033.tif 000006
【図５】
2017114033.tif 000007
【図６Ａ】
2017114033.tif 000008
【図６Ｂ】
2017114033.tif 000009
【図６Ｃ】
2017114033.tif 000010