(57)【要約】【課題】印字品質に応じて出力階調数が異なる画像処理装置においては、印字品質毎にそれぞれ異なる基本ディザマトリクス、オフセット情報を保持しておく必要があった。【解決手段】第一のディザマトリクスを保持し、出力する階調数に応じて前記第一のディザマトリクスから第二のディザマトリクスと量子化代表点間のオフセット情報を生成し、前記生成されたオフセット情報により多値化結果格納テーブルを生成し、前記生成された多値化結果格納テーブルを記憶し、前記第二のディザマトリクスと、前記記憶された多値化結果格納テーブルを使用して入力画像の多値化を行なう。【選択図】      図３
2005045389.tif 000002
【特許請求の範囲】
【請求項１】
ディザにより多値化処理を行なう画像処理装置において、
第一のディザマトリクスを保持する第一のディザマトリクス記憶手段と、
出力する階調数に応じて前記第一のディザマトリクスから第二のディザマトリクスと量子化代表点間のオフセット情報を生成する生成手段と、
前記生成手段により生成されたオフセット情報により多値化結果格納テーブルを生成する多値化結果格納テーブル生成手段と、
前記多値化結果格納テーブル生成手段により生成された多値化結果格納テーブルを記憶する多値化結果格納テーブル記憶手段と、
前記第二のディザマトリクスと、前記多値化結果格納テーブル記憶手段により記憶された多値化結果格納テーブルを使用して入力画像の多値化を行なう多値化手段とを具備することを特徴とする画像処理装置。
【請求項２】
ディザにより多値化処理を行なう画像処理方法において、
第一のディザマトリクスを保持する第一のディザマトリクス記憶工程と、
出力する階調数に応じて前記第一のディザマトリクスから第二のディザマトリクスと量子化代表点間のオフセット情報を生成する生成工程と、
前記生成工程により生成されたオフセット情報により多値化結果格納テーブルを生成する多値化結果格納テーブル生成工程と、
前記多値化結果格納テーブル生成工程により生成された多値化結果格納テーブルを記憶する多値化結果格納テーブル記憶工程と、
前記第二のディザマトリクスと、前記多値化結果格納テーブル記憶工程により記憶された多値化結果格納テーブルを使用して入力画像の多値化を行なう多値化工程とを具備することを特徴とする画像処理方法。
【請求項３】
コンピュータ上で実行されることによって、請求項２の画像処理方法を実現するプログラム。
【請求項４】
請求項３記載のプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像処理装置及び画像処理方法に関し、特にディザの多値化処理に関する。
【０００２】
【従来の技術】
スキャナ等の画像読み取り手段により読み取った画像データは、各画素毎に多くの階調数を有している。プリンタ等の表現可能な階調数が低い画像出力装置に当該画像データを出力する場合、プリンタに出力するデータを生成する画像処理装置内で、入力画像データに対して、ディザ法や誤差拡散法等の２値化処理を行なうのが一般的であった。
【０００３】
近年、プリンタ等の画像出力装置の高解像度化に伴い、表示可能な階調数が向上している。そのため、画像処理装置内では、２値化処理ではなく多値化処理が行なわれるようになってきている。
【０００４】
ディザ法は、誤差拡散法に比べ処理内容が簡素であり高速に動作する。しかし、多値のディザ法においては、出力する階調数が増加するにつれて、使用するメモリ量、および比較演算が膨大に増えてしまう問題があった。特開２０００−２４４７３４においては、こられらの問題を解決すべく、出力値をテーブル化しておき、処理時には比較演算を行なうのではなく、テーブル引きを行なうことにより処理時間の削減を図っている。また、各ディザマトリクスのプレーン（以降プレーンとする）を基本ディザマトリクスとオフセットで構成することにより、使用メモリ量を低減している。以下に一般的な多値ディザの処理、および特開２０００−２４４７３４に記述される従来の多値ディザ処理を簡単に説明する。
【０００５】
はじめに一般的な多値ディザ処理について説明する。例えば、４値化を行なう多値ディザの場合は、入力値Ｉｎに対して出力値Ｏｕｔを決定するために、３つのプレーンＰ０、Ｐ１、Ｐ２が与えられる。図１に示した例を説明する。この例では入力Ｉｎの範囲は、０≦Ｉｎ≦２５５とする。プレーンＰ０とＰ１のオフセット値は１５であり、Ｐ１とＰ２のオフセット値は２０である。ある入力画像データＩｎに対して、Ｐ０、Ｐ１、Ｐ２の対応する位置の閾値とがそれぞれ比較され、Ｉｎ＜Ｐ０の場合は、Ｏｕｔ＝０が出力され、Ｐ０≦Ｉｎ＜Ｐ１の場合は、Ｏｕｔ＝１が出力され、Ｐ１≦Ｉｎ＜Ｐ２の場合は、Ｏｕｔ＝２が出力され、Ｐ２≦Ｉｎの場合はＯｕｔ＝３が出力される。このように一般的な多値ディザでは、Ｐ０、Ｐ１、Ｐ２の順に比較した場合、最大３回の比較計算をする必要がある。また、メモリ内に３つのプレーンのディザマトリクスを保持する必要があり、出力する階調数が増えるに従い、ディザマトリクスを保持しておくメモリ量が増加する。
【０００６】
次に、特開２０００−２４４７３４の多値ディザ処理について説明する。当該多値ディザ処理では、まず図２に示すような多値化テーブルを作成する。多値化テーブルは、入力画素値が８ｂｉｔである場合は、５１２個の要素から構成され、各々の要素には出力値（例では、０〜３）が格納される。例えば４値化の場合は、３つのディザマトリクスのディザ閾値を使用するが、各プレーン間のディザ閾値の差分値が一定となっており、このときのプレーンｋとプレーンｋ＋１の差分値をＤ（ｋ）とする。テーブルの要素０から２５４までは、０で埋められる。
【０００７】
次に２５５から２５４＋Ｄ（０）までは、１で埋められる。以下、インデックス値が５１１まで、同様に、Ｄ（ｋ）の幅で値を１づつ増加させて多値化テーブルを埋めていく。
【０００８】
当該多値ディザ部の理論を説明する。例えば入力画像データを４値化する場合、３つのディザマトリクスのディザ閾値を用いる必要がある。各ディザマトリクスの閾値をＰ０、Ｐ１、Ｐ２とし、各プレーン間のオフセット値をｄ１、ｄ２とし、基本ディザマトリクスの閾値をｄ０とした場合、
（数１）
Ｐ０＝ｄ０、
Ｐ１＝ｄ０＋ｄ１、
Ｐ２＝ｄ０＋ｄ１＋ｄ２
となり、この場合、入力値Ｉｎと出力値Ｏｕｔの関係は次のようになる。
（数２）
Ｉｎ＜Ｐ０の場合、Ｏｕｔ＝０
Ｐ０≦Ｉｎ＜Ｐ１の場合、Ｏｕｔ＝１
Ｐ１≦Ｉｎ＜Ｐ２の場合、Ｏｕｔ＝２
Ｐ２≦Ｉｎの場合、Ｏｕｔ＝３
である。
【０００９】
そして、数２を数１を使用して書き換えると、
（数３）
Ｉｎ＜ｄ０の場合、Ｏｕｔ＝０
ｄ０≦Ｉｎ＜（ｄ０＋ｄ１）の場合、Ｏｕｔ＝１
ｄ０＋ｄ１≦Ｉｎ＜（ｄ０＋ｄ１＋ｄ２）の場合、Ｏｕｔ＝２
ｄ０＋ｄ１＋ｄ２≦Ｉｎの場合、Ｏｕｔ＝３
となる。そして、数３の両辺からｄ０を引くと、
（数４）
Ｉｎ−ｄ０＜０の場合、Ｏｕｔ＝０
０≦Ｉｎ−ｄ０＜ｄ１の場合、Ｏｕｔ＝１
ｄ１≦Ｉｎ−ｄ０＜ｄ１＋ｄ２の場合、Ｏｕｔ＝２
ｄ１＋ｄ２≦Ｉｎ−ｄ０の場合、Ｏｕｔ＝３
となる。入力画像データの画素値が８Ｂｉｔの場合に、Ｖａｌｕｅ＝Ｉｎ−ｄ０とすると、Ｉｎ，ｄ０ともに０から２５５の任意の値を独立して取ることができるので、Ｖａｌｕｅの取りうる値の範囲はー２５５以上２５５以下となる。
【００１０】
正の数で計算を行なうため、
2005045389.tif 000003
とする。したがって、０≦Ｖａｌｕｅ≦５１０である。
（数６）
Ｖａｌｕｅ＜２５５の場合、Ｏｕｔ＝０
２５５≦Ｖａｌｕｅ＜２５５＋ｄ１の場合、Ｏｕｔ＝１
２５５＋ｄ１≦Ｖａｌｕｅ＜２５５＋ｄ１＋ｄ２の場合、Ｏｕｔ＝２
２５５＋ｄ１＋ｄ２≦Ｖａｌｕｅの場合、Ｏｕｔ＝３
のようになる。Ｖａｌｕｅ以外の値は固定値なので数６を用いてテーブルを作成する。この場合の多値化テーブルが図２である。入力画像Ｉｎに対して基本ディザマトリクスから閾値ｄ０を得て、Ｉｎ＋２５５−ｄ０を計算して得られたＶａｌｕｅで、この多値化テーブルを引くことにより多値ディザ処理を行なう。
【００１１】
このように従来の方法では、基本ディザマトリクスとプレーン間のオフセット情報から、多値化テーブルを作成し、テーブルを引くことにより高速な多値ディザ処理を実現している。また、メモリに保持する情報は基本ディザマトリクスとオフセット情報のみで、出力する階調数が増加しても保持する情報量に変化はない。
【００１２】
これらの多値ディザ処理は、スキャナ等の画像読み取り手段により読み取った画像データを受けとりプリンタに送信するためのデータを生成する画像処理装置内に実装される。一般的に、インクジェットプリンタに送信するためのデータを生成する画像処理装置においては、インクジェットプリンタの印字品質に応じて出力する階調数が異なるのが一般的である。
【００１３】
特開２０００−２４４７３４においては、基本ディザマトリクスおよびオフセット情報を出力する階調数毎に用意することが前提とされている。よって、インクジェットプリンタのように印字品質に応じて出力階調数が異なる画像処理装置においては、印字品質毎にそれぞれ異なる基本ディザマトリクス、オフセット情報を保持しておく必要があった。
【００１４】
【特許文献１】
特開２０００−２４４７３４
【００１５】
【発明が解決しようとする課題】
従来の多値ディザ法では、必要となる基本ディザマトリクス、オフセット情報をあらかじめ記憶領域に保持しておき、出力階調数に応じて対象となる基本ディザマトリクス、オフセット情報を読み込む必要があった。そのため、画像処理装置作成者は、設計時に出力する階調数に応じた基本ディザマトリクス、オフセット情報を用意しておく必要があった。
【００１６】
そこで、本発明では、２値化用の基本ディザマトリクスのみを記憶領域に保持し、処理時に出力階調値に応じた基本ディザマトリクス、オフセット情報を動的に生成する。これにより、設計にかかる手間を削減することが可能で、かつ、基本ディザマトリクス、オフセット情報を保持しておく記憶領域も減らすことが可能な画像処理装置及び画像処理方法を提供することを目的とする。
【００１７】
【課題を解決するため手段】
上記目的を達成するために、本半発明は、
ディザにより多値化処理を行なう画像処理装置において、
第一のディザマトリクスを保持する第一のディザマトリクス記憶手段と、
出力する階調数に応じて前記第一のディザマトリクスから第二のディザマトリクスと量子化代表点間のオフセット情報を生成する生成手段と、
前記生成手段により生成されたオフセット情報により多値化結果格納テーブルを生成する多値化結果格納テーブル生成手段と、
前記多値化結果格納テーブル生成手段により生成された多値化結果格納テーブルを記憶する多値化結果格納テーブル記憶手段と、
前記第二のディザマトリクスと、前記多値化結果格納テーブル記憶手段により記憶された多値化結果格納テーブルを使用して入力画像の多値化を行なう多値化手段とを具備することを特徴とする。
【００１８】
【発明の実施の形態】
以下、添付図面に従って本発明に係る実施形態を説明する。
【００１９】
図３は、本発明の実施形態を表すブロック図である。これは、画像処理装置の例であって、この画像処理装置はイメージスキャナ等の画像読取装置により読み取り後、入力された画像情報を例えば１画素あたり８ビットのディジタルデータとして入力し、入力された画素値を出力するプリンタの印字品質における階調数に多値化するものである。この画像処理装置は、多値化部１と、基本ディザマトリクス記憶メモリ２、基本ディザマトリクス生成部３、２値化用ディザマトリクス記憶メモリ４、多値化テーブル記憶メモリ５、多値化テーブル生成部６、オフセット情報生成部７、出力階調数取得部８、情報設定部９、プリンタ印字品質情報メモリ１０を有している。
【００２０】
情報設定部９は、印刷を行なうユーザーが出力する画像の印字品質を設定するもので、ユーザーによって設定された印字品質情報を出力階調数取得部８に送る。出力階調数取得部８は、プリンタ印字印字品質情報記憶メモリ１０から現在の印字品質における出力階調数を取得し、出力階調数情報をとオフセット情報生成部７に渡す。
【００２１】
図４は、印字品質と出力階調数の関係を表す図である。インクジェットプリンタの印字品質は、印刷速度を重視する『はやい』、印刷画質を重視する『きれい』、その中間の特徴を有する『標準』等がある。『はやい』の階調数は２であり、『きれい』の階調数は９であり、『標準』の階調数は３である。一般的に印刷画質を重視するにつれて出力階調数は多くなる。
【００２２】
オフセット情報生成部７では、出力階調数設定部８により設定された出力階調数に応じてオフセット情報を生成する。オフセット情報は以下の手順で生成される。
【００２３】
はじめに、入力のレンジを出力階調数に応じて均等に割り量子化代表値Ｑ（ｋ）（ｋ＝０〜出力階調数―１）を求める。図５に出力階調数が２、３、９の場合の量子化代表値を示す。
【００２４】
次に各プレーン間のオフセットを求める。各プレーン間のオフセットはｄ（ｎ）＝Ｑ（ｎ＋１）−Ｑ（ｎ）（ｎ＝１〜出力階調数−２）により求めることができる。図６に出力階調数が２、３、９の場合の各プレーン間のオフセットを示す。階調数が２の場合は、通常の２値化処理となるためオフセットがない。
【００２５】
オフセット情報生成部７により生成されたオフセット情報は多値化テーブル生成部６に渡され、多値化テーブル生成部６は受け取った情報を基に、多値化テーブルを生成し、作成した多値化テーブルを多値化テーブル記憶メモリ５に出力する。図３に階調数が３の場合の多値化テーブルを示す。
【００２６】
多値化テーブル記憶メモリ５は、多値化テーブル生成部６から供給された多値化テーブルを記憶し、多値化部１に出力する。
【００２７】
オフセット情報生成部７は、生成したオフセット情報を多値化テーブル生成部６に渡すと伴に、基本ディザマトリクス生成部３にも渡す。オフセット情報を受け取った基本ディザマトリクス生成部３は、２値化ディザマトリクス記憶メモリより２値化用のディザマトリクスを取得し、受け取ったオフセット情報に基づいて２値化用のディザマトリクスの閾値を圧縮し、出力階調数に応じた基本ディザマトリクスを生成し、基本ディザマトリクス記憶メモリ２に出力する。
【００２８】
２値化用のディザマトリクスの閾値圧縮は以下の手順で行なわれる。２値化用のディザマトリクスの閾値を２ＴｈＶａｌとし、出力階調値に応じた基本ディザマトリクスの閾値ｂａｓｅＴｈＶａｌ、０番目のディザマトリクス（基本ディザマトリクス）から１番目のディザマトリクスのオフセットをｄ（１）とすると
ｂａｓｅＴｈＶａｌ＝２ＴｈＶａｌ×ｄ（１）／２５５
となる。
【００２９】
例として、４×４の２値化用ディザマトリクスを図８、出力階調数２、３、９値応じた基本ディザマトリクスを図９に示す。
【００３０】
基本ディザマトリクス記憶メモリ２は、基本ディザマトリクス生成部３から供給された出力階調数に応じた基本ディザマトリクスを多値化部１に出力する。
【００３１】
多値化部１は、入力として受け取った基本ディザマトリクスと多値化テーブルを用いて多値化処理を行なう。
【００３２】
＜その他の実施形態＞
尚、本発明は、複数の機器（例えば、ホストコンピュータ、インタフェース機器、リーダ、プリンタ等）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置等）に適用してもよい。
【００３３】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（又は記憶媒体）を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００３４】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００３５】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【００３６】
【発明の効果】
以上説明したように、本発明によれば、２値化用の基本ディザマトリクスのみを記憶領域に保持し、処理時に出力階調値に応じた基本ディザマトリクス、オフセット情報を動的に生成する。これにより、設計にかかる手間を削減することが可能で、かつ、基本ディザマトリクス、オフセット情報を保持しておく記憶領域も減らすことが可能となる。
【図面の簡単な説明】
【図１】一般的な多値ディザパターンを説明するための説明図である。
【図２】従来の多値ディザ処理の多値化テーブルを示す図である。
【図３】本発明の実施の形態を表すブロック図である。
【図４】インクジェットプリンタの印字品質における出力階調数を表す図である。
【図５】階調数２、３、９における量子化代表値を表す図である。
【図６】階調数２、３、９におけるオフセット値を表す図である。
【図７】階調数３における多値化テーブルを示す図である。
【図８】２値化用のディザマトリクスを表す図である。
【図９】階調数２、３、９における基本ディザマトリクスを示す図である。
【符号の説明】
１  多値化部
２  基本ディザマトリクス記憶メモリ
３  基本ディザマトリクス生成部
４  ２値化用ディザマトリクス記憶メモリ
５  多値化テーブル記憶メモリ
６  多値化テーブル生成部
７  オフセット情報生成部
８  出力階調数取得部
９  情報設定部
１０  プリンタ印字品質情報記憶メモリ
【図１】
2005045389.tif 000004
【図２】
2005045389.tif 000005
【図３】
2005045389.tif 000006
【図４】
2005045389.tif 000007
【図５】
2005045389.tif 000008
【図６】
2005045389.tif 000009
【図７】
2005045389.tif 000010
【図８】
2005045389.tif 000011
【図９】
2005045389.tif 000012