JP4141817B2 - 削減されたバッファでのエラー拡散 - Google Patents
削減されたバッファでのエラー拡散 Download PDFInfo
- Publication number
- JP4141817B2 JP4141817B2 JP2002354548A JP2002354548A JP4141817B2 JP 4141817 B2 JP4141817 B2 JP 4141817B2 JP 2002354548 A JP2002354548 A JP 2002354548A JP 2002354548 A JP2002354548 A JP 2002354548A JP 4141817 B2 JP4141817 B2 JP 4141817B2
- Authority
- JP
- Japan
- Prior art keywords
- error
- values
- input pixel
- buffer
- scan line
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/40—Picture signal circuits
- H04N1/405—Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels
- H04N1/4051—Halftoning, 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/4052—Halftoning, 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
【発明の属する技術分野】
本発明は一般的に、デジタル画像処理の技術に関し、特に、新規で自明でない、削減されたバッファ要求(buffer requirements)を持つエラー拡散(error diffusion)のための方法及び装置に関する。
【0002】
【従来の技術】
文書の印刷において、一定のエリア上の所望の濃度は通常、ハーフトーニングによって達成される。ここでは、画像濃度変動は、より大きいかあるいはより小さい数のON画素を、バイナリの場合について、画像の離散的エリアに配置することによって表されるか、あるいは、非バイナリの場合に対しては、画素の数及び/又はレベルを変動させることによって表される。ディザリング(dithering)あるいはスクリーニングとして既知の一つのハーフトーニング方法(例えば特許文献1)においては、複数のグレイの別個の画素をその上に有する与えられたエリアの上に、エリア内のグレイの別個の画素の配列の各別個の画素の濃度を表す値が、事前に選択されたスレッシュホールドの組の一つと比較される。そのようなやり方によれば、画像がグレイのエリアについては、ディザマトリックス内のスレッシュホールドのいくらかは超過される(即ち、その特定の位置での画像値が、その同じ位置に対するディザマトリックスに記憶された値より大きい一方、他は小さい)。バイナリの場合には、スレッシュホールドを越えるべき画像画素は、最大着色料値として印刷される一方、残りの別個の画素は、データによって記述された実際の物理的量に依存して、白のまま残される。このハーフトーニングは、空間座標において、周期的なあるいは擬似周期的な出力パターンを生成する。
【0003】
エラー拡散は、他のハーフトーニング方法で、非特許文献1に記載される。エラー拡散は、画素毎に、グレイ画素からバイナリあるいは他のレベルの画素へ変換を為すことによってグレイを維持することを試みる。この方法は、スレッシュホールドに関して各画素を検査する。そして、グレイレベル画素値と出力値との間の差あるいは“エラー”は、重み付けスキームに従って、隣接する画素の、選択されたグループあるいは組に伝搬される。エラー拡散アルゴリズムの出力バイナリパターン及びその微分(derivative)は、入力濃度レベルに関しての局所的周期性を持つが、グローバルな周期性を持たない、パターンである(非特許文献2を参照)。
【0004】
様々な形でのエラー拡散は、多くのアプリケーションについてのデジタル画像のレンダリング(rendering)と結び付いて大きな商業的成功を収めてきた。標準ハーフトーニング(halftoning)と比較した際に、エラー拡散の比較的高いレンダリング品質は、エラー値の記憶と処理のための、より遅いレンダリング速度と大きなバッファ要求によって幾らか妥協させられる。大きなバッファ要求によって、エラー拡散方法を実装するデジタル画像処理装置の製造コストが増大する。
【0005】
【特許文献1】
米国特許第4,149,194号公報
【非特許文献1】
"An Adaptive Algorithm for Spatial Greyscale" by Floyd and Steinberg, Proceedings of the SID 17/2, 75-77 (1976)
【非特許文献2】
"Analytic Description of the 1-D Error Diffusion Technique for Halftoning," Optics Communications, Vol.52, No.3, 165-168 (1984) by R.Eschbach and R.Hauck
【0006】
【発明の概要】
本発明の第1の面に従って、複数の走査線(その各々がn個の入力画素値を備える)によって規定されるデジタル画像の処理方法は、n個の入力画素値の第1の走査線上でエラー拡散演算(error diffusion operation)を実行することを含む。第1の複数のエラー値は、n個の入力画素値の前記第1の走査線上で実行されるエラー拡散演算から導かれる。m個のエラー値は、第1の複数のエラー値から導かれる。m<前記第1の複数のエラー値である。m個のエラー値は、エラーバッファに記憶される。エラー拡散演算は、n個の入力画素値の第2の走査線上で実行されて、エラーバッファに記憶されたm個のエラー値を用いて第2の走査線の入力画素値を修正する。
【0007】
本発明の他の面に従って、デジタル画像処理方法は、デジタル画像を規定する入力画素値の連続する走査線上でエラー拡散演算を実行することを含む。エラー拡散演算は、エラー拡散演算による入力画素値の少なくとも第1の走査線の処理と、少なくともn個ののエラー値の獲得を含む。n個のエラー値は、サブサンプルされて、m個のエラー値を獲得する。ここでm<nである。m個のエラー値は、エラーバッファに記憶される。入力画素値の第2の走査線は、エラーバッファで記憶されたm個のエラー値から選択されたエラー値を入力として用いてエラー拡散演算に従って処理される。
【0008】
本発明の他の面に従って、デジタル画像処理装置は、エラーバッファ,選択エラー拡散演算によって入力画素値の少なくとも第1の走査線を処理して少なくともn個のエラー値を獲得するための手段,及び,n個のエラー値をサブサンプルしてm個のエラー値を獲得するための手段,を備える。ここでm<nである。本装置は更に、エラーバッファでm個のエラー値を記憶するための手段を備える。エラーバッファに記憶されたm個のエラー値から選択されたエラー値を入力として用いて選択エラー拡散演算に従って入力画素値の第2の走査線を処理するための手段が提供される。
【0009】
【発明の実施の形態】
デジタル画像処理システム10が、図1に示される。画像入力端末12はスキャナ,コンピュータ画像生成器,画像記憶装置,及び/又は、一つあるいはそれ以上のモノクロの(monochoromatic)の分離の様式でデジタル画像データを導出し及び/又はそれを伝送するデジタル画像データの他のソース(source),を備える。ここで、各分離(separation)の画像要素あるいは“画素”は、画素当り“d”ビットの深さにおいて規定される。ここで“d”は整数である。従って、各分離の各画素は、画素当りの“d”ビット(ビット深さ=d)によって規定され、各画素は、完全な“オフ”(例えばグレー値=0)と完全な“オン”(例えばグレイ値=255)との間にいくらかの“グレー(gray)”値を持つ。これらの画素は、行と列の配列に配列される。ここで行はしばしば、“走査線”と呼ばれる。当業者は、グレイ値が異なる範囲(例えば0から1)に存し得ること、そして、単純な演算が実行されるであろうという事実によってそのようなグレイ値は、0から255の範囲のグレイ値と等価であることを認識するであろう。デジタル画像データが少なくとも2つのモノクロマチック(monochoromatic)の分離によって提供される時に、分離からのデータが結合される(combined)時、例えば赤緑青(RGB)分離あるいはシアン−マゼンタ−黄色(CMY)分離、にカラー画像がもたらされる。
【0010】
図1を引き続き参照する。画像信号は、画像入力端末12から画像処理ユニット(IPU)14に入力される。ここで、本発明による削減されたバッファのエラー拡散のようなデジタル画像処理が実行される。IPU14は、電子的コンピュータ,専用の電子回路,あるいはいかなる他の適切な電子回路のような、いかなる適切な電子的コンピューティング装置,装置及び/又はソフトウェアによっても提供され得る。IPU14は、適切な様式でデータをプリンタ16(これがデジタル画像を紙あるいは他の記録媒体の上にレンダーする)に出力する。ユニット12,14及び16は、一つの装置に結合され得るか、あるいは、お互いに拡散されてケーブルあるいは他のワイヤ接続あるいはワイヤレス接続によって接続され得る。
【0011】
図2に示される従来の1次元エラー拡散において、第1の画素入力値i(0)がスレッシュホールドTと比較される。i(0)<Tなので、第1のバイナリ出力値b(0)は、“オフ”(例えばb(0)=0)に対応する2つのバイナリ状態の第1に設定される。方程式e(0)=b(0)−i(0)に従って第1のエラー値e(0)が導出される。この第1のエラー値e(0)が、次の順次の(sequential)、即ち第2の、入力画素値i(0)に伝搬させて、方程式i(1)'=i(1)−e(0)に従ってエラー修正された第2の入力画素値i(0)'を導出する。エラー修正された第2の入力画素値i(1)'は、スレッシュホールドTと比較されて、対応する第2のバイナリ出力値b(1)が導出される。この場合には、i(1)'>Tなので、第2のバイナリ出力値b(1)が、“オン”(例えばb(1)=255)に対応する2つのバイナリ状態の第2に設定される。第2のエラー値e(1)が、方程式e(1)=b(1)−i(1)'によって導出され、対応するバイナリ出力値を獲得するために入力画素が処理されるまで上述の工程が係属する。勿論、これは単純に、従来の1次元エラー拡散方法の一つの例である。2以上の出力レベルへの拡張(ここでは、異なる出力レベルが、着色料濃度,着色料層厚さ,出力画素のスポットのサイズ,あるいは、出力画素のいかなる他の物理的属性,を変更することによって生成され得る)は、簡単で既知である。
【0012】
図3は、従来の2次元エラー拡散方法の一つの例を示す。ここで、画像データの走査線S2で発見された入力画素値i(x)が、2次元で多値のエラー値e0,e1,e2,e3を受け取ることによって修正される。一般的に、エラー値は、広く変化し得る重み付けスキーム(scheme)に従って重み付けされる。
【0013】
エラー値のフル(full)の走査線S(以下「エラーバッファ」と呼ぶ。)は、エラー値e1,e2,及びe3(画像データの以前の走査線の処理から導出された全てのエラー値を記憶することによって得られた)を保持する。エラー値e0はここで、「以前のエラー」と呼ばれ、単純に、走査線S2で発見された一つあるいはそれ以上の以前の入力画素値(例えば入力画素値i(x-1))の処理から導出されたエラー値である。従って、2次元エラー拡散に対する入力画素値S2の走査線の処理において、入力画素値の各々の処理のために必要とされるエラー値へのアクセスを提供するために、エラー値の少なくともフルの走査線S1が記憶されることが必要とされる。更に、「以前のエラー」のエラー値e(0)は、記憶されねばならない。勿論、走査線S2の全ての入力画素の処理からもたらされるエラー値は、入力画素値の次の走査線の処理での使用のために保存されねばならない。将来の入力画素を即座にアップデートする(updating)ことによって、物理的に等価な実施が達成され得ることが理解されねばならない。
【0014】
その場合にはエラーバッファは単純に、同一の機能(即ちエラー値の収集)を遂行する入力画素バッファによって置換され、本発明は、これらと他の均等なケースをカバーすることが意図されるが、単純化のために我々は一つの説明(description)だけを使用する。
【0015】
当業者に直ちに明白なように、2次元エラー拡散(図3にも単純に説明される)は、バッファ内での比較的大きな数のエラー値の記憶を必要とする。より安価のプリンタ等では、これらのバッファはしばしば、プリンタ16自身内に見つけられる。バッファ要求が増加するにつれて、プリンタ装置のコストが増大する。これは、バッファメモリがしばしば、比較的大きなブロックで設置されなければならぬ、という事実によって悪化させられる。従って、バッファメモリ要求での小さな増加が、設置されたメモリと価格の大きな増加に繋がり得る。逆に、もし一つあるいはそれ以上のバッファメモリのブロックが除去され得るならば、バッファ要求での小さな削減が、価格の大きな削減という結果をもたらし得る。
【0016】
本発明による、削減されたバッファのエラー拡散方法が、図4に図示される。ここに示されるように、入力画素i(x)は、3つの異なるエラー値e0,e1,e2のみを受け取り、エラー値e1は2回使用される。ここで、及び以下で我々は、一定のエラー格納ユニットのアクセスの記述を多数回(図4で2回)使用する。というのはこれによって、明確性のために標準エラー拡散重み記述(standard error diffusion weight description)を使用することが可能となるからである。異なった好ましい実施例で、空間可変重み(space variant weights)を伴う一つのアクセスを用いて多数のアクセスが均等的に得られ得ることが理解されるべきである。即ち、エラー拡散で使用される重みは、標準エラー拡散程には一定ではないが、空間位置の関数として変化する。この場合には、エラー値S1'の走査線(ここでは、“エラーバッファ”とも呼ばれる)は、エラーバッファS1'のためのメモリ要求を削減するために、図3のエラーバッファS1に対して削減された解像度において維持される。即ち、エラーバッファS1'に記憶されたエラー値の数は、プリンタ16によってレンダーされるべき画像に対する画像データの走査線を規定する画素の数より小さい。
【0017】
図4に示された例において、エラーバッファS1'が、図3に示されるバッファS1に対して半分の、そして、処理されている入力画素値の走査線S2に対して半分の解像度で維持される。このようにして当業者は、エラーバッファS1'に対する格納要求(storage requirements)は、フルの解像度のエラーバッファS1のそれらに対して半分であることを理解するであろう。好ましい実施例で、半分の解像度のエラーバッファS1'のエラー値が、フル解像度のエラーバッファS1の2つの隣接するエラー値毎を平均化することによって得られる。
【0018】
ここで図5を参照する。ここでは、図4に示されたケース(削減された解像度のエラーバッファS1'を得るために、オリジナルのエラーバッファS1が削減係数R=2によって削減された)についての本発明による削減されたバッファのエラー拡散が開示される。走査線S2は、本発明によって処理される“n”入力画素値の走査線である。
【0019】
図5に示されるように、ステップP1は、走査線S2内の各入力画素値i(x)上で演算する。ここでx=0からn-1である。各入力画素値i(x)について、ここに示されるように、ステップP2は、エラー値e0−e3を計算する。特に、エラー値e0は単純に、値「以前のエラー」(即ち、走査線S2での丁度直前に処理された入力画素値i(x-1)に重み値(weight value)w(a)を乗じた値に対応するエラ−値)である。エラー値e1は、位置(x-1)/2のエラーバッファS1'をアクセスして、検索された値を重み値w(b)で乗算することによって得られる。エラー値e2は、位置x/2でエラーバッファS1'をアクセスして、検索された値を重み値w(c)で乗算することによって導出される。最後に、位置(x+1)/2でエラーバッファS1'にアクセスして、検索された値を重み値w(d)で乗算することによって、エラー値e3が得られる。ここで、画素位置を決定するために計算される全ての除算は、整数演算として理解されるべきであり、結果として整数画素値をもたらす。重み値w(a),w(b),w(c)及びw(d)は、従来のものであり、他のアプリケーション要求に基づいて特定され得る。
【0020】
丁度説明したように、そこでエラーバッファがアクセスされる位置は、ステップP2によって制御される。エラー値e1−e3の計算で用いられる“2で除算する”計算は、一般的なケースでは“Rで除算する”で置換され得ることが理解されるべきである。ここでRは、削減された解像度エラーバッファS1'を得るために、それによってフルの解像度のエラーバッファS1が削減される削減係数である。
【0021】
ステップS3で、これらのエラー値e(0)−e(3)が、入力画素値i(x)に加算されて、修正された入力画素値i(x)'が得られる。ステップP4に従って、この修正された入力画素値i(x)'は、スレッシュホールドTと比較される。もしi(x)'=Tなら、入力画素値i[x]に対応するバイナリの出力値output[x]が、ステップP5によって“オン”に設定される。他方、修正された入力画素値i(x)'<Tであるところでは、対応するバイナリの値output[x]は、ステップP6で“オフ”に設定される。いずれのケースでも、ステップP7は、修正された入力値i(x)'から値output[x]を減算することによる、変数「現在のエラー」(入力画素i(x)の処理からもたらされるエラー)の計算を含む。ステップP8で、入力画素値i(x+1)の処理で用いるために、可変の「以前のエラー」の値が、「現在のエラー」の値でアップデートされる。ステップP9は入力画素データが処理のために走査線S2に残存するか否かを判断する。もしそうであれば制御は、P1に戻る。さもなければエラー拡散工程は走査線S2について終了させられる。
【0022】
ここで図6を参照する。ここには、走査線S2からの一連の入力画素値i(x),i(x+1),i(x+2)及びi(x+3)が適用された一般的なケースでの図5の工程が示される。特に、図6を参照すると、エラーバッファS1'の“隣接部”が一連の入力画素値に対する遷移(transition)にアクセスしたことが明白である。更に、エラーバッファS1'内の各位置の貢献が、どの入力画素値が処理されているかに従属する態様で変化するという事実によって、エラーバッファS1'のアクセスの“隣接部”のこの遷移は、空間可変エラー拡散重み(space-variant error distribution weights)における効果的な結果をもたらす。従って上述のように、多数のエラー位置アクセススキーム(multiple error location access scheme)が等価的に、直接空間可変重み要素(direct space variant weight component)と置換され得る。
【0023】
より詳細には、図6を参照して、入力画素値i(x)がエラー入力を、エラーバッファS1'の位置e1のみから受け取ることが分かる。入力画素値i(x+1)は、位置e1とe2の双方からエラー入力を受け取る(ここで位置e1は2回アクセスされるかあるいは1回アクセスされて、1回のみアクセスされる位置e2に対する、その付加された影響を計上するためにそれに従って重み付けされる)。入力画素値位置i(x+2)は、エラーバッファS1'位置e1とe2の双方からのエラー入力をも受け取る(ここで位置e1は1回アクセスされ、位置e2は2回アクセスされてそれに従って重み付けされる)。最後に、入力画素値i(x+3)は、エラー入力を、エラー位置e2のみから受け取る。
【0024】
当業者は、一般的なケースで本発明の方法が、エラー拡散演算から導出された複数のn個のエラー値がサブサンプルされて、削減された数のm個のエラー値だけがバッファに記憶されて、オリジナルのn個のエラー値はバッファに記憶されないように、m=n/Rによる削減係数Rを用いてm個(m<n)のエラー値を導出することを可能とすることを理解するであろう。エラー値のフルの組ではなく、むしろm個のエラー値が、その後のエラー拡散演算に対する入力として用いられる。サブサンプリング演算は、いかなる適切な方法によっても達成され得る。ここに説明されるように、平均化演算か合計演算(適切な重み調整を伴う)かのいずれかが、n個のオリジナルのエラー値からm個のエラー値を導出するために使用され得る。サブサンプリング演算がこれらの方法に限定されることは意図されない。更に、平均化,合計,あるいは他のサブサンプリング演算が、オリジナルのn個のエラー値について、それらが、それらの値をバッファに記憶する必要性を除去するために導出されたかのように振舞うことが理解されるであろう。一例として、もしn=80で削減係数R=4が用いられたなら、4つのエラー値のm=80/4=20個のグループが、サブサンプルされるべきである。サブサンプリングについて平均値を用いる例では、4エラー値の各グループの平均は、n=80個のエラー値をバッファに記憶すること無しに計算され得る。その代り、各グループについて、そのグループに対応付けられた各エラー値の1/4が、そのグループに対する実行総計(running total)に付加される。
【0025】
図7Aは、本発明による入力画素データの連続する走査線を処理する、複数の削減された解像度のエラーバッファS1'a,S1'b,S1'c,S1'd,及びS1'eを概説する。各エラーバッファは、4つのエラーバッファ位置e1−e4(その各々は、フルの解像度のエラーバッファからの4つの隣接するエラー値の平均化によって得られた平均エラー値、即ち削減係数R=4、を備える)によって表される。当業者は、ここに示される連続する削減された解像度のエラーバッファS1'a−S1'eの使用は結果として、エラー位置e1−e4の高度に構造化された配列によって、及び各エラー位置が削減係数R=4に基づくという事実、即ち各エラー位置がフル解像度のエラーバッファからの4つのエラー値の平均を表すこと、によって、結果としてのエラー拡散画像に導入される垂直の列に類する周期的構造をもたらし得ることを認識するであろう。この潜在的な垂直構造は、削減係数(それによってエラーバッファS1が削減されて削減された解像度のエラーバッファS1'が得られる)に対応する周期性を持つことになる。更に、結果としてのエラー拡散された画像内のこの垂直構造は、削減係数が増加するにつれてより顕著となる。
【0026】
エラー拡散された画像内のいかなる周期的な垂直構造の導入に対処するため、あるいはそれを最小化するための努力において、オフセットを削減された解像度のエラーバッファS1'a− S1'eに導入することが望ましいことが分かってきた。ここでこのオフセットは、連続するエラーバッファS1'a− S1'eの位置の間にある。この方法は、図7Bに概説的に示される。ここで、エラーバッファS1'bが、エラーバッファS1'aに対する2つのエラー値によってオフセットされることが分かる。エラーバッファS1'dは、エラーバッファS1'aに対してオフセットされない。ランダムあるいは擬似ランダム数によって各エラーバッファにオフセットが導入されることが好ましい。このオフセットは(エラーバッファS1'内のエラー値が実際に非オフセット位置からシフトされるという意味で)実際になされ得るか、あるいは単純に、エラーバッファ・アドレシングスキームを変化させることによって導入され得る。
【0027】
いずれの場合でも、図7Bに示されるような連続する削減された解像度のエラーバッファS1'a−S1'eへのオフセットの導入の効果は、処理される複数の走査線内の与えられた入力画素位置i(x)に対して、アクセスされたエラーバッファのe1−e4位置におけるエラー値が、位置i(x)における入力画素値の修正に対して異なる貢献を持つことになることである。例えば、入力画素値の第1の走査線からの第1の入力画素値は、削減された解像度のエラーバッファS1'a−S1'eの一つのエラー位置e1−e4だけをアクセスし得る。入力画素値の第2の走査線からの、第2の、同一に位置する入力画素値は、2つの異なったエラー位置e1−e4にアクセスすることになる。
【0028】
図8に示され一般的に知られるように、一定の従来のエラー拡散方法は、入力画素値の走査線S2を処理するために、第1と第2のフル解像度のエラーバッファS0,S1を利用する。ここに示されるように、入力画素値i(x)は、エラーバッファS0及びS1からエラー値e1-e6を受け取る。
【0029】
図9は、2次元内のエラーバッファ要求を削減することによって解像度とエラーバッファの数の双方が削減される、削減されたバッファのエラー拡散方法を示す。特に、エラーバッファS0とS1は、平均化演算を用いて、2次元での2の削減係数を適用することによって得られた、一つの、削減された解像度のエラーバッファS1'によって置換されてきた。そのようにして、2つのフル解像度のエラーバッファS0,S1が一つの半分の解像度のエラーバッファS1'に結合される。ここに示されるように、削減された解像度のエラーバッファS1'のエラー位置e1は、エラーバッファS0とS1のエラー値e1−e4の平均を表す一方、削減された解像度のエラーバッファS1'のエラー位置e2は、エラーバッファS0とS1のエラー値e5−e8の平均を表す。単純化のために、2×2削減が使用されたことに注意すべきである。削減が、高速,低速走査方向に亘って同一であることに対する要求は存在しない。また、図8の重み分配において、エラーバッファ走査線S0,S1の双方のために、1次元の削減が使用され得る。即ち、2つの新規の削減された解像度のエラーバッファ走査線(そのそれぞれが、ここに説明されるようなm=n/Rによるm個のエラー値によって規定される)を導出するために、n個のエラー値の各エラーバッファ走査線S0とS1が、削減係数Rによって別個に削減され得る。これらの削減された解像度のエラーバッファはその後、走査線S2で発見された入力画素値上でエラー拡散演算を実行するために使用される。
【0030】
上述のように、削減されたバッファのエラー拡散方法は、削減された解像度のエラーバッファを得るためのエラー値の平均化に依存する。均等な方法において、削減された解像度のエラーバッファの各エラー値を得るために、複数のエラー値上で合計演算が実行される。しかしそのような場合には、削減された解像度のエラーバッファ内のエラー値に適用される重みwは、合計演算を説明する(account for)新規の重みによって置換される。一つの例でこれは、採用された削減係数によってオリジナルの重みを分割することによって達成される。
【0031】
【発明の効果】
本発明は、以上説明したように構成されているので、以下に記載されるような効果を奏する。
画像品質を維持しつつ、バッファ要求が非常に削減される。
バッファ要求を削減する結果、オフィスプリンタやコピー器のような比較的低コストなシステムのファームウェアに実装され得る。
【0032】
同等の品質を持つ一つの分離(separation)(即ちモノクロ)の画像による従来のエラー拡散技術によって示されるバッファ要求と同等のバッファ要求を示すマルチ分離(multi-separation)(即ちカラー)画像のためのエラー拡散方法が提供される。
【0033】
米国特許第5,045,952号等に記載されるような元々FloydとSteinbergによって言及されたエッジ強調エラー拡散や、例えば米国特許第5,208,871号に記載されるような空間変動重みを用いた、例えば米国特許第5,245,678号に記載されるようなエラーフィードバック総量の変更を含む重み修正の、マルチレベルエラー拡散のような、他のエラー拡散修正との、一般的なコンパチビリティが得られる。
【図面の簡単な説明】
【図1】本発明に従ってエラー拡散を実行する画像処理システムの概略図。
【図2】従来の1次元エラー拡散方法を示す図。
【図3】従来の2次元エラー拡散方法の概略図。
【図4】本発明による、入力画素値に対応する出力値の導出に用いるための、削減されたバッファのエラー拡散方法の概略図。
【図5】2のバッファ削減計数を用いた本発明の一つの実施例に従った削減されたバッファのエラー拡散を開示するフローチャート。
【図6】本発明に従った、入力画素値の順番に対応する出力値の導出での使用のための、削減されたバッファのエラー拡散方法の概略図。
【図7A】本発明に従って導出される、連続する削減された解像度のエラーバッファを示す図。
【図7B】垂直の周期的構造の、結果としてのエラー拡散された画像への導入を最小化するための、互いにオフセットされた連続するエラーバッファを示す図。
【図8】第2の従来の2次元エラー拡散方法の概略図。
【図9】本発明に従った、2次元でのバッファ要求の削減に効果的な、第2の削減されたバッファのエラー拡散方法の概略図。
【符号の説明】
12 画像入力端末
14 画像処理ユニット(IPU)
16 プリンタ
Claims (3)
- n個の入力画素値の第1の走査線上でエラー拡散演算を実行し、
n個の入力画素値の上記第1の走査線上で実行された上記エラー拡散演算から第1の複数のエラー値を導出し、
上記第1の複数のエラー値からm個のエラー値を導出し、ここでm<上記第1の複数のエラー値であり、
上記m個のエラー値をエラーバッファ内に記憶し、そして、
n個の入力画素値の第2の走査線上でエラー拡散演算を実行して、上記エラーバッファに記憶された上記m個のエラー値を用いて、当該第2の走査線の当該入力画素値を修正する、
ステップを含む、各々がn個の入力画素値を備える複数の走査線によって規定されるデジタル画像を処理する方法であって、
入力画素値の上記第2の走査線上で実行された、上記エラー拡散演算から第2の複数のエラー値を導出するステップ、
上記第2の複数のエラー値からm個のエラー値を導出するステップであって、m<上記第2の複数のエラー値であり、
上記m個のエラー値を、上記エラーバッファに記憶するステップ、及び、
n個の入力画素値の第3の走査線上でエラー拡散演算を実行し、上記エラーバッファに記憶された上記m個のエラー値を用いて、上記第3の走査線の上記入力画素値の各々を修正するステップであって、入力画素値の上記第2の及び第3の走査線の上で実行される上記エラー拡散演算において、第1の及び第2の異なったオフセット値がそれぞれ用いられて、上記第2の及び第3の走査線における、同様に配置された入力画素値が、上記エラーバッファ内で異なって配置されたエラー値によって修正されるようにするものである、
を更に含む方法。 - デジタル画像を規定する入力画素値の連続する走査線上でエラー拡散演算を実行するステップを含み、
上記エラー拡散演算が、
上記エラー拡散演算によって少なくとも第1の入力画素値の走査線を処理して少なくともn個のエラー値を獲得し、
上記n個のエラー値をサブサンプリングして、m個のエラー値を獲得し、ここでm<nであり、
上記m個のエラー値をエラーバッファに記憶し、
上記エラー拡散演算によって入力画素値の第2の走査線を処理し、上記エラーバッファに記憶された上記m個のエラー値から選択されたエラー値を入力として使用するステップを含む、
デジタル画像処理の方法であって、
上記エラー拡散演算が、更に、
オフセットを用いて、上記エラーバッファにおける上記m個のエラー値の有効な位置を制御し、上記エラー拡散演算によって、入力画素値の上記第2の走査線を処理する上記ステップの間に、上記m個のエラー値のどれが、上記入力画素値の各々の処理において用いられるかを変化させるステップを含む方法
。 - エラーバッファ、
選択エラー拡散演算によって少なくとも第1の入力画素値の走査線を処理して、少なくともn個のエラー値を獲得するための手段、
n個のエラー値をサブサンプリングして、m個のエラー値を獲得するための手段、であって、m<nである当該手段、
上記m個のエラー値を上記エラーバッファに記憶するための手段、及び、
上記エラーバッファに記憶された上記m個のエラー値から選択されたエラー値を入力として用いて上記選択エラー拡散演算によって入力画素値の第2の走査線を処理するための手段、
を備えるデジタル画像処理装置であって、
入力画素値の上記少なくとも第1の走査線を処理するための手段が、入力画素値の複数の走査線を処理するための手段を備え、
上記エラー値をサブサンプルするための手段が、2次元サブサンプリング演算を実行するための手段を備え、
上記入力画素値の複数の走査線を処理するための手段から得られた上記エラー値が、平均化及び合計演算の1つによって、2次元に組み合わされる、
装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/017,016 US6995872B2 (en) | 2001-12-14 | 2001-12-14 | Reduced-buffer error diffusion |
US10/017016 | 2001-12-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003198843A JP2003198843A (ja) | 2003-07-11 |
JP4141817B2 true JP4141817B2 (ja) | 2008-08-27 |
Family
ID=21780258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002354548A Expired - Fee Related JP4141817B2 (ja) | 2001-12-14 | 2002-12-06 | 削減されたバッファでのエラー拡散 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6995872B2 (ja) |
JP (1) | JP4141817B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6535764B2 (en) * | 2001-05-01 | 2003-03-18 | Intrapace, Inc. | Gastric treatment and diagnosis device and method |
US7486834B2 (en) * | 2005-01-18 | 2009-02-03 | Lexmark International, Inc. | System and method for dynamically shifting error diffusion data |
US7480078B2 (en) * | 2005-04-28 | 2009-01-20 | Xerox Corporation | Method and system for performing multi-pixel parallel error diffusion enabling high-speed diffusion processing without increasing the system clock rate |
CN100435548C (zh) | 2006-09-15 | 2008-11-19 | 北京大学 | 一种能够同时产生多位调频网点的方法及装置 |
JP2010000726A (ja) * | 2008-06-20 | 2010-01-07 | Canon Inc | 画像処理装置、記録装置、及び画像処理方法 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4149194A (en) | 1977-07-07 | 1979-04-10 | Xerox Corporation | Variable angle electronic halftone screening |
US5045952A (en) | 1989-08-21 | 1991-09-03 | Xerox Corporation | Method for edge enhanced error diffusion |
US5208871A (en) | 1990-10-19 | 1993-05-04 | Xerox Corporation | Pixel quantization with adaptive error diffusion |
US5226094A (en) | 1990-10-19 | 1993-07-06 | Xerox Corporation | Method for making image conversions with error diffusion |
US5724091A (en) * | 1991-11-25 | 1998-03-03 | Actv, Inc. | Compressed digital data interactive program system |
US5245678A (en) | 1991-12-20 | 1993-09-14 | Xerox Corporation | Image conversion with lossy adaptive error diffusion |
JPH05268470A (ja) * | 1992-03-19 | 1993-10-15 | Hitachi Ltd | 画像信号処理装置 |
WO1994013102A1 (en) * | 1992-11-27 | 1994-06-09 | Io Research Pty. Limited | Distributed database system and database receiver therefor |
US5353127A (en) | 1993-12-15 | 1994-10-04 | Xerox Corporation | Method for quantization gray level pixel data with extended distribution set |
US5661787A (en) * | 1994-10-27 | 1997-08-26 | Pocock; Michael H. | System for on-demand remote access to a self-generating audio recording, storage, indexing and transaction system |
US5758257A (en) * | 1994-11-29 | 1998-05-26 | Herz; Frederick | System and method for scheduling broadcast of and access to video programs and other data using customer profiles |
US5818438A (en) * | 1995-04-25 | 1998-10-06 | Bellsouth Corporation | System and method for providing television services |
US5838314A (en) * | 1996-02-21 | 1998-11-17 | Message Partners | Digital video services system with optional interactive advertisement capabilities |
TW417387B (en) * | 1996-07-09 | 2001-01-01 | Sanyo Electric Co | Graphic data processing apparatus having pixel density conversion and error diffusing function |
JP3397059B2 (ja) * | 1996-11-07 | 2003-04-14 | セイコーエプソン株式会社 | 印刷装置および画像記録方法 |
US6177931B1 (en) * | 1996-12-19 | 2001-01-23 | Index Systems, Inc. | Systems and methods for displaying and recording control interface with television programs, video, advertising information and program scheduling information |
JPH10271331A (ja) * | 1997-03-26 | 1998-10-09 | Oki Data:Kk | 画像処理方法及びその装置 |
US6172674B1 (en) * | 1997-08-25 | 2001-01-09 | Liberate Technologies | Smart filtering |
US5931960A (en) * | 1997-10-31 | 1999-08-03 | Xerox Corporation | Method and apparatus for handling error diffusion values |
US6029045A (en) * | 1997-12-09 | 2000-02-22 | Cogent Technology, Inc. | System and method for inserting local content into programming content |
US6594035B1 (en) * | 1999-08-16 | 2003-07-15 | Hewlett-Packard Development Company, L.P. | System and memory-buffer management method for reducing random access memory requirements in error diffusion halftone applications |
-
2001
- 2001-12-14 US US10/017,016 patent/US6995872B2/en not_active Expired - Fee Related
-
2002
- 2002-12-06 JP JP2002354548A patent/JP4141817B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003198843A (ja) | 2003-07-11 |
US20030112468A1 (en) | 2003-06-19 |
US6995872B2 (en) | 2006-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5353127A (en) | Method for quantization gray level pixel data with extended distribution set | |
US5268774A (en) | Halftoning with enhanced dynamic range and edge enhanced error diffusion | |
US5258854A (en) | Converting between write-white, write-black and neutral bitmaps | |
US4680645A (en) | Method for rendering gray scale images with variable dot sizes | |
EP0531170B1 (en) | Method for quantization gray level pixel data with application of under compensated error diffusion | |
JP4100782B2 (ja) | 誤差拡散値の処理方法 | |
JPH06233121A (ja) | 画像処理システム | |
JP3247737B2 (ja) | 画像内画素値量子化方法 | |
JP4121631B2 (ja) | 画像データ処理システム及び画像データ処理方法 | |
JP5013805B2 (ja) | プロセッサ読取可能記憶媒体 | |
JPH11187264A (ja) | 画像処理方法および装置 | |
US20020145758A1 (en) | Error diffusion with partial dots method and system | |
JPH1084478A (ja) | 入力画像変換方法及び画素値量子化方法 | |
JP3648142B2 (ja) | ディジタルコピー装置の画像の改良方法および装置 | |
US6608700B1 (en) | Removal of error diffusion artifacts with alternating distribution weights | |
JP4141817B2 (ja) | 削減されたバッファでのエラー拡散 | |
KR100354742B1 (ko) | 화상 데이터 처리장치 | |
US6751358B1 (en) | Error diffusion for digital printing | |
JPH10229496A (ja) | 多グレーレベルのハーフトーン画像にグレーレベルを追加する方法及び装置 | |
JP2001203890A (ja) | 画像処理方法および誤差拡散のためのノイズパターン生成方法 | |
US7317556B2 (en) | Method for error diffusion employing a stamp field | |
JP2000270210A (ja) | 画像処理装置 | |
JPH06339013A (ja) | 階調画像の二値化方法および装置 | |
JP4262148B2 (ja) | 画像処理装置及び画像処理方法 | |
JPH06225124A (ja) | 階調画像の二値化方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051202 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080115 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080414 |
|
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: 20080512 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080611 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110620 Year of fee payment: 3 |
|
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: 20110620 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120620 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130620 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |