(57)【要約】【課題】転送情報量を小さくしながら、プリンタの能力を生かす。【解決手段】出現確率決定手段５０２は、量子化値入力手段５０１から入力した量子化値に対応した出力パターンと出現確率をパターン選択手段５０４に渡す。疑似乱数発生手段５０３は疑似乱数を発生してその値をパターン選択手段５０４に送り、パターン選択手段５０４は、出現確率と疑似乱数値を基に出力するパターンを選択する。【選択図】図５
2006109526.tif 000002
【特許請求の範囲】
【請求項１】
誤差拡散法によって量子化処理を行う画像処理装置であって、分散された誤差を含む修正階調値としきい値とを比較する比較手段と、前記比較手段の比較結果に応じた量子化値を出力する出力手段と、前記量子化値に対応する階調値に基づき、前記階調値に応じて割り付けられるパターンの出現確率を決定する出現確率決定手段と、擬似乱数を発生する擬似乱数発生手段と、前記出現確率決定手段から出力される出現確率と、前記擬似乱数発生手段から出力される擬似乱数値とに基づき、出力するパターンを選択するパターン選択手段とを有することを特徴とする画像処理装置。
【請求項２】
前記量子化値に対応する階調値を等差的に割り当てる構成にすることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記量子化値に対応する階調値を不均等に割り当てる構成にすることを特徴とする請求項１記載の画像処理装置。
【請求項４】
誤差拡散法によって量子化処理を行う画像処理方法であって、分散された誤差を含む修正階調値としきい値とを比較する比較工程と、前記比較工程の比較結果に応じた量子化値を出力する出力工程と、前記量子化値に対応する階調値に基づき、前記階調値に応じて割り付けられるパターンの出現確率を決定する出現確率決定工程と、擬似乱数を発生する擬似乱数発生工程と、前記出現確率決定工程から出力される出現確率と、前記擬似乱数発生工程から出力される擬似乱数値とに基づき、出力するパターンを選択するパターン選択工程とを有することを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
近年、高精細な出力を得るためにプリンタの解像度が向上しているが、それに伴ってコンピュータからプリンタに転送する画像データ量が増加している。画像データ量を抑え、高速に出力を得るために、コンピュータからプリンタには低解像度の多値画像データを転送し、プリンタで前記画像データの画素毎にパターンを割り付けることで高解像度の少値（例えば２値）画像データに変換する技術がある。
【０００３】
例えば、最終的に６００ｄｐｉ２値の出力画像を得たい場合に、６００ｄｐｉ２値の出力画像をそのままコンピュータからプリンタに転送する場合、１画素あたりの情報量は１ｂｉｔとなる。しかし、上記技術を用いると、コンピュータが３００ｄｐｉ２５６値の画像に対して擬似中間調処理を行って３００ｄｐｉ５値の画像を生成してプリンタに転送し、プリンタが前記３００ｄｐｉ５値の画像の１画素毎に、階調値に応じて２値の２ｘ２画素のパターンを割り付けることで６００ｄｐｉ２値の出力画像を生成する場合、６００ｄｐｉ２値の最終的な出力画像の１画素あたりの転送情報量は、３００ｄｐｉ５値で転送されるため、
（ｌｏｇ（５）÷ｌｏｇ（２））÷（２ｘ２［画素］）≒０．５８［ｂｉｔ］
となる。
【０００４】
また、上記技術に対して、特にプリンタがインクジェット方式の場合は６００ｄｐｉの２ｘ２画素中に３画素打つ場合と４画素打つ場合とでプリント結果にそれほどの違いがないことから、コンピュータが３００ｄｐｉ２５６値の画像に対して３００ｄｐｉ４値の画像を生成してプリンタに転送し、プリンタが前記３００ｄｐｉ４値の画像の１画素毎に、画素値に応じて２値の２ｘ２画素のパターンを割り付けて６００ｄｐｉ２値の出力画像を生成する技術が提案されている（例えば、特許文献１参照）。
【０００５】
この場合は６００ｄｐｉ２値の最終的な出力画像の１画素あたりの転送情報量は、３００ｄｐｉ４値で転送されるため、
（ｌｏｇ（４）÷ｌｏｇ（２））÷（２ｘ２［画素］）＝０．５［ｂｉｔ］となり、さらに転送情報量を少なくすることができる。
【０００６】
【特許文献１】特開平９−４６５２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、前掲した公報に基づくシステムでは、プリンタは６００ｄｐｉの２ｘ２画素中に３画素打つことがなくなり、プリンタの能力を活用しきっていない。
【０００８】
本発明は上記した問題点に鑑みてなされたもので、
本発明の目的は、転送情報量を小さくしながら、プリンタの能力を生かした画像処理装置および画像処理方法を提供することにある。
【課題を解決するための手段】
【０００９】
本発明は、誤差拡散法によって量子化処理を行う画像処理装置であって、分散された誤差を含む修正階調値としきい値とを比較する比較手段と、前記比較手段の比較結果に応じた量子化値を出力する出力手段と、前記量子化値に対応する階調値に基づき、前記階調値に応じて割り付けられるパターンの出現確率を決定する出現確率決定手段と、擬似乱数を発生する擬似乱数発生手段と、前記出現確率決定手段から出力される出現確率と、前記擬似乱数発生手段から出力される擬似乱数値とに基づき、出力するパターンを選択するパターン選択手段とを有することを最も主要な特徴とする。
【発明の効果】
【００１０】
本発明によれば、転送する画像データ量を少なくして、高速かつ高品質な画像を得られる。
【発明を実施するための最良の形態】
【００１１】
以下、発明の実施の形態について図面により詳細に説明する。
【００１２】
実施例１：
図１は、本発明が適用される画像処理システムの例を示す。コンピュータ１１１内で、アプリケーション１０１は図示しないユーザからの指示により、プリンタドライバ１０２に描画命令を送る。プリンタドライバ１０２は、アプリケーションから受けた描画命令を解釈して、ページイメージを作成する。
【００１３】
ここで、ページイメージは３００ｄｐｉ４値の画像とする。例えば、プリンタドライバ１０２がアプリケーション１０１から７２ｄｐｉ２５６値の白黒画像を受信して、これを処理して出力せよ、という描画命令を受けた場合、解像度変換処理を行い７２ｄｐｉの画像を３００ｄｐｉの画像へ変換する。その後、擬似中間調処理を行い、１画素あたり２５６値の画像を４値の画像へ変換する。
【００１４】
本実施例では、プリンタドライバ１０２が３００ｄｐｉの４値化を行い、量子化値０、１、２、３に対してそれぞれ０、８５、１７０、２５５の階調値を割り当てている。ここで、階調値０はもっとも濃度が低い状態を表し、階調値２５５はもっとも濃度が高い状態を表すとする。
【００１５】
図２は、１画素あたり２５６値の画像を４値の画像へ変換する誤差拡散処理による擬似中間調処理の例を示す。入力手段２０１は、図示しないメモリから３００ｄｐｉ２５６値の階調値を入力し、後述する誤差拡散手段２０４からの出力値を加算した修正階調値を、比較手段２０２へ送る。比較手段２０２は、修正階調値としきい値を比較する。図６に示すように、修正階調値が０〜４２、４３〜１２７、１２８〜２１２、２１３〜２５５の場合、出力量子化値はそれぞれ０、１、２、３として、出力量子化値を出力手段２０５へ送る。出力手段２０５は、プリンタコントローラ１０３へ出力量子化値を送る。
【００１６】
また、比較手段２０２は、出力階調値と修正階調値との差分を誤差として誤差バッファ２０３へ送る。例えば、修正階調値が６０、出力階調値が８５の場合は、＋２５を誤差バッファ２０３へ送る。誤差バッファ２０３は、誤差をメモリに格納する。誤差拡散手段２０４は、注目画素の修正階調値を算出する際に、注目画素周辺の誤差を誤差バッファから入力し、図示しない誤差拡散マトリクスとの積和演算により得た値を出力する。
【００１７】
その後、プリンタドライバ１０２は、３００ｄｐｉ４値化された画像をプリンタ１１２内のプリンタコントローラ１０３に送る。プリンタコントローラ１０３は、プリンタドライバ１０２から受け取った画像データを元に、出力する画像を作成する。
【００１８】
図５は、プリンタコントローラ１０３が、プリンタドライバ１０２から受け取った画像データを元に、出力する画像を作成する方法の例を示す。
【００１９】
量子化値入力手段５０１は、図示しないメモリから、３００ｄｐｉ４値の画像データである量子化値を読み込む。出現確率決定手段５０２は、量子化値入力手段５０１から入力された量子化値に対応する階調値を元に図３のいずれのパターンをどの程度の確率で出現させるかを決定して、パターン選択手段５０４にその情報を渡す。
【００２０】
図３において、各パターン中、黒丸で示す画素は階調値２５５で出力し、そうでない画素は階調値０で出力することを示す。ここで、パターン００の平均階調値は０、パターン１０〜１３の平均階調値はいずれも２５５ｘ１／４（＝６３．７５）、パターン２０〜２５の平均階調値はいずれも２５５ｘ２／４（＝１２７．５）、パターン３０〜３３の平均階調値はいずれも２５５ｘ３／４（＝１９１．２５）、パターン４０の平均階調値は２５５である。
【００２１】
そこで、出現確率決定手段５０２は、例えば以下のようにして各パターンの出現確率を決定する。すなわち、量子化値１に対しては対応する階調値が８５であるため、パターン１０〜１３のいずれかが出現する確率を１７０／２５５、パターン２０〜２５のいずれかが出現する確率を８５／２５５とする。これにより出現するパターンの平均階調値は８５となり、量子化値１に対応する階調値８５と等しくなる。
【００２２】
さらに、パターン１０〜１３については、各パターンの出現確率の和を１７０／２５５とするために、順に出現確率を４２／２５５、４３／２５５、４２／２５５、４３／２５５とする。
【００２３】
さらに、パターン２０〜２５については、各パターンの出現確率の和を８５／２５５とするために、パターン２０〜２４の出現確率を１４／２５５、パターン２５の出現確率を１５／２５５とする。
【００２４】
同様にして他の量子化値に対しても各パターンの出現確率を決定して、量子化値０、１、２、３に対して各パターンの出現する確率をそれぞれ図４の４０１、４０２、４０３、４０４に示す値として、パターン選択手段５０４に渡す。
【００２５】
例えば、読み込んだ３００ｄｐｉ４値の画像データである量子化値が１の場合は４０２に示す出力パターンと出現確率の関係をパターン選択手段５０４に渡す。
【００２６】
疑似乱数発生手段５０３は疑似乱数を発生してその値をパターン選択手段５０４に送る。パターン選択手段５０４は、出現確率決定手段５０２から受けた出現確率と、疑似乱数発生手段５０３から受けた疑似乱数値とから出力するパターンを選択して、図示しないメモリへ書き込む。
【００２７】
例えば、出現確率決定手段５０２から受けた出現確率が図４の４０２に示すものである場合、疑似乱数値を０以上１未満に正規化して、
疑似乱数値が４２／２５５未満であればパターン１０を選択し、
疑似乱数値が８５／２５５未満であればパターン１１を選択し、
疑似乱数値が１２７／２５５未満であればパターン１２を選択し、
疑似乱数値が１７０／２５５未満であればパターン１３を選択し、
疑似乱数値が１８４／２５５未満であればパターン２０を選択し、
疑似乱数値が１９８／２５５未満であればパターン２１を選択し、
疑似乱数値が２１２／２５５未満であればパターン２２を選択し、
疑似乱数値が２２６／２５５未満であればパターン２３を選択し、
疑似乱数値が２４０／２５５未満であればパターン２４を選択し、
それ以外であればパターン２５を選択することで、出力パターンと出現確率の関係を図４の４０２に示すとおりにできる。
【００２８】
そこで、疑似乱数発生手段５０３から受けた疑似乱数値が、疑似乱数値を０以上１未満に正規化した場合の５０／２５５に相当する値である場合、パターン１１を選択することとする。
【００２９】
また、出現確率決定手段５０２から受けた出現確率が図４の４０１に示すものである場合、疑似乱数値を０以上１未満に正規化して、疑似乱数値が２５５／２５５未満であればパターン００を選択し、出現確率が図４の４０４に示すものである場合、疑似乱数値が２５５／２５５未満であればパターン４０を選択する。
【００３０】
このように、プリンタコントローラ１０３はプリンタドライバ１０２から受け取った３００ｄｐｉ４値の画像データを、６００ｄｐｉ２値の画像データに変換した後、印刷部１０４に６００ｄｐｉ２値の画像データを送る。印刷部１０４はプリンタコントローラから受け取った画像を紙に印刷する。
【００３１】
なお、本実施例ではプリンタドライバでの疑似中間調処理を誤差拡散処理を用いて行う構成を例に説明したが、本発明はこれに限定されず、ほぼ同じ処理結果が得られる平均誤差最小法や、またディザリングなど他の処理方法を用いてもよい。
【００３２】
また、本実施例は量子化値０、１、２、３に対応する階調値を０、８５、１７０、２５５のように等差的に割り当てる構成であるがこれに限らず、不均等に割り当てる構成であっても良い。例えば、階調値を０、６４、１２７、２５５のように、濃度の低い部分に対して細かく取ることで、濃度の低い画像領域における表現力を高めることが出来る。
【００３３】
また、本実施例は量子化値１に対して出力パターンを６００ｄｐｉ２ｘ２ドット中２画素、もしくは３画素を打つパターンのみを選択する構成であるがこれに限らず、６００ｄｐｉ２ｘ２ドット中、０画素、１画素、もしくは４画素を打つなど、様々なパターンの中から選択するパターンを決定する構成であっても良い。この構成を用いてより多くのパターンを使うことで、テクスチャの発生を抑制し、濃度が徐々に変化するグラデーションを処理した際に粒状性が周囲と大きく変化することでの違和感を抑制できる。
【００３４】
肝要な点は、ある画素の階調値に対して、当該位置のパターンの階調値が確率的もしくは平均的におおむね一致するということである。
【００３５】
また、本実施例は３００ｄｐｉ４値１ｘ１画素の画像データを６００ｄｐｉ２値２ｘ２画素の画像データに変換する構成であるがこれに限らず、例えば６００ｄｐｉ８値１ｘ１画素の画像データを１２００ｄｐｉ４値２ｘ２画素の画像データに変換する構成であっても良い。また、解像度の比は１：２以外であってもよいし、縦横異なる画素数に変換する構成であってもよい。
【００３６】
実施例２：
図７は、本発明が適用される別の画像処理システムの例を示す。本実施例では、実施例１との違いを中心に説明する。図７は、プリンタドライバ１０２での、１画素あたり２５６値の画像を少値の画像へ変換する擬似中間調処理の例である。
【００３７】
入力手段７０１は、図示しないメモリから３００ｄｐｉ２５６値の階調値を入力し、後述する誤差拡散手段７０４からの出力値を加算した修正階調値を、比較手段７０２へ送る。階調値決定手段７０６は、図示しないオブジェクト情報を入力して、描画するオブジェクトの属性に応じて図８に示すように、各量子化値に対応する階調値、およびしきい値を決定する。オブジェクトの属性が文字である場合は８０１を、図形である場合は８０２を、それ以外である場合は８０３を利用する。
【００３８】
また、階調値決定手段７０６は、各量子化値に対応する出力階調値を示す情報を出力手段７０５へ送る。比較手段７０２は、修正階調値としきい値を比較して、出力量子化値を出力手段２０５へ送る。
【００３９】
出力手段２０５は、プリンタコントローラ１０３へ出力量子化値と、各量子化値に対応する出力階調値を示す情報を送る。ここで、後者は画素毎に送る必要はなく、少なくとも量子化値と出力階調値との関係が変化した際に送ればよい。
【００４０】
また、比較手段７０２は、出力階調値と修正階調値との差分を誤差として誤差バッファ７０３へ送る。例えば、修正階調値が６０、出力階調値が８５の場合は、＋２５を誤差バッファ７０３へ送る。誤差バッファ７０３は、誤差をメモリに格納する。
【００４１】
誤差拡散手段７０４は、注目画素の修正階調値を算出する際に、注目画素周辺の誤差を誤差バッファから入力し、図示しない誤差拡散マトリクスとの積和演算により得た値を出力する。
【００４２】
図９は、プリンタコントローラ１０３が、プリンタドライバ１０２から受け取った画像データを元に、出力する画像を作成する方法の例を示し、前述した実施例１（図５）の構成と同様である。
【００４３】
量子化値入力手段９０１は、図示しないメモリから、３００ｄｐｉの画像データである量子化値と、量子化値と出力階調値との関係を得る。出現確率決定手段９０２は、量子化値入力手段９０１から入力された量子化値に対応する階調値を元に、いずれのパターンをどの程度の確率で出現させるかを決定して、パターン選択手段９０４にその情報を渡す。
【００４４】
ここで、プリンタコントローラ１０３は、図３に示すいずれかのパターンを出力するとし、実施例１で示した方法で量子化値と出力パターンの出現確率を決定する。疑似乱数発生手段９０３は疑似乱数を発生してその値をパターン選択手段９０４に送る。パターン選択手段９０４は、出現確率決定手段９０２から受けた出現確率と、疑似乱数発生手段９０３から受けた疑似乱数値とから出力するパターンを選択して、図示しないメモリへ書き込む。
【００４５】
なお、本実施例は描画するオブジェクトに応じて各量子化値に対応する階調値を決定する構成であるがこれに限らず、ページ毎、もしくは適当な領域毎にその対応関係を決定する構成であっても良い。
【００４６】
実施例３：
図１０は、本発明の実施例３に係るプリンタコントローラ１０３の構成例を示す。本実施例では、実施例１との違いを中心に説明する。
【００４７】
量子化値入力手段１００１は、図示しないメモリから、３００ｄｐｉ４値の画像データである量子化値を読み込み、パターン決定手段１００２へ送る。パターン決定手段１００２は、量子化値入力手段１００１から受けた量子化値を元に、量子化値０、１、２、３に対してそれぞれ、平均階調値が０、８５、１７０、２５５となるようにした図１１の１１０１、１１０２、１１０３、１１０４に示す順序でパターンを決定する。
【００４８】
すなわち、量子化値０を受けたときはいつも出力パターン００（図３）とし、量子化値１を最初に受けた時はパターン１０（図３）を、次に受けた時はパターン１１（図３）、のように決定する。
【００４９】
なお、本実施例は量子化値を受けた順序で出力パターンを決定する構成であるがこれに限らず、注目画素の位置を元にパターンを決定する構成であっても良い。例えば、図１２は、量子化値０、１、２、３に対してそれぞれ、平均階調値が０、８５、１７０、２５５となるようにしたパターンのマトリクスである。すなわち、注目画素の量子化値に対応するマトリクスでページ全面をタイリングした場合の、注目画素における値をパターンとして決定する構成であっても良い。
【図面の簡単な説明】
【００５０】
【図１】本発明が適用される画像処理システムの構成例を示す。
【図２】誤差拡散処理による擬似中間調処理の構成例を示す。
【図３】倍密度で画像を生成する際に、階調値に応じて割り付けられるパターン例を示す。
【図４】量子化値に対応した出力パターンとその出現確率を示す。
【図５】実施例１に係るプリンタコントローラの構成例を示す。
【図６】図２の誤差拡散処理における出力階調値と出力量子化値との関係を示す。
【図７】誤差拡散処理による擬似中間調処理の他の構成例を示す。
【図８】図７の誤差拡散処理における出力階調値と出力量子化値との関係を示す。
【図９】実施例２に係るプリンタコントローラの構成例を示す。
【図１０】実施例３に係るプリンタコントローラの構成例を示す。
【図１１】パターン決定手段によって決定される出力パターンの第１の例を示す。
【図１２】パターン決定手段によって決定される出力パターンの第２の例を示す。
【符号の説明】
【００５１】
１０１  アプリケーション
１０２  プリンタドライバ
１０３  プリンタコントローラ
１０４  印刷部
１１１  コンピュータ
１１２  プリンタ
【図１】
2006109526.tif 000003
【図２】
2006109526.tif 000004
【図３】
2006109526.tif 000005
【図４】
2006109526.tif 000006
【図５】
2006109526.tif 000007
【図６】
2006109526.tif 000008
【図７】
2006109526.tif 000009
【図８】
2006109526.tif 000010
【図９】
2006109526.tif 000011
【図１０】
2006109526.tif 000012
【図１１】
2006109526.tif 000013
【図１２】
2006109526.tif 000014