JP2004104334A - 画像処理方法および画像処理システム - Google Patents
画像処理方法および画像処理システム Download PDFInfo
- Publication number
- JP2004104334A JP2004104334A JP2002261561A JP2002261561A JP2004104334A JP 2004104334 A JP2004104334 A JP 2004104334A JP 2002261561 A JP2002261561 A JP 2002261561A JP 2002261561 A JP2002261561 A JP 2002261561A JP 2004104334 A JP2004104334 A JP 2004104334A
- Authority
- JP
- Japan
- Prior art keywords
- image data
- pattern
- value
- image
- gradation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Color, Gradation (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
【課題】転送情報量を小さくしながら、プリンタの能力を生かす。
【解決手段】出現確率決定手段502は、量子化値入力手段501から入力した量子化値に対応した出力パターンと出現確率をパターン選択手段504に渡す。疑似乱数発生手段503は疑似乱数を発生してその値をパターン選択手段504に送り、パターン選択手段504は、出現確率と疑似乱数値を基に出力するパターンを選択する。
【選択図】 図5
【解決手段】出現確率決定手段502は、量子化値入力手段501から入力した量子化値に対応した出力パターンと出現確率をパターン選択手段504に渡す。疑似乱数発生手段503は疑似乱数を発生してその値をパターン選択手段504に送り、パターン選択手段504は、出現確率と疑似乱数値を基に出力するパターンを選択する。
【選択図】 図5
Description
【0001】
【発明の属する技術分野】
本発明は、画像処理方法および画像処理システムに関する。
【0002】
【従来の技術】
近年、高精細な出力を得るためにプリンタの解像度が向上しているが、それに伴ってコンピュータからプリンタに転送する画像データ量が増加している。画像データ量を抑え、高速に出力を得るために、コンピュータからプリンタには低解像度の多値画像データを転送し、プリンタで前記画像データの画素毎にパターンを割り付けることで高解像度の少値(例えば2値)画像データに変換する技術がある。
【0003】
例えば、最終的に600dpi2値の出力画像を得たい場合に、600dpi2値の出力画像をそのままコンピュータからプリンタに転送する場合、1画素あたりの情報量は1bitとなる。しかし、上記技術を用いると、コンピュータが300dpi256値の画像に対して擬似中間調処理を行って300dpi5値の画像を生成してプリンタに転送し、プリンタが前記300dpi5値の画像の1画素毎に、階調値に応じて2値の2x2画素のパターンを割り付けることで600dpi2値の出力画像を生成する場合、600dpi2値の最終的な出力画像の1画素あたりの転送情報量は、300dpi5値で転送されるため、
(log(5)÷log(2))÷(2x2[画素])≒0.58[bit]
となる。
【0004】
また、上記技術に対して、特にプリンタがインクジェット方式の場合は600dpiの2x2画素中に3画素打つ場合と4画素打つ場合とでプリント結果にそれほどの違いがないことから、コンピュータが300dpi256値の画像に対して300dpi4値の画像を生成してプリンタに転送し、プリンタが前記300dpi4値の画像の1画素毎に、画素値に応じて2値の2x2画素のパターンを割り付けて600dpi2値の出力画像を生成する技術が提案されている(例えば、特許文献1参照)。
【0005】
この場合は600dpi2値の最終的な出力画像の1画素あたりの転送情報量は、300dpi4値で転送されるため、
(log(4)÷log(2))÷(2x2[画素])=0.5[bit]
となり、さらに転送情報量を少なくすることができる。
【0006】
【特許文献1】
特開平9−46522号公報
【0007】
【発明が解決しようとする課題】
しかしながら、前掲した公報に基づくシステムでは、プリンタは600dpiの2x2画素中に3画素打つことがなくなり、プリンタの能力を活用しきっていない。
【0008】
本発明は上記した問題点に鑑みてなされたもので、
本発明の目的は、転送情報量を小さくしながら、プリンタの能力を生かした画像処理方法および画像処理システムを提供することにある。
【0009】
【課題を解決するための手段】
本発明では、階調数p(ただしp>2)の第一画像データに対して、擬似中間調処理を行い階調数q(ただしp>q≧2)の第二画像データを得るステップ、前記第二画像データに対して、階調数r(2≦r≦q)の第三画像データを生成するステップ、とを有し、前記第三画像データを生成するステップは、ある位置の前記第二画像データの階調値に応じて、当該位置の第三画像データのパターンを決定し、該第三画像データの階調値は確率的もしくは平均的に対応する第二画像データの階調値とおおむね一致している。
【0010】
本発明では、前記第二画像データの各階調値が可変であり、また、前記第二画像データの各階調値は前記第一画像データにより決定する。
【0011】
本発明では、1画素の第二画像データに対応する第三画像データの1パターンのサイズを横画素x画素、縦y画素の矩形として、前記第二画像データの階調数qは、
q<1+x×y×(r−1)
を満たす2のべき乗である。
【0012】
本発明では、前記第二画像データの階調数qは可変であり、また、前記第二画像データの階調数qは前記第一画像データに基づき動的に決定する。
【0013】
本発明では、前記第三画像データのパターンは、少なくとも当該パターンの位置に対応する前記第二画像データの階調値と、乱数もしくは疑似乱数とをパラメータとして決定する。
【0014】
本発明では、前記第三画像データのパターンは、少なくとも当該パターンの位置に対応する前記第二画像データの階調値と、当該パターンの位置情報とをパラメータとして決定する。
【0015】
本発明では、前記第三画像データのパターンは、少なくとも当該パターンの位置に対応する前記第二画像データの階調値と、前記階調値に対応するパターンの過去の出現情報をパラメータとして決定する。
【0016】
本発明の擬似中間調処理は、誤差拡散法、もしくは平均誤差最小法である。
【0017】
【発明の実施の形態】
以下、本発明の実施例を図面を用いて具体的に説明する。
(実施例1)
図1は、本発明が適用される画像処理システムの例を示す。コンピュータ111内で、アプリケーション101は図示しないユーザからの指示により、プリンタドライバ102に描画命令を送る。プリンタドライバ102は、アプリケーションから受けた描画命令を解釈して、ページイメージを作成する。
【0018】
ここで、ページイメージは300dpi4値の画像とする。例えば、プリンタドライバ102がアプリケーション101から72dpi256値の白黒画像を受信して、これを処理して出力せよ、という描画命令を受けた場合、解像度変換処理を行い72dpiの画像を300dpiの画像へ変換する。その後、擬似中間調処理を行い、1画素あたり256値の画像を4値の画像へ変換する。
【0019】
本実施例では、プリンタドライバ102が300dpiの4値化を行い、量子化値0、1、2、3に対してそれぞれ0、85、170、255の階調値を割り当てている。ここで、階調値0はもっとも濃度が低い状態を表し、階調値255はもっとも濃度が高い状態を表すとする。
【0020】
図2は、1画素あたり256値の画像を4値の画像へ変換する誤差拡散処理による擬似中間調処理の例を示す。入力手段201は、図示しないメモリから300dpi256値の階調値を入力し、後述する誤差拡散手段204からの出力値を加算した修正階調値を、比較手段202へ送る。比較手段202は、修正階調値としきい値を比較する。図6に示すように、修正階調値が0〜42、43〜127、128〜212、213〜255の場合、出力量子化値はそれぞれ0、1、2、3として、出力量子化値を出力手段205へ送る。出力手段205は、プリンタコントローラ103へ出力量子化値を送る。
【0021】
また、比較手段202は、出力階調値と修正階調値との差分を誤差として誤差バッファ203へ送る。例えば、修正階調値が60、出力階調値が85の場合は、+25を誤差バッファ203へ送る。誤差バッファ203は、誤差をメモリに格納する。誤差拡散手段204は、注目画素の修正階調値を算出する際に、注目画素周辺の誤差を誤差バッファから入力し、図示しない誤差拡散マトリクスとの積和演算により得た値を出力する。
【0022】
その後、プリンタドライバ102は、300dpi4値化された画像をプリンタ112内のプリンタコントローラ103に送る。プリンタコントローラ103は、プリンタドライバ102から受け取った画像データを元に、出力する画像を作成する。
【0023】
図5は、プリンタコントローラ103が、プリンタドライバ102から受け取った画像データを元に、出力する画像を作成する方法の例を示す。
【0024】
量子化値入力手段501は、図示しないメモリから、300dpi4値の画像データである量子化値を読み込む。出現確率決定手段502は、量子化値入力手段501から入力された量子化値に対応する階調値を元に図3のいずれのパターンをどの程度の確率で出現させるかを決定して、パターン選択手段504にその情報を渡す。
【0025】
図3において、各パターン中、黒丸で示す画素は階調値255で出力し、そうでない画素は階調値0で出力することを示す。ここで、パターン00の平均階調値は0、パターン10〜13の平均階調値はいずれも255x1/4(=63.75)、パターン20〜25の平均階調値はいずれも255x2/4(=127.5)、パターン30〜33の平均階調値はいずれも255x3/4(=191.25)、パターン40の平均階調値は255である。
【0026】
そこで、出現確率決定手段502は、例えば以下のようにして各パターンの出現確率を決定する。すなわち、量子化値1に対しては対応する階調値が85であるため、パターン10〜13のいずれかが出現する確率を170/255、パターン20〜25のいずれかが出現する確率を85/255とする。これにより出現するパターンの平均階調値は85となり、量子化値1に対応する階調値85と等しくなる。
【0027】
さらに、パターン10〜13については、各パターンの出現確率の和を170/255とするために、順に出現確率を42/255、43/255、42/255、43/255とする。
【0028】
さらに、パターン20〜25については、各パターンの出現確率の和を85/255とするために、パターン20〜24の出現確率を14/255、パターン25の出現確率を15/255とする。
【0029】
同様にして他の量子化値に対しても各パターンの出現確率を決定して、量子化値0、1、2、3に対して各パターンの出現する確率をそれぞれ図4の401、402、403、404に示す値として、パターン選択手段504に渡す。
【0030】
例えば、読み込んだ300dpi4値の画像データである量子化値が1の場合は402に示す出力パターンと出現確率の関係をパターン選択手段504に渡す。
【0031】
疑似乱数発生手段503は疑似乱数を発生してその値をパターン選択手段504に送る。パターン選択手段504は、出現確率決定手段502から受けた出現確率と、疑似乱数発生手段503から受けた疑似乱数値とから出力するパターンを選択して、図示しないメモリへ書き込む。
【0032】
例えば、出現確率決定手段502から受けた出現確率が図4の402に示すものである場合、疑似乱数値を0以上1未満に正規化して、
疑似乱数値が42/255未満であればパターン10を選択し、
疑似乱数値が85/255未満であればパターン11を選択し、
疑似乱数値が127/255未満であればパターン12を選択し、
疑似乱数値が170/255未満であればパターン13を選択し、
疑似乱数値が184/255未満であればパターン20を選択し、
疑似乱数値が198/255未満であればパターン21を選択し、
疑似乱数値が212/255未満であればパターン22を選択し、
疑似乱数値が226/255未満であればパターン23を選択し、
疑似乱数値が240/255未満であればパターン24を選択し、
それ以外であればパターン25を選択することで、出力パターンと出現確率の関係を図4の402に示すとおりにできる。
【0033】
そこで、疑似乱数発生手段503から受けた疑似乱数値が、疑似乱数値を0以上1未満に正規化した場合の50/255に相当する値である場合、パターン11を選択することとする。
【0034】
また、出現確率決定手段502から受けた出現確率が図4の401に示すものである場合、疑似乱数値を0以上1未満に正規化して、疑似乱数値が255/255未満であればパターン00を選択し、出現確率が図4の404に示すものである場合、疑似乱数値が255/255未満であればパターン40を選択する。
【0035】
このように、プリンタコントローラ103はプリンタドライバ102から受け取った300dpi4値の画像データを、600dpi2値の画像データに変換した後、印刷部104に600dpi2値の画像データを送る。印刷部104はプリンタコントローラから受け取った画像を紙に印刷する。
【0036】
なお、本実施例ではプリンタドライバでの疑似中間調処理を誤差拡散処理を用いて行う構成を例に説明したが、本発明はこれに限定されず、ほぼ同じ処理結果が得られる平均誤差最小法や、またディザリングなど他の処理方法を用いてもよい。
【0037】
また、本実施例は量子化値0、1、2、3に対応する階調値を0、85、170、255のように等差的に割り当てる構成であるがこれに限らず、不均等に割り当てる構成であっても良い。例えば、階調値を0、64、127、255のように、濃度の低い部分に対して細かく取ることで、濃度の低い画像領域における表現力を高めることが出来る。
【0038】
また、本実施例は量子化値1に対して出力パターンを600dpi2x2ドット中2画素、もしくは3画素を打つパターンのみを選択する構成であるがこれに限らず、600dpi2x2ドット中、0画素、1画素、もしくは4画素を打つなど、様々なパターンの中から選択するパターンを決定する構成であっても良い。この構成を用いてより多くのパターンを使うことで、テクスチャの発生を抑制し、濃度が徐々に変化するグラデーションを処理した際に粒状性が周囲と大きく変化することでの違和感を抑制できる。
【0039】
肝要な点は、ある画素の階調値に対して、当該位置のパターンの階調値が確率的もしくは平均的におおむね一致するということである。
【0040】
また、本実施例は300dpi4値1x1画素の画像データを600dpi2値2x2画素の画像データに変換する構成であるがこれに限らず、例えば600dpi8値1x1画素の画像データを1200dpi4値2x2画素の画像データに変換する構成であっても良い。また、解像度の比は1:2以外であってもよいし、縦横異なる画素数に変換する構成であってもよい。
【0041】
(実施例2)
図7は、本発明が適用される別の画像処理システムの例を示す。本実施例では、実施例1との違いを中心に説明する。図7は、プリンタドライバ102での、1画素あたり256値の画像を少値の画像へ変換する擬似中間調処理の例である。
【0042】
入力手段701は、図示しないメモリから300dpi256値の階調値を入力し、後述する誤差拡散手段704からの出力値を加算した修正階調値を、比較手段702へ送る。階調値決定手段706は、図示しないオブジェクト情報を入力して、描画するオブジェクトの属性に応じて図8に示すように、各量子化値に対応する階調値、およびしきい値を決定する。オブジェクトの属性が文字である場合は801を、図形である場合は802を、それ以外である場合は803を利用する。
【0043】
また、階調値決定手段706は、各量子化値に対応する出力階調値を示す情報を出力手段705へ送る。比較手段702は、修正階調値としきい値を比較して、出力量子化値を出力手段205へ送る。
【0044】
出力手段205は、プリンタコントローラ103へ出力量子化値と、各量子化値に対応する出力階調値を示す情報を送る。ここで、後者は画素毎に送る必要はなく、少なくとも量子化値と出力階調値との関係が変化した際に送ればよい。
【0045】
また、比較手段702は、出力階調値と修正階調値との差分を誤差として誤差バッファ703へ送る。例えば、修正階調値が60、出力階調値が85の場合は、+25を誤差バッファ703へ送る。誤差バッファ703は、誤差をメモリに格納する。
【0046】
誤差拡散手段704は、注目画素の修正階調値を算出する際に、注目画素周辺の誤差を誤差バッファから入力し、図示しない誤差拡散マトリクスとの積和演算により得た値を出力する。
【0047】
図9は、プリンタコントローラ103が、プリンタドライバ102から受け取った画像データを元に、出力する画像を作成する方法の例を示し、前述した実施例1(図5)の構成と同様である。
【0048】
量子化値入力手段901は、図示しないメモリから、300dpiの画像データである量子化値と、量子化値と出力階調値との関係を得る。出現確率決定手段902は、量子化値入力手段901から入力された量子化値に対応する階調値を元に、いずれのパターンをどの程度の確率で出現させるかを決定して、パターン選択手段904にその情報を渡す。
【0049】
ここで、プリンタコントローラ103は、図3に示すいずれかのパターンを出力するとし、実施例1で示した方法で量子化値と出力パターンの出現確率を決定する。疑似乱数発生手段903は疑似乱数を発生してその値をパターン選択手段904に送る。パターン選択手段904は、出現確率決定手段902から受けた出現確率と、疑似乱数発生手段903から受けた疑似乱数値とから出力するパターンを選択して、図示しないメモリへ書き込む。
【0050】
なお、本実施例は描画するオブジェクトに応じて各量子化値に対応する階調値を決定する構成であるがこれに限らず、ページ毎、もしくは適当な領域毎にその対応関係を決定する構成であっても良い。
【0051】
(実施例3)
図10は、本発明の実施例3に係るプリンタコントローラ103の構成例を示す。本実施例では、実施例1との違いを中心に説明する。
【0052】
量子化値入力手段1001は、図示しないメモリから、300dpi4値の画像データである量子化値を読み込み、パターン決定手段1002へ送る。パターン決定手段1002は、量子化値入力手段1001から受けた量子化値を元に、量子化値0、1、2、3に対してそれぞれ、平均階調値が0、85、170、255となるようにした図11の1101、1102、1103、1104に示す順序でパターンを決定する。
【0053】
すなわち、量子化値0を受けたときはいつも出力パターン00(図3)とし、量子化値1を最初に受けた時はパターン10(図3)を、次に受けた時はパターン11(図3)、のように決定する。
【0054】
なお、本実施例は量子化値を受けた順序で出力パターンを決定する構成であるがこれに限らず、注目画素の位置を元にパターンを決定する構成であっても良い。例えば、図12は、量子化値0、1、2、3に対してそれぞれ、平均階調値が0、85、170、255となるようにしたパターンのマトリクスである。すなわち、注目画素の量子化値に対応するマトリクスでページ全面をタイリングした場合の、注目画素における値をパターンとして決定する構成であっても良い。
【0055】
【発明の効果】
以上、説明したように、本発明によれば、転送する画像データ量を少なくして、高速かつ高品質な画像を得られる。
【図面の簡単な説明】
【図1】本発明が適用される画像処理システムの構成例を示す。
【図2】誤差拡散処理による擬似中間調処理の構成例を示す。
【図3】倍密度で画像を生成する際に、階調値に応じて割り付けられるパターン例を示す。
【図4】量子化値に対応した出力パターンとその出現確率を示す。
【図5】実施例1に係るプリンタコントローラの構成例を示す。
【図6】図2の誤差拡散処理における出力階調値と出力量子化値との関係を示す。
【図7】誤差拡散処理による擬似中間調処理の他の構成例を示す。
【図8】図7の誤差拡散処理における出力階調値と出力量子化値との関係を示す。
【図9】実施例2に係るプリンタコントローラの構成例を示す。
【図10】実施例3に係るプリンタコントローラの構成例を示す。
【図11】パターン決定手段によって決定される出力パターンの第1の例を示す。
【図12】パターン決定手段によって決定される出力パターンの第2の例を示す。
【符号の説明】
101 アプリケーション
102 プリンタドライバ
103 プリンタコントローラ
104 印刷部
111 コンピュータ
112 プリンタ
【発明の属する技術分野】
本発明は、画像処理方法および画像処理システムに関する。
【0002】
【従来の技術】
近年、高精細な出力を得るためにプリンタの解像度が向上しているが、それに伴ってコンピュータからプリンタに転送する画像データ量が増加している。画像データ量を抑え、高速に出力を得るために、コンピュータからプリンタには低解像度の多値画像データを転送し、プリンタで前記画像データの画素毎にパターンを割り付けることで高解像度の少値(例えば2値)画像データに変換する技術がある。
【0003】
例えば、最終的に600dpi2値の出力画像を得たい場合に、600dpi2値の出力画像をそのままコンピュータからプリンタに転送する場合、1画素あたりの情報量は1bitとなる。しかし、上記技術を用いると、コンピュータが300dpi256値の画像に対して擬似中間調処理を行って300dpi5値の画像を生成してプリンタに転送し、プリンタが前記300dpi5値の画像の1画素毎に、階調値に応じて2値の2x2画素のパターンを割り付けることで600dpi2値の出力画像を生成する場合、600dpi2値の最終的な出力画像の1画素あたりの転送情報量は、300dpi5値で転送されるため、
(log(5)÷log(2))÷(2x2[画素])≒0.58[bit]
となる。
【0004】
また、上記技術に対して、特にプリンタがインクジェット方式の場合は600dpiの2x2画素中に3画素打つ場合と4画素打つ場合とでプリント結果にそれほどの違いがないことから、コンピュータが300dpi256値の画像に対して300dpi4値の画像を生成してプリンタに転送し、プリンタが前記300dpi4値の画像の1画素毎に、画素値に応じて2値の2x2画素のパターンを割り付けて600dpi2値の出力画像を生成する技術が提案されている(例えば、特許文献1参照)。
【0005】
この場合は600dpi2値の最終的な出力画像の1画素あたりの転送情報量は、300dpi4値で転送されるため、
(log(4)÷log(2))÷(2x2[画素])=0.5[bit]
となり、さらに転送情報量を少なくすることができる。
【0006】
【特許文献1】
特開平9−46522号公報
【0007】
【発明が解決しようとする課題】
しかしながら、前掲した公報に基づくシステムでは、プリンタは600dpiの2x2画素中に3画素打つことがなくなり、プリンタの能力を活用しきっていない。
【0008】
本発明は上記した問題点に鑑みてなされたもので、
本発明の目的は、転送情報量を小さくしながら、プリンタの能力を生かした画像処理方法および画像処理システムを提供することにある。
【0009】
【課題を解決するための手段】
本発明では、階調数p(ただしp>2)の第一画像データに対して、擬似中間調処理を行い階調数q(ただしp>q≧2)の第二画像データを得るステップ、前記第二画像データに対して、階調数r(2≦r≦q)の第三画像データを生成するステップ、とを有し、前記第三画像データを生成するステップは、ある位置の前記第二画像データの階調値に応じて、当該位置の第三画像データのパターンを決定し、該第三画像データの階調値は確率的もしくは平均的に対応する第二画像データの階調値とおおむね一致している。
【0010】
本発明では、前記第二画像データの各階調値が可変であり、また、前記第二画像データの各階調値は前記第一画像データにより決定する。
【0011】
本発明では、1画素の第二画像データに対応する第三画像データの1パターンのサイズを横画素x画素、縦y画素の矩形として、前記第二画像データの階調数qは、
q<1+x×y×(r−1)
を満たす2のべき乗である。
【0012】
本発明では、前記第二画像データの階調数qは可変であり、また、前記第二画像データの階調数qは前記第一画像データに基づき動的に決定する。
【0013】
本発明では、前記第三画像データのパターンは、少なくとも当該パターンの位置に対応する前記第二画像データの階調値と、乱数もしくは疑似乱数とをパラメータとして決定する。
【0014】
本発明では、前記第三画像データのパターンは、少なくとも当該パターンの位置に対応する前記第二画像データの階調値と、当該パターンの位置情報とをパラメータとして決定する。
【0015】
本発明では、前記第三画像データのパターンは、少なくとも当該パターンの位置に対応する前記第二画像データの階調値と、前記階調値に対応するパターンの過去の出現情報をパラメータとして決定する。
【0016】
本発明の擬似中間調処理は、誤差拡散法、もしくは平均誤差最小法である。
【0017】
【発明の実施の形態】
以下、本発明の実施例を図面を用いて具体的に説明する。
(実施例1)
図1は、本発明が適用される画像処理システムの例を示す。コンピュータ111内で、アプリケーション101は図示しないユーザからの指示により、プリンタドライバ102に描画命令を送る。プリンタドライバ102は、アプリケーションから受けた描画命令を解釈して、ページイメージを作成する。
【0018】
ここで、ページイメージは300dpi4値の画像とする。例えば、プリンタドライバ102がアプリケーション101から72dpi256値の白黒画像を受信して、これを処理して出力せよ、という描画命令を受けた場合、解像度変換処理を行い72dpiの画像を300dpiの画像へ変換する。その後、擬似中間調処理を行い、1画素あたり256値の画像を4値の画像へ変換する。
【0019】
本実施例では、プリンタドライバ102が300dpiの4値化を行い、量子化値0、1、2、3に対してそれぞれ0、85、170、255の階調値を割り当てている。ここで、階調値0はもっとも濃度が低い状態を表し、階調値255はもっとも濃度が高い状態を表すとする。
【0020】
図2は、1画素あたり256値の画像を4値の画像へ変換する誤差拡散処理による擬似中間調処理の例を示す。入力手段201は、図示しないメモリから300dpi256値の階調値を入力し、後述する誤差拡散手段204からの出力値を加算した修正階調値を、比較手段202へ送る。比較手段202は、修正階調値としきい値を比較する。図6に示すように、修正階調値が0〜42、43〜127、128〜212、213〜255の場合、出力量子化値はそれぞれ0、1、2、3として、出力量子化値を出力手段205へ送る。出力手段205は、プリンタコントローラ103へ出力量子化値を送る。
【0021】
また、比較手段202は、出力階調値と修正階調値との差分を誤差として誤差バッファ203へ送る。例えば、修正階調値が60、出力階調値が85の場合は、+25を誤差バッファ203へ送る。誤差バッファ203は、誤差をメモリに格納する。誤差拡散手段204は、注目画素の修正階調値を算出する際に、注目画素周辺の誤差を誤差バッファから入力し、図示しない誤差拡散マトリクスとの積和演算により得た値を出力する。
【0022】
その後、プリンタドライバ102は、300dpi4値化された画像をプリンタ112内のプリンタコントローラ103に送る。プリンタコントローラ103は、プリンタドライバ102から受け取った画像データを元に、出力する画像を作成する。
【0023】
図5は、プリンタコントローラ103が、プリンタドライバ102から受け取った画像データを元に、出力する画像を作成する方法の例を示す。
【0024】
量子化値入力手段501は、図示しないメモリから、300dpi4値の画像データである量子化値を読み込む。出現確率決定手段502は、量子化値入力手段501から入力された量子化値に対応する階調値を元に図3のいずれのパターンをどの程度の確率で出現させるかを決定して、パターン選択手段504にその情報を渡す。
【0025】
図3において、各パターン中、黒丸で示す画素は階調値255で出力し、そうでない画素は階調値0で出力することを示す。ここで、パターン00の平均階調値は0、パターン10〜13の平均階調値はいずれも255x1/4(=63.75)、パターン20〜25の平均階調値はいずれも255x2/4(=127.5)、パターン30〜33の平均階調値はいずれも255x3/4(=191.25)、パターン40の平均階調値は255である。
【0026】
そこで、出現確率決定手段502は、例えば以下のようにして各パターンの出現確率を決定する。すなわち、量子化値1に対しては対応する階調値が85であるため、パターン10〜13のいずれかが出現する確率を170/255、パターン20〜25のいずれかが出現する確率を85/255とする。これにより出現するパターンの平均階調値は85となり、量子化値1に対応する階調値85と等しくなる。
【0027】
さらに、パターン10〜13については、各パターンの出現確率の和を170/255とするために、順に出現確率を42/255、43/255、42/255、43/255とする。
【0028】
さらに、パターン20〜25については、各パターンの出現確率の和を85/255とするために、パターン20〜24の出現確率を14/255、パターン25の出現確率を15/255とする。
【0029】
同様にして他の量子化値に対しても各パターンの出現確率を決定して、量子化値0、1、2、3に対して各パターンの出現する確率をそれぞれ図4の401、402、403、404に示す値として、パターン選択手段504に渡す。
【0030】
例えば、読み込んだ300dpi4値の画像データである量子化値が1の場合は402に示す出力パターンと出現確率の関係をパターン選択手段504に渡す。
【0031】
疑似乱数発生手段503は疑似乱数を発生してその値をパターン選択手段504に送る。パターン選択手段504は、出現確率決定手段502から受けた出現確率と、疑似乱数発生手段503から受けた疑似乱数値とから出力するパターンを選択して、図示しないメモリへ書き込む。
【0032】
例えば、出現確率決定手段502から受けた出現確率が図4の402に示すものである場合、疑似乱数値を0以上1未満に正規化して、
疑似乱数値が42/255未満であればパターン10を選択し、
疑似乱数値が85/255未満であればパターン11を選択し、
疑似乱数値が127/255未満であればパターン12を選択し、
疑似乱数値が170/255未満であればパターン13を選択し、
疑似乱数値が184/255未満であればパターン20を選択し、
疑似乱数値が198/255未満であればパターン21を選択し、
疑似乱数値が212/255未満であればパターン22を選択し、
疑似乱数値が226/255未満であればパターン23を選択し、
疑似乱数値が240/255未満であればパターン24を選択し、
それ以外であればパターン25を選択することで、出力パターンと出現確率の関係を図4の402に示すとおりにできる。
【0033】
そこで、疑似乱数発生手段503から受けた疑似乱数値が、疑似乱数値を0以上1未満に正規化した場合の50/255に相当する値である場合、パターン11を選択することとする。
【0034】
また、出現確率決定手段502から受けた出現確率が図4の401に示すものである場合、疑似乱数値を0以上1未満に正規化して、疑似乱数値が255/255未満であればパターン00を選択し、出現確率が図4の404に示すものである場合、疑似乱数値が255/255未満であればパターン40を選択する。
【0035】
このように、プリンタコントローラ103はプリンタドライバ102から受け取った300dpi4値の画像データを、600dpi2値の画像データに変換した後、印刷部104に600dpi2値の画像データを送る。印刷部104はプリンタコントローラから受け取った画像を紙に印刷する。
【0036】
なお、本実施例ではプリンタドライバでの疑似中間調処理を誤差拡散処理を用いて行う構成を例に説明したが、本発明はこれに限定されず、ほぼ同じ処理結果が得られる平均誤差最小法や、またディザリングなど他の処理方法を用いてもよい。
【0037】
また、本実施例は量子化値0、1、2、3に対応する階調値を0、85、170、255のように等差的に割り当てる構成であるがこれに限らず、不均等に割り当てる構成であっても良い。例えば、階調値を0、64、127、255のように、濃度の低い部分に対して細かく取ることで、濃度の低い画像領域における表現力を高めることが出来る。
【0038】
また、本実施例は量子化値1に対して出力パターンを600dpi2x2ドット中2画素、もしくは3画素を打つパターンのみを選択する構成であるがこれに限らず、600dpi2x2ドット中、0画素、1画素、もしくは4画素を打つなど、様々なパターンの中から選択するパターンを決定する構成であっても良い。この構成を用いてより多くのパターンを使うことで、テクスチャの発生を抑制し、濃度が徐々に変化するグラデーションを処理した際に粒状性が周囲と大きく変化することでの違和感を抑制できる。
【0039】
肝要な点は、ある画素の階調値に対して、当該位置のパターンの階調値が確率的もしくは平均的におおむね一致するということである。
【0040】
また、本実施例は300dpi4値1x1画素の画像データを600dpi2値2x2画素の画像データに変換する構成であるがこれに限らず、例えば600dpi8値1x1画素の画像データを1200dpi4値2x2画素の画像データに変換する構成であっても良い。また、解像度の比は1:2以外であってもよいし、縦横異なる画素数に変換する構成であってもよい。
【0041】
(実施例2)
図7は、本発明が適用される別の画像処理システムの例を示す。本実施例では、実施例1との違いを中心に説明する。図7は、プリンタドライバ102での、1画素あたり256値の画像を少値の画像へ変換する擬似中間調処理の例である。
【0042】
入力手段701は、図示しないメモリから300dpi256値の階調値を入力し、後述する誤差拡散手段704からの出力値を加算した修正階調値を、比較手段702へ送る。階調値決定手段706は、図示しないオブジェクト情報を入力して、描画するオブジェクトの属性に応じて図8に示すように、各量子化値に対応する階調値、およびしきい値を決定する。オブジェクトの属性が文字である場合は801を、図形である場合は802を、それ以外である場合は803を利用する。
【0043】
また、階調値決定手段706は、各量子化値に対応する出力階調値を示す情報を出力手段705へ送る。比較手段702は、修正階調値としきい値を比較して、出力量子化値を出力手段205へ送る。
【0044】
出力手段205は、プリンタコントローラ103へ出力量子化値と、各量子化値に対応する出力階調値を示す情報を送る。ここで、後者は画素毎に送る必要はなく、少なくとも量子化値と出力階調値との関係が変化した際に送ればよい。
【0045】
また、比較手段702は、出力階調値と修正階調値との差分を誤差として誤差バッファ703へ送る。例えば、修正階調値が60、出力階調値が85の場合は、+25を誤差バッファ703へ送る。誤差バッファ703は、誤差をメモリに格納する。
【0046】
誤差拡散手段704は、注目画素の修正階調値を算出する際に、注目画素周辺の誤差を誤差バッファから入力し、図示しない誤差拡散マトリクスとの積和演算により得た値を出力する。
【0047】
図9は、プリンタコントローラ103が、プリンタドライバ102から受け取った画像データを元に、出力する画像を作成する方法の例を示し、前述した実施例1(図5)の構成と同様である。
【0048】
量子化値入力手段901は、図示しないメモリから、300dpiの画像データである量子化値と、量子化値と出力階調値との関係を得る。出現確率決定手段902は、量子化値入力手段901から入力された量子化値に対応する階調値を元に、いずれのパターンをどの程度の確率で出現させるかを決定して、パターン選択手段904にその情報を渡す。
【0049】
ここで、プリンタコントローラ103は、図3に示すいずれかのパターンを出力するとし、実施例1で示した方法で量子化値と出力パターンの出現確率を決定する。疑似乱数発生手段903は疑似乱数を発生してその値をパターン選択手段904に送る。パターン選択手段904は、出現確率決定手段902から受けた出現確率と、疑似乱数発生手段903から受けた疑似乱数値とから出力するパターンを選択して、図示しないメモリへ書き込む。
【0050】
なお、本実施例は描画するオブジェクトに応じて各量子化値に対応する階調値を決定する構成であるがこれに限らず、ページ毎、もしくは適当な領域毎にその対応関係を決定する構成であっても良い。
【0051】
(実施例3)
図10は、本発明の実施例3に係るプリンタコントローラ103の構成例を示す。本実施例では、実施例1との違いを中心に説明する。
【0052】
量子化値入力手段1001は、図示しないメモリから、300dpi4値の画像データである量子化値を読み込み、パターン決定手段1002へ送る。パターン決定手段1002は、量子化値入力手段1001から受けた量子化値を元に、量子化値0、1、2、3に対してそれぞれ、平均階調値が0、85、170、255となるようにした図11の1101、1102、1103、1104に示す順序でパターンを決定する。
【0053】
すなわち、量子化値0を受けたときはいつも出力パターン00(図3)とし、量子化値1を最初に受けた時はパターン10(図3)を、次に受けた時はパターン11(図3)、のように決定する。
【0054】
なお、本実施例は量子化値を受けた順序で出力パターンを決定する構成であるがこれに限らず、注目画素の位置を元にパターンを決定する構成であっても良い。例えば、図12は、量子化値0、1、2、3に対してそれぞれ、平均階調値が0、85、170、255となるようにしたパターンのマトリクスである。すなわち、注目画素の量子化値に対応するマトリクスでページ全面をタイリングした場合の、注目画素における値をパターンとして決定する構成であっても良い。
【0055】
【発明の効果】
以上、説明したように、本発明によれば、転送する画像データ量を少なくして、高速かつ高品質な画像を得られる。
【図面の簡単な説明】
【図1】本発明が適用される画像処理システムの構成例を示す。
【図2】誤差拡散処理による擬似中間調処理の構成例を示す。
【図3】倍密度で画像を生成する際に、階調値に応じて割り付けられるパターン例を示す。
【図4】量子化値に対応した出力パターンとその出現確率を示す。
【図5】実施例1に係るプリンタコントローラの構成例を示す。
【図6】図2の誤差拡散処理における出力階調値と出力量子化値との関係を示す。
【図7】誤差拡散処理による擬似中間調処理の他の構成例を示す。
【図8】図7の誤差拡散処理における出力階調値と出力量子化値との関係を示す。
【図9】実施例2に係るプリンタコントローラの構成例を示す。
【図10】実施例3に係るプリンタコントローラの構成例を示す。
【図11】パターン決定手段によって決定される出力パターンの第1の例を示す。
【図12】パターン決定手段によって決定される出力パターンの第2の例を示す。
【符号の説明】
101 アプリケーション
102 プリンタドライバ
103 プリンタコントローラ
104 印刷部
111 コンピュータ
112 プリンタ
Claims (20)
- 階調数p(p>2)の第1画像データに対して、擬似中間調処理を行い階調数q(p>q≧2)の第2画像データを得るステップと、前記第2画像データに対して、階調数r(2≦r≦q)の第3画像データを生成するステップとを有し、前記第3画像データを生成するステップは、ある位置の前記第2画像データの階調値に応じて、当該位置の第3画像データのパターンを決定し、該第3画像データの階調値は確率的もしくは平均的に対応する第2画像データの階調値とおおむね一致することを特徴とする画像処理方法。
- 前記第2画像データの各階調値は可変であることを特徴とする請求項1記載の画像処理方法。
- 前記第2画像データの各階調値は前記第1画像データにより決定することを特徴とする請求項1記載の画像処理方法。
- 1画素の第2画像データに対応する第3画像データの1パターンのサイズを横画素x画素、縦y画素の矩形として、前記第2画像データの階調数qは、
q<1+x×y×(r−1)
を満たす2のべき乗であることを特徴とする請求項1記載の画像処理方法。 - 前記第2画像データの階調数qは可変であることを特徴とする請求項1または4記載の画像処理方法。
- 前記第2画像データの階調数qは前記第1画像データに基づき動的に決定することを特徴とする請求項1記載の画像処理方法。
- 前記第3画像データのパターンは、少なくとも当該パターンの位置に対応する前記第2画像データの階調値と、乱数もしくは疑似乱数とをパラメータとして決定することを特徴とする請求項1記載の画像処理方法。
- 前記第3画像データのパターンは、少なくとも当該パターンの位置に対応する前記第2画像データの階調値と、当該パターンの位置情報とをパラメータとして決定することを特徴とする請求項1記載の画像処理方法。
- 前記第3画像データのパターンは、少なくとも当該パターンの位置に対応する前記第2画像データの階調値と、前記階調値に対応するパターンの過去の出現情報をパラメータとして決定することを特徴とする請求項1記載の画像処理方法。
- 前記擬似中間調処理は、誤差拡散法もしくは平均誤差最小法であることを特徴とする請求項1記載の画像処理方法。
- 階調数p(p>2)の第1画像データに対して、擬似中間調処理を行い階調数q(p>q≧2)の第2画像データを得る第2画像データ生成手段と、前記第2画像データに対して、階調数r(2≦r≦q)の第3画像データを生成する第3画像データ生成手段とを備え、前記第3画像データ生成手段は、ある位置の前記第2画像データの階調値に応じて、当該位置の第3画像データのパターンを決定し、該第3画像データの階調値は確率的もしくは平均的に対応する第2画像データの階調値とおおむね一致することを特徴とする画像処理システム。
- 前記第2画像データの各階調値は可変であることを特徴とする請求項11記載の画像処理システム。
- 前記第2画像データの各階調値は前記第1画像データにより決定することを特徴とする請求項11記載の画像処理システム。
- 1画素の第2画像データに対応する第3画像データの1パターンのサイズを横画素x画素、縦y画素の矩形として、前記第2画像データの階調数qは、
q<1+x×y×(r−1)
を満たす2のべき乗であることを特徴とする請求項11記載の画像処理システム。 - 前記第2画像データの階調数qは可変であることを特徴とする請求項11または14記載の画像処理システム。
- 前記第2画像データの階調数qは前記第1画像データに基づき動的に決定することを特徴とする請求項11記載の画像処理システム。
- 前記第3画像データのパターンは、少なくとも当該パターンの位置に対応する前記第2画像データの階調値と、乱数もしくは疑似乱数とをパラメータとして決定することを特徴とする請求項11記載の画像処理システム。
- 前記第3画像データのパターンは、少なくとも当該パターンの位置に対応する前記第2画像データの階調値と、当該パターンの位置情報とをパラメータとして決定することを特徴とする請求項11記載の画像処理システム。
- 前記第3画像データのパターンは、少なくとも当該パターンの位置に対応する前記第2画像データの階調値と、前記階調値に対応するパターンの過去の出現情報をパラメータとして決定することを特徴とする請求項11記載の画像処理システム。
- 前記擬似中間調処理は、誤差拡散法もしくは平均誤差最小法であることを特徴とする請求項11記載の画像処理システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002261561A JP2004104334A (ja) | 2002-09-06 | 2002-09-06 | 画像処理方法および画像処理システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002261561A JP2004104334A (ja) | 2002-09-06 | 2002-09-06 | 画像処理方法および画像処理システム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006002199A Division JP2006109526A (ja) | 2006-01-10 | 2006-01-10 | 画像処理装置および画像処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004104334A true JP2004104334A (ja) | 2004-04-02 |
Family
ID=32261901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002261561A Pending JP2004104334A (ja) | 2002-09-06 | 2002-09-06 | 画像処理方法および画像処理システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004104334A (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS572774A (en) * | 1980-06-06 | 1982-01-08 | Nippon Telegr & Teleph Corp <Ntt> | Recording system for gradation image |
JPH0946522A (ja) * | 1995-07-28 | 1997-02-14 | Canon Inc | 画像処理方法、プリント装置および表示装置 |
-
2002
- 2002-09-06 JP JP2002261561A patent/JP2004104334A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS572774A (en) * | 1980-06-06 | 1982-01-08 | Nippon Telegr & Teleph Corp <Ntt> | Recording system for gradation image |
JPH0946522A (ja) * | 1995-07-28 | 1997-02-14 | Canon Inc | 画像処理方法、プリント装置および表示装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5729663A (en) | Method and apparatus for gray screening | |
JP4125573B2 (ja) | 画像処理システム | |
JP4559118B2 (ja) | ビットマスク生成システムおよびプリンタドライバーおよび生成されたビットマスクマスクを取り込んだ印刷方法ならびにその使用方法 | |
US8107772B2 (en) | Image processing apparatus, image reading apparatus, image processing method, and recording medium | |
KR102307264B1 (ko) | 화상 처리 장치, 화상 처리 방법 및 저장 매체 | |
JP3119150B2 (ja) | 画像処理装置および画像処理方法 | |
JP4479663B2 (ja) | 固定セルによるハーフトーン処理を行う画像処理装置,画像処理方法,及び画像処理プログラム | |
JP2007306513A (ja) | 画像データの圧縮方法および装置 | |
JP2007019608A (ja) | 画像処理装置、画像処理方法、及び画像処理プログラム | |
JP3737471B2 (ja) | 画像処理方法および画像処理システム | |
JP2004104334A (ja) | 画像処理方法および画像処理システム | |
JP2005182824A (ja) | イメージ・データを処理する方法 | |
JP2003046793A (ja) | 画像処理方法及び装置 | |
JPH0998290A (ja) | 画像記録装置及び画像記録方法 | |
JPH0738767A (ja) | 画像2値化処理装置 | |
JP4587153B2 (ja) | 画像処理装置及び方法 | |
JP2006109526A (ja) | 画像処理装置および画像処理方法 | |
JP3999763B2 (ja) | 画像処理装置及び画像処理プログラム | |
JP3571823B2 (ja) | プリンタ装置 | |
JP2001285629A (ja) | 画像処理装置及び画像処理方法 | |
JP2004260700A (ja) | 画像処理装置及び方法 | |
JP4834582B2 (ja) | 画像処理装置およびその方法 | |
JP2000238347A (ja) | プリンタ制御装置 | |
JP2005252807A (ja) | 画像処理方法、印刷システム及びプリンタ | |
JP2004312456A (ja) | 印刷装置、画像処理装置、印刷方法、画像処理方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050729 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050802 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050920 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20051108 |