(57)【要約】【課題】  スムージング処理におけるハードウェアコストを安価にすると共に、高精彩なスムージング処理を可能とする。【解決手段】  入力された多値の画像データを２値化部で２値化し、２値化された２値化データを複数のラインバッファに保持する。そして、複数のラインバッファに保持された２値化データに基づいて、多値の画像データをスムージング処理する際に、スムージング処理される多値の画像データを２値化部へ転送する順序を制御する。【選択図】      図３
2009253645.tif 000002
【特許請求の範囲】
【請求項１】
入力された多値の画像データを画像処理して出力する画像処理装置であって、
前記多値の画像データを２値化する２値化手段と、
前記２値化された２値化データを保持する複数のラインバッファと、
前記複数のラインバッファに保持された２値化データに基づいて前記多値の画像データをスムージング処理する処理手段と、
前記処理手段でスムージング処理される前記多値の画像データを前記２値化手段へ転送する順序を制御する制御手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記制御手段は、前記多値の画像データを前記２値化手段へ転送する順序と、前記処理手段へ転送する順序とを制御することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記処理手段は、パターンマッチングにより前記多値の画像データのエッジ部分を検出し、検出された多値の画像データのエッジ部分をスムージング処理することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記処理手段は、１ページを複数のバンドに分けて各バンドを処理する際に、該処理を行うか否かを設定する手段を更に有することを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
入力された多値の画像データを画像処理して出力する画像処理装置の処理方法であって、
前記多値の画像データを２値化する２値化工程と、
前記２値化された２値化データを複数のラインバッファに保持する保持工程と、
前記複数のラインバッファに保持された２値化データに基づいて前記多値の画像データをスムージング処理する処理工程と、
前記処理工程でスムージング処理される前記多値の画像データを前記２値化工程へ転送する順序を制御する制御工程と、
を有することを特徴とする画像処理装置の処理方法。
【請求項６】
請求項５に記載の画像処理装置の処理方法をコンピュータに実行させるためのプログラム。
【請求項７】
請求項６に記載のプログラムを記録したコンピュータにより読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パターンマッチングを用いたエッジ検出方法に関するものである。
【背景技術】
【０００２】
近年、電子写真技術を用いた画像形成装置の分野において、ジャギーを除去する方法として、オーバーサンプリングやパターンマッチングによる置き換えなど様々な方法が検討されている。
【０００３】
特に、ハードウェア（ラインバッファ）を用いてパターンマッチングを行い、その結果からジャギー補正を行う場合、以下に説明する２つの方法が提案されている。
【０００４】
１つ目の方法は、特許文献１に記載のように、ハーフトーンなどの擬似中間調処理の後にスムージング処理を行う方法である。しかし、この方法では、図１に示すように、入力された画像データ（８ビット）を２値化部１０１で擬似中間調（ハーフトーン）処理する。その後、スムージング処理部１０２でパターンマッチングを行って参照画素の濃度値を補正するため、擬似中間調の再現性に問題が生じる。
【０００５】
この問題を解決するには、スムージング処理を考慮したハーフトーンパターンの作成が必要である。しかし、このスムージング処理を考慮したハーフトーンパターンを設計するには、更なる時間を要し、そのハーフトーンパターンの作成にはスムージング処理を考慮することにより、より複雑になってしまう。
【０００６】
また、擬似中間調処理を行った後にスムージング処理をかけるのは、元画像よりも情報量が少ない状態でスムージング処理を行うことになり、高性能なスムージング処理を行うことは期待できない。
【０００７】
２つ目の方法は、ハーフトーンなどの疑似中間階調処理の前にスムージング処理を行う方法である。ここで、図２を用いてこの方法を説明する。ラインバッファに、８ビットの画像データが入力される。尚、５×５のウィンドウを用いてスムージング処理を行う場合には、最低でも４ライン分のラインバッファを必要とする。この例では、ラインバッファは８ビット×４ライン×（主走査方向の画素数）分が必要となる。
【０００８】
ラインバッファに貯められた画像データはスムージング処理部２０１のシフトレジスタに入力され、５×５の補正ウィンドウを作る。このウィンドウを用いて、エッジ検出部がパターン記憶部に保持されたパターンデータと比較し、エッジ検出を行う。このパターンマッチングにより、エッジと判断された画素は画素補正演算部でスムージング処理され、エッジでない画素はそのまま出力される。そして、出力された多ビットデータは、ハーフトーン処理部２０２により擬似中間調処理が行われる。
【０００９】
この方法の利点は、スムージング処理を行った後の多値データに対してハーフトーンなどの擬似中間調処理を行うことにより、濃度の再現性が高まる点である。また、多ビットデータに対してスムージング処理を行うことができるため、高性能なスムージングを実現することができる点である。
【００１０】
しかし、２つ目の方法の問題点は、１つ目の方法において擬似中間調処理されたデータが１ビットで、その１ビットのデータに対してスムージング処理を行った場合と比較すると、ラインバッファの量が８倍に増えている。
【特許文献１】特開2002-165096号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
上記従来例では、パターンマッチングを用いて、エッジ検出を行うスムージング処理において、２値データに対してスムージング処理をかけるにはスムージング処理を考慮したハーフトーンパターンの設計が必要である。また、２値データに対してスムージング処理を行った場合、高精彩化が期待できない。
【００１２】
一方、多値データに対してスムージング処理を行った場合、ラインバッファのデータ量が大きく、ハードウェアのコストが高価になる。
【００１３】
本発明は、スムージング処理におけるハードウェアコストを安価にすると共に、高精彩なスムージング処理を可能とすることを目的とする。
【課題を解決するための手段】
【００１４】
本発明は、入力された多値の画像データを画像処理して出力する画像処理装置であって、前記多値の画像データを２値化する２値化手段と、前記２値化された２値化データを保持する複数のラインバッファと、前記複数のラインバッファに保持された２値化データに基づいて前記多値の画像データをスムージング処理する処理手段と、前記処理手段でスムージング処理される前記多値の画像データを前記２値化手段へ転送する順序を制御する制御手段と、を有することを特徴とする。
【００１５】
また、本発明は、入力された多値の画像データを画像処理して出力する画像処理装置の処理方法であって、前記多値の画像データを２値化する２値化工程と、前記２値化された２値化データを複数のラインバッファに保持する保持工程と、前記複数のラインバッファに保持された２値化データに基づいて前記多値の画像データをスムージング処理する処理工程と、前記処理工程でスムージング処理される前記多値の画像データを前記２値化工程へ転送する順序を制御する制御工程と、を有することを特徴とする。
【発明の効果】
【００１６】
本発明によれば、スムージング処理におけるハードウェアコストが安価になると共に、高精彩なスムージング処理が可能となる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照しながら発明を実施するための最良の形態について詳細に説明する。
【００１８】
図３は、画像形成装置における画像処理部の構成の一例を示す図である。尚、画像形成装置はレーザプリンタであり、画像処理部は入力された画像データをパターンマッチングによりスムージング処理し、ジャギーを除去した後、ハーフトーンなどの擬似中間調処理を行って出力する。
【００１９】
また、パターンマッチングにより画像データのエッジを検出する際に、ウィンドウ処理に必要なラインバッファのサイズを削減するために、入力された多値の画像データを２値化してラインバッファに保持する。
【００２０】
図３において、３０１〜３０４はラインバッファであり、入力された２値データを一時記憶する。３０５はスムージング処理部であり、シフトレジスタ群３１１、エッジ検出部３１２、画素補正演算部３１３から構成される。
【００２１】
シフトレジスタ群３１１は、パターンマッチングによりエッジ検出を行うウィンドウとして機能するものである。シフトレジスタ群３１１は、ラインバッファ３０１〜３０４に保持された１ビットのデータを保持するシフトレジスタと、入力された８ビットのデータを保持するシフトレジスタとで構成される。このシフトレジスタ群３１１をウィンドウとも称す。
【００２２】
また、エッジ検出部３１２はエッジ検出用のパターンを記憶するパターン記憶部３１４を含む。そして、画素補正演算部３１３はエッジ検出部３１２での検出結果により詳細は後述する演算方法に従って参照画素を補正する。
【００２３】
３０６はハーフトーン部であり、スムージング処理部３０５でスムージング処理された画像データに対して擬似中間調処理を行う。３０７はパルス幅変調（ＰＷＭ）部であり、ハーフトーン処理された画素データに対してパルス幅変調を行い、不図示のエンジン部へ出力する。３０８は２値化部であり、入力された多値の画像データを２値化する。ここで、２値化部３０８は２値化の閾値として８ビットデータの１２８を設定し、画素データが閾値よりも大きい場合は“１”に、小さい場合は“０”に２値化する。
【００２４】
ここで、入力された画像データを２値化し、ラインバッファ（１ビット×４ライン）に一時記憶し、ウィンドウを用いたパターンマッチングにより参照画素をスムージング処理する方法を、図４〜図９を用いて説明する。
【００２５】
図４は、入力された画像データの一例を示す図である。ここでは、８ビットのデータで濃度が５０％の文字“ａ”に対してスムージング処理を行うものとする。図４において、４００は画素データに対してスムージング処理を行う際の画素データとウィンドウ３１１との関係を示す仮想的なウィンドウである。また、このウィンドウ４００はスムージング処理により図中の右側へ移動していく。また、４０１はスムージング処理を行う際の参照画素であり、多ビット（８ビット）の画素である。
【００２６】
図５は、２値化された画素データが入力されたウィンドウ３１１を示す図である。図６は、パターン記憶部３１４に記憶されるマッチングパターンの一例を示す図である。図７は、マッチングパターンと参照画素の演算方法との対応を示す図である。
【００２７】
尚、図７に示す７０１の「１の位置３０％で出力」の「１の位置」は、図８に示す位置である。また、図６では、（ａ）〜（ｆ）に示す６種類のマッチングパターンを例として示しているが、パターンの数に制限はなく、図７に示すように、パターンの数に対応する演算方法を用意しておけば良い。
【００２８】
ここで、図５に示すウィンドウ３１１の画素データの場合、エッジ検出部３１２は一致するエッジパターンとして図６に示す（ｂ）のマッチングパターンを検出する。従って、画素補正演算部３１３は、演算方法として図７に示す「参照画素の８０％で出力」７０２を選択し、図９に示すように、参照画素の濃度を補正する。
【００２９】
図１０は、スムージング処理を行った結果を示す図である。図１０に示すように、図４と比較してエッジ部分が滑らかになっている。図１０に示す例は、２０種類のマッチングパターンを用意してスムージング処理を行った結果である。
【００３０】
従来のハーフトーンなどの擬似中間調処理が行われた後、スムージング処理を行うと、参照画素自体のビット数が減り情報量が減ってしまう。しかし、擬似中間調処理を行う前にスムージング処理を行えば、参照画素を多ビット（８ビット）で扱うことができるため、より高性能なスムージング処理を行うことが可能となる。
【００３１】
また、従来の画像データは１ライン目から順に転送され、スムージング処理がなされていた。しかし、本実施形態では、エッジ検出用のラインバッファを大幅に削減するために、特徴あるライン転送方法によって転送を行っている。
【００３２】
そのため、データの転送サイズは約２倍と大きくなるが、安価なハードウェアの構成で高性能なスムージング処理を行うことができる。
【００３３】
ここで、本発明に係る特徴的なライン転送順序を、図３及び図１１を用いて説明する。尚、ライン転送順序の制御は、不図示のＣＰＵがＲＯＭに格納されたプログラムに従って実行するものとする。
【００３４】
図１１は、本実施形態におけるライン転送順序を示すフローチャートである。まず、ステップＳ１１０１において、ラインカウンタＮを“１”に初期化する。次に、ステップＳ１１０２において、ラインカウンタＮの値が“３”以上か否かを判定し、ＹｅｓであればステップＳ１１０４へ処理を進め、ＮｏであればステップＳ１１０３へ処理を進める。
【００３５】
ステップＳ１１０３では、ページの先頭を白画素として処理するために、１ライン分の白画素を示すデータを画像データ入力Ａから投入する。ここで、Ａから投入されたデータはシフトレジスタを通り２値化部３０８で２値化処理が施され、ラインバッファ３０２に入力される。また同時に、元々ラインバッファ３０２に貯められていたデータは、シフトレジスタを通過し、ラインバッファ３０１に入力される。
【００３６】
一方、ステップＳ１１０４では、画像データを画像データ入力Ａから投入する。Ａから投入されたデータはシフトレジスタを通り２値化部３０８で２値化処理が施され、ラインバッファ３０２に入力される。また同時に、元々ラインバッファ３０２に貯められていたデータは、シフトレジスタを通過し、ラインバッファ３０１に入力される。
【００３７】
次に、ステップＳ１１０５において、ラインカウンタＮの値が“ライン数”以下か否かを判定し、ＹｅｓであればステップＳ１１０６へ処理を進め、またＮｏであればステップＳ１１０７へ処理を進める。
【００３８】
ステップＳ１１０６では、Ｎライン目のデータを画像データ入力Ｂから投入する。このＢから投入されたデータは２値化部３０８で２値化処理が施され、ラインバッファ３０４に入力される。また同時に、元々ラインバッファ３０４に貯められていたデータは、シフトレジスタを通過し、ラインバッファ３０３に入力される。そして、ステップＳ１１０９で、ラインカウンタＮをＮ＋１に更新し、ステップＳ１１０２に戻り、上述の処理を繰り返す。
【００３９】
ステップＳ１１０７では、ラインカウンタＮの値がライン数を超えたので、１ライン分の白画素を示すデータを画像データ入力Ｂから投入する。そして、ステップＳ１１０８において、ラインカウンタＮの値が“ライン数＋２”に等しいか否かを判定し、ＮｏであればステップＳ１１０９へ処理を進めるが、Ｙｅｓであれば、この処理を終了する。
【００４０】
本実施形態では、１ページの全てのデータを転送する場合を想定しているため、画像の周囲に白画素があると仮定して補正を行っている。しかし、画像を複数のラインのバンド単位に区切って転送する場合、前のバンドの最終ラインを投入する処理も考えられる。
【００４１】
また、本実施形態では、５×５のウィンドウを用いて参照画素の補正を行っているが、本発明はウィンドウのサイズに制限されるものではない。
【００４２】
また、本実施形態では、２値化データを用いてラインバッファの削減を試みているが、２／３種類の閾値を設定して３値化又は４値化データを用いてエッジ検出を行っても良く、ビット幅を制限するものではない。
【００４３】
更に、本実施形態では、１ページ全てのデータに対してスムージング処理を行う場合を説明したが、１ページを複数のバンドに分けて転送する場合、スムージングを行わなくて良いバンドに対してはデータを２度転送しなくても良い。
【００４４】
図１２は、１ページを複数のバンドに分けて各バンドを処理する場合の一例を示す図である。図１２に示すように、バンド１、２、６のテキスト部分にスムージング処理を行い、バンド３〜５の自然画部分にスムージング処理を行いたくない場合、スムージング処理部３０５に処理を行うか否かを設定する機能が必要となる。
【００４５】
図１３は、複数のバンドの各々をスムージング処理するか否かを設定可能な画像処理部の構成の一例を示す図である。例えば、バンド３〜５の自然画部分にスムージング処理を行いたくない場合、図１３に示すスムージングＯＮ／ＯＦＦレジスタ１３０１にＯＦＦを設定し、Ａから通常通りに（上からラインを順番通りに）、転送すれば良い。
【００４６】
尚、本発明は複数の機器（例えば、ホストコンピュータ、インターフェース機器、リーダ、プリンタなど）から構成されるシステムに適用しても、１つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用しても良い。
【００４７】
また、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵ若しくはＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行する。これによっても、本発明の目的が達成されることは言うまでもない。
【００４８】
この場合、コンピュータ読み取り可能な記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【００４９】
このプログラムコードを供給するための記録媒体として、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【００５０】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、次の場合も含まれることは言うまでもない。即ち、プログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理により前述した実施形態の機能が実現される場合である。
【００５１】
更に、記録媒体から読出されたプログラムコードがコンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込む。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理により前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００５２】
【図１】従来のハーフトーンなどの擬似中間調処理の後にスムージング処理を行う方法を説明するための図である。
【図２】従来のハーフトーンなどの疑似中間階調処理の前にスムージング処理を行う方法を説明するための図である。
【図３】画像形成装置における画像処理部の構成の一例を示す図である。
【図４】入力された画像データの一例を示す図である。
【図５】２値化された画素データが入力されたウィンドウ３１１を示す図である。
【図６】パターン記憶部３１４に記憶されるマッチングパターンの一例を示す図である。
【図７】マッチングパターンと参照画素の演算方法との対応を示す図である。
【図８】図７に記載の「位置」を説明するための図である。
【図９】画素補正演算部３１３における参照画素の濃度補正を説明するための図である。
【図１０】スムージング処理を行った結果を示す図である。
【図１１】本実施形態におけるライン転送順序を示すフローチャートである。
【図１２】１ページを複数のバンドに分けて各バンドを処理する場合の一例を示す図である。
【図１３】複数のバンドの各々をスムージング処理するか否かを設定可能な画像処理部の構成の一例を示す図である。
【符号の説明】
【００５３】
３０１  ラインバッファ
３０２  ラインバッファ
３０３  ラインバッファ
３０４  ラインバッファ
３０５  スムージング処理部
３０６  ハーフトーン部
３０７  パルス幅変調（ＰＷＭ）部
３０８  ２値化部
３１１  シフトレジスタ群（ウィンドウ）
３１２  エッジ検出部
３１３  画素補正演算部
３１４  パターン記憶部
４００  ウィンドウ
４０１  参照画素
【図１】
2009253645.tif 000003
【図２】
2009253645.tif 000004
【図３】
2009253645.tif 000005
【図４】
2009253645.tif 000006
【図５】
2009253645.tif 000007
【図６】
2009253645.tif 000008
【図７】
2009253645.tif 000009
【図８】
2009253645.tif 000010
【図９】
2009253645.tif 000011
【図１０】
2009253645.tif 000012
【図１１】
2009253645.tif 000013
【図１２】
2009253645.tif 000014
【図１３】
2009253645.tif 000015