(57)【特許請求の範囲】
【請求項１】
入力２値画像データを主走査方向Ｎ画素（Ｎ≧２）、副走査方向Ｌ（Ｌ≧２）画素からなる入力ブロックにブロック化するブロック化手段と、
変倍率に応じて、前記ブロック化手段によりブロック化された各々の入力ブロックを、予め定められた複数パターンの出力ブロックのいずれかに変換するブロック変換手段と、
入力２値画像データの白黒比率が変倍後も保存されるように、前記ブロック変換手段で変換された前記出力ブロックの画素の出力パターンを決定する出力パターン決定手段とを有し、
前記出力パターン決定手段は、出力パターンを決定する処理ブロックに対応する入力ブロックの白黒の画素の配置箇所、並びに出力パターン決定済みブロックにおける白黒の面積比と当該決定済みブロックに対応する入力ブロックにおける白黒の面積比との差に応じて、前記処理ブロックの画素の出力パターンを決定することを特徴とする画像処理装置。
【請求項２】
前記出力パターン決定手段は、前記面積比の差を面積比補正パラメータとして、順次次の処理ブロックに伝播することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記出力パターン決定手段は、前記複数パターンの出力ブロックのうち、特定のパターンの出力ブロックに対しては、出力ブロックを構成する各画素が参照する入力画素値を切り替える処理を行うことを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
入力２値画像データを主走査方向Ｎ画素（Ｎ≧２）、副走査方向Ｌ（Ｌ≧２）画素からなる入力ブロックにブロック化するブロック化工程と、
変倍率に応じて、前記ブロック化工程でブロック化された各々の入力ブロックを、予め定められた複数パターンの出力ブロックのいずれかに変換するブロック変換工程と、
入力２値画像データの白黒比率が変倍後も保存されるように、前記ブロック変換工程で変換された前記出力ブロックの画素の出力パターンを決定する出力パターン決定工程とを有し、
前記出力パターン決定工程では、出力パターンを決定する処理ブロックに対応する入力ブロックの白黒の画素の配置箇所、並びに出力パターン決定済みブロックにおける白黒の面積比と当該決定済みブロックに対応する入力ブロックにおける白黒の面積比との差に応じて、前記処理ブロックの画素の出力パターンを決定することを特徴とする画像処理方法。
【請求項５】
前記出力パターン決定工程では、前記面積比の差を面積比補正パラメータとして、順次次の処理ブロックに伝播することを特徴とする請求項４に記載の画像処理方法。
【請求項６】
前記出力パターン決定工程では、前記複数パターンの出力ブロックのうち、特定のパターンの出力ブロックに対しては、出力ブロックを構成する各画素が参照する入力画素値を切り替える処理を行うことを特徴とする請求項４または５に記載の画像処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は画像処理方法及び装置に関し、記録装置の画素密度が高い記録装置に２値の画像データを変倍して出力する際に用いられる変倍処理手法に関するものであり、特にファクシミリや電子ファイル等で用いられる擬似中間調画像を含む２値の画像データを解像度変換して記録装置に出力する際に用いられる変倍手法に関するものである。
【０００２】
【従来の技術】
２値画像の変倍手法として、これまでＳＰＣ法、９分割法、投影法など多くの手法が研究され発表されている。まずＳＰＣ法は、単純に画素若しくはラインの重複又は間引き処理により変倍を行うもので、ハード構成が容易なために比較的低価格なファクシミリ装置に採用されている。また投影法は、ＳＰＣ法と異なり演算処理を伴うもので、原画像に変倍後の画像を投影し、変倍後の画像データの濃度値を変倍後の画素区画内に占める原画像の占有面積の割合と原画像の濃度から算出するものであり、比較的文字線画等の２値画像に対し良好な結果が得られている。
【０００３】
【発明が解決しようとする課題】
しかしながら、これらの手法では、誤差拡散等により得られる擬似中間調画像に対してはモアレ縞等が発生し画品質の劣化が顕著である。
【０００４】
図１２は、主走査方向の８画素、副走査方向の８列の画像データをＳＰＣ法で５／４倍に拡大したものである。図示するように、副走査方向の４行目、８行目と主走査方向の４列目、８列目がそれぞれ重複処理されている。このＳＰＣ法では、元の画像の黒画素と白画素の比率が１対１にもかかわらず、生成された画像データの黒画素と白画素の比率が４６対５４となり、濃度保存がされていない。このため、中間調表現はよくないことがわかる。
【０００５】
また、これとは別に擬似中間調画像に対し比較的良好な結果を得る方法として、投影法と誤差拡散を組み合わせたものや、フィルタリングによる２値多値変換と誤差拡散を組み合わせたものが提案されているが、これらの手法では乗算器や誤差拡散のためのラインバッファ等の多くのハードウェア資源を必要とし、装置の価格を引き上げる要因となっている。
【０００６】
本発明の目的は、誤差拡散等により２値化された擬似中間調画像を含む２値画像の変倍を従来に比べ論理演算等の簡単なハード構成で実現し、かつ、ＳＰＣ法や９分割法に見られるように擬似中間調画像に対してもモアレ縞のない濃度保存の良好な変倍画像が得られる画像処理方法及び装置を提供することにある。
【０００７】
【課題を解決するための手段】
上記目的を達成するために、本発明の画像処理装置は、入力２値画像データを主走査方向Ｎ画素（Ｎ≧２）、副走査方向Ｌ（Ｌ≧２）画素からなる入力ブロックにブロック化するブロック化手段と、変倍率に応じて、前記ブロック化手段によりブロック化された各々の入力ブロックを、予め定められた複数パターンの出力ブロックのいずれかに変換するブロック変換手段と、入力２値画像データの白黒比率が変倍後も保存されるように、前記ブロック変換手段で変換された前記出力ブロックの画素の出力パターンを決定する出力パターン決定手段とを有し、前記出力パターン決定手段は、出力パターンを決定する処理ブロックに対応する入力ブロックの白黒の画素の配置箇所、並びに出力パターン決定済みブロックにおける白黒の面積比と当該決定済みブロックに対応する入力ブロックにおける白黒の面積比との差に応じて、前記処理ブロックの画素の出力パターンを決定することを特徴とする。
【０００８】
また、上記目的を達成するために、本発明の画像処理方法は、入力２値画像データを主走査方向Ｎ画素（Ｎ≧２）、副走査方向Ｌ（Ｌ≧２）画素からなる入力ブロックにブロック化するブロック化工程と、変倍率に応じて、前記ブロック化工程でブロック化された各々の入力ブロックを、予め定められた複数パターンの出力ブロックのいずれかに変換するブロック変換工程と、入力２値画像データの白黒比率が変倍後も保存されるように、前記ブロック変換工程で変換された前記出力ブロックの画素の出力パターンを決定する出力パターン決定工程とを有し、前記出力パターン決定工程では、出力パターンを決定する処理ブロックに対応する入力ブロックの白黒の画素の配置箇所、並びに出力パターン決定済みブロックにおける白黒の面積比と当該決定済みブロックに対応する入力ブロックにおける白黒の面積比との差に応じて、前記処理ブロックの画素の出力パターンを決定することを特徴とする。
【０００９】
【発明の実施の形態】
以下、図面を参照しながら本発明に係る実施の形態を詳細に説明する。
【００１０】
まず初めに、画素密度変換及び解像度変換を以下のように規定する。
【００１１】
画素密度変換又は解像度変換は、入力される画像データの画素数を出力装置の解像度に応じて増加又は減少させることであり、基本操作は拡大・縮小と等価である。例えば、Ａ４サイズで画素数が１７２８×２２８７画素で解像度が主走査２０３．２ｄｐｉ、副走査１９５．５８ｄｐｉの画像データを主走査４０６．４ｄｐｉ、副走査３９１．１６ｄｐｉの解像度の画像データに画素密度変換することは１画素を４画素に変換し、総画素数を３４５６×４５７４画素にすることである。この処理は、まさに主走査及び副走査方向へ２倍の拡大処理をすることと等価である。
【００１２】
従って、以降の説明においては解像度変換処理、拡大縮小処理、画素密度変換処理は全てデジタル的な拡大縮小処理を指すものとし、かつ解像度変換又は画素密度変換と拡大縮小処理が組み合わされた場合に対しても両方の変倍率を乗算した結果得られる変倍率を基準にデジタル的な拡大縮小処理を行うものとして取り扱う。
【００１３】
まず、本実施形態における拡大処理を図面を参照しながら詳細に述べる。尚、簡単のため、１００％〜２００％まで任意倍率の拡大処理を例に述べる。
【００１４】
本実施形態においては、先ず原画像を２×２の小区画に分割する。次に、設定される倍率により、後述するブロック毎の逐次演算により決定される主走査方向の画素数ＨＣと副走査方向のライン数ＶＣとの値により図１に示すように、各々の小区画の画素数を２×２、２×３、２×４、３×２、３×３、３×４、４×２、４×３、４×４の画素数をもつ小区画の何れかに変換する。このブロック毎の変換の組み合わせにより１００％〜２００％の任意倍率の拡大処理が行われる。例えば、説明を簡略化するために主走査及び副走査方向共に５／４倍にする場合を例に考える。図２に示すように、先ず８×８の画像データを２×２の１６個の小区画に区切り、主走査方向の左上から順番にブロック番号を１〜１６とする。そして、ブロック番号１はそのまま２×２画素に、ブロック番号２は２×３画素に、ブロック番号３は２×２画素に、ブロック番号４は２×３画素に、ブロック番号５は３×２画素に、ブロック番号６は３×３画素に、…と順次個々の小区画を変倍率によって決定されるＨＣ、ＶＣにより対応する画素数のブロックに変換することで、全体として５／４倍の画像データが作成されることになる。
【００１５】
次に、ブロック毎の変換画素数を決定するＨＣ、ＶＣについて説明する。図３は、任意の倍率が決定された場合の個々の画素ブロックの主走査方向の変換画素数（ＨＣ）及び副走査方向の変換ライン数（ＶＣ）を決定するための演算回路の例を示す図である。この回路は主走査用、副走査用それぞれ独立に２組用いる。主走査用は、１ブロック処理毎に出力されるＨＣの値が更新され、副走査用は、１ブロック行処理する毎にＶＣの値が更新されることになる。
【００１６】
図３に示す例では、倍率の設定は２００／（１００＋ｎ）で与えられ、主走査、副走査それぞれの設定値ｎによりＨＣ、ＶＣの値がブロック処理毎に逐次更新されながら出力される。３０１は比較器で、後述する３０５のラッチからの出力が１００以上ならＨを出力する。３０２は加算器で、３０５のラッチ出力と倍率の設定値ｎを加算する。３０３は減算器で、３０５のラッチの出力から１００を減算する。３０４はセレクタで、比較器３０１の出力がＨのときは減算器３０３の出力を選択し、Ｌのときは加算器３０２の出力を選択する。３０５はラッチで、ＥＮＢ信号がＨでクロックＣＬＫの立ち上がりが入力されるとセレクタ３０４の出力が新たにラッチされる。３０６は２ｂｉｔのカウンタで、比較器３０１のＣＹ出力がＬであり、かつＥＮＢ信号がＨでクロックの立ち上がりが入力されるとカウントアップを行い、またＬＯＡＤ信号がＨで、かつクロックの立ち上がりでカウンタ値として０がロードされる。尚、このカウンタの出力値はカウンタ内のラッチにロードされる前の値が出力される。３０７はラッチで、ＬＯＡＤ信号がＨで、かつクロックの立ち上がりでカウンタ値がラッチされ、ＨＣ又はＶＣの値として後述する論理演算ブロックに供給される。
【００１７】
図４は、ＨＣの場合の演算回路の動作を示すタイミングチャートである。ここでは、倍率設定値ｎ＝６０の場合、つまり、５／４を設定している場合を示している。まずラッチ３０５の値が８０のときは、比較器３０１の出力がＬであるのでクロックの立ち上がりでカウンタ３０６がカウントアップし、同時にセレクタ３０４の出力は加算側３０２が選択され、ラッチ３０５に８０＋６０＝１４０がラッチされる。次のクロックでは、ラッチ３０５の値が１４０であるため、比較器３０１の出力がＨとなり、カウンタ３０６はインクリメントされず、セレクタ３０４は減算側３０３を選択し、１４０−１００＝４０がクロックの立ち上がりでラッチされる。
【００１８】
次のクロックでは、ラッチ３０５の値が４０であるため、比較器３０１の出力はＬでカウンタ３０６がインクリメントされ、セレクタ３０４は加算側３０２を選択し、４０＋６０＝１００がラッチされる。次のクロックでは、比較器３０１の出力はＨでカウンタ３０６はインクリメントされず、セレクタ３０４は減算側３０３を選択し、１００−１００＝０がラッチ３０５に出力される。更に、このクロックのタイミングは、演算が４回目の処理のため、ＬＯＡＤ信号がＨとなりカウンタ３０６の値がクロックの立ち上がりでラッチ３０７にロードされ、かつカウンタ３０６がクロックの立ち上がりでクリア（０）される。
【００１９】
このように、順次加算又は減算を繰り返し、比較器３０１からのフラグのＬのカウント値を４クロック毎に取り出しながら主走査方向の変換画素数ＨＣが更新されていく。この例では、８クロックでラッチ３０７の値が８０に戻り、この間にカウント値として２或いは３が出力され、倍率として５／４倍が実行される。また、副走査方向のライン数ＶＣの場合もＨＣと同様に、上述のクロック処理が１ブロック行処理される毎に行われ、ＶＣの値が順次更新されていく。
【００２０】
次に、出力画素値の決定方法について説明する。図５乃至図７は、本実施形態における変換論理をＣ言語で表現したものである。図示するように、論理演算は、パターン２２，パターン２３，パターン２４，パターン３２，パターン３３，パターン３４，パターン４２，パターン４３，パターン４４の９パターンにより構成され、それぞれ出力ブロックの画素数が図１に示した２×２、２×３、２×４、３×２、３×３、３×４、４×２、４×３、４×４の場合に対応している。ここで用いられている変数Ａ１，Ａ２，Ｂ１，Ｂ２は、入力画素ブロックの各々の画素位置の白黒の値を示し、白ならば０、黒ならば１とする。また、ＯＡ１〜ＯＡ４、ＯＢ１〜ＯＢ４、ＯＣ１〜ＯＣ４、ＯＤ１〜ＯＤ４は、変換により出力される画素位置の白黒の値を示し、同様に白ならば０、黒ならば１とする。図８は、各々の変数と画素位置の対応を示した図である。
【００２１】
尚、４×４以外の場合は、図８に示すＯＡ１〜ＯＤ４の全てを用いないため、右上を基準に変換画素数に応じて必要な画素が取り出されるものとする。例えば、出力が主走査方向２画素で副走査方向３列の場合にはＯＡ１、ＯＢ１、ＯＡ２、ＯＢ２、ＯＡ３、ＯＢ３の６個が用いられることになる。
【００２２】
また、論理演算に用いられているモード（mode）は、図９に示すように、入力画像の画素の配置状況を示すパラメータであり、入力画素の値に応じて０〜６の７種類に分類される。エラー（error ）は、本実施形態の特徴となるパラメータであり、前ブロックまでの処理で発生した入力と出力の白黒比率の差を示すものである。また、ｊは主走査方向に１ブロック処理する毎に１ずつインクリメントされるカウント値であり、ｉは副走査方向に１ブロック行を処理する毎に１ずつインクリメントされるカウント値である。尚、ｊ，ｉはパターン３４，パターン４３の例外処理用であり、変換によるテクスチャ抑制のために用いられる。
【００２３】
まず、簡単なパターン２２，パターン２４，パターン４２，パターン４４から説明する。この場合の出力画素は、主走査及び副走査方向を各々１若しくは２倍したものである。このブロック変換では、各々の画素を単純重複処理することで入力画素の白黒比率と出力画素の白黒比率を同一にすることができる。従って、パターン２２では、入力がそのまま出力され、パターン２４では、主走査方向に各々の画素を重複処理したものが、パターン４２では、副走査方向に各々の画素を重複処理したものが、パターン４４では、主走査及び副走査方向に各々の画素を重複処理したものが出力されることになる。
【００２４】
次に、パターン２３について説明する。本論理では、まず出力画素のＯＡ１、ＯＡ２、ＯＣ１、ＯＣ２は、入力画素値がそのまま出力される。パターン２３で問題となるのは、入出力でブロック内の白黒の比率を同じにできない場合があることである。本実施形態では、ＯＢ１、ＯＢ２の濃度の決定方法によりこの問題を解決する。
【００２５】
まず、入力パターンが図９に示すモード０、６の場合には、全白、全黒なので出力画素も全て全白若しくは全黒となれば良い。従って、ＯＢ１、ＯＢ２は共に白若しくは共に黒となる。またモード２，３，４の場合には、入力の白黒の比が１：１なので白３画素、黒３画素になるように出力画素を決定すればブロック内に濃度割合が保存されることになる。
【００２６】
以上のことから、モード１若しくはモード５以外の条件文の論理式では、ＯＢ１、ＯＢ２の値は入力画素の何れか２画素が共に黒の場合に黒を出力するようになっており、ＯＢ１とＯＢ２の論理演算で入力画素２個の組み合わせが重ならないように構成されている。
【００２７】
次に、入力画素がモード１の場合、入力の白黒の比が１：３となる。しかし、これと同一の比率の画素パターンはないため、これに最も近い出力の白黒比率を考慮すると、黒１白５の１：５若しくは黒２白４の１：２となる。従って、入力の白黒比率と出力の白黒比率が異なり、これを補正するパラメータとしてエラー変数を用いている。本論理は、前ブロックまでの処理で発生したエラー値に応じて黒１白５を出力するか、黒２白４を出力するか切り替えることになる。ここで出力を黒２白４とした場合には、発生する白黒比率の変換誤差は、２／６−１／４＝１／１２で黒を余分に打つことになる。また、出力を黒２白４にした場合の変換誤差は、１／６−１／４＝−１／１２で白を余分に打つことになる。ここで規格化するため出力画素を更に４分割したものを基準とし、出力画素数６×４＝２４を上記値に乗算する。
【００２８】
よって、黒２白４の場合は黒を余分に出力したためエラー変数から２を減算し、黒１白５の場合には白を余分に出力したためエラー変数に２を加算し濃度補正のパラメータであるエラーを更新する。尚、黒１白５にするか黒２白４にするかの判定は、前ブロックまでで発生したエラーが２以上であるかどうかで切り替え、２以上であれば黒２白４を出力し、それ以外では、黒１白４を出力する。またモード５の場合は、モード１の白黒を反転したものであるため、同様に黒４白２か黒５白１をエラー変数を用いながら切り替えることになる。論理式では、ＯＢ１の値をＡ１とＢ１のオアにするかアンドにするか、同様にＯＢ２の値をＡ２とＢ２のオアにするかアンドにするかをエラー値で切り替えることで実現する。
【００２９】
次に、パターン３２の場合であるが、これはパターン２３の主走査及び副走査方向を入れ替えたもので、パターン２３と同一論理構造でＯＡ２、ＯＢ２の値がエラー変数により動的に切り替わるように論理式が構成されている。
【００３０】
更に、パターン３３について説明する。この場合も、パターン２３，パターン３２と同様に入力画素と出力画素の白黒比率の差であるエラーを用い前ブロックまでの処理から伝搬されたエラー値により出力画素を制御し、かつ出力画素値に応じてエラーを更新していく。まず出力の各端であるＯＡ１、ＯＡ３、ＯＣ１、ＯＣ３の画素値はパターン２３，パターン３２と同様に、対応する入力画素値がそのまま出力される。パターン３３では、残りのＯＢ１、ＯＡ２、ＯＢ２、ＯＣ２、ＯＢ３の画素値をエラー変数により切り替えることになる。まずモード０の場合は、全白のためＯＢ１、ＯＡ２、ＯＢ２、ＯＣ２、ＯＢ３の各画素は全て０が出力され、モード６は全黒のためＯＢ１、ＯＡ２、ＯＢ２、ＯＣ２、ＯＢ３の各画素が全て１が出力される。
【００３１】
次に、モード１の場合は、入力画素の黒白の比が１：３であるから比率が最も近い出力値としては、黒２白７の２：７若しくは黒３白５の３：５となる。従って、ここで発生する白黒比率の変換誤差として黒２白７の場合は、２／９−１／４＝−１／３６となり、黒３白５の場合は、３／９−１／４＝３／３６となる。上述のパターン２３，パターン３２の場合と同様に、出力画素を４分割した値で規格化すると、黒２白７の場合に発生する誤差は−１となり、黒３白６の場合に発生する誤差は３となる。従って、黒２白７の場合は、エラーを１加算し、黒３白６の場合は、エラーを３減算することになる。また、黒２白７から黒３白６の切り替えは、前ブロックまでの誤差のエラー値により切り替え、エラー値が３以上の場合には、黒３白６を選択し、エラー値がそれ以外の場合には、黒２白７を選択する。
【００３２】
図５乃至図７のＯＢ１、ＯＡ２、ＯＢ２、ＯＣ２、ＯＢ３の各論理演算式は、上述の項目を満たしながら、かつ入力画素位置に近いものが黒となるように構成されている。またモード５の場合は、モード１の白黒を逆にしたものであるので、モード１の符号を反転させエラーが−３以上かどうかで白２黒７か白３黒７かを切り替え、白２黒７の場合にはエラー変数を１減算し、白３黒６の場合にはエラー変数を３加算する。モード２、３、４の場合には、入力画素の黒白の比が１：１であるから比率がもっとも近い出力値としては、黒４白５若しくは黒５白４となる。従って、このときに発生する誤差は、黒４白５の場合４／９−１／２＝−２／３６、黒５白４の場合５／９−１／２＝２／３６となる。従って、モード１と同様に出力画素を４分割した値で規格化すると、黒４白５の場合に発生する誤差は−２となり、黒５白４の場合に発生する誤差は２となる。
【００３３】
図５乃至図７では、黒４白５の場合にはエラーを２加算し、黒５白４の場合にはエラーを２減算する。黒４白５か黒５白４の切り替えは、前ブロックまでのエラー値により切り替え、エラーが２以上ならば、黒５白４とし、エラーが２未満ならば黒４白５とする。モード２，３，４の各ＯＢ１、ＯＡ２、ＯＢ２、ＯＣ２、ＯＢ３の値は上述の項目を満たし、入力画素位置に近いものから黒となるように構成されている。
【００３４】
次に、例外処理としてパターン３４，パターン４３の場合のトグルカウンタを用いた例を説明する。パターン３４の場合には、出力画素の白黒比率と入力画素の白黒比率を同一とすることができる。しかしながら、単純に入力画素の値により出力画素濃度を固定的に出力すると同一入力パターンに対し、同一出力パターンが出力されることになり、これがテクスチャとして目につく場合がある。そこで、トグルカウンタにより出力値のＯＡ２、ＯＢ２、ＯＣ２、ＯＤ２をどの入力画素値を参照するか切り替えることにより同一テクスチャの発生を抑えている。また、パターン４３についてもパターン３４と同様に、主走査のトグルカウンタ及びモードによりＯＢ１、ＯＢ２、ＯＢ３、ＯＢ４、ＯＡ２、ＯＡ３、ＯＣ２、ＯＣ３の各出力画素をどの入力画素値を参照するか切り替えることで、目に付く固定的なテクスチャの発生を抑えるように論理式が構成されている。
【００３５】
図１０は、本実施形態における出力画素値の論理演算を行うハードウェア構成を示す図である。同図において、１００１は組み合わせ回路であり、入力画素に応じて入力画素のパターンを区別するモード値を出力する。１００２〜１０１０は組み合わせ回路であり、各パターンの論理演算を行う。１０１１はセレクタであり、図３により構成される出力画素数を決定する回路からのＨＣ、ＶＣにより回路１００２〜１０１０のどれかを選択する。１０１２は加減算器及びセレクタであり、１００１のモード値とＨＣ、ＶＣの値及び前ブロック処理までのエラーにより新しいエラーを算出する。そして、１０１３はラッチであり、ブロック毎に更新されるエラーを保持する。
【００３６】
このように、ブロック処理毎にＨＣ、ＶＣ及びエラーの値が切り替わりながら２×２の入力画素値に対応する出力値を決定していくことにより任意変倍を実現できる。
【００３７】
図１１は、本実施形態により前述の８×８の画像データを変換処理した結果を示すものである。ＳＰＣ法による結果である図１２とは、異なり白黒画素の比率が１対１と濃度が保存されているのがわかる。
【００３８】
本実施形態では、１００％〜２００％の拡大の場合を例に説明したが、同様な考え方で変換画素ブロックｎ×ｎ、ｎ×ｌ、ｌ×ｎ、ｌ×ｌの組み合わせで構成することにより２００％以上の拡大に対応が可能である。また、変数ブロックの白黒比率と元のブロックの白黒比率の差より発生するエラーを伝搬させる方式を導入することにより簡単な回路構成で任意の倍率の拡大処理が実現できる。
【００３９】
このように、原画像をＮ１×Ｎ２の画像ブロックに分割し、個々のブロックの白黒の濃度比率が保存されるようにブロックの処理結果から生じる余り誤差により逐次出力パターンを制御するアルゴリズムを採用することにより、従来のようにラインバッファ制御や乗算等の数値演算回路を多用することなく、簡単な論理演算回路と１個の加減算器とその組み合わせ回路で擬似中間調画像に対して濃度保存性に優れた任意倍率の変倍画像を得ることが可能となる。
【００４０】
尚、本発明は複数の機器（例えば、ホストコンピュータ，インタフェイス機器，リーダ，プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用してもよい。
【００４１】
また、本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵ若しくはＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【００４２】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００４３】
プログラムコードを供給するための記憶媒体としては、例えばフロッピーディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００４４】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００４５】
更に、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００４６】
【発明の効果】
以上説明したように、本発明によれば、誤差拡散等により２値化された擬似中間調画像を含む２値画像の変倍を従来に比べ論理演算等の簡単なハード構成で実現し、かつ、ＳＰＣ法や９分割法に見られるように擬似中間調画像に対してもモアレ縞のない濃度保存の良好な変倍画像を得ることが可能となる。
【００４７】
【図面の簡単な説明】
【図１】主走査方向の画素数ＨＣと副走査方向のライン数ＶＣとの値により変換されるパターンを示す図である。
【図２】８×８の画像データを２×２の１６個の小区画に区切り、５／４倍に拡大した状態を示す図である。
【図３】任意の倍率が決定された場合の個々の画素ブロックの主走査方向の変換画素数（ＨＣ）及び副走査方向の変換ライン数（ＶＣ）を決定するための演算回路の例を示す図である。
【図４】ＨＣの場合の演算回路の動作を示すタイミングチャートである。
【図５】図１に示すパターンの出力画素値を決定する論理演算を示す図である。
【図６】図１に示すパターンの出力画素値を決定する論理演算を示す図である。
【図７】図１に示すパターンの出力画素値を決定する論理演算を示す図である。
【図８】図５乃至図７における各々の変数と画素位置の対応を示した図である。
【図９】入力画像の画素をその配置状況により分類したモードを示す図である。
【図１０】本実施形態における出力画素値の論理演算を行うハードウェア構成を示す図である。
【図１１】本実施形態により８×８の画像データを変換処理した結果を示す図である。
【図１２】主走査方向の８画素、副走査方向の８列の画像データをＳＰＣ法で５／４倍に拡大した図である。
【図１】
0003667002.tif 000002
【図２】
0003667002.tif 000003
【図３】
0003667002.tif 000004
【図４】
0003667002.tif 000005
【図５】
0003667002.tif 000006
【図６】
0003667002.tif 000007
【図７】
0003667002.tif 000008
【図８】
0003667002.tif 000009
【図９】
0003667002.tif 000010
【図１０】
0003667002.tif 000011
【図１１】
0003667002.tif 000012
【図１２】
0003667002.tif 000013