JP2007129613A - 画像処理装置及び方法、画像形成装置 - Google Patents
画像処理装置及び方法、画像形成装置 Download PDFInfo
- Publication number
- JP2007129613A JP2007129613A JP2005321944A JP2005321944A JP2007129613A JP 2007129613 A JP2007129613 A JP 2007129613A JP 2005321944 A JP2005321944 A JP 2005321944A JP 2005321944 A JP2005321944 A JP 2005321944A JP 2007129613 A JP2007129613 A JP 2007129613A
- Authority
- JP
- Japan
- Prior art keywords
- color conversion
- image
- data
- processing
- halftone
- 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.)
- Pending
Links
Images
Landscapes
- Facsimile Image Signal Circuits (AREA)
- Color Image Communication Systems (AREA)
Abstract
【課題】色変換処理、ハーフトーン処理をともにソフトウェアで実行する場合に、キャッシュメモリを効率的に利用し、色変換処理及びハーフトーン処理の高速化を図ることを目的とする。
【解決手段】第一の色空間で規定された入力画像を第二の色空間で規定された階調画像に変換する色変換手段と、前記階調画像を、より低ビットで表現された低階調画像に変換するハーフトーン手段と、横H画素×縦V画素又はそれより小さいブロック単位で、前記色変換手段及び前記ハーフトーン手段をセットで実行する制御手段とを備えた画像処理装置であって、前記H、Vを、H×Vのブロック内の全画素についての色変換処理の結果を当該画像処理装置が利用可能なキャッシュメモリに保持できるように設定する。
【選択図】図4
【解決手段】第一の色空間で規定された入力画像を第二の色空間で規定された階調画像に変換する色変換手段と、前記階調画像を、より低ビットで表現された低階調画像に変換するハーフトーン手段と、横H画素×縦V画素又はそれより小さいブロック単位で、前記色変換手段及び前記ハーフトーン手段をセットで実行する制御手段とを備えた画像処理装置であって、前記H、Vを、H×Vのブロック内の全画素についての色変換処理の結果を当該画像処理装置が利用可能なキャッシュメモリに保持できるように設定する。
【選択図】図4
Description
本発明は、色変換やハーフトーン処理などの画像処理をソフトウェアにより実行する場合に適した技術に関する。
従来より、入力画像データに対して画像処理(色変換処理やハーフトーン処理など)を施して印刷データを生成し、該印刷データに基づいて印刷を実行するプリントシステムがある。
色変換処理は、第一の色空間で規定された階調画像を第二の色空間で規定された階調画像に変換する処理である。通常、ホスト装置などで生成される印刷イメージはRGB色空間で規定される一方、プリンタではCMYK色空間で規定された画像データに基づいて印刷を実行することから、色変換処理が必要となる。色変換の方法としては、変換前のRGB値と変換後のCMYK値とを対応づけたLUT(Look-Up Table)を用意しておき、該LUTを参照して色変換を行う方法が一般的である。
ハーフトーン処理は、低ビット(例えば2値)のデータにより多階調の画像を表現するために必要となる処理である。例えば、n×n個の閾値からなるディザマトリクスをイメージデータに適用し、対応する各画素の濃淡レベルと閾値を比較し、イメージデータの濃淡レベルの方が大きい場合は1(白)、小さい場合は0(黒)として2値化する組織的ディザ法など、種々のハーフトーン処理が知られている。
特開平9−294212号公報
上記のプリントシステムにおいて、画像処理をソフトウェア(ホスト装置のプリンタドライバやプリンタに実装された画像処理プログラム)により実行する場合、画像データはデータ量が多く処理負荷が多いこともあり、処理の高速化を図ることが重要な課題となる。
ここで、従来より、CPU内部に設けられた高速なキャッシュメモリに使用頻度の高いデータを蓄積しておくことにより、低速なメインメモリへのアクセスを減らし、高速化を図る方法が知られている。
本願の発明者は、色変換処理、ハーフトーン処理をともにソフトウェアで実行する場合において、キャッシュメモリの動作を考察した結果、色変換処理及びハーフトーン処理を実行する単位によってキャッシュメモリの利用効率が大きく変わることを発見した。例えば、印刷イメージのライン単位で色変換処理及びハーフトーン処理を連続して実行した場合、色変換処理からハーフトーン処理に移行する際に頻繁にキャッシュメモリと外部メモリとの間で読出し/書込みが生じてしまい、オーバーヘッドによって十分に高速化できない場合があることに気づいた。
本発明は、上記発見に基づき想到したものであり、色変換処理、ハーフトーン処理をともにソフトウェアで実行する場合に、キャッシュメモリを効率的に利用し、色変換処理及びハーフトーン処理の高速化を図ることを目的とする。
本発明の画像処理装置は、第一の色空間で規定された階調画像を第二の色空間で規定された階調画像に変換する色変換手段と、前記階調画像を、より低ビットで表現された低階調画像に変換するハーフトーン手段と、横H画素×縦V画素又はそれより小さいブロック単位で、前記色変換手段及び前記ハーフトーン手段をセットで実行する制御手段とを備えた画像処理装置であって、前記H、Vが、H×Vのブロック内の全画素についての色変換処理の結果を当該画像処理装置が利用可能なキャッシュメモリに保持できるように設定されていることを特徴とする。
かかる構成によれば、色変換処理の実行してからハーフトーン処理に移行する際、ハーフトーン処理に必要な色変換処理結果が全てキャッシュメモリに保持されているため、メインメモリにアクセスすることなく、ブロック内の画素に対してハーフトーン処理を実行することが可能となり、その結果、処理の高速化を図ることができる。
好適には、前記ハーフトーン手段は、前記階調画像に対して所定のディザマトリクスを縦方向にp画素(p<V)ずらしながら適用することで低階調画像を生成することを特徴とする。
かかる構成によれば、p<Vという関係が成立していることで、連続してハーフトーン処理を実行するブロックについて、適用するディザマトリクスの領域を重複させることができ、その結果、ディザマトリクスに関するキャッシュヒット率を大きく向上させることができる。
本発明の画像形成装置は、本発明の画像処理装置を備えることを特徴とする。
本発明の画像処理方法は、第一の色空間で規定された階調画像を第二の色空間で規定された階調画像に変換する色変換工程と、前記階調画像を、より低ビットで表現された低階調画像に変換するハーフトーン工程とを備えた画像処理方法であって、横H画素×縦V画素又はそれより小さいブロック単位で、前記色変換工程及び前記ハーフトーン工程をセットで実行するように構成されており、前記H、Vが、H×Vのブロック内の全画素についての色変換処理の結果を当該画像処理方法を実行する情報処理装置が利用可能なキャッシュメモリに保持できるように設定されていることを特徴とする。
本発明の画像処理方法は、コンピュータにより実施することができるが、そのためのコンピュータプログラムは、CD−ROM、磁気ディスク、半導体メモリ及び通信ネットワークなどの各種の媒体を通じてコンピュータ(ホスト装置や、画像形成装置が備える画像処理装置など)にインストールまたはロードすることができる。また、コンピュータプログラムが、プリンタ用カードやプリンタ用オプションボードに記録されて流通する場合も含む。
以上、本発明によれば、色変換処理、ハーフトーン処理をともにソフトウェアで実行する場合に、キャッシュメモリを効率的に利用し、色変換処理及びハーフトーン処理の高速化を図ることができる。
以下、図面にしたがって本発明の実施の形態について説明する。但し、本発明の技術的範囲はこれらの実施の形態に限定されず、特許請求の範囲に記載された事項とその均等物まで及ぶものである。
図1は、本実施の形態における画像形成装置の構成図である。この画像形成装置は、一例として、大判用紙への画像形成を可能にするインクジェットプリンタであり、コントローラ20が、図示しないホストコンピュータから入力画像データを受信し、それを画像処理して画像再生データを生成し、インクを吐出する多数のノズルを有する印刷ヘッド10に画像再生信号38を出力する。コントローラ20は、画像再生データを生成するための画像処理を制御するCPUと、そのCPUバスCBUS1と、CPUバスCBUS1に接続された画像処理ユニット22とを有する。また、CPUバスCBUS1には外部CPUメモリCPUMEMが接続され、この外部CPUメモリには、種々のパラメータや制御プログラムが格納されている。
また、CPUバスCBUS1は、画像処理ユニット22内のCPUインタフェースCPUIFを介して第2のCPUバスCBUS2に接続されている。また、画像処理ユニット22は、種々の通信路NET1〜3のインタフェースIF1〜3と、入力データの転送制御を行うパス制御部24と、解凍処理を行う解凍ユニット26と、ラスタ方向の画像再生データを印刷ヘッドのパス毎に分解するパス分解処理部32と、パス毎に分解された画像再生データを印刷ヘッドのノズル順に順番を入れ替えるノズル順変換処理部34とが、それぞれ専用のハードウエアブロックとして設けられる。また、色変換及びハーフトーン処理部12は、解凍ユニット26やパス分解処理部32、ノズル順変換処理部34のようなコントローラ20内の専用ハードウエアではなく、外付けの専用プロセッサ(例えば、DSP(Digital Signal Processor))により構成され、色変換及びハーフトーン処理をプログラム(ソフトウェア)により実現し、それらの処理の変更に容易に対応できるようにしている。
更に、画像処理ユニット22は、前述のパス制御部24、解凍ユニット26、パス分解処理部32、ノズル順変換処理部34を接続するローカルバスLBUSを有し、このローカルバスLBUSには外部メモリコントローラ28を介して外部の大容量メモリE−MEMが接続される。外部メモリコントローラ28と外部メモリE−MEMとは、メモリバスMBUSを介して接続される。そして、外部の大容量メモリE−MEMは、入力画像データを一時的に格納し、各処理後のデータを一時的に格納する複数のバッフ領域を有する。また、ローカルバスLBUSがハーフトーンインタフェースユニット30に接続され、ハーフトーンバスHTBUSを介して色変換及びハーフトーン処理部12に接続される。また、ローカルバスLBUSは、ヘッドインタフェースユニット36を介して印刷ヘッド10に接続される。
CPUバスCBUS1、CBU2は、コマンド解釈などに利用されるのに対して、ローカルバスLBUSは大量の画像データの転送に利用されるので、CPUバスに比較すると大容量のバス(ローカルバスは128ビット、CPUバスは32ビット)に形成されている。
画像処理ユニット22内の専用処理ユニットらは、CPUと、第1のCPUバスCBUS1及び第2のCPUバスCBUS2を介してその動作を制御される。例えば、CPUが、各処理ユニットの動作開始レジスタに動作開始フラグを書き込むことで各専用処理ユニットは対応する処理を実行し、CPUは、各処理ユニットの処理終了時に動作終了割り込み信号を受信してその動作終了を検知する。
インクジェットの大判プリンタは、印刷業などで広く利用されているが、本実施の形態では、入力画像データとして、RGB階調データや、RGB階調データをJPEG形式で圧縮したJPEG圧縮データ等を受信可能である。RGB階調データ等は、通信線NET1〜NET3を介してコントローラ20に入力される。JPEG圧縮データの場合は、ホストコンピュータ側で元の画像データがJPEG圧縮され、その圧縮データがコントローラ20に入力される。圧縮率が高いので通信データ量を小さくすることができ、ホストコンピュータとプリンタ間の通信時間を短くすることができる。但し、プリンタ側では、受信したJPEG圧縮データを解凍してRGB階調データを復元する必要がある。
このように入力又は復元されたRGB階調データには、色変換、ハーフトーン処理、ヘッドのノズルに対応させる変換処理、つまりドット毎のインク吐出データをパス毎に分解するパス分解処理、パス毎に分解されたラスタ方向に並べられたデータをヘッドのノズル順に並び替えるノズル順変換処理が施される。
次に、入力画像データに対応して、データの流れと処理について説明する。入力画像データは、パケットの形態で種々の通信路NET1〜3を介して入力され、それぞれの入力インタフェースIF1〜3は、パケットを元のデータ列に再構成するなどの処理を行い、送信前の元のデータに戻す。そして、この入力データは、パス制御部24内のFIFOメモリで構成される第1の入力バッファI−BUF1に格納されながら、ローカルバスLBUSを介して、外部の大容量メモリE−MEMの入力バッファI−BUF3に格納される。この外部メモリE−MEMは、例えば、ダブルレートのシンクロナスDRAMであり、大容量且つ高速メモリである。また、外部メモリE−MEMへのアクセスは、メモリコントローラユニットE−MCとメモリバスMBUSを経由して行われる。
そして、外部メモリE−MEMに格納された入力データのうち、先頭の部分が再度ローカルバスLBUSを介して、パス制御部24内の第2の入力バッファI−BUF2に格納される。つまり、入力データが全て外部メモリE−MEMに格納されると共に、その先頭の一部のみがパス制御部24内の第2の入力バッファI−BUF2に格納されて停止する。第1及び第2の入力バッファI−BUF1、2は、FIFOバッファであり、図示しないFIFOコントローラにより制御される。
そこで、CPUは、CPUバスCBUS1、2を介して第2の入力バッファI−BUF2にアクセスして、入力データの先頭部分のコマンドを解析してフォーマットの種類(圧縮形式情報)とデータ量を認識すると、外部メモリE−MEMの第3の入力バッファI−BUF3内に格納した入力データを、次々に第2の入力バッファI−BUF2に転送し、そこから解凍ユニット26にデータを転送させる。このデータ転送は、ローカルバスLBUSを経由せず、第2の入力バッファI−BUF2から専用線で行われる。
例えば、JPEGフォーマットの場合は、解凍ユニット26で解凍(復号化)され、解凍済みの画像データが外部メモリE−MEMのRGBバッファRGB−BUFに格納される。入力画像データがRGB階調データの場合は、解凍ユニット26を介することなくRGBバッファRGB−BUFに格納される。RGBバッファに格納される画像データは、例えば所定の解像度の画素に対応するそれぞれ8ビットのRGB階調データとなる。このRGB階調データは、ハーフトーンインタフェースユニット30を経由して色変換及びハーフトーン処理部12に転送され、そこで色変換処理されてインク色に基づく色空間CMYKの8ビット階調データに変換される。更に、CMYK階調データはハーフトーン処理されてより低階調のデータ、すなわち、印刷ヘッド10のノズルによるインク吐出データ(2ビット)に変換され、外部メモリE−MEMのプレーンバッファPL−BUFに格納される。2ビットのインク吐出データは、CMYK4色のインクそれぞれに対して大きなドット印刷用の吐出の有無と、小さなドット印刷用の吐出の有無を示すデータである。また、上記の色変換及びハーフトーン処理部12では、解凍済みの画像データの解像度をより高い解像度に変換する解像度変換を必要に応じて行う。その結果、ハーフトーン処理により、プリンタヘッドにより印刷される画素密度の解像度でドットの吐出有無を示すインク吐出データとなる。
なお、上記では、RGB階調データ、CMYK階調データ、インク吐出データ(低階調データ)の1色1画素あたりのビット長をそれぞれ8ビット、8ビット、2ビットとしているが、これらは設計に応じて変更可能である。
プレーンバッファPL−BUFに格納されたCMYKのインク吐出データは、パス分解処理32でヘッド10のパス毎のインク吐出データに分解されて、外部メモリE−MEM内のパスバッファMW−BUFに格納される。そして、パス毎に分解されたインク吐出データは、ノズル順変換処理部34でヘッドのノズル順に並び替えられ、そのノズル順インク吐出データが外部メモリE−MEM内のヘッドバッファHD−BUFに格納される。最後に、ノズル順に並び替えられたノズル順インク吐出データが、ヘッドコントロールユニット36を経由して、画像再生信号38としてプリンタヘッド10に転送される。
図2は、本実施の形態における色変換及びハーフトーン処理部12の構成図である。色変換及びハーフトーン処理部12は、CPUチップ50とメモリ60とを備える。キャッシュ54はCPUチップ50内部の高速メモリ(又は、CPUチップ50が高速アクセス可能なRAMなど)であり、CPUコア52の動作とメモリ60へのアクセスとの間の速度差を吸収する。キャッシュ54の容量は設定に応じて定めることができるが、ここでは16Kバイトとする。メモリ60とキャッシュとの間では、16/32/64バイト等のキャッシュラインサイズでリード・ライトされる。CPUコア52はキャッシュ54上に有効なデータが有る場合は、キャッシュアクセスのみで動作するため、処理を高速に実行できる。しかし、キャッシュ54のサイズには限りがあるため、必要なデータが常にキャッシュ54に存在するとは限らない。CPUチップ50は、前述のキャッシュ54を接続する内部バス58を有し、この内部バス58にはメモリコントローラ56を介してメモリ60が接続される。メモリ60には、画像処理プログラム、色変換する際に参照するLUT、ハーフトーン処理を行う際に参照するディザマトリクスなどが格納されている。
図3は、画像形成装置での印刷処理の流れを示す図である。画像形成装置では、ホストコンピュータから入力画像データを受信すると(S70)、第1入力バッファI−BUF1、外部メモリE−MEM、第2入力バッファI−BUF2に入力画像データが格納され、第2入力バッファI−BUF2に格納されているコマンドが、CPUにより読み出され解析される。入力画像データがRGB階調データの場合は、解凍ユニット26を介することなくRGBバッファRGB−BUFに格納される。JPEG圧縮された画像形成データの場合は、ここでCPUによりJPEG圧縮フォーマットであることが検出され、圧縮データ54が解凍ユニット26に転送され、そこで解凍処理され、その後、解凍されたRGB階調データがRGBバッファRGB−BUFに格納される。
画像形成装置のコントローラ20は、RGBバッファRGB−BUFのRGB階調データを、ハーフトーンインタフェースユニット30とハーフトーンバスHTBUSとを介して色変換及びハーフトーン処理部12に転送する。
色変換及びハーフトーン処理部12は、画像処理プログラムを実行して、RGB階調データからCMYK階調データへの色変換処理、及び、CMYK階調データに対してインクの吐出有無に対応するインク吐出データを生成するハーフトーン処理を実行する(S72)。生成されたインク吐出データは、外部メモリのプレーンバッファPLBUFに格納される。
ここで、本実施形態では、S72において、横H画素×縦V画素のブロック単位で、色変換処理及びハーフトーン処理をセットで実行するように構成している。
H、Vは、H×Vのブロック内の全画素についての色変換処理の結果を、色変換及びハーフトーン処理部12(CPUコア52)が利用可能なキャッシュメモリ、すなわちキャッシュ54に保持できるように設定される。具体的には、H×V×CMYK階調画像データの1色1画素あたりのビット長(本実施形態では、8ビット)×色数(本実施形態では、4色)≦キャッシ54の容量(本実施形態では、16Kバイト)という関係が少なくとも成立するように、H及びVが設定される。なお、キャッシュ54がLUTやディザマトリクスなどのデータ保持に利用されている場合でもキャッシュ54内にH×Vのブロック内の全画素に対する色変換処理結果を保持できるように、キャッシュ54の容量に余裕を持たせてH、Vを定めることが望ましい。
次に、画像形成装置のコントローラ20は、インク吐出データを、パス分解処理部32とノズル順変換処理部34とによりヘッドデータに変換する(S74)。そして、変換されたヘッドデータを画像再生信号38としてプリンタヘッド10に出力する(S76)。
図4、図5は、印刷処理のS72における、色変換処理及びハーフトーン処理の詳細を示すフローチャートである。色変換処理及びハーフトーン処理の各工程(符号が付与されていない部分的な工程を含む)は、処理内容に矛盾を生じない範囲で任意に順番を変更して又は並列に実行することができる。
まず、CPUコア52は、転送されたRGB階調データ上に、所定の順序で、横H画素×縦V画素のブロックを設定する(S80)。ブロックの設定順としては、例えば図6(a)の矢印で示すような順序で設定することが考えられる。
なお、画像端部においてH×Vのブロックを設定できない場合は、画像内に収まるようにH×Vより小さいブロックを設定すればよい。
次に、CPUコア52は、変数x、yに初期値0をセットする(S82)。ここで、変数x、yは、H×Vのブロック内の画素位置を特定するための変数であり、ブロックの左上画素位置を原点(0、0)とし、走査方向(横方向)をx、副走査方向(縦方向)をyで表すものとする。
次に、CPUコア52は、RGB階調データ上に設定した前記ブロックにおいて(x、y)で特定される画素のRGB値を取得する(S84)。
次に、CPUコア52は、LUTを参照して、前記取得したRGB値に対応するCMYK値を求め、該CMYK値に基づく各色の階調データを(x、y)の画素に対する色変換処理結果としてキャッシュ54に書き込む(S86)。このとき、CPUコア52は、キャッシュ54に空きがない場合、所定の基準でキャッシュ54内に格納されているデータを選択し、該選択したデータをメモリコントローラ56を介してメモリ60に書き込む(ライトバックする)。
次に、CPUコア52は、x=x+1を実行する(S88)。
次に、CPUコア52は、x<Hが成立(かつ(x、y)で特定される画素が存在)するか否かを判断する(S90)。そして、成立する場合は、S84に戻り、一方、成立しない場合は、x=0、y=y+1を実行する(S92)。
次に、CPUコア52は、y<Vが成立(かつ(x、y)で特定される画素が存在)するか否かを判断する(S94)。そして、成立する場合は、S84に戻る。
一方、成立しない場合は、CPUコア52は、ブロック内の画素について色変換処理が終了したと判断し、続けてブロック内の画素について各色ごとに96以降のハーフトーン処理を実行する。
すなわち、CPUコア52は、CMYKのうち1色を選択するとともに、変数x、yに初期値0をセットする(S96)。
次に、CPUコア52は、(x、y)の画素に対応する前記選択した色の階調データ(以下、「インク色階調データ」という)がキャッシュ54に存在すれば(S98:Yes)、キャッシュ54からインク色階調データを読み出す(S100)。
一方、キャッシュ54にインク色階調データが存在しない場合(S98:No)、CPUコア52は、メモリコントローラ56を介してメモリ60にアクセスし、メモリ60からインク色階調データを読み出す(S102)。
次に、CPUコア52は、ディザマトリクスを参照して、前記読み出したインク色階調データをより低階調のインク吐出データに変換する(S104)。なお、本実施形態では、各要素ごとに3つの閾値を有するディザマトリクスを用いてインク色階調データを4値化する組織的ディザ法を採用し、1色1画素のビット長が2ビットのインク吐出データを生成するように構成している。
次に、CPUコア52は、前記生成したインク吐出データをメモリコントローラ56を介してメモリ60に書き込む(ライトバックする)(S106)。
次に、CPUコア52は、x=x+1を実行する(S108)。
次に、CPUコア52は、x<Hが成立(かつ(x、y)で特定される画素が存在する)か否かを判断する(S110)。そして、成立する場合は、S98に戻り、一方、成立しない場合は、x=0、y=y+1を実行する(S112)。
次に、CPUコア52は、y<Vが成立(かつ(x、y)で特定される画素が存在する)か否かを判断する(S114)。そして、成立する場合は、S98に戻る。
一方、成立しない場合は、CPUコア52は、CMYKのうち未だ選択していない色があるか否かを判断し(S116)、ある場合は、未選択の色を選択すべくS96に戻る。
CMYK4色全て選択している場合、CPUコア52は、ブロック内の画素についてハーフトーン処理が終了したと判断し、RGB階調データ上にブロックを未だ設定していない領域があるか否かを判断する(S118)。そして、ある場合は、未設定の領域にブロックを設定すべくS80に戻り、そのような領域がない場合は、色変換処理及びハーフトーン処理を終了する。
このように、本実施形態では、H×Vのブロック内の全画素についての色変換処理の結果をキャッシュ54に保持できるように、具体的には、H×V×4バイト≦16Kバイトという関係が少なくとも成立するように、H及びVを定め、このH×Vのブロック単位で色変換処理及びハーフトーン処理をセットで実行するように構成している。かかる構成によれば、理論的には、色変換処理の実行してからハーフトーン処理に移行する際、ハーフトーン処理に必要な色変換処理結果が全てキャッシュ54に保持されているため、メモリ60にアクセスすることなく、ブロック内の画素に対してハーフトーン処理を実行することが可能となる。実際には、キャッシュ54に保持する他のデータとの関係で色変換処理結果がメモリ60にライトバックされる可能性はあるが、少なくとも、必ずキャッシュミスヒットが生じてしまう構成、すなわち、(H×V×色変換後の階調データの1色1画素あたりのビット長×色数)>(キャッシュメモリサイズ)となるようなブロック単位で色変換処理及びハーフトーン処理を実行する構成(44インチ等の大判プリンタにおいて、ライン単位に色変換処理及びハーフトーン処理を実行する場合、通常、このような構成となる)に比べれば、キャッシュミスヒットが減ることは確実であり、その結果、処理の高速化を図ることができる。
(変形例)
本変形例では、ブロックノイズの抑制等の観点からディザマトリクスを縦方向(副走査方向)にp画素ずらしながら適用してハーフトーン処理(組織的ディザ処理)を実行する場合を想定する。この場合、p<Vという関係が成立するようにp(又はV)を設定することで、ディザマトリクスに関するキャッシュヒット率を大きく向上させて、更に処理の高速化を図ることができる。以下、その原理を説明する。
本変形例では、ブロックノイズの抑制等の観点からディザマトリクスを縦方向(副走査方向)にp画素ずらしながら適用してハーフトーン処理(組織的ディザ処理)を実行する場合を想定する。この場合、p<Vという関係が成立するようにp(又はV)を設定することで、ディザマトリクスに関するキャッシュヒット率を大きく向上させて、更に処理の高速化を図ることができる。以下、その原理を説明する。
今、ディザマトリクスが256×256のサイズであり、H=256(ディザマトリクスの横幅と同サイズ)、V=8、p=1とする。また、RGB階調データに対して図6(a)の矢印で示すような順序でブロックを選択するものとする。このとき、図6(a)の符号200のブロックについてハーフトーン処理を実行する場合、256×256のディザマトリクスのうち図7(a)に示す領域300が参照され、その値がメモリ60からキャッシュ54に書き込まれる。次に、符号201のブロックについてハーフトーン処理を実行する場合、256×256のディザマトリクスが1画素ずれた状態で適用される結果、図7(b)に示す領域301が参照されることになる。この場合、領域301中の斜線領域については、その値がキャッシュ54に保持されているため、メモリ60からディザマトリクスの値を読み出すことなく、キャッシュ54に保持した値を利用してブロック内の画素に対してハーフトーン処理を実行することが可能となる。このように、p<Vという関係が成立していることで、連続してハーフトーン処理を実行するブロックについて、適用するディザマトリクスの領域を重複させることができ、その結果、ディザマトリクスに関するキャッシュヒット率を大きく向上させることができる。なお、p≧Vとした場合、連続してハーフトーン処理を実行するブロック(符号200、符号201)について、適用するディザマトリクスについて重複が生じないため、ブロックを移る都度、原則としてメモリ60からキャッシュ54へディザマトリクスの値を書き込む必要が生じる。
(その他)
本発明は、上記実施形態に限定されることなく種々に変形して適用することが可能である。例えば、入力画像の色空間はRGB色空間以外であってもよく、同様に出力色空間はCMYK色空間以外であってもよい。
本発明は、上記実施形態に限定されることなく種々に変形して適用することが可能である。例えば、入力画像の色空間はRGB色空間以外であってもよく、同様に出力色空間はCMYK色空間以外であってもよい。
また上記実施形態では、画像形成装置が色変換及びハーフトーン処理部12を備える構成としているが、本発明は必ずしもこのような構成に限られるものではない。例えば、ホスト装置のプリンタドライバ等が色変換及びハーフトーン処理部12の機能を備える構成としてもよい。
また上記実施形態では、色変換処理、ハーフトーン処理を1画素単位で実行する構成としているが、複数画素単位で各処理を実行するように構成してもよい。色変換処理であれば、例えば2×2画素のRGB値を取得し、これらの平均値に基づきLUTを参照してCMYK値を求め、かかるCMYK値に基づき2×2の4画素についての色変換後の階調データを決定する。また、ハーフトーン処理であれば、例えば2×2画素のインク色階調データを取得し、これらの平均値にディザマトリクスを適用してインク吐出データを求め、かかるインク吐出データを2×2の4画素についてのハーフトーン処理後の値とする。このように構成することで、LUT参照回数やディザマトリクスの適用回数を減らしたり、ディザマトリクスのサイズを小さくできるため、更に処理の高速化を図ることができる。
また上記実施形態では、図6(a)に示すような順序でブロックを選択する構成としているが、例えば図6(b)に示すようなジグザグ順序でブロックを選択する構成としてもよい。このようにジグザグ順序でブロックを選択する場合、特に、H=ディザマトリクスの横幅、V=1とすることで、2〜3ブロック、4〜6ブロック、・・・のように斜めに並ぶブロックについては、参照するディザマトリクスの要素値を完全に重複させることが可能となるため、それらのブロック間では、メモリ60にアクセスすることなく、キャッシュ54に保持したディザマトリクスの値を利用して、ハーフトーン処理を実行することが可能となる。
また上記実施形態では、ハーフトーン処理として組織的ディザ法を採用しているが、本発明は必ずしもこのような構成に限られるものではない。例えば、C(シアン)については組織的ディザ法、M(マゼンタ)については誤差拡散法など、CMYK等の色ごとにハーフトーン処理のアルゴリズムを変更する構成とすることも考えられる。
なお、本発明の画像処理装置及び画像処理方法は、プリントシステム等への適用に限られず、色変換処理及びハーフトーン処理を行うモジュール/装置/システム等であれば、適用することが可能である。
12 色変換及びハーフトーン処理部、50 CPUチップ、52 CPUコア、54 キャッシュ、56 メモリコントローラ、58 内部バス、60 外部メモリ
Claims (5)
- 第一の色空間で規定された階調画像を第二の色空間で規定された階調画像に変換する色変換手段と、
前記階調画像を、より低ビットで表現された低階調画像に変換するハーフトーン手段と、
横H画素×縦V画素又はそれより小さいブロック単位で、前記色変換手段及び前記ハーフトーン手段をセットで実行する制御手段とを備えた画像処理装置であって、
前記H、Vが、H×Vのブロック内の全画素についての色変換処理の結果を当該画像処理装置が利用可能なキャッシュメモリに保持できるように設定されていることを特徴とする画像処理装置。 - 前記ハーフトーン手段は、前記階調画像に対して所定のディザマトリクスを縦方向にp画素(p<V)ずらしながら適用することで低階調画像を生成することを特徴とする請求項1記載の画像処理装置。
- 請求項1又は2記載の画像処理装置を備えた画像形成装置。
- 第一の色空間で規定された階調画像を第二の色空間で規定された階調画像に変換する色変換工程と、
前記階調画像を、より低ビットで表現された低階調画像に変換するハーフトーン工程とを備えた画像処理方法であって、
横H画素×縦V画素又はそれより小さいブロック単位で、前記色変換工程及び前記ハーフトーン工程をセットで実行するように構成されており、
前記H、Vが、H×Vのブロック内の全画素についての色変換処理の結果を当該画像処理方法を実行する情報処理装置が利用可能なキャッシュメモリに保持できるように設定されていることを特徴とする画像処理方法。 - 請求項4記載の画像処理方法をコンピュータで実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005321944A JP2007129613A (ja) | 2005-11-07 | 2005-11-07 | 画像処理装置及び方法、画像形成装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005321944A JP2007129613A (ja) | 2005-11-07 | 2005-11-07 | 画像処理装置及び方法、画像形成装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007129613A true JP2007129613A (ja) | 2007-05-24 |
Family
ID=38151882
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005321944A Pending JP2007129613A (ja) | 2005-11-07 | 2005-11-07 | 画像処理装置及び方法、画像形成装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007129613A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012156572A (ja) * | 2011-01-21 | 2012-08-16 | Fuji Xerox Co Ltd | 画像処理装置及びプログラム |
US8270031B2 (en) | 2009-01-08 | 2012-09-18 | Infoprint Solutions Company, Llc | Halftone mechanism |
CN105745912A (zh) * | 2014-10-21 | 2016-07-06 | 株式会社东京机械制作所 | 图像处理装置 |
CN114244968A (zh) * | 2021-12-20 | 2022-03-25 | 北京镁伽科技有限公司 | 图像转换方法、图像转换装置及图像信号发生器 |
-
2005
- 2005-11-07 JP JP2005321944A patent/JP2007129613A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8270031B2 (en) | 2009-01-08 | 2012-09-18 | Infoprint Solutions Company, Llc | Halftone mechanism |
JP2012156572A (ja) * | 2011-01-21 | 2012-08-16 | Fuji Xerox Co Ltd | 画像処理装置及びプログラム |
CN105745912A (zh) * | 2014-10-21 | 2016-07-06 | 株式会社东京机械制作所 | 图像处理装置 |
US9848101B2 (en) | 2014-10-21 | 2017-12-19 | Kabushiki Kaisha Tokyo Kikai Seisakusho | Image processing device |
CN105745912B (zh) * | 2014-10-21 | 2018-05-18 | 株式会社东京机械制作所 | 图像处理装置 |
CN114244968A (zh) * | 2021-12-20 | 2022-03-25 | 北京镁伽科技有限公司 | 图像转换方法、图像转换装置及图像信号发生器 |
CN114244968B (zh) * | 2021-12-20 | 2024-01-09 | 北京镁伽科技有限公司 | 图像转换方法、图像转换装置及图像信号发生器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2008147883A (ja) | 画像処理装置、記録装置、画像処理方法、プログラム、および記憶媒体 | |
KR100967720B1 (ko) | 화상 처리 장치, 인쇄 장치 및 화상 처리 방법 | |
JP2007129613A (ja) | 画像処理装置及び方法、画像形成装置 | |
US7502139B2 (en) | Image forming apparatus and method, and image forming system | |
US20140168667A1 (en) | Image forming apparatus and image forming method thereof | |
JPH0918732A (ja) | 情報処理装置及びその方法 | |
JP5441676B2 (ja) | 画像処理装置及びその処理方法 | |
JP3695498B2 (ja) | 画像処理装置 | |
JP4492362B2 (ja) | 画質向上を可能にした画像形成装置 | |
JP2007124230A (ja) | 画像形成装置、色変換装置、及び色変換ルックアップテーブルの作成方法 | |
JP4058157B2 (ja) | 画像処理方法、画像形成装置および記録媒体 | |
US20090317004A1 (en) | Image processing apparatus, printing apparatus, and image processing method | |
JP2007168130A (ja) | 記録装置、画像処理制御装置、及び記録方法 | |
KR100208385B1 (ko) | 프린터에서 텍스트와 픽쳐데이터를 분리하여 저장하는데이터 버퍼장치 및 방법 | |
JP2006192618A (ja) | 印刷開始時間を短縮させた画像形成装置 | |
JP4581775B2 (ja) | 印刷装置 | |
JP2001080138A (ja) | シリアルプリンタ及びプログラムを記録した記録媒体 | |
JP2001088356A (ja) | プリンタ制御装置 | |
JP3213124B2 (ja) | ファクシミリ装置 | |
JP3533657B2 (ja) | 印刷システム、プリンタ、プリンタドライバ及びプログラム記録媒体 | |
JP2005354533A (ja) | 画像記録装置、画像記録方法および画像処理装置 | |
JP2007069424A (ja) | 印刷装置 | |
JP2004148695A (ja) | 印刷情報ファイルにしたがって自動印刷するプリンタ | |
JP2005244748A (ja) | 画像処理方法及び画像処理装置 | |
JP2006217579A (ja) | 画像形成装置及びそのドライバプログラム |