JP3632830B2 - Error diffusion processing method and error diffusion processing apparatus - Google Patents
Error diffusion processing method and error diffusion processing apparatus Download PDFInfo
- Publication number
- JP3632830B2 JP3632830B2 JP2000115601A JP2000115601A JP3632830B2 JP 3632830 B2 JP3632830 B2 JP 3632830B2 JP 2000115601 A JP2000115601 A JP 2000115601A JP 2000115601 A JP2000115601 A JP 2000115601A JP 3632830 B2 JP3632830 B2 JP 3632830B2
- Authority
- JP
- Japan
- Prior art keywords
- diffusion
- error
- pixel
- interest
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、原画像をもとの階調よりも少ない階調数の画像に変換する時に、変換後の画像における各画像の階調値と原画像における階調値との誤差を周囲の画素に分散する誤差拡散法に基づいて画像処理を行う場合の誤差拡散(誤差分散)処理方法および誤差拡散処理装置に関するものである。
【0002】
【従来の技術】
従来より、原画像をもとの階調よりも少ない階調数の画像に変換する時には誤差拡散法という方法が採用されている。上記誤差拡散法は、変換後の画像における各画像の階調値と原画像における階調値との誤差を周囲の画素に分散する方法である。
【0003】
上記誤差拡散法の基本原理について説明する。尚、以下の説明では、256階調の中間調画像を0または255の2値化変換する場合を例示する。
【0004】
まず、図13に示すような原画像に対して、ある注目画素に対して、濃度値を所定の閾値と比較することによって0または255の何れかに変換する。上記注目画素は、最初、左上隅の画素から始まって主走査方向に移動し、主走査方向に1ライン分の処理が終了すると副走査方向に沿って次ラインに移動するものとする。また、上記閾値は、ここでは、256(階調)の中間値である128であるとする。
【0005】
最初、原画像における上記左上隅の画素の濃度値は129であるため、これを閾値128と比較すると、
(注目画素の濃度値)>(閾値)
となり、該注目画素の濃度値は255に変換される。この時、上記注目画素を129から255に変換することにより255−129=126の誤差(差分値)が生じるため、この誤差を図14に示す誤差拡散処理テーブルに基づいて周囲の画素に分散する。上記誤差拡散処理テーブルは、予め設定された拡散計数をマトリクス形式で示す一例のものであり、上記注目画素における差分値に拡散計数を乗じた値を周囲画素に振り分ける。
【0006】
尚、上記図14のように、誤差拡散処理テーブルに3×5のマトリクスを用いる場合の振りまき範囲は3×5である。誤差拡散法においては、上記振りまき範囲が大きいほど、変換後の画像において高周波成分を残した写真画質に良好な画質が得られる。また、誤差拡散処理の前と後で、画像濃度が保たれるように上記誤差拡散処理テーブルにおける拡散計数の総和は1となるようにする。
【0007】
ここで、例えば、注目画素の右側の画素においては、
126(注目画素の差分値)×10/64(当該画素における拡散計数)
≒20(小数点以下は四捨五入、もしくは切捨てとする)
が振り分け値となる(但し、該振り分け値の符号は、画像全体の濃度を保存するために注目画素の差分値とは逆となり、−20が注目画素の右側の画素に加算される)。上記誤差拡散処理テーブルに基づいて周囲の画素に振り分けらる値を同様に計算すると、図15のようになる。上記図15に示した振り分け値を原画像において振り分けると図16のようになる。
【0008】
以上により最初の注目画素についての誤差拡散が終了したため、次に、該注目画素の右側の画素を新たな注目画素として誤差拡散を行う。新たな注目画素は、先の注目画素の誤差拡散によってその濃度値が109となっており、この濃度値を先の閾値と比較すると、
(注目画素の濃度値)≦(閾値)
となっているため、該注目画素の濃度値は0に変換される。この時、上記注目画素を109から0に変換することにより0−109=−109の誤差(差分値)が生じるため、この誤差を図14に示す誤差拡散処理テーブルに基づいて周囲の画素に分散すると、その振り分け値は図17のようになる。上記図17に示した振り分け値を原画像において振り分けると図18のようになる。
【0009】
このように、注目画素を順次ずらしていきながら、全ての画素について誤差拡散を行うことにより、原画像をもとの階調よりも少ない階調数の画像に変換することができる。
【0010】
以上は、誤差拡散法の基本原理を示したものであるが、続いて上記演算を実際に行うためのハード構成について説明する。
【0011】
先ず、上述の誤差拡散処理テーブルに基づいて振り分け値を算出するための拡散誤差演算回路の構成を図19に示す。上記拡散誤差演算回路には、注目画素の濃度値ERR−SUMと閾値THとが入力として与えられる。尚、ここでの注目画素の濃度値ERR−SUMは、先に誤差拡散処理のなされた画素の振り分け値を加算された後の値である。上記濃度値ERR−SUMおよび閾値THは、比較器101および誤差量算出部102に入力される。
【0012】
比較器101では濃度値ERR−SUMと閾値THとを比較することにより、注目画素の濃度値が0または255に変換される。すなわち、ERR−SUM>THである場合には、上記注目画素の濃度値は255に変換される。また、ERR−SUM≦THである場合には、上記注目画素の濃度値は0に変換される。尚、2値化データにおいては、その出力は0または1であり、濃度値が255は2値化データの1に相当する。したがって、ERR−SUM>THの場合には比較器101の出力はSDAT=1としてドットを形成し、ERR−SUM≦THの場合には比較器101の出力はSDAT=0でドットを形成しない。
【0013】
一方、誤差量算出部102においては、2値化された注目画素における誤差量ERRが算出される。すなわち、ERR−SUM>THである場合には、上述したように上記注目画素の濃度値は255に変換されるため、ERR=255−ERR−SUMとなる。また、ERR−SUM≦THである場合には上記注目画素の濃度値は0に変換されるため、ERR=ERR−SUMとなる。こうして算出された誤差量ERRは、乗算器103Aないし103Lへ送られる。同時に、上記各乗算器103Aないし103Lには誤差拡散処理テーブルに対応する拡散計数W−AないしW−Lが与えられ、誤差量ERRとそれぞれの拡散計数W−AないしW−Lとの積が計算される。
【0014】
ここで、誤差量ERRと拡散計数との積は拡散誤差の大きさを示し、乗算器103Aないし103Lのそれぞれに接続されたデコーダ104Aないし104Lに入力される。また、上記誤差量ERRは、ERR−SUM>THの場合、ERR−SUM≦THの場合の何れにおいても0以上の値となるが、ERR−SUM>THの場合には、注目画素における濃度値が255に変換されることにより、該濃度値は増加することとなる(逆に、ERR−SUM≦THの場合には、注目画素における濃度値は減少する)。
【0015】
したがって、画像全体の濃度を維持するためには、ERR−SUM>THの場合には拡散誤差は負の値とする必要があり、誤差量算出部102より各デコーダ104Aないし104Lに符号信号SIGN=0が与えられる。0であるSIGNは、拡散誤差の符号が負であることを示し、この時、各デコーダ104Aないし104Lは、誤差量ERRと拡散計数との積の符号を負として、拡散誤差E−AないしE−Lを出力する。ERR−SUM≦THの場合には、誤差量算出部102より各デコーダ104Aないし104Lに符号信号SIGN=1が与えられる。1であるSIGNは、拡散誤差の符号が正であることを示し、この時、各デコーダ104Aないし104Lは、誤差量ERRと拡散計数との積の符号を正として、拡散誤差E−AないしE−Lを出力する。上記拡散誤差E−AないしE−Lは、注目画素に対して図20に示すマトリクス配列を形成する。
【0016】
上述のようにして求まった拡散誤差は、上述したように注目画素の周囲画素に振りまかれ、順次移動する注目画素の濃度値ERR−SUMが変化する。この注目画素の濃度値ERR−SUMを求める演算手順を図21および図22(a)〜(c)を参照して説明する。上記演算を行う演算回路は図21に示される。
【0017】
先ず、第1番目の注目画素(原画像における左上隅画素)について、上記図19に示した拡散誤差演算回路によって該注目画素に対する拡散誤差E−AないしE−Lが算出される。算出された拡散誤差E−AないしE−Lは、概念的には図22(a)〜(c)に示す拡散誤差ブロック105に格納されることとなる。ここで、上記拡散誤差ブロック105は、誤差拡散処理テーブルと同サイズのマトリクスで表されるものであり、拡散誤差の累積加算およびその加算結果(蓄積結果)の保存を行うためのものである。すなわち、第1番目の注目画素について拡散誤差E−AないしE−Lを算出すると、これらの拡散誤差は、図22(a)に示すように、拡散誤差ブロック105に格納される。尚、上記図22(a)の表記において、例えば、E1 A は、第1番目の注目画素に対する拡散誤差E−Aを意味する。
【0018】
これを図21に示す演算回路において説明すると以下のようになる。図19に示す上記拡散誤差演算回路によって算出された拡散誤差E−AないしE−Kのそれぞれは、加算器106Aないし106Kを介してデータレジスタ107Aないし107Kに格納される。また、拡散誤差E−L は加算器を介さずに直接データレジスタ107Lに格納される。この時、上記データレジスタ107Aないし107Lに格納されている値が図23に示すマトリクス配列となって拡散誤差ブロック105をなすものとする。
【0019】
次いで、第2番目の注目画素に移って拡散誤差を算出する時には、図22(b)に示すように、注目画素の移動に伴って拡散誤差ブロック105も1列分だけ移動する。そして、移動された拡散誤差ブロック105において、2番目の注目画素に対して算出された拡散誤差が加算される。尚、上記図22(b)の表記において、例えば、拡散誤差ブロック105の1行4列目のデータを例にとると、その表記の意味は以下の数1によって示される。
【0020】
【数1】
【0021】
これを図21に示す演算回路において説明すると以下のようになる。すなわち、拡散誤差ブロック105が1列分移動することは、該拡散誤差ブロック105内に格納されているデータが拡散誤差ブロック105の移動方向と逆の方向に1列分移動することと同じであり、例えば、第1番目の注目画素に対する拡散誤差E−Bは、データレジスタ107Bの位置からデータレジスタ107Aの位置に移動することとなる(図23参照)。
【0022】
また、上記拡散誤差ブロック105には、同時に2番目の注目画素に対するE−AないしE−Lが格納されるため、図22(b)における拡散誤差ブロック105のデータレジスタ107Aの位置を例にとると、ここには、1番目の注目画素に対する拡散誤差E−Bと2番目の注目画素に対する拡散誤差E−Aとの加算値が格納される。すなわち、図21に示す演算回路においては、例えば、データレジスタ102Bに格納されているデータ(1番目の注目画素に対する拡散誤差E−B )と2番目の注目画素に対する拡散誤差E−Aとが加算器106Aに入力されて、これらの加算値がデータレジスタ107Aに送られる。
【0023】
また、図22(a)に示す拡散誤差ブロック105においてデータレジスタ107Aに対応する位置の画素は、図22(b)に示す拡散誤差ブロック105においては注目画素の位置となる。したがって、データレジスタ107Aに格納されているデータは、加算器108において原画像における該注目画素の初期濃度値IDINと加算され、ERR−SUMとして出力される。こうして出力されたERR−SUMが、図19に示す拡散誤差演算回路の比較器101において閾値と比較され2値化されることは、既に説明した通りである。
【0024】
さらに、上記拡散誤差ブロック105が移動することによって、該拡散誤差ブロック105からはみ出すデータは、ラインメモリ(FIFO)に送られて格納される。すなわち、図22(a)に示す拡散誤差ブロック105において該拡散誤差ブロック105の1列目にある拡散誤差E−CおよびE−Hが、図22(b)においては、ラインメモリ109および110に格納される。これは、図21に示す演算回路においては、データレジスタ107Hにおけるデータがラインメモリ110に送られ、データレジスタ107Cにおけるデータがラインメモリ109に送られることを示している。尚、上記ラインメモリ109および110において格納可能なデータの個数は、原画像の列数をn、拡散誤差ブロック105の列数をmとした場合、n−mとなる。
【0025】
第3番目の注目画素に移って拡散誤差を算出する場合にも、各データレジスタに格納されているデータの移動、および該注目画素に対して算出された拡散誤差の加算が同様に行われ、拡散誤差ブロック105、ラインメモリ109および110に格納されるデータは図22(c)に示すようになる。
【0026】
こうした演算を繰り返すことにより、t番目の注目画素においては、拡散誤差ブロック105、ラインメモリ109および110に格納されるデータは図24に示すようになる。但し、t≧2n+2であり、この時の注目画素は原画像においては3行2列目以降となる。尚、上記図24における表記において、例えば、拡散誤差ブロック105の1行4列目のデータを例にとると、その表記の意味は以下の数2によって示される。
【0027】
【数2】
【0028】
上記誤差拡散処理は、実際には原画像の全ての画素について行われるものであるが、3行2列目よりも前の画素を注目画素としている時点では、ラインメモリ109および110に格納可能な最大数分までデータが格納されていない。例えば、原画像の1行1列目の画素を注目画素とする処理時には、ラインメモリ109および110の何れにもデータが格納されていないのでラインメモリ109および110から拡散誤差ブロック105にフィードバックされる誤差値は0である。
【0029】
注目画素が原画像における3行2列目以降の時点では、ラインメモリ109および110の両方において、データが格納可能な最大数分格納されている。したがって、この時点から次の注目画素に移る時には、ラインメモリ109および110において最も早く入力されたデータが読み出され、拡散誤差ブロック105にフィードバックされる。これは、図21に示す演算回路においては、ラインメモリ110から読み出されたデータが加算器106Gを介してデータレジスタ107Gに送られ(ここで、注目画素に対する拡散誤差E−Gが加算される)、ラインメモリ109から読み出されたデータが加算器106Bを介してデータレジスタ106Bに送られる(ここで、注目画素に対する拡散誤差E−Bが加算される)ことを示している。
【0030】
【発明が解決しようとする課題】
ところが、上記従来の構成では、振りまき範囲が3×5の場合、副走査方向の2行分の拡散誤差を保存するために2つのラインメモリを用いて処理を行っていた。すなわち、従来の誤差拡散処理方法では、(振りまき範囲の行数−1)の数のラインメモリが必要であり、画像処理の精度を上げるために振りまき範囲を大きくすると、演算処理回路におけるコストアップを招来するという問題が生じる。
【0031】
本発明は、上記の問題点を解決するためになされたもので、その目的は、振りまき範囲を大きくとっても演算処理回路におけるコストアップを招来することなく、画像処理の精度を上げることができる誤差拡散処理方法を提供することにある。
【0032】
【課題を解決するための手段】
本発明の誤差拡散処理方法は、上記の課題を解決するために、原画像をもとの階調よりも少ない階調数の画像に変換する時に、注目画素の濃度変換によって生じる誤差を該注目画素の周囲画素に振りまく処理を、注目画素を移動させて原画像の全ての画素に対して行う誤差拡散処理方法において、各注目画素に施す処理として、注目画素の濃度を閾値と比較することによって、該注目画素の濃度値を変換する注目画素濃度値変換工程と、上記注目画素の濃度変換前と変換後の濃度差を誤差とし、該誤差に副走査方向の行数が3ライン以上である所定サイズのマトリクスにて表される誤差拡散処理テーブルの各要素である拡散係数を乗じて、誤差と拡散係数との積をテーブルに各拡散係数と同一位置にある周囲画素に振りまかれる拡散誤差として算出する拡散誤差算出工程と、注目画素の原画像における初期濃度値に、先に注目画素としての処理が行われた他の画素において算出された拡散誤差を加算して、該注目画素の変換直前の濃度値を算出する注目画素濃度値算出工程とを備えており、各注目画素の上記拡散誤差算出工程で算出された拡散誤差は、上記注目画素との周囲に上記誤差拡散処理テーブルと同サイズの拡散誤差ブロックを設けて、該拡散誤差ブロックに注目画素の周囲画素に分散される拡散誤差の累積値として格納していき、注目誤差の移動に伴って、拡散誤差ブロックからはみ出す拡散誤差については、同一列の複数ライン分の拡散誤差を加算して1つのラインメモリへ格納し、注目画素濃度値変換工程前に、ラインメモリから読み出して再度拡散誤差ブロックにフィードバックされるようにすると共に、ラインメモリから出力されて上記拡散誤差ブロックへフィードバックされるデータは、ラインメモリへの格納時における加算前の元のライン数分に分散してフィードバックされることを特徴としている。
【0033】
また、本発明の誤差拡散処理装置は、上記の課題を解決するために、原画像をもとの階調よりも少ない階調数の画像に変換する時に、注目画素の濃度変換によって生じる誤差を該注目画素の周囲画素に振りまく処理を、注目画素を移動させて原画像の全ての画素に対して行う誤差拡散処理装置において、各注目画素に処理を施す手段として、注目画素の濃度を閾値と比較することによって、該注目画素の濃度値を変換する注目画素濃度値変換手段と、上記注目画素の濃度変換前と変換後の濃度差を誤差とし、該誤差に所定サイズのマトリクスにて表される誤差拡散処理テーブルの各要素である拡散係数を乗じて、誤差と拡散係数との積をテーブルに各拡散係数と同一位置にある周囲画素に振りまかれる拡散誤差として算出する拡散誤差算出手段と、注目画素の原画像における初期濃度値に、先に注目画素としての処理が行われた他の画素において算出された拡散誤差を加算して、該注目画素の変換直前の濃度値を算出する注目画素濃度値算出手段とを備えており、上記拡散誤差算出手段で算出された各注目画素の拡散誤差は、上記注目画素との周囲に上記誤差拡散処理テーブルと同サイズの拡散誤差ブロックを設けて、該拡散誤差ブロックに注目画素の周囲画素に分散される拡散誤差の累積値として格納していき、注目誤差の移動に伴って、拡散誤差ブロックからはみ出す拡散誤差については、同一列の複数ライン分の拡散誤差を加算して1つのラインメモリへ格納し、注目画素濃度値変換手段にて注目画素の濃度値が変換される前に、ラインメモリから読み出して再度拡散誤差ブロックにフィードバックされるようにすると共に、ラインメモリから出力されて上記拡散誤差ブロックへフィードバックされるデータは、ラインメモリへの格納時における加算前の元のライン数分に分散してフィードバックされるようになっていることを特徴としている。
【0034】
上記の構成によれば、原画像をもとの階調よりも少ない階調数の画像に変換するために、上記注目画素濃度値変換工程にて注目画素の濃度を閾値と比較することにより該注目画素の濃度値を変換し、上位拡散誤差算出工程にて上記注目画素の濃度変換によって生じる誤差を該注目画素の周囲画素に振りまく。振りまかれる拡散誤差は、所定サイズのマトリクスにて表される誤差拡散処理テーブルの各要素である拡散係数を乗じることで算出される。また、上記誤差拡散処理テーブルにおいて、各拡散係数は注目画素の位置関係が設定されている。
【0035】
上記拡散係数は、上記誤差拡散処理テーブルと同サイズのマトリクスで表される拡散誤差ブロックに格納されていくことで、各注目画素に対して先の注目画素で算出された拡散誤差の累積値が保存される。拡散誤差ブロックに保存される値は、各画素が注目画素となって注目画素濃度値変換工程が行われる前に、注目画素濃度値算出工程にて注目画素の初期濃度値に加算される。
【0036】
上記各工程は、注目画素を移動させることにより原画像の全ての画素に対して施されるが、上記拡散誤差ブロックは注目画素と所定の位置関係をもって設定されるため、注目画素の移動に伴って上記拡散誤差ブロックからはみ出すデータが生じる。このようなデータはラインメモリに一旦格納され、注目画素濃度値算出工程前に上記拡散誤差ブロックにフィードバックされる。但し、この時、上記拡散誤差ブロックはその行数が3ライン以上であるため、同一列の2ライン分以上のデータが同時に該拡散誤差ブロックからはみ出し、これら複数のライン分のデータが加算された状態でラインメモリに格納される。そして、上記ラインメモリから拡散誤差ブロックにフィードバック時には、元のライン数分に分配されてフィードバックされる。
【0037】
これにより、画像処理の精度を上げるために、振りまき範囲(特に、上記マトリクスの行数)を大きくとっても使用するラインメモリ数の増加を招かず、演算処理回路におけるコストアップの回避することができる。
【0038】
また、上記誤差拡散処理方法では、各注目画素の上記拡散誤差算出工程で、誤差拡散処理テーブルの2行目の拡散係数が同一列の複数ライン分の拡散係数の加算値として与えられ、同一列の2行目以降の複数ライン分の拡散誤差が加算した状態で算出される構成とすることができる。
【0039】
上記構成によれば、上記拡散誤差算出工程において、算出すべき拡散誤差の数を削減することができ、演算処理回路の構成をより簡略化することができる。
【0040】
また、上記誤差拡散処理方法では、上記ラインメモリに保存された拡散誤差を読み出して拡散誤差ブロックへフィードバックする分配比が、誤差拡散処理テーブルの各行における拡散係数の比率に応じて設定される構成とすることができる。
【0041】
上記構成によれば、ラインメモリへの格納時に一旦加算されてデータを、加算前の元の比率に近い値に分配することができ、注目画素濃度値算出工程にて適切な量のデータを注目画素にフィードバックすることができる。
【0042】
また、上記誤差拡散処理方法では、上記拡散誤差算出工程にて、拡散係数の設定が異なる複数の誤差拡散処理テーブルが予め用意されており、各注目画素における拡散誤差の算出に用いられる誤差拡散処理テーブルは、上記複数の誤差拡散処理テーブルの中からランダムに選択されると共に、上記ラインメモリに保存された拡散誤差を読み出して拡散誤差ブロックへフィードバックする時には、その分配比を、選択された誤差拡散処理テーブルの各行における拡散係数の比率に応じて設定する構成、あるいは、上記ラインメモリに保存された拡散誤差を読み出して拡散誤差ブロックへフィードバックする分配比が、予め用意された複数の分配比の中からランダムに選択される構成とすることができる。
【0043】
上記構成によれば、ラインメモリに保存された拡散誤差を読み出して拡散誤差ブロックへフィードバックする時の分配比について、各画素毎に変化が与えられる。この場合、一定の分配比で処理を行なう場合に比べて、2値化時の周期性が緩和され、従来の誤差拡散で発生しやすい中間調付近でのテクスチャ(周期的模様)を解消することができる。
【0044】
また、前者の構成では、選択された誤差拡散処理テーブルの各行における拡散係数の比率を出力する演算装置を装備し、各注目画素毎に分配比を算出する必要があるが、実際には、上記分配比は、必ずしも各行における拡散係数の比率に連動させる必要はなく、後者の構成のように、予め複数の分配比を格納するテーブルを装備して、これら複数の分配比の中からランダムに選択することで、上記演算装置を省いて回路を小さくし、かつ高速処理を行なうことが可能となる。
【0045】
【発明の実施の形態】
本発明の実施の一形態について図1ないし図12に基づいて説明すれば、以下の通りである。本発明の誤差拡散処理方法は、例えば、画像形成装置等において適用されるものであり、本実施の形態に係る画像形成装置の構成を図2に例示する。
【0046】
上記画像形成装置は、上面に透明なガラス等からなる原稿台51を有している。この原稿台51の下方には、スキャナ光学系52が配されている。このスキャナ光学系52は原稿台51上に載置される原稿に光を照射する露光用光源53と、原稿からの反射光を、例えば図中の破線で示すように、このスキャナ光学系52内の結像レンズ54を通した向こう側(右側)に配置された光電変換素子(CCD)55に導く複数の反射鏡と、光路中に配される前記結像レンズ54と、前記CCD55とを備えている。以上がスキャナ部の説明である。
【0047】
上記CCD55によって読み取られた原稿画像データは、所定の画像処理が施され、レーザスキャニングユニット(以下、LSUと称する)56により感光体57の表面に照射されるレーザ光を制御する。これにより、上記感光対57の表面には上記原稿画像データに応じた静電潜像が形成される。感光体57は、矢印A方向に回転駆動されるドラム形状をなしており、この感光体57の周囲には、レーザ照射点から感光体の回転方向に向かって、レーザによって露光された感光体57表面の静電潜像をトナーにより可視像化する現像装置58、感光体57上のトナー像を用紙に転写する転写チャージャ59、感光体57表面の残留トナーを除去するクリーニング装置60、感光体57を所定の電位に帯電させる主帯電器61、および感光体57のレーザ照射点に向かってレーザを照射させる前記LSU56等が順に設けられる。以上が画像形成部の説明である。
【0048】
また、転写紙は用紙カセット62に収められる。用紙カセット62の先端部には転写紙Pを給紙するための半月状ローラ63が配されており、下流側に向かって(便宜上、転写紙Pの流れ出すカセット側を上流、排紙側を下流とする)転写紙の通過を検知するためのレジスト前検知スイッチ64、前記レジスト前検知スイッチ64の信号を基に感光体上のトナー像と転写紙の位置あわせを行なうレジストローラ65、感光体上のトナー像を転写紙Pに転写する転写チャージャ59、転写紙上のトナー像を熱により定着させる上定着ローラ,下定着ローラからなる定着部66、定着ローラを転写紙が通過したことを検知する定着紙検知スイッチ67、排紙ローラ側で転写紙が通過したことを検知する排紙検知スイッチ68、転写紙を排出するための前記排紙ローラ69が配置されている。
【0049】
転写紙は、前記画像形成部の横に排紙される。かつ、その排紙は前記用紙カセット62の上部且つ前記スキャナの下部に排出される。
【0050】
以下に本発明の誤差拡散処理方法について、実施例1ないし4を挙げて説明する。
【0051】
〔実施例1〕
振りまき範囲が3×5の場合を例にとると、本発明の誤差拡散処理方法では、従来2つのラインメモリにおいて格納されていた2ライン分の拡散誤差を1つのラインメモリにまとめて保存することで演算処理回路のコストダウンを図ると共に、3×5の振りまき範囲を近似的に実現して高精度な誤差拡散処理を行うことができる。
【0052】
すなわち、注目画素の移動に伴って拡散誤差ブロックからラインメモリに移行するデータは、振りまき範囲が3×5の時、該誤差拡散ブロックの2行目および3行目におけるデータであり、2ライン分存在するため、従来ではこれらのデータを2つのラインメモリに格納していた。これに対し、本実施例1に係る誤差拡散処理では、拡散誤差ブロックからラインメモリに移行する2ライン分のデータを1つのラインメモリにまとめて保存する。上記1つのラインメモリに格納されたデータは、誤差拡散処理演算が進むと、再び拡散誤差ブロックにフィードバックされるが、その時点で所定比率に応じて再度2ライン分のデータに分配され、誤差拡散ブロックの注目画素が存在する1行目と、2行目とにフィードバックされる。これにより、近似的に従来の誤差拡散処理を少ないラインメモリで実現できる。
【0053】
本実施例1の誤差拡散処理を実際に行うためのハード構成について以下に説明する。
【0054】
先ず、注目画素に対して拡散誤差を算出する拡散誤差演算回路の構成は、従来と同じく図19に示すものとなる。すなわち、図19における比較器101が、特許請求の範囲に記載の注目画素濃度値変換手段に相当する。また、図19における誤差量算出部102、および乗算器103Aないし103Lが、特許請求の範囲に記載の拡散誤差算出手段に相当する。そして、上述のようにして求まった拡散誤差を注目画素の周辺画素に振りまき、注目画素を順次移動した時の拡散誤差ブロック内のデータ演算を行う演算回路は図1に示すものとなる。
【0055】
上記図1に示す演算回路では、図19に示す拡散誤差演算回路によって求まった拡散誤差E−AないしE−G,E−IないしE−Kのそれぞれは、加算器1Aないし1G,1Iないし1Kを介してデータレジスタ2Aないし2G,2Iないし2Kに格納される。拡散誤差E−Hは、加算器1Hおよび1Cを介してデータレジスタ2Cに格納される。すなわち、上記データレジスタ2Cには、図23に示す拡散誤差ブロックにおいて、データレジスタ107Cおよび107Hに格納されるべき値が加算された状態で格納されることとなる。また、拡散誤差E−Lは加算器を介さずに直接データレジスタ2Lに格納される。したがって、この時、上記データレジスタ2Aないし2K,2Iないし2Lに格納されている値が図3に示すマトリクス配列となって拡散誤差ブロック3をなすものとする。
【0056】
そして、注目画素を次の画素に移動すると、上記データレジスタ2Cに格納されている値がラインメモリ4に格納される。すなわち、上記誤差拡散処理方法では、上記データレジスタ2Cに格納されている値は拡散誤差ブロックの同一列の2ライン分(すなわち、同一列の2行目及び3行目における2画素分)加算値であるため、1つのラインメモリ4によって2ライン分の拡散誤差を保存できる。そして、この時、上記ラインメモリ4から読み出される値があれば、これも2画素分の拡散誤差の加算値であるため、再び2画素分の拡散誤差に分配され誤差拡散ブロック3に戻される。
【0057】
これを図1に示す演算回路において説明すると以下のようになる。すなわち、上記ラインメモリ4から読み出されたデータは、データレジスタ5および加算器1Bを介してその一部(44/64)がデータレジスタ2Bへ入力され、残り(20/64)が加算器1Gを介してデータレジスタ2Gへフィードバックされる。つまり、本実施例1における誤差拡散処理では、ラインメモリ4から読み出された値に44/64を乗じた値、および20/64を乗じた値のそれぞれが、図21に示す従来構成において、ラインメモリ109から読み出された値、およびラインメモリ110から読み出された値に相当する。
【0058】
また、データレジスタ2Aに格納されているデータは、加算器6において原画像における注目画素の初期濃度値IDINと加算され、ERR−SUMとして出力される。すなわち、上記加算器6が、特許請求の範囲に記載の注目画素濃度値算出手段に相当する。こうして出力されたERR−SUMが、図19に示す拡散誤差演算回路の比較器101において閾値と比較され2値化されることは、既に説明した通りである。
【0059】
尚、上記説明における分配比率である44/64および20/64は、適切な値を任意に設定可能であるが、拡散誤差の算出時に使用される誤差拡散処理テーブルが図4に示すような拡散係数を有する場合には、1行目の拡散係数の総和をS0(=W−A+W−B)、2行目の拡散係数の総和をS1(=W−C+W−D+W−E+W−F+W−G)、3 行目の拡散係数の総和をS2(=W−H+W−I+W−J+W−K+W−L)とした場合、データレジスタ2Bへ入力される値の分配値を(S0+S1)/(S0+S1+S2)、データレジスタ2Gへフィードバックされる値の分配値をS2/(S0+S1+S2)とするのが望ましい。また、上記2つの分配値の和は1となる必要がある。
【0060】
また、近年では、600dpiと1200dpiとの解像度の異なった印字モードを同一の装置で切り替えて印字可能な画像形成装置が商品化されている。このような画像形成装置では、解像度を上げると主走査方向の画素数も増加するため、例えばA4サイズの場合、600dpi印字時には約7500画素のラインメモリ2本を使用して通常の誤差拡散を行い、1200dpi印字時には約15000画素(7500画素の2倍の画素数)のラインメモリ2本を必要とするのが従来の構成であった。
【0061】
しかしながら、このような手法では、ラインメモリの増加を招き、誤差拡散のためのコストが高くなる。このため、本実施の形態に係る誤差拡散処理では、誤差拡散を施す原画像データを原画像誤差拡散ブロックと補間画像誤差拡散ブロックとに分離し、それぞれのブロックにて7500画素のラインメモリ1本ずつを使用して誤差拡散処理を行う。すなわち、原画像誤差拡散ブロックと補間画像誤差拡散ブロックとのそれぞれにおいて、上述した誤差拡散処理を行うことで、1200dpiの画像であっても誤差拡散の周波数をむやみに上げることなく、ラインメモリの本数も少なくすることが可能となり、ラインメモリコストの低減を図ることが可能となる。
【0062】
ここで、原画像データを原画像誤差拡散ブロックと補間画像誤差拡散ブロックとに分離する方法について、図5を参照して説明する。
【0063】
上記原画像誤差拡散ブロックのデータは、原画像データをレジスタ7および8によってラッチし、2クロック遅延させて転送することによって得られる。また、補間画像誤差拡散ブロックのデータは補間回路9によって生成されるものであり、該補間回路9には原画像データとレジスタ7によって1クロック遅延された出力データとが入力される。上記補間回路9では、入力される上記2つのデータを加算器9aにて加算し、さらに加算されたデータを1BIT右シフトすることで原画像間の補間データを生成する。上記補間回路9で生成された補間データは、レジスタ10により1クロックラッチされることで上記原画像誤差拡散ブロックのデータの転送タイミングと同期がとられ、補間画像誤差拡散ブロックとして転送される。
【0064】
上記図5の回路によって、2クロックで入力された原画像データから原画像誤差拡散ブロックのデータと補間画像誤差拡散ブロックのデータとを同時に転送することができる。
【0065】
尚、原画像誤差拡散ブロックおよび補間画像誤差拡散ブロックのそれぞれに対応して出力された2bitの出力データは、再度ラインバッファ(ラインメモリ)調整して出力することで、元の画像とすることができる。
【0066】
〔実施例2〕
上記実施例1では、拡散誤差ブロック3の2行目、3行目の拡散誤差を別々に算出した後、同一列の拡散誤差を加算してラインメモリ4に格納している。これに対し、本実施例2に係る処理では、拡散誤差の算出段階で2行目、3行目の拡散誤差を別々に算出することは行わず、2行目、3行目の拡散誤差を加算した状態で算出している。
【0067】
本実施例2における誤差拡散処理テーブルを図6に示す。上記誤差拡散処理テーブルを実施例1で用いた誤差拡散処理テーブル(図4参照)と比較すると以下のような違いがある。すなわち、図6の誤差拡散処理テーブルを用いて図4の誤差拡散処理テーブルと同じ演算結果を得ようとする場合には、図6に示す上記誤差拡散処理テーブルの1行目の拡散係数W−AおよびW−Bは、図4の誤差拡散処理テーブルと同じ拡散係数が与えらるが、図6の誤差拡散処理テーブルの2行目には、同一列の2ライン分(2画素分)の拡散誤差をまとめて算出するための拡散係数W−C’およびW−G’が与えられる。ここで、例えば、拡散係数W−C’は、図4の誤差拡散処理テーブルにおける同一列の2行目および3行目の拡散係数W−CおよびW−Hの和となる値とすればよい。
【0068】
図6の誤差拡散処理テーブルを用いて拡散誤差を算出する場合の拡散誤差演算回路を図7に示す。上記拡散誤差演算回路では、図19に示した拡散誤差演算回路と同様に、注目画素の濃度値ERR−SUMと閾値THとが入力として与えられ、比較器11および誤差量算出部12に入力される。上記比較器11および誤差量算出部12は、図19における比較器101および誤差量算出部102と同様の構成であり、上記比較器11は濃度値ERR−SUMと閾値THとを比較することにより注目画素の2値化を行い、上記誤差量算出部12は2値化された注目画素における誤差量ERRを算出する。すなわち、本実施例2の構成では、比較器11が特許請求の範囲に記載の注目画素濃度値変換手段に相当し、誤差量算出部12および乗算器13A〜13Gが拡散誤差算出手段に相当する。
【0069】
上記誤差量算出部12にて算出された誤差量ERRは、乗算器13Aないし13Gへ送られる。同時に、上記各乗算器13Aないし13Gには誤差拡散処理テーブルに対応する拡散計数W−A,W−B,W−C’〜W−G’が与えられ、誤差量ERRとそれぞれの拡散計数W−A,W−B,W−C’〜W−G’との積が計算される。
【0070】
ここで、誤差量ERRと拡散計数W−A,W−Bとの積は1画素分の拡散誤差の大きさを示すが、誤差量ERRと拡散計数W−C’〜W−G’との積は同一列の2ライン分(2画素分)の拡散誤差が加算された値を示している。また、乗算器13Aないし13Gでの算出値は、該乗算器13Aないし13Gのそれぞれに接続されたデコーダ14Aないし14Gに入力される。
【0071】
上記デコーダ14Aないし14Gにおいて、ERR−SUM>THの場合には誤差量算出部12より符号信号SIGN=0が与えられて誤差量ERRと拡散計数との積の符号を負とすると共に、ERR−SUM≦THの場合には、誤差量算出部102より各デコーダ104Aないし104Lに符号信号SIGN=1が与えられて誤差量ERRと拡散計数との積の符号を正とすることは、図19に示す拡散誤差演算回路と同様である。これにより、上記デコーダ14Aないし14Gからは、拡散誤差E−A,E−B,E−C’〜E−G’が出力される(但し、拡散誤差E−C’〜E−G’は、同一列の2ライン分(2画素分)の拡散誤差の加算値である)。
【0072】
次に、上記拡散誤差演算回路にて求められた拡散誤差を用い、拡散誤差ブロックの演算および注目画素の濃度値ERR−SUMを演算する演算回路を図8に示す。上記演算回路では、拡散誤差E−A,E−B,E−C’〜E−G’のそれぞれは、加算器15Aないし15Gを介してデータレジスタ16Aないし16Gに格納される。
【0073】
そして、注目画素を次の画素に移動すると、上記データレジスタ16Cに格納されている値がラインメモリ17に格納される。すなわち、上記誤差拡散処理方法では、上記データレジスタ16Cに格納されている値は拡散誤差ブロックの同一列の2ライン分(2画素分)の加算値であるため、実施例1のラインメモリ4と同様に、1つのラインメモリ17によって2ライン分の拡散誤差を保存できる。そして、この時、上記ラインメモリ17から読み出される値があれば、これも2画素分の拡散誤差の加算値であるため、再び2画素分の拡散誤差に分配され誤差拡散ブロックに戻される。
【0074】
これを図8に示す演算回路において説明すると以下のようになる。すなわち、上記ラインメモリ17から読み出されたデータは、データレジスタ18および加算器15Bを介してその一部(44/64)がデータレジスタ16Bへ入力され、残り(20/64)が加算器15Gを介してデータレジスタ16Gへフィードバックされる。
【0075】
また、データレジスタ16Aに格納されているデータは、加算器19において原画像における注目画素の初期濃度値IDINと加算され、ERR−SUMとして出力される。すなわち、本実施例2の構成では、上記加算器19が特許請求の範囲に記載の注目画素濃度値算出手段に相当する。
【0076】
以上のように、本実施例2に係る誤差拡散処理では、拡散誤差の算出段階で2行目、3行目の拡散誤差を別々に算出することは行わず、2行目、3行目の拡散誤差を加算した状態で算出している。このため、図7に示す拡散誤差演算回路および図8に示す演算回路において、乗算器、デコーダ、加算器、およびデータレジスタ等の数を減らすことができ、回路規模を小さくすることができる。
【0077】
〔実施例3〕
上記実施例1および2の誤差拡散処理では、誤差拡散処理テーブルはただ一つであり、ラインメモリから拡散誤差ブロックへフィードバックする時の分配比率も固定である。
【0078】
これに対し、本実施例3に係る誤差拡散処理では、図9(a)に示すように、誤差拡散処理テーブルを予め複数設定しておき、カウンタ等を用いて誤差拡散処理テーブルを注目画素の1ドット毎に変更する。同時に、選択された誤差拡散処理テーブルの拡散係数に基づいて、拡散誤差ブロックへフィードバックされるデータの分配値を決定する。尚、ここでは、実施例1で説明した図1の演算回路を用いて誤差拡散処理を行う場合を例示している。
【0079】
拡散誤差の算出時に使用される誤差拡散処理テーブルが決定されると、実施例1で説明したのと同様に、該誤差拡散処理テーブル1行目の拡散係数の総和をS0(=W−A+W−B)、2行目の拡散係数の総和をS1(=W−C+W−D+W−E+W−F+W−G)、3行目の拡散係数の総和をS2(=W−H+W−I+W−J+W−K+W−L)とし、データレジスタ2Bへ入力される値の分配値P(=(S0+S1)/(S0+S1+S2))、データレジスタ2Gへフィードバックされる値の分配値L(=S2/(S0+S1+S2))を演算する。尚、分配値PおよびLの総和は1となる必要がある。
【0080】
尚、上記分配値PおよびLの値は誤差拡散処理テーブルが選択される度に演算するのではなく、図9(b)に示すように、予め各誤差拡散処理テーブル毎に、データレジスタ2Bへ入力される値の分配値Pnとデータレジスタ2Gへフィードバックされる値の分配値をLnとを演算した結果をテーブル化しておいてもよい。
【0081】
また、各注目画素において拡散誤差の演算に用いる誤差拡散処理テーブルに対するアドレス値は、昇順または降順ではなく、乱数機を用いてランダムにアクセスしW−AないしW−Lまでの1組の拡散係数を得てもよい。
【0082】
乱数を求めるには、例えば、図10に示すような回路を用いればよい。上記回路は、複数のレジスタを直列に組み合わせ、うち2カ所の所定レジスタを排他的論理和したデータを最下位bitに入力させてループすることで実現できる。図10の回路では、4つのレジスタ20〜23を用意し、レジスタ20および21の出力を排他的論理和したデータを最下位bitであるレジスタ23入力している。
【0083】
各レジスタ20〜23のデータはクロックをトリガにして右シフトし、図11に示すように、最下位3bitを図9(a)、(b)に示す複数の誤差拡散処理テーブルのテーブルナンバー0〜7と対応させることでランダムに拡散係数を変化させることができる。
【0084】
以上のように、本実施例3の構成では、ラインメモリから拡散誤差ブロックへフィードバックされるデータの分配比(分配値PnおよびLnの比)が注目画素の1ドット毎に変更される。このため、2値化時の周期性が緩和され、従来の誤差拡散処理で発生しやすい中間調付近のテクスチャ(周期的模様)を解消することができる。
【0085】
〔実施例4〕
上記実施例3では、拡散係数の異なる誤差拡散処理テーブルを予め複数設定しておき、データレジスタ2Bへ入力される値の分配値P、およびデータレジスタ2Gへフィードバックされる値の分配値Lを各誤差拡散処理テーブル毎に演算して、ラインメモリから拡散誤差ブロックへフィードバックされるデータ量を分配している。
【0086】
これに対し、本実施例4に係る誤差拡散処理では、図12に示すように、誤差拡散処理テーブルの拡散係数は固定とし、拡散係数とは関係なく分配値PnおよびLnの組み合わせを予め複数用意して、上記実施例3と同様にカウンタ若しくは乱数を用いて用いる分配値を注目画素毎に決定する。
【0087】
この方法であれば、上記実施例3と同様に、2値化時の周期性が緩和され中間調付近のテクスチャ(周期的模様)を解消することができると共に、複数の誤差拡散処理テーブルを持つ必要がなく、また、分配値を演算する回路も廃止でき、簡単な回路構成を実現できる。
【0088】
以上のように、本実施の形態に係る誤差拡散処理方法は、原画像をもとの階調よりも少ない階調数の画像に変換する時に、変換後の画像における各画像の階調値と原画像における階調値との誤差を周囲の画素に分散するために、注目画素を閾値と比較することによって濃度値を変換し、この濃度変換によって生じる注目画素の誤差を所定のマトリクスによって表される周囲画素に分散させる誤差拡散処理方法において、上記マトリクスの副走査方向のライン数が3以上であり、2行目以下の拡散誤差を注目画素として閾値と比較されるまでの間、複数ライン分の拡散誤差を同一のラインメモリにまとめて保存し、該ラインメモリに保存された拡散誤差を読み出す時に元のライン数分に分配して、その一部を注目画素ラインに入力するものである。
【0089】
これにより、振りまき範囲(マトリクス)を大きくとってもラインメモリ数の増加を招かず、演算処理回路におけるコストアップを招来することなく、画像処理の精度を上げることができる。
【0090】
【発明の効果】
本発明の誤差拡散処理方法は、以上のように、各注目画素に施す処理として、注目画素の濃度を閾値と比較することによって、該注目画素の濃度値を変換する注目画素濃度値変換工程と、上記注目画素の濃度変換前と変換後の濃度差を誤差とし、該誤差に副走査方向の行数が3ライン以上である所定サイズのマトリクスにて表される誤差拡散処理テーブルの各要素である拡散係数を乗じて、誤差と拡散係数との積をテーブルに各拡散係数と同一位置にある周囲画素に振りまかれる拡散誤差として算出する拡散誤差算出工程と、注目画素の原画像における初期濃度値に、先に注目画素としての処理が行われた他の画素において算出された拡散誤差を加算して、該注目画素の変換直前の濃度値を算出する注目画素濃度値算出工程とを備えており、各注目画素の上記拡散誤差算出工程で算出された拡散誤差は、上記注目画素との周囲に上記誤差拡散処理テーブルと同サイズの拡散誤差ブロックを設けて、該拡散誤差ブロックに注目画素の周囲画素に分散される拡散誤差の累積値として格納していき、注目誤差の移動に伴って、拡散誤差ブロックからはみ出す拡散誤差については、同一列の複数ライン分の拡散誤差を加算して1つのラインメモリへ格納し、注目画素濃度値変換工程前に、ラインメモリから読み出して再度拡散誤差ブロックにフィードバックされるようにすると共に、ラインメモリから出力されて上記拡散誤差ブロックへフィードバックされるデータは、ラインメモリへの格納時における加算前の元のライン数分に分散してフィードバックされる構成である。
【0091】
また、本発明の誤差拡散処理装置は、以上のように、各注目画素に処理を施す手段として、注目画素の濃度を閾値と比較することによって、該注目画素の濃度値を変換する注目画素濃度値変換手段と、上記注目画素の濃度変換前と変換後の濃度差を誤差とし、該誤差に所定サイズのマトリクスにて表される誤差拡散処理テーブルの各要素である拡散係数を乗じて、誤差と拡散係数との積をテーブルに各拡散係数と同一位置にある周囲画素に振りまかれる拡散誤差として算出する拡散誤差算出手段と、注目画素の原画像における初期濃度値に、先に注目画素としての処理が行われた他の画素において算出された拡散誤差を加算して、該注目画素の変換直前の濃度値を算出する注目画素濃度値算出手段とを備えており、上記拡散誤差算出手段で算出された各注目画素の拡散誤差は、上記注目画素との周囲に上記誤差拡散処理テーブルと同サイズの拡散誤差ブロックを設けて、該拡散誤差ブロックに注目画素の周囲画素に分散される拡散誤差の累積値として格納していき、注目誤差の移動に伴って、拡散誤差ブロックからはみ出す拡散誤差については、同一列の複数ライン分の拡散誤差を加算して1つのラインメモリへ格納し、注目画素濃度値変換手段にて注目画素の濃度値が変換される前に、ラインメモリから読み出して再度拡散誤差ブロックにフィードバックされるようにすると共に、ラインメモリから出力されて上記拡散誤差ブロックへフィードバックされるデータは、ラインメモリへの格納時における加算前の元のライン数分に分散してフィードバックされるようになっている構成である。
【0092】
それゆえ、注目画素の移動に伴って上記拡散誤差ブロックからはみ出すデータはラインメモリに一旦格納され、注目画素濃度値算出工程前に上記拡散誤差ブロックにフィードバックされが、この時、同一列の2ライン分以上のデータが加算された状態でラインメモリに格納され、上記ラインメモリから拡散誤差ブロックにフィードバック時には、元のライン数分に分配されてフィードバックされる。これにより、画像処理の精度を上げるために、振りまき範囲(特に、上記マトリクスの行数)を大きくとっても使用するラインメモリ数の増加を招かず、演算処理回路におけるコストアップの回避することができるという効果を奏する。
【0093】
また、上記誤差拡散処理方法では、各注目画素の上記拡散誤差算出工程で、誤差拡散処理テーブルの2行目の拡散係数が同一列の複数ライン分の拡散係数の加算値として与えられ、同一列の2行目以降の複数ライン分の拡散誤差が加算した状態で算出される構成とすることができる。
【0094】
それゆえ、上記拡散誤差算出工程において、算出すべき拡散誤差の数を削減することができ、演算処理回路の構成をより簡略化することができるという効果を奏する。
【0095】
また、上記誤差拡散処理方法では、上記ラインメモリに保存された拡散誤差を読み出して拡散誤差ブロックへフィードバックする分配比が、誤差拡散処理テーブルの各行における拡散係数の比率に応じて設定される構成とすることができる。
【0096】
それゆえ、ラインメモリへの格納時に一旦加算されてデータを、加算前の元の比率に近い値に分配できるため、適切な量のデータを注目画素にフィードバックすることができるという効果を奏する。
【0097】
また、上記誤差拡散処理方法では、上記拡散誤差算出工程にて、拡散係数の設定が異なる複数の誤差拡散処理テーブルが予め用意されており、各注目画素における拡散誤差の算出に用いられる誤差拡散処理テーブルは、上記複数の誤差拡散処理テーブルの中からランダムに選択されると共に、上記ラインメモリに保存された拡散誤差を読み出して拡散誤差ブロックへフィードバックする時には、その分配比を、選択された誤差拡散処理テーブルの各行における拡散係数の比率に応じて設定する構成、あるいは、上記ラインメモリに保存された拡散誤差を読み出して拡散誤差ブロックへフィードバックする分配比が、予め用意された複数の分配比の中からランダムに選択される構成とすることができる。
【0098】
それゆえ、ラインメモリに保存された拡散誤差を読み出して拡散誤差ブロックへフィードバックする時の分配比について、各画素毎に変化が与えられ、2値化時の周期性が緩和されて、従来の誤差拡散で発生しやすい中間調付近でのテクスチャ(周期的模様)を解消することができるという効果を奏する。
【0099】
また、後者の構成では、予め複数の分配比を格納するテーブルを装備して、これら複数の分配比の中からランダムに選択することで、回路を小さくし、かつ高速処理を行なうことが可能となる。
【図面の簡単な説明】
【図1】本発明の一実施形態を示すものであり、実施例1の誤差拡散処理装置において拡散誤差ブロック内のデータ演算を行う演算回路の構成を示す回路図である。
【図2】本発明の誤差拡散処理装置を適用可能な画像形成装置の概略構成を示す断面図である。
【図3】図1の演算回路での演算に使用される拡散誤差ブロックを概念的に示す説明図である。
【図4】実施例1の拡散誤差演算回路での演算に使用される誤差拡散処理テーブルを示す説明図である。
【図5】原画像データを原画像誤差拡散ブロックと補間画像誤差拡散ブロックとに分離する回路を示すを回路図である。
【図6】実施例2の拡散誤差演算回路での演算に使用される誤差拡散処理テーブルを示す説明図である。
【図7】実施例2の誤差拡散処理装置において、拡散誤差演算回路の構成を示す回路図である。
【図8】実施例2の誤差拡散処理装置において、拡散誤差ブロック内のデータ演算を行う演算回路の構成を示す回路図である。
【図9】図9(a)は、実施例3の誤差拡散処理装置において、複数設定された誤差拡散処理テーブルを示す説明図であり、図9(b)は、各誤差拡散処理テーブルにおける分配値の演算結果テーブルを示す説明図である。
【図10】図9(a)および図9(b)に示す複数の誤差拡散処理テーブルからランダムに誤差拡散処理テーブルを選択する場合に用いる乱数機の一例を示す回路図である。
【図11】上記乱数機により決定される乱数を示す説明図である。
【図12】実施例4の誤差拡散処理装置において、1組の誤差拡散処理テーブルに対して分配値が複数設定された例を示す説明図である。
【図13】2値化における誤差拡散処理が施される前の原画像の一例を示す説明図である。
【図14】上記誤差拡散処理で使用される誤差拡散処理テーブルの一例を示す説明図である。
【図15】上記誤差拡散処理テーブルを用いた場合に、図13の原画像に対して最初の注目画素における拡散誤差の演算結果を示す説明図である。
【図16】図15に示す拡散誤差を図13の原画像に対して振りまいた後の濃度値を示す説明図である。
【図17】図14に示す誤差拡散処理テーブルを用いた場合に、図13の原画像に対して2つ目の注目画素における拡散誤差の演算結果を示す説明図である。
【図18】図17に示す拡散誤差を図16の原画像に対して振りまいた後の濃度値を示す説明図である。
【図19】従来の誤差拡散処理装置において、拡散誤差演算回路の構成を示す回路図である。
【図20】上記拡散誤差演算回路での演算に使用される誤差拡散処理テーブルを示す説明図である。
【図21】従来の誤差拡散処理装置において、拡散誤差ブロック内のデータ演算を行う演算回路の構成を示す回路図である。
【図22】図22(a)〜(c)は、図19および図21の誤差拡散処理装置において、注目画素を順次移動させることに伴う、拡散誤差ブロック内のデータの変化を示す説明図である。
【図23】図21の演算回路での演算に使用される拡散誤差ブロックを概念的に示す説明図である。
【図24】図21の演算回路での演算において、拡散誤差ブロックおよびラインメモリに格納されるデータを示す説明図である。
【符号の説明】
3 拡散誤差ブロック
4、17 ラインメモリ
6、19 加算器(注目画素濃度値算出手段)
11、101 比較器(注目画素濃度値変換手段)
12、102 誤差量算出部(拡散誤差算出手段)
13A〜13G、103A〜103G 乗算器(拡散誤差算出手段)[0001]
BACKGROUND OF THE INVENTION
When the original image is converted into an image having a lower number of gradations than the original gradation, the error between the gradation value of each image in the converted image and the gradation value in the original image The present invention relates to an error diffusion (error dispersion) processing method and an error diffusion processing apparatus in the case of performing image processing based on an error diffusion method that is distributed in a uniform manner.
[0002]
[Prior art]
Conventionally, a method called an error diffusion method has been adopted when converting an original image into an image having a smaller number of gradations than the original gradation. The error diffusion method is a method in which an error between the gradation value of each image in the converted image and the gradation value in the original image is distributed to surrounding pixels.
[0003]
The basic principle of the error diffusion method will be described. In the following description, a case where a 256-tone halftone image is binarized and converted to 0 or 255 will be exemplified.
[0004]
First, an original image as shown in FIG. 13 is converted into either 0 or 255 by comparing the density value with a predetermined threshold value for a certain target pixel. It is assumed that the pixel of interest starts with a pixel in the upper left corner and moves in the main scanning direction, and moves to the next line along the sub-scanning direction when processing for one line is completed in the main scanning direction. In addition, the threshold value here is 128, which is an intermediate value of 256 (gradation).
[0005]
First, since the density value of the pixel in the upper left corner in the original image is 129, when compared with the threshold value 128,
(Density value of target pixel)> (Threshold)
Thus, the density value of the target pixel is converted to 255. At this time, an error (difference value) of 255-129 = 126 is generated by converting the pixel of interest from 129 to 255. Therefore, this error is distributed to surrounding pixels based on the error diffusion processing table shown in FIG. . The error diffusion processing table is an example showing preset diffusion counts in a matrix format, and a value obtained by multiplying the difference value in the target pixel by the diffusion count is distributed to surrounding pixels.
[0006]
As shown in FIG. 14, the swing range when a 3 × 5 matrix is used for the error diffusion processing table is 3 × 5. In the error diffusion method, the larger the above-mentioned swing range, the better the image quality of the photographic image with the high frequency components remaining in the converted image. Also, before and after the error diffusion process, the sum of the diffusion counts in the error diffusion process table is set to 1 so that the image density is maintained.
[0007]
Here, for example, in the pixel on the right side of the target pixel,
126 (difference value of target pixel) × 10/64 (diffusion count in the pixel)
≒ 20 (rounded off or rounded off after the decimal point)
Becomes the distribution value (however, the sign of the distribution value is opposite to the difference value of the target pixel in order to preserve the density of the entire image, and -20 is added to the pixel on the right side of the target pixel). FIG. 15 shows a similar calculation of values assigned to surrounding pixels based on the error diffusion processing table. FIG. 16 shows the distribution values shown in FIG. 15 assigned to the original image.
[0008]
Since error diffusion for the first pixel of interest has been completed as described above, error diffusion is performed using the pixel on the right side of the pixel of interest as a new pixel of interest. The new pixel of interest has a density value of 109 due to error diffusion of the previous pixel of interest. When this density value is compared with the previous threshold value,
(Density value of the target pixel) ≦ (Threshold)
Therefore, the density value of the target pixel is converted to 0. At this time, an error (difference value) of 0−109 = −109 is generated by converting the target pixel from 109 to 0. Therefore, this error is distributed to surrounding pixels based on the error diffusion processing table shown in FIG. Then, the distribution value is as shown in FIG. FIG. 18 shows the distribution values shown in FIG. 17 distributed in the original image.
[0009]
In this way, by performing error diffusion on all the pixels while sequentially shifting the target pixel, the original image can be converted into an image having a smaller number of gradations than the original gradation.
[0010]
The above shows the basic principle of the error diffusion method. Next, a hardware configuration for actually performing the above calculation will be described.
[0011]
First, FIG. 19 shows a configuration of a diffusion error calculation circuit for calculating a distribution value based on the above-described error diffusion processing table. The diffusion error calculation circuit is supplied with the density value ERR-SUM of the target pixel and the threshold value TH as inputs. Note that the density value ERR-SUM of the pixel of interest here is a value after the distribution values of the pixels subjected to the error diffusion process are added. The density value ERR-SUM and the threshold value TH are input to the
[0012]
The
[0013]
On the other hand, the error
[0014]
Here, the product of the error amount ERR and the diffusion count indicates the size of the diffusion error, and is input to the
[0015]
Therefore, in order to maintain the density of the entire image, the diffusion error needs to be a negative value when ERR−SUM> TH, and the error
[0016]
The diffusion error obtained as described above is distributed to the surrounding pixels of the target pixel as described above, and the density value ERR-SUM of the target pixel that sequentially moves changes. A calculation procedure for obtaining the density value ERR-SUM of the target pixel will be described with reference to FIGS. 21 and 22A to 22C. An arithmetic circuit for performing the above arithmetic operation is shown in FIG.
[0017]
First, for the first target pixel (the upper left corner pixel in the original image), the diffusion errors EA to E-L for the target pixel are calculated by the diffusion error calculation circuit shown in FIG. The calculated diffusion errors EA to E-L are conceptually stored in the
[0018]
This will be described with reference to the arithmetic circuit shown in FIG. Each of the diffusion errors EA to EK calculated by the diffusion error calculation circuit shown in FIG. 19 is stored in the data registers 107A to 107K via the
[0019]
Next, when calculating the diffusion error by moving to the second pixel of interest, as shown in FIG. 22B, the
[0020]
[Expression 1]
[0021]
This will be described with reference to the arithmetic circuit shown in FIG. That is, the movement of the
[0022]
In addition, since the diffusion error block 105 stores EA or EL for the second pixel of interest at the same time, the position of the
[0023]
In addition, the pixel at the position corresponding to the
[0024]
Further, when the
[0025]
Even when calculating the diffusion error by moving to the third target pixel, the movement of the data stored in each data register and the addition of the diffusion error calculated for the target pixel are performed in the same manner. Data stored in the
[0026]
By repeating these operations, the data stored in the
[0027]
[Expression 2]
[0028]
The error diffusion process is actually performed for all pixels of the original image, but can be stored in the
[0029]
At the time when the target pixel is in the 3rd row and the 2nd column in the original image, the maximum number of data that can be stored is stored in both the
[0030]
[Problems to be solved by the invention]
However, in the conventional configuration described above, when the swing range is 3 × 5, processing is performed using two line memories in order to store diffusion errors for two rows in the sub-scanning direction. That is, in the conventional error diffusion processing method, the number of line memories of (the number of rows in the swing range-1) is necessary. If the swing range is increased in order to increase the accuracy of image processing, the cost in the arithmetic processing circuit is increased. The problem of being invited arises.
[0031]
The present invention has been made in order to solve the above-described problems, and an object of the present invention is to provide error diffusion that can increase the accuracy of image processing without incurring a cost increase in an arithmetic processing circuit even if the swing range is large. It is to provide a processing method.
[0032]
[Means for Solving the Problems]
In order to solve the above-described problem, the error diffusion processing method of the present invention eliminates the error caused by the density conversion of the target pixel when the original image is converted into an image having a lower number of gradations than the original gradation. In the error diffusion processing method in which the process of spreading to the surrounding pixels of the pixel is performed on all pixels of the original image by moving the target pixel, as a process to be performed on each target pixel, the density of the target pixel is compared with a threshold value The target pixel density value converting step for converting the density value of the target pixel and the density difference before and after the density conversion of the target pixel are regarded as errors, and the number of rows in the sub-scanning direction is 3 lines or more. A diffusion error that is multiplied by the diffusion coefficient that is each element of the error diffusion processing table represented by a matrix of a predetermined size, and the product of the error and the diffusion coefficient is assigned to the surrounding pixels at the same position as each diffusion coefficient. age The diffusion error calculation step to be calculated, and the initial density value in the original image of the target pixel are added with the diffusion error calculated in the other pixels that have been processed as the target pixel, immediately before the conversion of the target pixel. A target pixel density value calculating step for calculating a density value of each of the target pixels, and the diffusion error calculated in the diffusion error calculation step for each target pixel is the same size as the error diffusion processing table around the target pixel. The diffusion error block is provided and stored in the diffusion error block as a cumulative value of the diffusion error distributed to the surrounding pixels of the pixel of interest. With respect to the diffusion error that protrudes from the diffusion error block as the attention error moves, , Add diffusion errors for multiple lines in the same column and store them in one line memory, read out from the line memory before the pixel density value conversion step of interest, and again in the diffusion error block The data output from the line memory and fed back to the diffusion error block is distributed and fed back to the original number of lines before addition when stored in the line memory. It is said.
[0033]
Further, in order to solve the above problem, the error diffusion processing device of the present invention eliminates an error caused by density conversion of a target pixel when converting an original image into an image having a lower number of gradations than the original gradation. In an error diffusion processing apparatus that performs processing for all pixels of the original image by moving the pixel of interest around the pixel of interest, as a means for performing processing on each pixel of interest, the density of the pixel of interest is used as a threshold value. By comparing, the target pixel density value conversion means for converting the density value of the target pixel, and the density difference before and after the density conversion of the target pixel as an error, the error is represented by a matrix of a predetermined size. Multiplying the diffusion coefficient, which is each element of the error diffusion processing table, the product of the error and the diffusion coefficient is calculated in the table as a diffusion error that is distributed to surrounding pixels at the same position as each diffusion coefficient. And the initial density value in the original image of the target pixel is added with the diffusion error calculated in the other pixels that have been processed as the target pixel previously, and the density value immediately before the conversion of the target pixel is calculated. A pixel-of-interest density value calculating unit, and the diffusion error of each pixel of interest calculated by the diffusion error calculating unit is provided with a diffusion error block of the same size as the error diffusion processing table around the pixel of interest. Thus, the diffusion error block is stored as a cumulative value of the diffusion error distributed to the surrounding pixels of the pixel of interest, and the diffusion error that protrudes from the diffusion error block with the movement of the error of interest is a plurality of lines in the same column. Are added to each line memory and stored in one line memory. Before the density value of the target pixel is converted by the target pixel density value conversion means, it is read out from the line memory and read again. The data output from the line memory and fed back to the diffusion error block is distributed and fed back to the original number of lines before addition when stored in the line memory. It is characterized by that.
[0034]
According to the above configuration, in order to convert the original image into an image having a lower number of gradations than the original gradation, the target pixel density value converting step compares the target pixel density with a threshold value. The density value of the target pixel is converted, and an error caused by the density conversion of the target pixel is distributed to surrounding pixels of the target pixel in the upper diffusion error calculation step. The diffusion error to be shaken is calculated by multiplying the diffusion coefficient which is each element of the error diffusion processing table represented by a matrix of a predetermined size. In the error diffusion processing table, the positional relationship of the target pixel is set for each diffusion coefficient.
[0035]
The diffusion coefficient is stored in a diffusion error block represented by a matrix having the same size as the error diffusion processing table, so that the cumulative value of the diffusion error calculated in the previous pixel of interest for each pixel of interest is obtained. Saved. The value stored in the diffusion error block is added to the initial density value of the target pixel in the target pixel density value calculating step before each pixel becomes the target pixel and the target pixel density value conversion step is performed.
[0036]
Each of the above steps is performed on all pixels of the original image by moving the target pixel. However, since the diffusion error block is set with a predetermined positional relationship with the target pixel, Thus, data that protrudes from the diffusion error block is generated. Such data is temporarily stored in the line memory and fed back to the diffusion error block before the target pixel density value calculation step. However, at this time, since the number of rows of the diffusion error block is three lines or more, data of two lines or more in the same column protrudes from the diffusion error block at the same time, and the data of the plurality of lines are added. The state is stored in the line memory. At the time of feedback from the line memory to the diffusion error block, it is distributed and fed back to the original number of lines.
[0037]
Thereby, in order to increase the accuracy of image processing, even if the swing range (in particular, the number of rows in the matrix) is increased, the number of line memories to be used is not increased, and an increase in cost in the arithmetic processing circuit can be avoided.
[0038]
In the error diffusion processing method, in the diffusion error calculation step for each pixel of interest, the diffusion coefficient in the second row of the error diffusion processing table is given as an addition value of diffusion coefficients for a plurality of lines in the same column. It is possible to adopt a configuration in which diffusion errors for a plurality of lines after the second line are added.
[0039]
According to the above configuration, in the diffusion error calculation step, the number of diffusion errors to be calculated can be reduced, and the configuration of the arithmetic processing circuit can be further simplified.
[0040]
In the error diffusion processing method, the distribution ratio for reading out the diffusion error stored in the line memory and feeding it back to the diffusion error block is set according to the ratio of the diffusion coefficient in each row of the error diffusion processing table. can do.
[0041]
According to the above configuration, the data once added at the time of storage in the line memory can be distributed to a value close to the original ratio before the addition, and an appropriate amount of data is focused in the target pixel density value calculation step. Feedback to the pixel is possible.
[0042]
In the error diffusion processing method, a plurality of error diffusion processing tables having different diffusion coefficient settings are prepared in advance in the diffusion error calculation step, and the error diffusion processing used for calculating the diffusion error in each pixel of interest is prepared. The table is randomly selected from the plurality of error diffusion processing tables, and when the diffusion error stored in the line memory is read and fed back to the diffusion error block, the distribution ratio is selected as the selected error diffusion. The configuration set according to the ratio of the diffusion coefficient in each row of the processing table, or the distribution ratio for reading the diffusion error stored in the line memory and feeding it back to the diffusion error block is a plurality of distribution ratios prepared in advance. It can be set as the structure selected at random.
[0043]
According to the above configuration, a change is given for each pixel in the distribution ratio when the diffusion error stored in the line memory is read and fed back to the diffusion error block. In this case, compared to processing with a constant distribution ratio, the periodicity at the time of binarization is relaxed, and the texture (periodic pattern) in the vicinity of the halftone that tends to occur in the conventional error diffusion is eliminated. Can do.
[0044]
Further, in the former configuration, it is necessary to equip an arithmetic unit that outputs the ratio of the diffusion coefficient in each row of the selected error diffusion processing table and calculate the distribution ratio for each target pixel. The distribution ratio does not necessarily have to be linked to the ratio of the diffusion coefficient in each row. Like the latter configuration, a table for storing a plurality of distribution ratios is equipped in advance, and a random selection is made from among the plurality of distribution ratios. As a result, the arithmetic unit can be omitted, the circuit can be made smaller, and high-speed processing can be performed.
[0045]
DETAILED DESCRIPTION OF THE INVENTION
An embodiment of the present invention will be described with reference to FIGS. 1 to 12 as follows. The error diffusion processing method of the present invention is applied to, for example, an image forming apparatus, and the configuration of the image forming apparatus according to the present embodiment is illustrated in FIG.
[0046]
The image forming apparatus has a document table 51 made of transparent glass or the like on the upper surface. A scanner
[0047]
The document image data read by the
[0048]
Further, the transfer paper is stored in a
[0049]
The transfer sheet is discharged to the side of the image forming unit. The discharged paper is discharged to the upper part of the
[0050]
The error diffusion processing method of the present invention will be described below with reference to Examples 1 to 4.
[0051]
[Example 1]
Taking the case where the swing range is 3 × 5 as an example, in the error diffusion processing method of the present invention, the diffusion errors for two lines, which are conventionally stored in two line memories, are collectively stored in one line memory. Thus, the cost of the arithmetic processing circuit can be reduced, and a 3 × 5 swing range can be approximately realized to perform highly accurate error diffusion processing.
[0052]
That is, the data transferred from the diffusion error block to the line memory in accordance with the movement of the pixel of interest is the data in the second and third rows of the error diffusion block when the swing range is 3 × 5. Conventionally, these data are stored in two line memories. In contrast, in the error diffusion processing according to the first embodiment, data for two lines transferred from the diffusion error block to the line memory are collectively stored in one line memory. The data stored in the one line memory is fed back to the diffusion error block again when the error diffusion processing operation proceeds. At that time, the data is again distributed to data for two lines according to a predetermined ratio, and error diffusion is performed. This is fed back to the first and second rows where the target pixel of the block exists. As a result, the conventional error diffusion processing can be approximately realized with a small number of line memories.
[0053]
A hardware configuration for actually performing the error diffusion processing of the first embodiment will be described below.
[0054]
First, the configuration of the diffusion error calculation circuit for calculating the diffusion error for the pixel of interest is as shown in FIG. That is, the
[0055]
In the arithmetic circuit shown in FIG. 1, the diffusion errors EA to EG, EI to EK obtained by the diffusion error arithmetic circuit shown in FIG. 19 are respectively added to the adders 1A to 1G, 1I to 1K. Are stored in the data registers 2A to 2G and 2I to 2K. Diffusion error E-H is stored in data register 2C via
[0056]
When the target pixel is moved to the next pixel, the value stored in the data register 2C is stored in the
[0057]
This will be described with reference to the arithmetic circuit shown in FIG. That is, a part (44/64) of the data read from the
[0058]
Further, the data stored in the data register 2A is added to the initial density value IDIN of the target pixel in the original image by the
[0059]
Note that the distribution ratios 44/64 and 20/64 in the above description can be arbitrarily set to appropriate values, but the error diffusion processing table used when calculating the diffusion error is a diffusion as shown in FIG. If there is a coefficient, the sum of the diffusion coefficients in the first row is S0 (= W−A + W−B), and the sum of the diffusion coefficients in the second row is S1 (= W−C + WD−WE + WF−WG). When the sum of the diffusion coefficients in the third row is S2 (= W−H + W−I + W−J + W−K + W−L), the distribution value of the value input to the
[0060]
In recent years, image forming apparatuses capable of printing by switching printing modes having different resolutions of 600 dpi and 1200 dpi using the same apparatus have been commercialized. In such an image forming apparatus, since the number of pixels in the main scanning direction increases as the resolution is increased, for example, in the case of A4 size, normal error diffusion is performed using two line memories of about 7500 pixels at the time of 600 dpi printing. In the case of 1200 dpi printing, the conventional configuration requires two line memories of about 15000 pixels (twice the number of 7500 pixels).
[0061]
However, such a method causes an increase in line memory and increases the cost for error diffusion. For this reason, in the error diffusion processing according to the present embodiment, original image data to be subjected to error diffusion is separated into an original image error diffusion block and an interpolated image error diffusion block, and one line memory of 7500 pixels in each block. Perform error diffusion processing using each one. That is, by performing the above-described error diffusion processing in each of the original image error diffusion block and the interpolated image error diffusion block, the number of line memories can be increased without increasing the frequency of error diffusion even for a 1200 dpi image. As a result, the line memory cost can be reduced.
[0062]
Here, a method of separating the original image data into the original image error diffusion block and the interpolated image error diffusion block will be described with reference to FIG.
[0063]
The original image error diffusion block data is obtained by latching the original image data by the
[0064]
With the circuit of FIG. 5, the original image error diffusion block data and the interpolated image error diffusion block data can be transferred simultaneously from the original image data input in two clocks.
[0065]
Note that the 2-bit output data output corresponding to each of the original image error diffusion block and the interpolated image error diffusion block can be restored to the original image by adjusting the line buffer (line memory) again. it can.
[0066]
[Example 2]
In the first embodiment, after the diffusion errors in the second and third rows of the
[0067]
An error diffusion processing table in the second embodiment is shown in FIG. When the error diffusion processing table is compared with the error diffusion processing table (see FIG. 4) used in the first embodiment, there are the following differences. That is, when trying to obtain the same calculation result as the error diffusion processing table of FIG. 4 using the error diffusion processing table of FIG. 6, the diffusion coefficient W− in the first row of the error diffusion processing table shown in FIG. A and WB are given the same diffusion coefficient as the error diffusion processing table of FIG. 4, but the second row of the error diffusion processing table of FIG. 6 has two lines (two pixels) in the same column. Diffusion coefficients WC ′ and WG ′ for collectively calculating diffusion errors are given. Here, for example, the diffusion coefficient WC ′ may be a value that is the sum of the diffusion coefficients WC and WH in the second and third rows of the same column in the error diffusion processing table of FIG. .
[0068]
FIG. 7 shows a diffusion error calculation circuit in the case where a diffusion error is calculated using the error diffusion processing table of FIG. In the diffusion error calculation circuit, as in the diffusion error calculation circuit shown in FIG. 19, the density value ERR-SUM of the target pixel and the threshold value TH are input as inputs and input to the
[0069]
The error amount ERR calculated by the error
[0070]
Here, the product of the error amount ERR and the diffusion counts WA and WB indicates the size of the diffusion error for one pixel, but the error amount ERR and the diffusion counts WC ′ to WG ′. The product indicates a value obtained by adding diffusion errors of two lines (two pixels) in the same column. The calculated values in the
[0071]
In the
[0072]
Next, FIG. 8 shows an arithmetic circuit for calculating the diffusion error block and calculating the density value ERR-SUM of the target pixel using the diffusion error obtained by the diffusion error arithmetic circuit. In the arithmetic circuit, each of the diffusion errors EA, EB, E-C 'to E-G' is stored in the data registers 16A to 16G via the
[0073]
When the target pixel is moved to the next pixel, the value stored in the data register 16C is stored in the
[0074]
This will be described in the arithmetic circuit shown in FIG. That is, a part (44/64) of the data read from the
[0075]
Further, the data stored in the data register 16A is added to the initial density value IDIN of the pixel of interest in the original image by the
[0076]
As described above, in the error diffusion processing according to the second embodiment, the diffusion errors of the second row and the third row are not separately calculated at the diffusion error calculation stage, and the second row and the third row are not calculated. Calculation is performed with the diffusion error added. Therefore, in the diffusion error arithmetic circuit shown in FIG. 7 and the arithmetic circuit shown in FIG. 8, the number of multipliers, decoders, adders, data registers, etc. can be reduced, and the circuit scale can be reduced.
[0077]
Example 3
In the error diffusion processing of the first and second embodiments, there is only one error diffusion processing table, and the distribution ratio when feeding back from the line memory to the diffusion error block is also fixed.
[0078]
On the other hand, in the error diffusion processing according to the third embodiment, as shown in FIG. 9A, a plurality of error diffusion processing tables are set in advance, and the error diffusion processing table is set for the target pixel using a counter or the like. Change every dot. At the same time, the distribution value of data fed back to the diffusion error block is determined based on the diffusion coefficient of the selected error diffusion processing table. Here, a case where error diffusion processing is performed using the arithmetic circuit of FIG. 1 described in the first embodiment is illustrated.
[0079]
When the error diffusion processing table used when calculating the diffusion error is determined, the sum of the diffusion coefficients in the first row of the error diffusion processing table is set to S0 (= W−A + W−) as described in the first embodiment. B) The sum of the diffusion coefficients in the second row is S1 (= W−C + WD−W−E + WF−WG), and the sum of the diffusion coefficients in the third row is S2 (= W−H + W−I + W−J + W−K + W−). L), and a distribution value P (= (S0 + S1) / (S0 + S1 + S2)) of a value input to the
[0080]
The distribution values P and L are not calculated every time an error diffusion processing table is selected, but are stored in advance in the
[0081]
In addition, the address value for the error diffusion processing table used for calculating the diffusion error in each pixel of interest is not in ascending or descending order, but is randomly accessed using a random number machine and a set of diffusion coefficients from WA to WL. You may get
[0082]
In order to obtain the random number, for example, a circuit as shown in FIG. 10 may be used. The above circuit can be realized by combining a plurality of registers in series and looping by inputting data obtained by exclusive ORing two predetermined registers among them in the least significant bit. In the circuit of FIG. 10, four
[0083]
The data of the
[0084]
As described above, in the configuration of the third embodiment, the distribution ratio of data fed back from the line memory to the diffusion error block (ratio of distribution values Pn and Ln) is changed for each dot of the target pixel. For this reason, the periodicity at the time of binarization is eased, and the texture (periodic pattern) near the halftone that is likely to occur in the conventional error diffusion processing can be eliminated.
[0085]
Example 4
In the third embodiment, a plurality of error diffusion processing tables having different diffusion coefficients are set in advance, and a distribution value P of a value input to the
[0086]
In contrast, in the error diffusion processing according to the fourth embodiment, as shown in FIG. 12, the diffusion coefficient in the error diffusion processing table is fixed, and a plurality of combinations of distribution values Pn and Ln are prepared in advance regardless of the diffusion coefficient. Then, similarly to the third embodiment, a distribution value to be used is determined for each target pixel using a counter or a random number.
[0087]
With this method, as in the third embodiment, the periodicity at the time of binarization is relaxed, and the texture (periodic pattern) near the halftone can be eliminated, and a plurality of error diffusion processing tables are provided. There is no need, and the circuit for calculating the distribution value can be eliminated, and a simple circuit configuration can be realized.
[0088]
As described above, when the error diffusion processing method according to the present embodiment converts an original image into an image having a lower number of gradations than the original gradation, the gradation value of each image in the converted image In order to disperse the error from the gradation value in the original image to surrounding pixels, the density value is converted by comparing the pixel of interest with a threshold value, and the error of the pixel of interest caused by this density conversion is represented by a predetermined matrix. The number of lines in the sub-scanning direction of the matrix is 3 or more and the diffusion error in the second row or less is compared with a threshold value as a pixel of interest until a plurality of lines are distributed. Are stored together in the same line memory, and when the diffusion error stored in the line memory is read out, it is distributed to the original number of lines and a part thereof is input to the target pixel line. .
[0089]
Thus, even if the swinging range (matrix) is increased, the number of line memories is not increased, and the cost of the arithmetic processing circuit is not increased, and the accuracy of image processing can be increased.
[0090]
【The invention's effect】
As described above, the error diffusion processing method of the present invention includes a target pixel density value conversion step of converting the density value of the target pixel by comparing the density of the target pixel with a threshold value as the process performed on each target pixel. Each element of the error diffusion processing table represented by a matrix of a predetermined size in which the difference in density of the target pixel before and after density conversion is an error, and the number of rows in the sub-scanning direction is 3 lines or more. A diffusion error calculation step of multiplying a certain diffusion coefficient and calculating a product of the error and the diffusion coefficient in a table as a diffusion error to be distributed to surrounding pixels at the same position as each diffusion coefficient, and an initial density in the original image of the target pixel A pixel-of-interest density value calculation step of calculating a density value immediately before conversion of the pixel of interest by adding a diffusion error calculated in another pixel that has been previously processed as the pixel of interest to the value; And The diffusion error calculated in the diffusion error calculation step for the pixel of interest is provided with a diffusion error block of the same size as the error diffusion processing table around the pixel of interest, and the diffusion error block includes pixels around the pixel of interest. The accumulated diffusion error is stored as a cumulative value, and the diffusion error that protrudes from the diffusion error block with the movement of the error of interest is added to a single line memory by adding the diffusion errors for a plurality of lines in the same column. The stored data is read from the line memory and fed back to the diffusion error block before the pixel density value conversion step of interest, and the data output from the line memory and fed back to the diffusion error block is sent to the line memory. Is distributed and fed back to the original number of lines before addition at the time of storage.
[0091]
In addition, as described above, the error diffusion processing apparatus of the present invention is a means for performing processing on each target pixel, and compares the target pixel density with a threshold value to convert the target pixel density value of the target pixel. The error is obtained by multiplying the value conversion means and the density difference of the target pixel before and after the density conversion by an error, and multiplying the error by a diffusion coefficient that is an element of an error diffusion processing table represented by a matrix of a predetermined size. And a diffusion error calculating means for calculating the product of the diffusion coefficient as a diffusion error to be applied to surrounding pixels at the same position as each diffusion coefficient in the table, and the initial density value in the original image of the target pixel as the target pixel first. And a target pixel density value calculating unit that calculates a density value immediately before the conversion of the target pixel by adding the diffusion error calculated in the other pixels subjected to the above process. Calculation A diffusion error block of the same size as the error diffusion processing table is provided around the target pixel, and the diffusion error of each target pixel is distributed to the peripheral pixels of the target pixel in the diffusion error block. The accumulated error is stored as a cumulative value, and with respect to the diffusion error that protrudes from the diffusion error block as the attention error moves, the diffusion error for a plurality of lines in the same column is added and stored in one line memory. Before the density value of the pixel of interest is converted by the value conversion means, data is read from the line memory and fed back to the diffusion error block, and output from the line memory and fed back to the diffusion error block. Are distributed and fed back to the original number of lines before addition when stored in the line memory. It is.
[0092]
Therefore, the data protruding from the diffusion error block as the pixel of interest moves is temporarily stored in a line memory and fed back to the diffusion error block before the pixel density value calculation step. At this time, two lines in the same column More than one minute of data is added and stored in the line memory, and when fed back from the line memory to the diffusion error block, it is distributed and fed back to the original number of lines. As a result, in order to increase the accuracy of image processing, even if the swing range (particularly the number of rows of the matrix) is increased, the number of line memories to be used is not increased, and an increase in cost in the arithmetic processing circuit can be avoided. There is an effect.
[0093]
In the error diffusion processing method, in the diffusion error calculation step for each pixel of interest, the diffusion coefficient in the second row of the error diffusion processing table is given as an addition value of diffusion coefficients for a plurality of lines in the same column. It is possible to adopt a configuration in which diffusion errors for a plurality of lines after the second line are added.
[0094]
Therefore, in the diffusion error calculation step, the number of diffusion errors to be calculated can be reduced, and the configuration of the arithmetic processing circuit can be further simplified.
[0095]
In the error diffusion processing method, the distribution ratio for reading out the diffusion error stored in the line memory and feeding it back to the diffusion error block is set according to the ratio of the diffusion coefficient in each row of the error diffusion processing table. can do.
[0096]
Therefore, since the data once added at the time of storage in the line memory can be distributed to a value close to the original ratio before the addition, an appropriate amount of data can be fed back to the target pixel.
[0097]
In the error diffusion processing method, a plurality of error diffusion processing tables having different diffusion coefficient settings are prepared in advance in the diffusion error calculation step, and the error diffusion processing used for calculating the diffusion error in each pixel of interest is prepared. The table is randomly selected from the plurality of error diffusion processing tables, and when the diffusion error stored in the line memory is read and fed back to the diffusion error block, the distribution ratio is selected as the selected error diffusion. The configuration set according to the ratio of the diffusion coefficient in each row of the processing table, or the distribution ratio for reading the diffusion error stored in the line memory and feeding it back to the diffusion error block is a plurality of distribution ratios prepared in advance. It can be set as the structure selected at random.
[0098]
Therefore, the distribution ratio when the diffusion error stored in the line memory is read out and fed back to the diffusion error block is changed for each pixel, and the periodicity at the time of binarization is relaxed. There is an effect that a texture (periodic pattern) in the vicinity of a halftone that is likely to be generated by diffusion can be eliminated.
[0099]
In the latter configuration, a table for storing a plurality of distribution ratios is provided in advance, and the circuit can be made small and high-speed processing can be performed by randomly selecting from the plurality of distribution ratios. Become.
[Brief description of the drawings]
FIG. 1 is a circuit diagram illustrating a configuration of an arithmetic circuit that performs data calculation in a diffusion error block in the error diffusion processing apparatus according to the first exemplary embodiment.
FIG. 2 is a cross-sectional view showing a schematic configuration of an image forming apparatus to which the error diffusion processing apparatus of the present invention can be applied.
3 is an explanatory diagram conceptually showing a diffusion error block used for calculation in the arithmetic circuit of FIG. 1; FIG.
FIG. 4 is an explanatory diagram illustrating an error diffusion processing table used for calculation in the diffusion error calculation circuit according to the first embodiment.
FIG. 5 is a circuit diagram showing a circuit for separating original image data into an original image error diffusion block and an interpolated image error diffusion block.
FIG. 6 is an explanatory diagram illustrating an error diffusion processing table used for calculation in the diffusion error calculation circuit according to the second embodiment.
FIG. 7 is a circuit diagram illustrating a configuration of a diffusion error calculation circuit in the error diffusion processing apparatus according to the second embodiment.
FIG. 8 is a circuit diagram illustrating a configuration of an arithmetic circuit that performs data calculation in a diffusion error block in the error diffusion processing apparatus according to the second embodiment;
FIG. 9A is an explanatory diagram showing a plurality of error diffusion processing tables set in the error diffusion processing apparatus of the third embodiment, and FIG. 9B is a distribution in each error diffusion processing table. It is explanatory drawing which shows the calculation result table of a value.
10 is a circuit diagram showing an example of a random number machine used when an error diffusion processing table is selected at random from a plurality of error diffusion processing tables shown in FIGS. 9A and 9B. FIG.
FIG. 11 is an explanatory diagram showing random numbers determined by the random number machine.
12 is an explanatory diagram showing an example in which a plurality of distribution values are set for one set of error diffusion processing tables in the error diffusion processing device of
FIG. 13 is an explanatory diagram illustrating an example of an original image before being subjected to error diffusion processing in binarization;
FIG. 14 is an explanatory diagram showing an example of an error diffusion processing table used in the error diffusion processing.
FIG. 15 is an explanatory diagram showing a calculation result of a diffusion error in the first target pixel with respect to the original image in FIG. 13 when the error diffusion processing table is used.
16 is an explanatory diagram showing density values after the diffusion error shown in FIG. 15 is applied to the original image shown in FIG. 13;
17 is an explanatory diagram illustrating a calculation result of a diffusion error in a second target pixel with respect to the original image in FIG. 13 when the error diffusion processing table illustrated in FIG. 14 is used.
18 is an explanatory diagram showing density values after the diffusion error shown in FIG. 17 is applied to the original image of FIG. 16;
FIG. 19 is a circuit diagram showing a configuration of a diffusion error calculation circuit in a conventional error diffusion processing device.
FIG. 20 is an explanatory diagram showing an error diffusion processing table used for calculation in the diffusion error calculation circuit.
FIG. 21 is a circuit diagram showing a configuration of an arithmetic circuit that performs data calculation in a diffusion error block in a conventional error diffusion processing apparatus;
FIGS. 22A to 22C are explanatory diagrams showing changes in data in the diffusion error block in accordance with the sequential movement of the pixel of interest in the error diffusion processing apparatus of FIGS. 19 and 21. FIGS. is there.
FIG. 23 is an explanatory diagram conceptually showing a diffusion error block used for calculation in the arithmetic circuit of FIG. 21;
FIG. 24 is an explanatory diagram showing data stored in a diffusion error block and a line memory in the calculation by the calculation circuit of FIG. 21;
[Explanation of symbols]
3 Diffusion error block
4, 17 line memory
6, 19 Adder (Target pixel density value calculation means)
11, 101 comparator (attention pixel density value conversion means)
12, 102 Error amount calculation unit (diffusion error calculation means)
13A to 13G, 103A to 103G Multiplier (Diffusion error calculation means)
Claims (6)
各注目画素に施す処理として、
注目画素の濃度を閾値と比較することによって、該注目画素の濃度値を変換する注目画素濃度値変換工程と、
上記注目画素の濃度変換前と変換後の濃度差を誤差とし、該誤差に所定サイズのマトリクスにて表される誤差拡散処理テーブルの各要素である拡散係数を乗じて、誤差と拡散係数との積をテーブルに各拡散係数と同一位置にある周囲画素に振りまかれる拡散誤差として算出する拡散誤差算出工程と、
注目画素の原画像における初期濃度値に、先に注目画素としての処理が行われた他の画素において算出された拡散誤差を加算して、該注目画素の変換直前の濃度値を算出する注目画素濃度値算出工程とを備えており、
各注目画素の上記拡散誤差算出工程で算出された拡散誤差は、上記注目画素との周囲に上記誤差拡散処理テーブルと同サイズの拡散誤差ブロックを設けて、該拡散誤差ブロックに注目画素の周囲画素に分散される拡散誤差の累積値として格納していき、注目誤差の移動に伴って、拡散誤差ブロックからはみ出す拡散誤差については、同一列の複数ライン分の拡散誤差を加算して1つのラインメモリへ格納し、注目画素濃度値変換工程前に、ラインメモリから読み出して再度拡散誤差ブロックにフィードバックされるようにすると共に、
ラインメモリから出力されて上記拡散誤差ブロックへフィードバックされるデータは、ラインメモリへの格納時における加算前の元のライン数分に分散してフィードバックされることを特徴とする誤差拡散処理方法。When the original image is converted into an image having a lower number of gradations than the original gradation, a process in which an error caused by the density conversion of the target pixel is distributed to surrounding pixels of the target pixel is moved, and the target pixel is moved. In the error diffusion processing method performed for all pixels,
As processing to be applied to each pixel of interest,
A pixel-of-interest density value conversion step of converting the density value of the pixel of interest by comparing the density of the pixel of interest with a threshold;
The difference between the density of the pixel of interest before and after density conversion is regarded as an error, and the error is multiplied by a diffusion coefficient that is an element of an error diffusion processing table represented by a matrix of a predetermined size. A diffusion error calculation step of calculating a product as a diffusion error to be swung to surrounding pixels at the same position as each diffusion coefficient in a table;
A target pixel that calculates a density value immediately before the conversion of the target pixel by adding a diffusion error calculated in another pixel that has been previously processed as the target pixel to the initial density value of the target pixel in the original image A concentration value calculating step,
The diffusion error calculated in the diffusion error calculation step for each pixel of interest includes a diffusion error block having the same size as the error diffusion processing table around the pixel of interest, and the pixels around the pixel of interest in the diffusion error block Is stored as a cumulative value of the diffusion error distributed to each other, and with respect to the diffusion error that protrudes from the diffusion error block with the movement of the error of interest, a diffusion error for a plurality of lines in the same column is added to form one line memory. And read out from the line memory and fed back to the diffusion error block again before the target pixel density value conversion step,
An error diffusion processing method characterized in that data output from a line memory and fed back to the diffusion error block is distributed and fed back to the number of original lines before addition when stored in the line memory.
上記ラインメモリに保存された拡散誤差を読み出して拡散誤差ブロックへフィードバックする時には、その分配比を、選択された誤差拡散処理テーブルの各行における拡散係数の比率に応じて設定することを特徴とする請求項1ないし3の何れかに記載の誤差拡散処理方法。In the diffusion error calculation step, a plurality of error diffusion processing tables having different diffusion coefficient settings are prepared in advance, and the error diffusion processing table used for calculating the diffusion error in each pixel of interest is the plurality of error diffusion processing tables. Is selected at random,
When the diffusion error stored in the line memory is read out and fed back to the diffusion error block, the distribution ratio is set according to the ratio of the diffusion coefficient in each row of the selected error diffusion processing table. Item 4. The error diffusion processing method according to any one of Items 1 to 3.
各注目画素に処理を施す手段として、
注目画素の濃度を閾値と比較することによって、該注目画素の濃度値を変換する注目画素濃度値変換手段と、
上記注目画素の濃度変換前と変換後の濃度差を誤差とし、該誤差に所定サイズのマトリクスにて表される誤差拡散処理テーブルの各要素である拡散係数を乗じて、誤差と拡散係数との積をテーブルに各拡散係数と同一位置にある周囲画素に振りまかれる拡散誤差として算出する拡散誤差算出手段と、
注目画素の原画像における初期濃度値に、先に注目画素としての処理が行われた他の画素において算出された拡散誤差を加算して、該注目画素の変換直前の濃度値を算出する注目画素濃度値算出手段とを備えており、
上記拡散誤差算出手段で算出された各注目画素の拡散誤差は、上記注目画素との周囲に上記誤差拡散処理テーブルと同サイズの拡散誤差ブロックを設けて、該拡散誤差ブロックに注目画素の周囲画素に分散される拡散誤差の累積値として格納していき、注目誤差の移動に伴って、拡散誤差ブロックからはみ出す拡散誤差については、同一列の複数ライン分の拡散誤差を加算して1つのラインメモリへ格納し、注目画素濃度値変換手段にて注目画素の濃度値が変換される前に、ラインメモリから読み出して再度拡散誤差ブロックにフィードバックされるようにすると共に、
ラインメモリから出力されて上記拡散誤差ブロックへフィードバックされるデータは、ラインメモリへの格納時における加算前の元のライン数分に分散してフィードバックされるようになっていることを特徴とする誤差拡散処理装置。When the original image is converted into an image having a lower number of gradations than the original gradation, a process in which an error caused by the density conversion of the target pixel is distributed to surrounding pixels of the target pixel is moved, and the target pixel is moved. In an error diffusion processing apparatus for all pixels,
As means for processing each pixel of interest,
Attention pixel density value conversion means for converting the density value of the target pixel by comparing the density of the target pixel with a threshold;
The difference between the density of the pixel of interest before and after density conversion is regarded as an error, and the error is multiplied by a diffusion coefficient that is an element of an error diffusion processing table represented by a matrix of a predetermined size. A diffusion error calculating means for calculating a product as a diffusion error to be swung to surrounding pixels at the same position as each diffusion coefficient in a table;
A target pixel that calculates a density value immediately before the conversion of the target pixel by adding a diffusion error calculated in another pixel that has been previously processed as the target pixel to the initial density value of the target pixel in the original image Density value calculation means,
For the diffusion error of each pixel of interest calculated by the diffusion error calculation means, a diffusion error block having the same size as the error diffusion processing table is provided around the pixel of interest, and the pixel surrounding the pixel of interest is provided in the diffusion error block. Is stored as a cumulative value of the diffusion error distributed to each other, and with respect to the diffusion error that protrudes from the diffusion error block with the movement of the error of interest, a diffusion error for a plurality of lines in the same column is added to form one line memory. Before the density value of the pixel of interest is converted by the pixel-of-interest density value conversion means, and read out from the line memory and fed back to the diffusion error block again.
The data output from the line memory and fed back to the diffusion error block is distributed and fed back to the original number of lines before addition when stored in the line memory. Diffusion processing device.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000115601A JP3632830B2 (en) | 2000-04-17 | 2000-04-17 | Error diffusion processing method and error diffusion processing apparatus |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000115601A JP3632830B2 (en) | 2000-04-17 | 2000-04-17 | Error diffusion processing method and error diffusion processing apparatus |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2001309172A JP2001309172A (en) | 2001-11-02 |
| JP3632830B2 true JP3632830B2 (en) | 2005-03-23 |
Family
ID=18627210
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000115601A Expired - Fee Related JP3632830B2 (en) | 2000-04-17 | 2000-04-17 | Error diffusion processing method and error diffusion processing apparatus |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3632830B2 (en) |
-
2000
- 2000-04-17 JP JP2000115601A patent/JP3632830B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2001309172A (en) | 2001-11-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3733446B2 (en) | Digital copier | |
| US8767250B2 (en) | Image forming apparatus and method for increasing image resolution and magnification | |
| JP5564806B2 (en) | Image forming apparatus, image forming method, image forming program, and recording medium | |
| JP5595119B2 (en) | Image printing apparatus, image printing method and program | |
| JP3632830B2 (en) | Error diffusion processing method and error diffusion processing apparatus | |
| JP2002232654A (en) | IMAGE PROCESSING DEVICE, IMAGE PROCESSING METHOD, AND COMPUTER-READABLE RECORDING MEDIUM RECORDING PROGRAM FOR CAUSING COMPUTER TO EXECUTE THE METHOD | |
| JP2004188845A (en) | Print head characteristic measuring device, light exposure correcting method, and image forming device | |
| JP3711016B2 (en) | Active pixel sensor with improved reset | |
| JP3877416B2 (en) | Image processing apparatus and image processing method | |
| JP2977608B2 (en) | Image edge processing device | |
| JP3798553B2 (en) | Image processing device | |
| JPH09321989A (en) | Edge area detection device | |
| JP2877603B2 (en) | Image processing device | |
| JP3021027B2 (en) | Digital image data processing device | |
| JP3137334B2 (en) | Digital image data processing device | |
| JP3793050B2 (en) | Multiple arithmetic circuit | |
| JP2006084848A (en) | Image forming apparatus | |
| JP2922629B2 (en) | Digital image data processing device | |
| JP2004241809A (en) | Image reading apparatus, image forming apparatus, and image processing method | |
| JP3691732B2 (en) | Image processing device | |
| JP5614194B2 (en) | Image forming apparatus, image forming method, program, and recording medium | |
| JP2018126914A (en) | Image forming apparatus | |
| JP3948645B2 (en) | Image data processing device | |
| JPH0380771A (en) | Image processing device | |
| JP5660187B2 (en) | Image forming apparatus, image forming method, image forming program, and recording medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041014 |
|
| 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: 20041214 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041215 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080107 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090107 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100107 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110107 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120107 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130107 Year of fee payment: 8 |
|
| LAPS | Cancellation because of no payment of annual fees |