JP5797030B2 - 画像処理装置およびその方法 - Google Patents

画像処理装置およびその方法 Download PDF

Info

Publication number
JP5797030B2
JP5797030B2 JP2011143392A JP2011143392A JP5797030B2 JP 5797030 B2 JP5797030 B2 JP 5797030B2 JP 2011143392 A JP2011143392 A JP 2011143392A JP 2011143392 A JP2011143392 A JP 2011143392A JP 5797030 B2 JP5797030 B2 JP 5797030B2
Authority
JP
Japan
Prior art keywords
error
pixel
diffusion
quantization
target pixel
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.)
Active
Application number
JP2011143392A
Other languages
English (en)
Other versions
JP2012070359A5 (ja
JP2012070359A (ja
Inventor
成緒 兒玉
成緒 兒玉
石川 尚
尚 石川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2011143392A priority Critical patent/JP5797030B2/ja
Priority to US13/208,716 priority patent/US8947735B2/en
Priority to EP11178315A priority patent/EP2424214A1/en
Priority to CN201110249581.9A priority patent/CN102387286B/zh
Publication of JP2012070359A publication Critical patent/JP2012070359A/ja
Publication of JP2012070359A5 publication Critical patent/JP2012070359A5/ja
Application granted granted Critical
Publication of JP5797030B2 publication Critical patent/JP5797030B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/40Picture signal circuits
    • H04N1/405Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels
    • H04N1/4051Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels producing a dispersed dots halftone pattern, the dots having substantially the same size
    • H04N1/4052Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels producing a dispersed dots halftone pattern, the dots having substantially the same size by error diffusion, i.e. transferring the binarising error to neighbouring dot decisions

Description

本発明は、画像の誤差拡散処理に関する。
ディジタルカメラで撮影した画像などを画像処理し、画像処理した画像を印刷することが広く行われている。しかし、表示装置に比べて印刷装置は、画素当りの表現可能な階調数が少ない。そのため、印刷前の画像の階調数を低減して、元の階調を擬似的に表現する擬似中間調処理が必要になる。擬似中間調処理には様々な方法があるが、階調性と解像性が両立した画像が得られる誤差拡散処理が広く用いられている。誤差拡散処理は、注目画素の階調値と、注目画素を量子化した値の差(量子化誤差)を、注目画素の近傍の未処理の画素に所定の比率で拡散する処理を逐次的に行う。
ところで、画像データを画像処理する場合、画像データをメモリに展開する必要がある。しかし、一枚の画像に対応する画像データのすべてを展開することができる、フルサイズの記憶容量をもつメモリを機器に実装すればコストを増大させる要因になる。とくに家庭用のプリンタのように、安価に提供する必要がある機器において、フルサイズの記憶容量をもつメモリの搭載は現実的ではない。そのため画像を複数の領域に分割し、領域ごとに、逐次、メモリに展開して画像処理することが一般的である。
しかし、領域分割を行って誤差拡散処理を行うと、領域の誤差拡散処理結果が結合される繋ぎ目においてドットパターンの不整合が生じ、それが条状の画質劣化として視認される場合がある。これは、領域間で相互に誤差が拡散されないため、繋ぎ目において誤差拡散処理の連続性が損なわれることに起因する。
特許文献1は、注目領域の境界部の画素を量子化した際に発生する量子化誤差を、次に処理する領域(以下、次領域)の境界部の画素を誤差拡散処理する際に使用するために、バッファする発明を開示する。さらに、注目領域と次領域の間にオーバラップ領域を設け、注目領域の境界部の画素から次領域の境界部の画素に拡散されるべき量子化誤差を近似する発明を開示する。
また、特許文献2の発明は、画像を副走査方向に分割したバンドを、さらに主走査方向に分割したスライスの最終画素で生じた量子化誤差を第一のメモリに格納し、各画素で生じた量子化誤差を第二のメモリに格納する。そして、各スライスの一番目の画素を量子化する場合は、第一および第二のメモリに格納した量子化誤差を参照し、その他の画素を量子化する場合は第二のモリに格納した量子化誤差のみを参照して、誤差拡散処理を行う。つまり、量子化誤差をバッファする二つのメモリを使用してバンド間の誤差伝播を行うことで、画像を展開するメモリの記憶容量の削減と、バンドの境界部における誤差拡散処理の連続性の維持を同時に実現する。
上述した従来技術においては、注目領域の前に誤差拡散処理した領域(以下、前領域)の境界部の量子化誤差をバッファするが、誤差拡散処理の仕方によっては、必ずしも、誤差拡散処理の連続性を維持できない場合がある。例えば、量子化誤差そのものをバッファする場合と、各画素に拡散すべき拡散誤差をバッファする場合がある。拡散誤差は、注目画素と誤差の拡散先の画素(以下、被拡散画素)の関係によって決まる拡散係数を、注目画素の量子化誤差に乗じた値を、被拡散画素ごとに積算した値である。これら二種類の手法により、バッファメモリへの誤差の格納方法と、バッファメモリに格納した誤差の参照方法が異なる。つまり、バッファする誤差(以下、伝播誤差)に適切な格納と参照を行わずに各領域の処理結果を結合すれば、繋ぎ目に不連続なドットパターンが発生する。
また、どの画素の量子化誤差を伝播するか、どの画素に拡散誤差を伝播するかは、オーバラップ領域を設ける場合や、分割領域の一部を重複させる場合など、領域の分割の仕方によって異なる。なお、分割領域の一部を重複させる場合とは、隣接する分割領域のドットパターンを重ねて画像を形成する場合である。例えば、オーバラップ領域を設けて、注目領域の下端の境界部から次領域へ誤差を伝播しても、繋ぎ目に不連続なドットパターンが生じる場合がある。これは、領域間で誤差の伝播が必要な部分と、注目領域の下端の境界部が一致せずに、誤差拡散処理の連続性が損なわれるためである。また、分割領域の一部を重複させる場合、各注目領域の下端は、誤差の伝播を必要とする次領域の境界部ではないため、誤差の伝播を適切に行うことができず、繋ぎ目に不連続なドットパターンが生じる場合がある。
特公平6-091606号公報(特開昭63-310269号公報) 特許第3004628号公報
R. Floyd, L. Steinberg「An Adaptive Algorithm for Spatial Grayscale」Proceeding of the S.I.D. vol 17/2, 1976, p.75-76
本発明は、複数の領域に分割された画像を誤差拡散処理する際に、領域間の誤差の伝播を適切に行うことを目的とする。
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
本発明にかかる画像処理は、複数の領域に分割された画像の領域ごとに誤差拡散処理を行う画像処理であって、前記誤差拡散処理における注目画素が第一の誤差保持手段の参照または書き込みが必要な画素位置にあるか否かを判定し、前記判定の結果が、前記第一の誤差保持手段の参照が必要な画素位置に前記注目画素があることを示す場合は前記第一の誤差保持手段から既に誤差拡散処理された領域の前記誤差拡散処理で発生した参照すべき量子化誤差を取得するとともに、前記注目画素を含む領域の、前記注目画素の近傍の画素の誤差拡散処理で発生した量子化誤差を第二の誤差保持手段から取得し、誤差拡散マトリクスに従い、前記取得された量子化誤差から拡散誤差を算出し、前記注目画素の値と前記拡散誤差を加算した加算値を量子化して前記注目画素の量子化値とし、前記注目画素の量子化誤差として前記注目画素の量子化値と前記加算値の差分を計算し、前記判定の結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素がないことを示す場合は前記注目画素の量子化誤差を前記第二の誤差保持手段に格納し、前記判定の結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素があることを示す場合は前記注目画素の量子化誤差を前記第一および第二の誤差保持手段に格納し、前記複数の領域のそれぞれは、隣接する領域との間に重複領域を有するように分割された領域であり、前記重複領域の位置に基づき前記判定が行われることを特徴とする。
本発明によれば、複数の領域に分割された画像を誤差拡散処理する際に、領域間の誤差の伝播を適切に行うことができる。従って、領域の繋ぎ目において誤差拡散処理の連続性が損なわれ、不連続なドットパターンが生じる問題を防ぐことができる。
実施例1に適用可能な画像処理装置の構成例を説明するブロック図。 画像の分割方法、誤差拡散処理における画素の走査方法、誤差拡散マトリクスの例を説明する図。 誤差拡散処理部の構成例を説明するブロック図。 量子化誤差を伝播する場合の誤差拡散処理部の処理例を説明するフローチャート。 誤差を参照すべき画素位置および誤差を伝播すべき画素位置を説明する図。 拡散誤差を伝播する場合の誤差拡散処理部の処理例を説明するフローチャート。 実施例2における画像の分割方法、誤差拡散処理における画素の走査方法、誤差拡散マトリクスの例を説明する図。 誤差を参照すべき画素位置および誤差を伝播すべき画素位置を説明する図。 誤差バッファに量子化誤差が格納される画素の一例を説明する図。 ユーザが設定可能な誤差拡散処理のモードに対する、領域の分割方法、誤差拡散マトリクス、誤差を参照すべき画素位置および誤差を伝播すべき画素位置の一例を説明する図。 実施例3の誤差拡散処理部の構成例を説明するブロック図。 画像の分割方法、誤差拡散処理における画素の走査方法、誤差拡散マトリクスの例を説明する図。 重複処理領域があり、量子化誤差を伝播する場合の誤差拡散処理を説明するフローチャート。 誤差を伝播すべき画素位置を説明する図。
以下、本発明にかかる実施例の画像処理を図面を参照して詳細に説明する。
実施例1においては、画像を複数のバンドに分割し、バンドごとに誤差拡散処理する際に、バンド間で伝播する誤差として量子化誤差または拡散誤差を選択可能な構成例を説明する。
[装置の構成]
図1のブロック図により実施例1に適用可能な画像処理装置の構成例を説明する。画像入力部100は、例えば、スキャナやディジタルカメラなどの画像入力機器やハードディスクドライブなどの記録装置から多値の画像データを入力するインタフェイスである。領域分割部101は、入力された画像データが表す画像を複数の領域に分割する。
誤差拡散処理部102は、領域分割部101が分割した各領域を逐次的に誤差拡散処理して階調数を低減した画像データを生成する。なお、入力画像データがN値(階調数N)であれば、誤差拡散処理された画像データはM値(階調数M<N)である。画像出力部103は、例えば、インクジェット方式の印刷装置やプリンタエンジンに誤差拡散処理された画像データを出力するインタフェイスである。なお、印刷装置やプリンタエンジンは、誤差拡散処理された画像データが表す画像を記録紙に記録する。
図2により画像の分割方法、誤差拡散処理における画素の走査方法、誤差拡散マトリクスの例を説明する。領域分割部101は、図2(a)に示すように、入力画像200を主走査方向に直交する副走査方向に分割する。誤差拡散処理部102は、まずバンド201について、バンドの長手方向(主走査方向)に直交する方向(図2(a)の下方向、副走査方向)に画素を走査して、図2(b)または図2(c)に示す誤差拡散マトリクスを使用して誤差拡散処理を行う。続いて、バンド202、そしてバンド203の順に画素を走査して、図2(b)または図2(c)に示す誤差拡散マトリクスを使用して誤差拡散処理を行う。なお、各バンドのライン数は、誤差拡散マトリクスのライン数以上であれば任意である。
図2(b)に示す誤差拡散マトリクスは、注目画素が近傍画素から受け取る誤差の比率(拡散係数)を示す。つまり、「*」で示す注目画素には、一行上の画素から7/16、一列前の隣接する三画素から(上から順に)1/16、5/16、3/16の比率で量子化誤差が拡散される。また、図2(c)に示す誤差拡散マトリクスは、注目画素から近傍画素へ誤差を拡散する比率(拡散係数)を示す。つまり、「*」で示す注目画素から、一行下の画素へ7/16、一列後の隣接する三画素へ(上から順に)3/16、5/16、1/16の比率で量子化誤差が拡散される。なお、図2(b)は誤差を受け取る側の画素から見た場合の誤差拡散マトリクスを示し、図2(c)は誤差を拡散する側の画素から見た誤差拡散マトリクスを示し、両者は同じ誤差拡散マトリクスを表している。
[誤差拡散処理部]
図3のブロック図により誤差拡散処理部102の構成例を説明する。
誤差加算部300は、入力画像データの注目画素の値に、積算部307が出力する、注目画素の近傍の既処理の画素から拡散された誤差の累積値(拡散誤差)を加算する。量子化部301は、拡散誤差が加算された注目画素の値から予め定められたビット数の量子化値を計算する。画像データが8ビットの場合、量子化部301は、注目画素の値(0〜255)から、例えば量子化閾値127による二値化を行い、量子化後の注目画素の値として量子化値0または255を出力する。
量子化誤差算出部302は、誤差加算部300において拡散誤差が加算された注目画素の値と、量子化部301において量子化された後の注目画素の値の差分を量子化誤差として出力する。勿論、量子化部301の処理は、二値化に限らず、三値化、四値化、五値化などでもよい。つまり、例えば8ビットの画像データの階調数256を低減して、画像出力部103が処理可能な階調数(二値、三値、四値、五値など)の画像データにする処理であればよい。
レジスタ303は、量子化誤差と拡散誤差から伝播誤差を選択するためのレジスタである。レジスタ303には、量子化誤差を伝播誤差に選択する場合は‘0’が設定され、拡散誤差を伝播誤差に選択する場合は‘1’が設定される。セレクタ304a、304b、304cは、レジスタ303に設定された値によりブロック間のデータの経路を選択する。
バッファ参照判定部310は、注目画素のバンド上の位置(x, y)を入力して、乗算部306が用いる誤差拡散マトリクスによって決まる伝播誤差を参照すべき画素位置か否かを判定する。そして、伝播誤差を参照すべき画素位置の場合は、誤差バッファ309から読み出す誤差の位置を示す位置情報を出力する。
バッファ格納判定部311は、注目画素のバンド上の位置(x, y)を入力して、領域の分割方法(例えばバンドのライン数)に基づき、乗算部306が用いる誤差拡散マトリクスによって決まる誤差を伝播すべき画素位置か否かを判定する。そして、誤差を伝播すべき画素位置の場合は、誤差バッファ309に誤差を書き込む位置を示す位置情報を出力する。なお、バンドごとにライン数が異なる場合、バッファ格納判定部311は、注目画素のバンド上の位置(x, y)、および、領域分割部101から注目バンドのライン数を入力する。
誤差バッファ制御部308は、バッファ参照判定部310およびバッファ格納判定部311が出力する判定結果と位置情報を入力して、誤差バッファ309の読み書き、セレクタ312の経路を制御する。つまり、バッファ参照判定部310の判定結果が伝播誤差の参照を示す場合、バッファ参照判定部310が出力する誤差バッファ309の読取位置を示す位置情報に従い、誤差バッファ309から伝播誤差を取得する。そして、当該伝播誤差が乗算部306に入力されるようにセレクタ312を制御する。なお、バッファ参照判定部310の判定結果が伝播誤差の非参照を示す場合は、誤差メモリ305から出力される誤差が乗算部306に入力されるようにセレクタ312を制御する。さらに、バッファ格納判定部311の判定結果が伝播誤差の格納を示す場合、セレクタ304aを介して入力した誤差を、バッファ参照判定部310が出力する誤差バッファ309の書込位置を示す位置情報に従い、誤差バッファ309に格納する。
誤差メモリ305には、量子化誤差算出部302からセレクタ304aを介して量子化誤差が格納される。あるいは、誤差メモリ305には、乗算部306からセレクタ304aを介して拡散誤差が格納される。乗算部306は、セレクタ304bを介して入力される誤差に拡散係数を乗じた誤差を算出する。積算部307は、セレクタ304cを介して入力される誤差を積算して、注目画素の値に加える積算誤差を出力する。
このように、誤差拡散処理部102は、レジスタ303の設定により、バンド間で量子化誤差を伝播する方法と拡散誤差を伝播する方法の両方に対応可能である。なお、誤差拡散処理部102は、バンド間における誤差の伝播が適正に実現される構成であればよく、図3の構成に限られるわけではない。
[誤差拡散処理の例]
以下では、図2Aに示すように、画像を分割した複数のバンドを、逐次、誤差拡散処理する例に説明する。なお、領域間の誤差伝播を実現するために、既に誤差拡散処理が終了したバンド(以下、前バンド)で発生した誤差をバッファして、次に誤差拡散処理するバンド(以下、次バンド)に伝播する。
●量子化誤差を伝播する場合
図4のフローチャートにより量子化誤差を伝播する場合の誤差拡散処理部102の処理例を説明する。
誤差拡散処理部102は、注目画素の値を入力する(S501)。バッファ参照判定部310は、注目画素が伝播誤差を参照すべき画素位置にあるか否かを判定する(S502)。図5により誤差を参照すべき画素位置および誤差を伝播すべき画素位置を説明する。
図5(a)に示すように、各バンドが4ラインから構成されるとする。そして、バンド202のラインL4上に位置する注目画素600を処理する場合、注目画素600に誤差を拡散すべき画素(以下、拡散元画素)は、図5(b)に示す近傍画素A、B、C、Dの四画素である。ラインL3上の拡散元画素AとBはバンド201に含まれ、処理中のバンド(以下、注目バンド)202には含まれない。そこで、図5(c)に示すように、前バンドの誤差拡散処理において発生した量子化誤差を誤差バッファ309に格納し、注目画素600の誤差拡散処理において拡散元画素AとBの量子化誤差aとbを参照する。勿論、ラインL4上に位置する画素の誤差拡散処理は、注目画素600と同様、前バンド201のラインL3上に位置する画素の量子化誤差を参照する必要がある。
このように、図2(b)に示す誤差拡散マトリクスを使用する場合、伝播誤差を参照すべき画素位置は、注目バンドの先頭行の画素位置である。ただし、誤差拡散マトリクスの形状によって、注目画素の上方向に拡散元画素が二画素以上ある場合、誤差バッファ309に複数ライン分の記憶容量が必要になる。
また、ラインL4上に位置する隣接する二つの画素は、誤差バッファ309の同じ位置に格納された量子化誤差を参照する。例えば、図5(c)において、画素Cと注目画素600は、誤差バッファ309に格納された量子化誤差aを参照する。従って、画素Cの誤差拡散処理中に誤差バッファ309から参照した量子化誤差aを、例えば誤差バッファ制御部308が備える遅延メモリに保持する。そして、注目画素600を誤差拡散処理する際は、遅延メモリに保持した量子化誤差aを参照する。こうすれば、誤差拡散処理時の誤差バッファ309の参照回数を低減することが可能である。
注目画素が伝播誤差を参照すべき画素位置にある場合、誤差バッファ制御部308は、バッファ参照判定部310が出力する位置情報に基づき誤差バッファ309から量子化誤差を読み出し、位置情報と量子化誤差を乗算部306に供給する(S503)。次に、誤差バッファ制御部308は、誤差メモリ305が保持する注目画素に対する拡散元画素の量子化誤差を読み出し、拡散元画素の位置情報と量子化誤差を乗算部306に供給する(S504)。
乗算部306は、位置情報に対応する図2(b)に示す拡散マトリクスの拡散係数を量子化誤差に乗じた拡散誤差を積算部307に供給する(S505)。積算部307は、乗算部306から順次入力される拡散誤差を積算する(S506)。なお、ステップS503〜S506の処理は拡散元画素の数(図2(b)の例であれば四画素)分繰り返され、拡散誤差の積算が終了すると、積算部307は積算結果を誤差加算部300に出力する。
誤差加算部300は、積算部307から入力される拡散誤差の積算値と注目画素の値を加算し、加算結果を量子化部301に出力する(S507)。量子化部301は、誤差加算部300から入力される加算値を量子化し、量子化結果を出力する(S508)。量子化誤差算出部302は、量子化結果から誤差加算部300が出力する加算値を減算した量子化誤差を誤差メモリ305の注目画素の画素位置に対応する位置に格納する(S509)。
次に、バッファ格納判定部311は、注目画素が誤差を伝播すべき画素位置にあるか否かを判定する(S510)。図5(d)に示すように、バンド201のラインL3上に位置する注目画素601を処理する場合、注目画素601の量子化誤差を拡散すべき画素(以下、拡散先画素)は近傍画素E、F、G、Hの四画素である。ラインL4上の拡散先画素EとHはバンド202に含まれ、注目バンド201には含まれない。そこで、図5(e)に示すように、注目画素601の誤差拡散処理において発生した量子化誤差を誤差バッファ309に格納し、拡散先画素E、Hの誤差拡散処理において注目画素601の量子化誤差を参照する。勿論、ラインL3上に位置する画素の誤差拡散処理は、注目画素601と同様、次バンド202のラインL4上に位置する画素に量子化誤差を拡散する必要がある。つまり、図2(c)に示す誤差拡散マトリクスを使用する場合、誤差を伝播すべき画素位置は、注目バンドの最終行の画素位置である。
注目画素が誤差を伝播すべき画素位置にある場合、誤差バッファ制御部308は、量子化誤差算出部302が出力する量子化誤差を、バッファ格納判定部311が出力する位置情報に基づき誤差バッファ309に格納する(S511)。次に、誤差拡散処理部102は、画像入力部100が入力した画像の全画素について誤差拡散処理が終了したか否かを判定し(S512)、全画素の誤差拡散処理が終了するまでステップS501〜S511の処理を繰り返す。
●拡散誤差を伝播する場合
図6のフローチャートにより拡散誤差を伝播する場合の誤差拡散処理部102の処理例を説明する。
誤差拡散処理部102は、注目画素の値を入力する(S601)。バッファ参照判定部310は、注目画素が伝播誤差を参照すべき画素位置にあるか否かを判定する(S602)。上述したように、バンド202のラインL4上に位置する注目画素600を処理する場合、拡散元画素は図5(b)に示す近傍画素A、B、C、Dの四画素である。そして、画素AとBはバンド201に含まれ、注目バンド202には含まれない。
従って、図2(b)に示す誤差拡散マトリクスを使用する場合、伝播誤差を参照すべき画素位置は、注目バンドの先頭行の画素位置である。なお、誤差バッファ309は、拡散元画素から拡散先画素へ拡散される拡散誤差の和を格納する。つまり、図5(b)の例では、画素Aからの拡散誤差と、画素Bからの拡散誤差の和が誤差バッファ309の注目画素600に対応する位置に格納されている。つまり、誤差バッファ309が格納する伝播誤差は誤差拡散マトリクスの形状に依存しないと言える。
注目画素が伝播誤差を参照すべき画素位置にある場合、誤差バッファ制御部308は、バッファ参照判定部310が出力する位置情報(注目画素の位置情報)に基づき誤差バッファ309から読み出した拡散誤差を積算部307に供給する(S603)。次に、誤差バッファ制御部308は、誤差メモリ305が保持する注目画素に対応する拡散誤差を読み出し、拡散誤差を積算部307に供給する(S604)。
積算部307は、誤差バッファ制御部308から入力される拡散誤差を積算し、積算結果を誤差加算部300に出力する(S605)。誤差加算部300は、積算部307から入力される拡散誤差の積算値と注目画素の値を加算し、加算結果を量子化部301に出力する(S606)。量子化部301は、誤差加算部300から入力される加算値を量子化し、量子化結果を出力する(S607)。
量子化誤差算出部302は、量子化結果から誤差加算部300が出力する加算値を減算した量子化誤差を計算する(S608)。乗算部306は、図2(c)に示す誤差拡散マトリクスに従い、注目画素の量子化誤差を拡散した拡散誤差を計算し、誤差メモリ305の拡散先画素の画素位置に対応する位置に拡散誤差を格納する(S609)。その際、乗算部306は、格納位置に既に格納された拡散誤差と、当該格納位置に新たに格納する拡散誤差を加算して、拡散誤差を積算する。
次に、バッファ格納判定部311は、注目画素が誤差を伝播すべき画素位置にあるか否かを判定する(S610)。上述したように、図5(d)に示すバンド201のラインL3上に位置する注目画素601を処理する場合、注目画素601の量子化誤差の拡散先画素は近傍画素E、F、G、Hの四画素である。ラインL4上の拡散先画素EとHはバンド202に含まれ、注目バンド201には含まれない。そこで、図5(f)に示すように、注目画素601の誤差拡散処理において発生した量子化誤差に拡散先画素E、Hに対応する拡散係数を乗じた拡散誤差を計算する。そして、拡散誤差を、誤差バッファ309の画素E、Hに対応する位置に格納し、拡散先画素E、Hの誤差拡散処理において拡散誤差を参照する。勿論、ラインL3上に位置する画素の誤差拡散処理は、注目画素601と同様、次バンド202のラインL4上に位置する画素に量子化誤差を拡散する必要がある。つまり、図2(c)に示す誤差拡散マトリクスを使用する場合、誤差を伝播すべき画素位置は、注目バンドの最終行の画素位置である。
また、ラインL3上に位置する隣接する二つの画素の拡散誤差は、ラインL4上に位置する同じ画素に拡散される。例えば、図5(d)において、注目画素601と画素Gの拡散誤差は、画素Hに拡散される。従って、注目画素601の誤差拡散処理における画素Hヘの拡散誤差を、例えば誤差バッファ制御部308が備える遅延メモリに保持する。そして、画素Gの誤差拡散処理における画素Hへの拡散誤差と、遅延メモリに保持した拡散誤差の和を計算し、計算結果の拡散誤差を、誤差バッファ309の画素Hに対応する位置に格納する。こうすれば、誤差拡散処理時の誤差バッファ309の書込回数を低減することが可能である。
さらに、誤差拡散マトリクスの形状によっては、注目画素から誤差を拡散すべき拡散先画素のうち二画素以上が注目バンドにない場合、誤差バッファ309に複数ライン分の記憶容量が必要になる。例えば、ラインL2上の画素からラインL4上の画素へ拡散すべき拡散誤差、並びに、ラインL3上の画素からラインL4、L5上の画素へ拡散すべき拡散誤差を格納する必要がある。この場合、上述したように、ラインL4上の画素への複数の拡散誤差を、誤差バッファ制御部308が備える遅延メモリを用いて積算し、誤差バッファ309に格納する。
また、一般的な誤差拡散処理においては、隣接画素以外へ伝播される誤差は小さく、ラインL2上の画素からラインL4上の画素へ拡散される誤差は無視できるほど小さい。加えて、隣接画素へ伝播される誤差の影響が大きく、ラインL2上の画素からラインL4上の画素へ拡散される誤差の影響よりも、ラインL3上の画素からラインL4上の画素へ拡散される誤差の影響が大きい。つまり、ラインL2上の画素からラインL4上の画素に拡散される誤差を無視しても誤差拡散処理の連続性は保たれる。このような誤差の拡散特性を考慮すれば、誤差バッファ309の記憶容量を1ライン分にすることも可能である。
注目画素が誤差を伝播すべき画素位置にある場合、誤差バッファ制御部308は、乗算部306が出力する次バンドに拡散すべき拡散誤差を、誤差バッファ309の拡散先画素の画素位置に対応する位置に拡散誤差を格納する(S611)。その際、誤差バッファ制御部308は、格納位置に既に格納された拡散誤差と、当該格納位置に新たに格納する拡散誤差を加算して、拡散誤差を積算する。
次に、誤差バッファ制御部308は、バッファ参照判定部310の判定結果や位置情報に基づき注目バンドの誤差拡散処理が終了したか否かを判定する(S612)。さらに、バッファ格納判定部311の判定結果や位置情報に基づき、注目バンドにおいて伝播誤差を参照すべき画素(この例では、注目バンドの一行目の画素)の誤差拡散処理が終了したか否かを判定する(S614)。そして、注目バンドの誤差拡散処理が終了すると、前バンドの拡散誤差を積算しないように、誤差バッファ制御部308は誤差メモリ305をクリアする(S613)。また、注目バンドにおいて伝播誤差を参照すべき画素の誤差拡散処理が終了すると、前バンドの拡散誤差を積算しないように、誤差バッファ制御部308は誤差バッファ309をクリアする(S615)。
次に、誤差拡散処理部102は、画像入力部100が入力した画像の全画素について誤差拡散処理が終了したか否かを判定し(S616)、全画素の誤差拡散処理が終了するまでステップS601〜S615の処理を繰り返す。
上記のように、バッファ参照判定部310とバッファ格納判定部311は、注目画素の位置や拡散係数マトリクスの形状、領域の分割方法に基づき、誤差バッファ309のアクセスが必要か否かを判定する。誤差バッファ309のアクセスが必要な場合は、誤差バッファ309におけるアクセス位置を算出して、拡散誤差を誤差バッファ309から読み出し、あるいは、拡散誤差を誤差バッファ309へ格納する。
以上のとおり、誤差バッファ制御部308は、誤差バッファ309のアクセルが必要か否かの判定結果に応じて、誤差バッファ309に対する誤差誤差の格納と参照を制御して、任意の伝播位置による誤差伝播を実現する。
伝播誤差に量子化誤差を選択する場合、拡散係数を乗算しないので、誤差バッファ309が格納する値は整数であるが、誤差拡散マトリクスの形状によっては複数ライン分の記憶容量を有する誤差バッファ309が必要になる。一方、伝播誤差に拡散誤差を選択する場合、拡散係数の乗算により小数部も必要になるが、誤差バッファ309には誤差拡散マトリクスの形状によらず1ライン分の記憶容量があればよい。つまり、誤差拡散マトリクスの形状によって、誤差を参照すべき位置または誤差を伝播すべき位置が1ラインの場合は、伝播誤差として量子化誤差を選択すれば誤差バッファ309の記憶容量が小さくなる。また、誤差を参照すべき位置または誤差を伝播すべき位置が複数ラインの場合は、伝播誤差として拡散誤差を選択すれば誤差バッファ309の記憶容量が小さくなる。すなわち、上述した構成は、常に誤差バッファ309の記憶容量を最小にする構成をとることができる。
また、誤差メモリ305を記憶容量当りのコストは高いがアクセス速度が速いSRAMで構成し、誤差バッファ309を記憶容量当りのコストは低いがアクセス速度が遅いDRAMで構成すれば、記憶デバイスの特徴に応じた最適な回路設計になる。つまり、誤差メモリ305は、分割領域内で誤差拡散処理するために、注目画素の処理時に、その周囲画素の誤差が必ず読み出され、処理によって生じた誤差が必ず格納される。一方、誤差バッファ309は、分割領域間で誤差伝播を行うための誤差伝播位置でのみアクセスされるが、伝播誤差をすべて保持すれば大きな記憶容量を必要とする。そこで、高速なアクセスが必要な誤差メモリ305にSRAMを使用し、大きな記憶容量が必要な誤差バッファ309に安価なDRAMを使用して、高速かつ低コストの処理回路を実現する。
上記では、第一の誤差保持部である誤差バッファ309と第二の誤差保持部である誤差メモリ305が個別の記憶デバイスとして説明したが、物理的に異なる二つの記憶デバイスを用いる必要はなく、二つの役割を果たす記憶領域が確保されていればよい。同一の記憶デバイスに上記二つの役割を担う記憶領域を確保した場合は、逐次的に誤差の格納と参照を行えばよい。また、上記二つの役割を担う記憶領域を複数の記憶領域や記憶デバイスに跨って構成する場合も、適切に誤差の格納と参照ができれば本発明が実現可能であることは言うまでもない。
このように、複数の領域に分割された画像を誤差拡散処理する際に、誤差バッファ309に量子化誤差または拡散誤差を格納して領域間の誤差の伝播を適切に行う。従って、領域の繋ぎ目において誤差拡散処理の連続性が損なわれ、不連続なドットパターンが生じる問題を防ぐことができる。
以下、本発明にかかる実施例2の画像処理を説明する。なお、実施例2において、実施例1と略同様の構成については、同一符号を付して、その詳細説明を省略する。
図7により実施例2における画像の分割方法、誤差拡散処理における画素の走査方法、誤差拡散マトリクスの例を説明する。実施例1においては、図2(a)に示すように、縦長の画像200をバンド状に分割した各領域を走査して誤差拡散処理する例を説明した。実施例2においては、図7(a)に示すように、画像200をタイル状に分割した各領域を、領域205、206、…、213の順に横方向(主走査方向)に走査して、図7(b)または図7(c)に示す誤差拡散マトリクスを使用して誤差拡散処理を行う。なお、図7(b)は拡散先画素から見た場合の誤差拡散マトリクスを示し、図7(c)は拡散元画素から見た誤差拡散マトリクスを示し、両者は同じ誤差拡散マトリクスを表している。
実施例2と実施例1は、領域の分割方法と画素の走査方向が異なる点を除いて、同一の画像処理になる。つまり、図1に示す画像処理装置の構成、図3に示す誤差拡散処理部102の構成、図4、6に示す処理フローは実施例1と同一である。
以下では、既に誤差拡散処理が終了したタイル(以下、既処理タイル)の誤差を参照する拡散先画素と、誤差拡散処理が未処理のタイル(以下、未処理タイル)へ誤差を伝播する拡散元画素について説明する。図8により誤差を参照すべき画素位置および誤差を伝播すべき画素位置を説明する。
図8(a)に示すように、各タイルが4×4画素から構成されるとする。そして、ラインL4、列R4上に位置するタイル209の注目画素700を処理する場合、注目画素700の拡散元画素は、図8(b)に示す近傍画素A、B、C、Dの四画素である。拡散元画素Aはタイル205に、拡散元画素B、Cはタイル206に、拡散元画素Dはタイル208にそれぞれ含まれ、処理中のタイル(以下、注目タイル)209には含まれない。そこで、図8(c)に示すように、既処理タイルの誤差拡散処理において発生した量子化誤差を誤差バッファ309に格納する。なお、図8(c)は量子化誤差の格納を示しているが、拡散誤差は誤差バッファ309の拡散先画素に対応する位置に格納することはいうまでもない。そして、注目画素700の誤差拡散処理において拡散元画素A、B、C、Dの量子化誤差a、b、c、d(または拡散誤差)を参照する。勿論、ラインL4または列R4上に位置する注目タイル209の画素の誤差拡散処理は、注目画素700と同様、ラインL3または列R3上に位置する画素の誤差を参照する必要がある。このように、図7(b)に示す誤差拡散マトリクスを使用する場合、伝播誤差を参照すべき画素位置は、注目タイルの先頭行および先頭列の画素位置である。
また、図8(d)に示すように、ラインL3、列R3上に位置するタイル205の注目画素701を処理する場合、注目画素701の拡散先画素は近傍画素E、F、G、Hの四画素である。拡散先画素Eはタイル206に、拡散先画素F、Gはタイル208に、拡散先画素Hはタイル209にそれぞれ含まれる。そこで、図8(e)に示すように、注目画素701の誤差拡散処理において発生した量子化誤差を誤差バッファ309に格納する。なお、図8(e)は量子化誤差の格納を示しているが、拡散誤差は誤差バッファ309の拡散先画素に対応する位置に格納することはいうまでもない。そして、拡散先画素E、F、G、Hの誤差拡散処理において注目画素701の量子化誤差(または拡散誤差)を参照する。勿論、注目タイル205のラインL3または列R3上に位置する画素の誤差拡散処理は、注目画素701と同様、未処理タイルのラインL4または列R4上に位置する画素に誤差を拡散する必要がある。このように、図7(c)に示す誤差拡散マトリクスを使用する場合、誤差を伝播すべき画素位置は、注目タイルの最終行および最終列の画素位置である。
なお、実際に誤差バッファ309に量子化誤差が格納される画素は、既処理タイルと未処理タイルの境界において、既処理タイルの最終ライン上の画素と、既処理タイルの最終列上の画素である。図9により誤差バッファ309に量子化誤差が格納される画素の一例を説明する。図9(a)において、タイル205から208が既処理タイル、タイル209から213が未処理タイルである。図9(b)は、タイル209の誤差拡散処理が終了した直後に対応し、タイル205から209が既処理タイル、タイル210から213が未処理タイルである。
このように、既処理タイルと未処理タイルの境界の既処理タイル側の画素の量子化誤差が誤差バッファ309に格納されている。言い替えれば、誤差バッファ309は、既処理タイルと未処理タイルの境界の画素分(図9(a)(b)では16画素分)の量子化誤差を記憶できればよいと言える。また、拡散誤差を伝播する場合は、実際に誤差バッファ309に拡散誤差が格納される画素は、既処理タイルと未処理タイルの境界において、未処理タイルの先頭ライン上の画素と、未処理タイルの先頭列上の画素である。従って、量子化誤差を伝播する場合と同様に、誤差バッファ309は、既処理タイルと未処理タイルの境界の画素分の拡散誤差を記憶できればよいと言える。
このように、領域の分割方法が変化し、拡散元画素または拡散先画素の位置が変化しても、既に誤差拡散処理が終了した領域と、誤差拡散処理が未処理の領域の境界の画素分の量子化誤差または拡散誤差を伝播すればよい。これは、バッファ参照判定部310とバッファ格納判定部311によって誤差バッファ309をアクセスするか否かを判定し、誤差バッファ制御部308によって誤差バッファ309と誤差メモリ305のアクセスを制御することで実現される。従って、実施例1と全く同一構成の誤差拡散処理部102でありながら、領域分割の方法が異なる場合でも、誤差拡散処理の連続性を維持することができる適切な位置における領域間の誤差伝播が可能になる。
以下、本発明にかかる実施例3の画像処理を説明する。なお、実施例3において、実施例1、2と略同様の構成については、同一符号を付して、その詳細説明を省略する。
誤差拡散処理において、誤差の参照範囲を拡大すると、処理結果の画質が改善されることが知られている。しかし、誤差の参照範囲を拡大すれば、一画素を処理するための演算負荷が増大し、処理速度の低下を招く。そこで、誤差の参照範囲を調整または選択して、許容可能な画質と許容可能な処理速度のバランスをとることが望まれる。実施例3においては、ユーザの設定に応じて、領域の分割方法や誤差拡散マトリクスの形状(誤差の参照範囲)が再設定可能な誤差拡散処理を説明する。
[誤差拡散処理のモード]
図10によりユーザが設定可能な誤差拡散処理のモードに対する、領域の分割方法、誤差拡散マトリクス、誤差を参照すべき画素位置および誤差を伝播すべき画素位置の一例を説明する。例えばモード0は、実施例1のように、画像をバンド状に分割し、図2(b)に示す誤差拡散マトリクスを使用する。従って、一つのバンドが4ラインで構成される場合、誤差を参照すべき画素位置(以下、参照画素位置)はラインL4、誤差を伝播すべき画素位置(以下、伝播画素位置)はラインL3である。
モード1は、連続する二つのバンドにおいて、先に処理するバンドの末尾2ラインと次に処理するバンドの先頭2ライン(一つのバンドが5ラインで構成される場合はラインL3とL4)を重複して誤差拡散処理する。この場合、参照画素位置はラインL3、伝播画素位置はラインL2である。
モード2は、モード0に比べて誤差拡散マトリクスを大きくし、つまり誤差の参照範囲を上下に一行ずつ、左に一列を拡げて誤差拡散処理を行う。従って、一つのバンドが5ラインで構成される場合、参照画素位置はラインL5、伝播画素位置はラインL4である。
モード3は、実施例2のように、画像をタイル状に分割し、図7(b)に示す誤差拡散マトリクスを使用する。従って、一つのタイルが3×3画素で構成される場合、参照画素位置はラインL4、L8と列R4、R8、伝播画素位置はラインL3、L7と列R3、R7である。
なお、図10に示すモード以外にも、バンドのライン数が異なるモード、タイルの画素数が異なるモード、誤差拡散係数が異なるモードなどが設定可能である。
[誤差拡散処理部]
図11のブロック図により実施例3の誤差拡散処理部102の構成を説明する。
設定部800は、図10に示すモードに対応する設定情報を記憶するテーブルを備え、ユーザが選択したモードに応じて、領域分割部101の領域分割方法、および、乗算部306が使用する誤差拡散マトリクスを設定する。さらに、モードに応じて、参照画素位置を示すデータをレジスタ801に書き込み、伝播画素位置を示すデータをレジスタ802に書き込む。
バッファ参照判定部310は、注目画素のバンドまたはタイル上の位置(x, y)と、レジスタ801に書き込まれた参照画素位置を比較して、注目画素が誤差を参照すべき画素位置か否かを判定する。同様に、バッファ格納判定部311は、注目画素のバンドまたはタイル上の位置(x, y)と、レジスタ802に書き込まれた伝播画素位置を比較して、注目画素が誤差を伝播すべき画素位置か否かを判定する。
また、モード1のように重複処理領域がある場合、誤差拡散処理部102からすべての量子化結果が出力されないように制御してもよい。つまり、バンドの最終行付近の誤差拡散処理において重複処理領域の量子化結果を出力し、バンドの先頭行付近の誤差拡散処理において重複処理領域の量子化結果を出力しないようにしてもよい。勿論、バンドの最終行付近の誤差拡散処理において重複処理領域の量子化結果を出力せずに、バンドの先頭行付近の誤差拡散処理において重複処理領域の量子化結果を出力してもよい。
誤差バッファ制御部308は、設定部800から入力される重複処理領域に関する情報と、バッファ参照判定部310またはバッファ格納判定部311から入力される注目画素の位置情報に基づき、出力部803を制御する。なお、重複処理領域に関する情報とは、例えばバンドのライン数、重複処理領域のライン数などである。出力部803は、誤差バッファ制御部308の制御に従い、量子化結果を出力する・出力しないを切り替える。
なお、図11は、簡略化のためにレジスタ303およびセレクタ304a、304b、304cを記載せずに、量子化誤差を伝播する場合の構成を記載した。実際には、レジスタ303およびセレクタ304a、304b、304cにより量子化誤差の伝播と拡散誤差の伝播の切り換えが可能である。さらに、モードに量子化誤差の伝播と拡散誤差の伝播の切り換えを含め、設定部800によるレジスタ303の値の設定により、量子化誤差の伝播と拡散誤差の伝播の切り換えることもできる。
[重複処理領域がある場合の処理]
以下では、モード1のように重複処理領域がある場合の誤差拡散処理を説明する。
図12により画像の分割方法、誤差拡散処理における画素の走査方法、誤差拡散マトリクスの例を説明する。領域分割部101は、図12(a)に示すように、各バンドが重複処理領域を有するように入力画像200をバンド状に分割する。誤差拡散処理部102は、まずバンド215について、バンドの長手方向に直交する方向(図12(a)の下方向)に画素を走査して、図12(b)または図12(c)に示す誤差拡散マトリクスを使用して誤差拡散処理を行う。続いて、バンド216、そしてバンド217の順に画素を走査して、図12(b)または図12(c)に示す誤差拡散マトリクスを使用して誤差拡散処理を行う。なお、図2(b)および図2(c)に示す誤差拡散マトリクスを使用してもよい。
図12(b)は注目画素が近傍画素から受け取る誤差の比率(拡散係数)を示す。つまり、「*」で示す注目画素には、一行上の画素から7/48、二行上の画素から5/48の比率で量子化誤差が拡散される。また、一列前の五画素から(上から順に)3/48、5/48、7/48、5/48、3/48の比率で量子化誤差が拡散される。さらに、二列前の五画素から(上から順に)1/48、3/48、5/48、3/48、1/48の比率で量子化誤差が拡散される。
図12(c)は注目画素から近傍画素へ誤差を拡散する比率(拡散係数)を示す。つまり、「*」で示す注目画素から、一行下の画素へ7/48、二行下の画素へ5/48の比率で量子化誤差が拡散される。また、一列後の五画素へ(上から順に)3/48、5/48、7/48、5/48、3/48の比率で量子化誤差が拡散される。さらに、二列後の五画素へ(上から順に)1/48、3/48、5/48、3/48、1/48の比率で量子化誤差が拡散される。なお、図12(b)は誤差を受け取る側の画素から見た場合の誤差拡散マトリクスを示し、図12(c)は誤差を拡散する側の画素から見た誤差拡散マトリクスを示し、両者は同じ誤差拡散マトリクスを表している。
図13のフローチャートにより重複処理領域があり、量子化誤差を伝播する場合の誤差拡散処理例を説明する。なお、モードが選択され、設定部800によりモードに対応した設定が済んでいるものとする。
誤差拡散処理部102は、注目画素の値を入力する(S701)。バッファ参照判定部310は、注目画素が伝播画素位置にあるか否かを判定する(S702)。図14により誤差を伝播すべき画素位置を説明する。
図14(a)に示すように、各バンドが重複処理領域2ラインを含む5ラインから構成されるとする。そして、ラインL3上に位置するバンド216の注目画素1100を処理する場合、注目画素1100の拡散元画素は、図14(b)に示す近傍画素A〜Lの12画素である。ラインL1上の拡散元画素A、B、CおよびラインL2上の拡散元画素D、E、Fの六画素はバンド215に含まれ、注目バンド216には含まれない。従って、注目バンド216の処理中に誤差メモリ305に格納される量子化誤差は、拡散元画素G〜Lで生じた量子化誤差のみで、拡散元画素A〜Fで生じた量子化誤差が格納されることはない。そこで、図14(b)に示すように、前バンドの誤差拡散処理において発生した量子化誤差を誤差バッファ309に格納し、注目画素1100の誤差拡散処理において拡散元画素A〜Fの量子化誤差a〜fを参照する。
また、ラインL4上に位置するバンド216の注目画素1102を処理する場合、注目画素1102の拡散元画素は、図14(c)に示す近傍画素D〜Oの12画素である。ラインL2上の拡散元画素D、E、Fの三画素はバンド215に含まれ、注目バンド216には含まれない。従って、注目バンド216の処理中に誤差メモリ305に格納される量子化誤差は、拡散元画素G〜Oで生じた量子化誤差のみで、拡散元画素D〜Fで生じた量子化誤差が格納されることはない。そこで、図14(c)に示すように、注目画素1102の誤差拡散処理において誤差バッファ309に格納された拡散元画素D〜Fの量子化誤差d〜fを参照する。
このように、ラインL3上に位置する画素の誤差拡散処理は、注目画素1100と同様、前バンド215のラインL1、L2上に位置する画素の量子化誤差を参照する必要がある。そして、ラインL4上に位置する画素の誤差拡散処理は、注目画素1102と同様、前バンド215のラインL2上に位置する画素の量子化誤差を参照する必要がある。
なお、拡散元画素G、H、I、J、Mの量子化誤差は、バンド216の誤差拡散処理において誤差メモリ305に格納された量子化誤差を参照する。また、バンド215の誤差拡散処理において拡散元画素G、H、I、J、Mの量子化誤差を誤差バッファ309に格納し、バンド216の誤差拡散処理において誤差バッファ309に格納された拡散元画素G、H、I、J、Mの量子化誤差を参照することもできる。このように、図12(b)に示す誤差拡散マトリクスを使用する場合、伝播誤差を参照すべき画素位置は、注目バンドの先頭行および二行目の画素位置である。
注目画素が参照画素位置にある場合、誤差バッファ制御部308は、バッファ参照判定部310が出力する位置情報に基づき誤差バッファ309から量子化誤差を読み出し、位置情報と量子化誤差を乗算部306に供給する(S703)。次に、誤差バッファ制御部308は、誤差メモリ305が保持する注目画素に対する拡散元画素の量子化誤差を読み出し、拡散元画素の位置情報と量子化誤差を乗算部306に供給する(S704)。乗算部306は、位置情報に対応する図12(b)に示す拡散マトリクスの拡散係数を量子化誤差に乗じた拡散誤差を積算部307に供給する(S705)。積算部307は、乗算部306から順次入力される拡散誤差を積算する(S706)。なお、ステップS703〜S706の処理は、拡散元画素の数(図12(b)の例であれば12画素)分繰り返され、拡散誤差の積算が終了すると、積算部307は積算結果を誤差加算部300に出力する。
誤差加算部300は、積算部307から入力される拡散誤差の積算値と注目画素の値を加算し、加算結果を量子化部301に出力する(S707)。量子化部301は、誤差加算部300から入力される加算値を量子化する(S708)。量子化誤差算出部302は、量子化結果から誤差加算部300が出力する加算値を減算した量子化誤差を誤差メモリ305の注目画素の画素位置に対応する位置に格納する(S709)。
次に、バッファ格納判定部311は、注目画素が伝播画素位置にあるか否かを判定する(S710)。上述したように、図12(c)に示す誤差拡散マトリクスを使用し、バンド215が注目バンドの場合、ラインL1、L2上の画素が誤差を伝播すべき画素である。つまり、誤差を伝播すべき画素位置は、注目バンドの非重複領域の最終行とその上の行の画素位置である。
注目画素が伝播画素位置にある場合、誤差バッファ制御部308は、量子化誤差算出部302が出力する量子化誤差を、バッファ格納判定部311が出力する位置情報に基づき誤差バッファ309に格納する(S711)。さらに、注目画素が重複処理領域にあるか否かを判定し(S712)、重複領域にあれば量子化結果を出力するか否かを判定し(S713)、量子化結果を出力する場合は出力部803を制御して量子化結果を出力させる(S714)。次に、誤差拡散処理部102は、画像入力部100が入力した画像の全画素について誤差拡散処理が終了したか否かを判定し(S715)、全画素の誤差拡散処理が終了するまでステップS701〜S714の処理を繰り返す。
このように、重複処理領域がある場合の参照画素位置は領域の先頭行から始まり、重複処理領域がない場合と変わらない。しかし、重複処理領域がある場合の伝播画素位置は領域の最終行で終わる形態にはならず、領域の非重複領域の最終行で終わる形態になる。この伝播画素位置は、次バンドの処理において誤差メモリ305に量子化誤差が存在しない画素位置である。従って、重複処理領域がある場合、誤差バッファ309に格納する量子化誤差は、注目バンド内の画素位置だけでは決定することができない。本実施例では、ユーザが選択したモードに応じて、レジスタ802に書き込んだ伝播画素位置と注目画素の位置から、バッファ格納判定部311において任意の位置を伝播画素位置として判定する例を示した。誤差拡散処理の連続性を維持するには、レジスタ802に設定する伝播画素位置は、領域の分割方法、誤差拡散マトリクスの形状によって決めることが望ましい。従って、これら情報をバッファ格納判定部311に与え、伝播画素位置か否かを判定する構成によっても、適切な誤差伝播が可能である。
[その他の実施例]
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステムあるいは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (19)

  1. 複数の領域に分割された画像の領域ごとに誤差拡散処理を行う画像処理装置であって、
    前記誤差拡散処理における注目画素が第一の誤差保持手段の参照または書き込みが必要な画素位置にあるか否かを判定する判定手段と、
    前記判定手段の判定結果が、前記第一の誤差保持手段の参照が必要な画素位置に前記注目画素があることを示す場合は前記第一の誤差保持手段から既に誤差拡散処理された領域の前記誤差拡散処理で発生した参照すべき量子化誤差を取得するとともに、前記注目画素を含む領域の、前記注目画素の近傍の画素の誤差拡散処理で発生した量子化誤差を第二の誤差保持手段から取得する取得手段と、
    誤差拡散マトリクスに従い、前記取得された量子化誤差から拡散誤差を算出する算出手段と、
    前記注目画素の値と前記拡散誤差を加算した加算値を量子化して前記注目画素の量子化値とする量子化手段と、
    前記注目画素の量子化誤差として前記注目画素の量子化値と前記加算値の差分を計算する計算手段と、
    前記判定手段の判定結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素がないことを示す場合は前記注目画素の量子化誤差を前記第二の誤差保持手段に格納し、前記判定手段の判定結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素があることを示す場合は前記注目画素の量子化誤差を前記第一および第二の誤差保持手段に格納する格納手段とを有し、
    前記複数の領域のそれぞれは、隣接する領域との間に重複領域を有するように分割された領域であり、前記判定手段は、前記重複領域の位置に基づき前記判定を行うことを特徴とする画像処理装置。
  2. 前記判定手段は、前記誤差拡散処理が未処理の領域へ誤差を伝播すべき画素位置に注目画素がある場合、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素があると判定することを特徴とする請求項1に記載された画像処理装置。
  3. 複数の領域に分割された画像の領域ごとに誤差拡散処理を行う画像処理装置であって、
    前記誤差拡散処理における注目画素が第一の誤差保持手段の参照または書き込みが必要な画素位置にあるか否かを判定する判定手段と、
    前記判定手段の判定結果が、前記第一の誤差保持手段の参照が必要な画素位置に前記注目画素があることを示す場合は前記第一の誤差保持手段から既に誤差拡散処理された領域の前記誤差拡散処理で発生した前記注目画素に対する拡散誤差を取得するとともに、前記注目画素を含む領域の、前記注目画素の近傍の画素の誤差拡散処理で発生した量子化誤差から算出された前記注目画素に対する拡散誤差を第二の誤差保持手段から取得する取得手段と、
    前記注目画素の値と前記取得された拡散誤差を加算した加算値を量子化して前記注目画素の量子化値とする量子化手段と、
    前記注目画素の量子化誤差として前記注目画素の量子化値と前記加算値の差分を計算する計算手段と、
    誤差拡散マトリクスに従い、前記注目画素の量子化誤差から前記注目画素の近傍の画素に拡散する拡散誤差を算出する算出手段と、
    前記拡散誤差を前記第二の誤差保持手段に格納するとともに、前記判定手段の判定結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素があることを示す場合は前記拡散誤差のうち前記誤差拡散処理が未処理の領域に伝播すべき拡散誤差を前記第一の誤差保持手段に格納する格納手段とを有し、
    前記複数の領域のそれぞれは、隣接する領域との間に重複領域を有するように分割された領域であり、前記判定手段は、前記重複領域の位置に基づき前記判定を行うことを特徴とする画像処理装置。
  4. 前記判定手段は、さらに、前記注目画素を含む領域における前記注目画素の位置、および、前記領域の分割方法に基づき、前記判定を行うことを特徴とする請求項1から請求項3の何れか一項に記載された画像処理装置。
  5. 前記判定手段は、さらに、前記注目画素を含む領域における前記注目画素の位置に応じて、前記第一の誤差保持手段の読取位置を示す情報を前記取得手段に供給し、前記第一の誤差保持手段の書込位置を示す情報を前記格納手段に供給することを特徴とする請求項4に記載された画像処理装置。
  6. さらに、前記画像の分割方法および前記誤差拡散マトリクスが示す誤差の参照範囲に応じて、前記誤差を参照すべき画素位置および前記誤差を伝播すべき画素位置を示す情報を前記判定手段に設定する設定手段を有することを特徴とする請求項4または請求項5に記載された画像処理装置。
  7. 前記第一の誤差保持手段および前記第二の誤差保持手段は個別の記憶装置であることを特徴とする請求項1から請求項6の何れか一項に記載された画像処理装置。
  8. 前記第一および第二の誤差保持手段は同一の記憶装置の異なる記憶領域に対応することを特徴とする請求項1から請求項6の何れか一項に記載された画像処理装置。
  9. 前記第一の誤差保持手段はダイナミックランダムアクセスメモリ(DRAM)によって構成され、前記第二の誤差保持手段はスタティックランダムアクセスメモリ(SRAM)によって構成されることを特徴とする請求項1から請求項6の何れか一項に記載された画像処理装置。
  10. 複数の領域に分割された画像の領域ごとに誤差拡散処理を行う画像処理装置であって、
    前記誤差拡散処理における注目画素が第一の誤差保持手段の参照または書き込みが必要な画素位置にあるか否かを判定する判定手段と、
    前記判定手段の判定結果が、前記第一の誤差保持手段の参照が必要な画素位置に前記注目画素があることを示す場合は前記第一の誤差保持手段から既に誤差拡散処理された領域の前記誤差拡散処理で発生した参照すべき量子化誤差を取得するとともに、前記注目画素を含む領域の、前記注目画素の近傍の画素の誤差拡散処理で発生した量子化誤差を第二の誤差保持手段から取得する取得手段と、
    誤差拡散マトリクスに従い、前記取得された量子化誤差から拡散誤差を算出する算出手段と、
    前記注目画素の値と前記拡散誤差を加算した加算値を量子化して前記注目画素の量子化値とする量子化手段と、
    前記注目画素の量子化誤差として前記注目画素の量子化値と前記加算値の差分を計算する計算手段と、
    前記判定手段の判定結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素がないことを示す場合は前記注目画素の量子化誤差を前記第二の誤差保持手段に格納し、前記判定手段の判定結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素があることを示す場合は前記注目画素の量子化誤差を前記第一および第二の誤差保持手段に格納する格納手段と、
    複数のモードからユーザが選択したモードに応じて、前記判定手段を設定する設定手段と、
    前記選択されたモードに応じて、前記画像を分割する分割手段とを有することを特徴とする画像処理装置。
  11. 複数の領域に分割された画像の領域ごとに誤差拡散処理を行う画像処理装置であって、
    前記誤差拡散処理における注目画素が第一の誤差保持手段の参照または書き込みが必要な画素位置にあるか否かを判定する判定手段と、
    前記判定手段の判定結果が、前記第一の誤差保持手段の参照が必要な画素位置に前記注目画素があることを示す場合は前記第一の誤差保持手段から既に誤差拡散処理された領域の前記誤差拡散処理で発生した前記注目画素に対する拡散誤差を取得するとともに、前記注目画素を含む領域の、前記注目画素の近傍の画素の誤差拡散処理で発生した量子化誤差から算出された前記注目画素に対する拡散誤差を第二の誤差保持手段から取得する取得手段と、
    前記注目画素の値と前記取得された拡散誤差を加算した加算値を量子化して前記注目画素の量子化値とする量子化手段と、
    前記注目画素の量子化誤差として前記注目画素の量子化値と前記加算値の差分を計算する計算手段と、
    誤差拡散マトリクスに従い、前記注目画素の量子化誤差から前記注目画素の近傍の画素に拡散する拡散誤差を算出する算出手段と、
    前記拡散誤差を前記第二の誤差保持手段に格納するとともに、前記判定手段の判定結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素があることを示す場合は前記拡散誤差のうち前記誤差拡散処理が未処理の領域に伝播すべき拡散誤差を前記第一の誤差保持手段に格納する格納手段と、
    複数のモードからユーザが選択したモードに応じて、前記判定手段を設定する設定手段と、
    前記選択されたモードに応じて、前記画像を分割する分割手段とを有することを特徴とする画像処理装置。
  12. 前記複数のモードは第一のモードと第二のモードを有し、前記第一のモードが選択された場合に前記分割される領域のサイズと、前記第二のモードが選択された場合に前記分割される領域のサイズが異なることを特徴とする請求項10または請求項11に記載された画像処理装置。
  13. 前記複数のモードは第一のモードと第二のモードを有し、前記第一のモードが選択された場合、前記分割手段は分割された複数の領域のそれぞれが、隣接する領域との間に重複領域を有するように前記画像を分割し、前記第二のモードが選択された場合、前記分割手段は前記重複領域がないように前記画像を分割することを特徴とする請求項10または請求項11に記載された画像処理装置。
  14. 前記選択されたモードに応じて、前記誤差拡散マトリクスが異なることを特徴とする請求項10から請求項13の何れか一項に記載された画像処理装置。
  15. 複数の領域に分割された画像の領域ごとに誤差拡散処理を行う画像処理装置の画像処理方法であって、
    前記誤差拡散処理における注目画素が第一の誤差保持手段の参照または書き込みが必要な画素位置にあるか否かを判定し、
    前記判定の結果が、前記第一の誤差保持手段の参照が必要な画素位置に前記注目画素があることを示す場合は前記第一の誤差保持手段から既に誤差拡散処理された領域の前記誤差拡散処理で発生した参照すべき量子化誤差を取得するとともに、前記注目画素を含む領域の、前記注目画素の近傍の画素の誤差拡散処理で発生した量子化誤差を第二の誤差保持手段から取得し、
    誤差拡散マトリクスに従い、前記取得された量子化誤差から拡散誤差を算出し、
    前記注目画素の値と前記拡散誤差を加算した加算値を量子化して前記注目画素の量子化値とし、
    前記注目画素の量子化誤差として前記注目画素の量子化値と前記加算値の差分を計算し、
    前記判定の結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素がないことを示す場合は前記注目画素の量子化誤差を前記第二の誤差保持手段に格納し、前記判定の結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素があることを示す場合は前記注目画素の量子化誤差を前記第一および第二の誤差保持手段に格納し、
    前記複数の領域のそれぞれは、隣接する領域との間に重複領域を有するように分割された領域であり、前記重複領域の位置に基づき前記判定が行われることを特徴とする画像処理方法。
  16. 複数の領域に分割された画像の領域ごとに誤差拡散処理を行う画像処理装置の画像処理方法であって、
    前記誤差拡散処理における注目画素が第一の誤差保持手段の参照または書き込みが必要な画素位置にあるか否かを判定し、
    前記判定の結果が、前記第一の誤差保持手段の参照が必要な画素位置に前記注目画素があることを示す場合は前記第一の誤差保持手段から既に誤差拡散処理された領域の前記誤差拡散処理で発生した前記注目画素に対する拡散誤差を取得するとともに、前記注目画素を含む領域の、前記注目画素の近傍の画素の誤差拡散処理で発生した量子化誤差から算出された前記注目画素に対する拡散誤差を第二の誤差保持手段から取得し、
    前記注目画素の値と前記取得された拡散誤差を加算した加算値を量子化して前記注目画素の量子化値とし、
    前記注目画素の量子化誤差として前記注目画素の量子化値と前記加算値の差分を計算し、
    誤差拡散マトリクスに従い、前記注目画素の量子化誤差から前記注目画素の近傍の画素に拡散する拡散誤差を算出し、
    前記拡散誤差を前記第二の誤差保持手段に格納するとともに、前記判定の結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素があることを示す場合は前記拡散誤差のうち前記誤差拡散処理が未処理の領域に伝播すべき拡散誤差を前記第一の誤差保持手段に格納し、
    前記複数の領域のそれぞれは、隣接する領域との間に重複領域を有するように分割された領域であり、前記重複領域の位置に基づき前記判定が行われることを特徴とする画像処理方法。
  17. 複数の領域に分割された画像の領域ごとに誤差拡散処理を行う画像処理装置の画像処理方法であって、
    前記誤差拡散処理における注目画素が第一の誤差保持手段の参照または書き込みが必要な画素位置にあるか否かを判定し、
    前記判定の結果が、前記第一の誤差保持手段の参照が必要な画素位置に前記注目画素があることを示す場合は前記第一の誤差保持手段から既に誤差拡散処理された領域の前記誤差拡散処理で発生した参照すべき量子化誤差を取得するとともに、前記注目画素を含む領域の、前記注目画素の近傍の画素の誤差拡散処理で発生した量子化誤差を第二の誤差保持手段から取得し、
    誤差拡散マトリクスに従い、前記取得された量子化誤差から拡散誤差を算出し、
    前記注目画素の値と前記拡散誤差を加算した加算値を量子化して前記注目画素の量子化値とし、
    前記注目画素の量子化誤差として前記注目画素の量子化値と前記加算値の差分を計算し、
    前記判定の結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素がないことを示す場合は前記注目画素の量子化誤差を前記第二の誤差保持手段に格納し、前記判定の結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素があることを示す場合は前記注目画素の量子化誤差を前記第一および第二の誤差保持手段に格納し、
    複数のモードからユーザが選択したモードに応じて前記判定を設定し、
    前記選択されたモードに応じて前記画像を分割することを特徴とする画像処理方法。
  18. 複数の領域に分割された画像の領域ごとに誤差拡散処理を行う画像処理装置の画像処理方法であって、
    前記誤差拡散処理における注目画素が第一の誤差保持手段の参照または書き込みが必要な画素位置にあるか否かを判定し、
    前記判定の結果が、前記第一の誤差保持手段の参照が必要な画素位置に前記注目画素があることを示す場合は前記第一の誤差保持手段から既に誤差拡散処理された領域の前記誤差拡散処理で発生した前記注目画素に対する拡散誤差を取得するとともに、前記注目画素を含む領域の、前記注目画素の近傍の画素の誤差拡散処理で発生した量子化誤差から算出された前記注目画素に対する拡散誤差を第二の誤差保持手段から取得し、
    前記注目画素の値と前記取得された拡散誤差を加算した加算値を量子化して前記注目画素の量子化値とし、
    前記注目画素の量子化誤差として前記注目画素の量子化値と前記加算値の差分を計算し、
    誤差拡散マトリクスに従い、前記注目画素の量子化誤差から前記注目画素の近傍の画素に拡散する拡散誤差を算出し、
    前記拡散誤差を前記第二の誤差保持手段に格納するとともに、前記判定の結果が、前記第一の誤差保持手段の書き込みが必要な画素位置に前記注目画素があることを示す場合は前記拡散誤差のうち前記誤差拡散処理が未処理の領域に伝播すべき拡散誤差を前記第一の誤差保持手段に格納し、
    複数のモードからユーザが選択したモードに応じて前記判定を設定し、
    前記選択されたモードに応じて前記画像を分割することを特徴とする画像処理方法。
  19. コンピュータを請求項1から請求項14の何れか一項に記載された画像処理装置の各手段として機能させるためのプログラム。
JP2011143392A 2010-08-25 2011-06-28 画像処理装置およびその方法 Active JP5797030B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2011143392A JP5797030B2 (ja) 2010-08-25 2011-06-28 画像処理装置およびその方法
US13/208,716 US8947735B2 (en) 2010-08-25 2011-08-12 Image processing apparatus and image processing method for performing error diffusion processing for each region of an image
EP11178315A EP2424214A1 (en) 2010-08-25 2011-08-22 Image processing apparatus and image processing method
CN201110249581.9A CN102387286B (zh) 2010-08-25 2011-08-25 图像处理设备和图像处理方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2010188756 2010-08-25
JP2010188756 2010-08-25
JP2011143392A JP5797030B2 (ja) 2010-08-25 2011-06-28 画像処理装置およびその方法

Publications (3)

Publication Number Publication Date
JP2012070359A JP2012070359A (ja) 2012-04-05
JP2012070359A5 JP2012070359A5 (ja) 2014-08-14
JP5797030B2 true JP5797030B2 (ja) 2015-10-21

Family

ID=44677533

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011143392A Active JP5797030B2 (ja) 2010-08-25 2011-06-28 画像処理装置およびその方法

Country Status (4)

Country Link
US (1) US8947735B2 (ja)
EP (1) EP2424214A1 (ja)
JP (1) JP5797030B2 (ja)
CN (1) CN102387286B (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8897580B2 (en) 2012-07-30 2014-11-25 Apple Inc. Error diffusion with color conversion and encoding
US9147377B2 (en) * 2013-07-31 2015-09-29 Taiwan Semiconductor Manufacturing Company, Ltd. Method for image dithering for lithographic processes
CN110741408B (zh) * 2017-09-15 2023-08-01 富士胶片商业创新有限公司 图像处理装置、图像处理方法和图像处理程序
JP2020022095A (ja) 2018-08-01 2020-02-06 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP2020022090A (ja) 2018-08-01 2020-02-06 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP7095545B2 (ja) * 2018-10-15 2022-07-05 セイコーエプソン株式会社 画像処理装置、画像処理方法、および印刷装置

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1987000210A1 (en) 1985-06-27 1987-01-15 Cheminor A/S A method for the production of metals by electrolysis
JPH0691606B2 (ja) * 1987-06-11 1994-11-14 キヤノン株式会社 画像処理方法
JPH0648850B2 (ja) 1987-06-11 1994-06-22 キヤノン株式会社 画像処理方法
JP2684497B2 (ja) 1992-09-14 1997-12-03 株式会社平安コーポレーション プレカット加工機
US5621545A (en) 1993-12-08 1997-04-15 Motta; Ricardo J. Image production using color error diffusion
JPH08228285A (ja) 1995-02-21 1996-09-03 Seiko Epson Corp 画像処理方法および画像処理装置
US6330075B1 (en) 1995-08-03 2001-12-11 Canon Kabushiki Kaisha Image processing method and apparatus
JPH09135351A (ja) 1995-11-08 1997-05-20 Brother Ind Ltd 画像処理装置
US5739917A (en) 1996-07-12 1998-04-14 Seiko Epson Corporation Error-diffusion-type half-toning employing adaptive thresholding for enhanced smoothness
US5748785A (en) 1996-09-26 1998-05-05 Xerox Corporation Inter-separation color image processing using error diffusion
US6175424B1 (en) 1996-12-20 2001-01-16 Canon Kabushiki Kaisha Image processing apparatus and image processing method
KR100222989B1 (ko) * 1997-07-04 1999-10-01 윤종용 셔틀 방식의 독취 장치에서 독취된 이미지를 이진화하기 위한 이미지 처리 장치 및 방법
JP3912633B2 (ja) 1998-01-23 2007-05-09 ソニー株式会社 画像処理方法および装置
JP3962508B2 (ja) 1999-08-27 2007-08-22 キヤノン株式会社 画像処理装置およびその方法、並びに、記憶媒体
JP3733826B2 (ja) 2000-03-03 2006-01-11 セイコーエプソン株式会社 画像処理装置
US8009327B2 (en) 2002-07-11 2011-08-30 Canon Kabushiki Kaisha Method and apparatus for image processing
JP2005286360A (ja) * 2004-03-26 2005-10-13 Seiko Epson Corp 画像処理装置及び画像処理方法ならびにそのプログラム
JP4105704B2 (ja) * 2004-05-18 2008-06-25 シャープ株式会社 画像処理装置、画像形成装置、画像処理方法、プログラム、および記録媒体
JP4471813B2 (ja) 2004-10-29 2010-06-02 株式会社リコー 画像処理装置、画像形成装置及びプログラム
JP4765635B2 (ja) 2005-09-15 2011-09-07 セイコーエプソン株式会社 高画質ハーフトーン処理
JP4204600B2 (ja) 2006-04-03 2009-01-07 シャープ株式会社 画像処理装置、誤差拡散処理方法、及びプログラム
KR100834680B1 (ko) 2006-09-18 2008-06-02 삼성전자주식회사 이동통신 단말기에서 출력되는 동영상 및 이미지의 화질을개선하기 위한 장치 및 방법
JP4953789B2 (ja) * 2006-12-07 2012-06-13 キヤノン株式会社 画像処理装置、記録装置、画像処理方法、プログラム、および記憶媒体
JP4989378B2 (ja) 2007-09-03 2012-08-01 キヤノン株式会社 画像処理方法及び記録装置
JP4973550B2 (ja) * 2008-03-11 2012-07-11 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置
JP2009303185A (ja) 2008-06-17 2009-12-24 Canon Inc 画像処理装置およびその方法
JP5197335B2 (ja) 2008-12-05 2013-05-15 キヤノン株式会社 画像形成装置およびその制御方法、情報処理装置およびその制御方法、プログラム、並びに記憶媒体
US20100188678A1 (en) 2009-01-29 2010-07-29 Canon Kabushiki Kaisha Image processing apparatus, printing apparatus, and image processing method
JP5508031B2 (ja) 2010-01-06 2014-05-28 キヤノン株式会社 画像処理装置および画像処理方法

Also Published As

Publication number Publication date
CN102387286B (zh) 2014-03-05
CN102387286A (zh) 2012-03-21
US8947735B2 (en) 2015-02-03
JP2012070359A (ja) 2012-04-05
EP2424214A1 (en) 2012-02-29
US20120050815A1 (en) 2012-03-01

Similar Documents

Publication Publication Date Title
JP5797030B2 (ja) 画像処理装置およびその方法
JP4100782B2 (ja) 誤差拡散値の処理方法
JP3247737B2 (ja) 画像内画素値量子化方法
US8390890B2 (en) Halftone image generation method and image processing system and computer program product thereof
JP5013805B2 (ja) プロセッサ読取可能記憶媒体
JP5641822B2 (ja) 画像処理装置およびその方法
JP5254740B2 (ja) 画像処理装置および画像処理方法
JP2012138822A (ja) 誤差拡散処理回路
JPH11234513A (ja) 擬似階調画像処理装置
KR101228931B1 (ko) 하이브리드 룩업 테이블을 이용한 화상처리방법 및화상처리장치
JP6448345B2 (ja) 画像処理装置
JP5075915B2 (ja) 誤差拡散スクリーニング技術を用いて画像を走査し処理する方法及びシステム
JPH08274992A (ja) 画像処理方法及び装置
KR100772410B1 (ko) 하프토닝 장치 및 방법
US9111354B2 (en) Image processing method and image processing apparatus
KR20100042515A (ko) 화상처리방법 및 이를 이용한 화상형성장치
JP2003198843A (ja) 削減されたバッファでのエラー拡散
JP4262148B2 (ja) 画像処理装置及び画像処理方法
JP4834582B2 (ja) 画像処理装置およびその方法
JP2007194955A (ja) 画像処理装置
JP2701310B2 (ja) 中間調画像生成方法および装置
JPH08228285A (ja) 画像処理方法および画像処理装置
JP2004289236A (ja) 画像処理装置および画像処理方法
JPH11331621A (ja) 画像処理装置及び方法
JP2005252807A (ja) 画像処理方法、印刷システム及びプリンタ

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140626

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140626

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150306

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150428

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150721

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150818

R151 Written notification of patent or utility model registration

Ref document number: 5797030

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151