説明

画像処理装置および画像処理方法

【課題】描画時間を短くすることを課題とする。
【解決手段】本発明の画像処理装置が適用される画像形成装置は、コマンド解析処理(例えば、バンド初期化コマンド処理、しきい値テーブルセットコマンド処理など)やハーフトーンパターン生成処理、四角形の描画処理などを並列に行う。具体的には、しきい値テーブルを使用して階調処理を行うことによりハーフトーンパターンを生成するハーフトーンパターン生成処理と、四角形の描画処理とを並列に処理する描画装置105を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コピー、スキャナー、デジタルカメラ、プリンタなどの画像処理装置等に関し、特に、取りこまれたコマンドを解析し、描画し、印刷する画像処理装置および画像処理方法に関する。
【背景技術】
【0002】
従来、ページプリンタなどにおいて、高い解像度を維持しつつ、印字速度を高速化したいという要求に応えるために、例えば、階調処理後の画像を高速に描画する技術がある。
【0003】
従来のプリンタにおける処理の流れは、例えば、ネットワークから受け取ったPDL(Page Description Language:ページ記述言語)を解析して描画装置に実行させることが可能な中間言語を生成し、描画装置が中間言語を解析してバンドメモリへ階調処理後の画像を描画して、2値画像の圧縮アルゴリズム(JBIGなど)により符号化し、その符号をメモリに格納して、その後、プリントアウト時に、各版ごと遅延させ、メモリから符号データを読み込み、上記の圧縮アルゴリズムにより復号化して、その後、CMYK形式のC(Cyan:シアン),M(Magenta:マゼンダ),Y(Yellow:イエロー),K(Key Plate)の各版に対応するデータのプリンタエンジンに転送し、印字していた。
【0004】
ところで、階調処理後の画像を高速に描画する技術に関連するものとして、例えば、事前にハーフトーンしきい値マトリックスデータから、階調値により2値化した2値マトリックスデータを作成し、描画部のメモリバウンダリ幅と基本ビットパターンの幅との最小公倍数のハーフトーンパターンを作成し、ハーフトーンリピート機能により、水平方向に順次繰り返し描画する従来技術(以下、従来技術1と記載する)がある(特許文献1参照)。
【0005】
また、階調処理後の画像を高速に描画する技術に関連するものとして、描画ワードX幅のハーフトーンパターンを少なくともハーフトーンパターンのY幅分を記憶し、ハーフトーンパターンアドレス値に対応するハーフトーンパターンを用いてハーフトーンパターンシフト値分の巡回シフト処理を行なうことにより、同じ階調値である描画オブジェクトに対して、効率よくハーフトーンパターンを使用する技術(以下、従来技術2と記載する)などもある(特許文献2参照)。
【発明の概要】
【発明が解決しようとする課題】
【0006】
従来技術1では、例えば、ハーフトーンパターンセットコマンドが来ると、指定されたハーフトーンパターン先頭アドレスから、階調処理後のハーフトーンパターンを順次読み込む。このように、従来技術1は、描画する前にハーフトーンパターンを読み込む必要があるので、その分、描画時間が長くなってしまう。
【0007】
また、従来技術2では、しきい値テーブルコマンドセットが来ると、指定されたしきい値テーブルコマンドセットの先頭アドレスから順次読み込み、その後、描画ごとに、しきい値テーブルコマンドセットを読み込むことはないが、一方で、しきい値テーブルを使用して描画コマンドごとに階調処理を行い、ハーフトーンパターンを生成する必要がある。従来技術2は、しきい値テーブルを使用して描画コマンドごとに階調処理を行い、ハーフトーンパターンを生成する必要があるので、その分、描画時間が長くなってしまう。
【0008】
本発明は、上記に鑑みてなされたものであって、処理時間を短くすることが可能な画像処理装置および画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【0009】
上述した課題を解決し、目的を達成するために、本発明は、所定範囲の領域を示すバンド単位で階調処理後の画像を描画する画像処理装置であって、画像を描画単位に分解した場合の水平方向の始点と終点との幅である描画幅のハーフトーンパターンのハーフトーンしきい値を、少なくともハーフトーンパターンの垂直方向の幅分記憶するハーフトーンしきい値記憶手段と、前記描画幅のハーフトーンパターンを、少なくとも前記ハーフトーンパターンの垂直方向の幅分記憶するハーフトーンパターン記憶手段と、描画する水平ラインの垂直方向の位置を示す値から、対応するハーフトーンパターンを記憶した前記ハーフトーンパターン記憶手段のハーフトーンパターンアドレス値を生成するハーフトーンパターンアドレス生成手段と、前記ハーフトーンしきい値記憶手段からハーフトーンしきい値を読み込み、読み込んだハーフトーンしきい値を用いて階調処理を行ない、該階調処理により生成したハーフトーンパターンを前記ハーフトーンパターン記憶手段へ転送するハーフトーンパターン生成手段と、前記描画幅を、前記ハーフトーンパターンの水平方向の幅で割ったときの余り値を求め、該余り値を用いて前記ハーフトーンパターン記憶手段に記憶されているハーフトーンパターンをシフトするためのハーフトーンパターンシフト値を生成するハーフトーンパターンシフト値生成手段と、前記ハーフトーンパターンアドレス値によるアクセスにより前記ハーフトーンパターン記憶手段から転送されるハーフトーンパターンを、前記ハーフトーンパターンシフト値生成手段により生成されたハーフトーンパターンシフト値を用いて、該ハーフトーンパターンシフト値分の巡回シフトを行なう巡回シフト手段と、前記巡回シフトにより、同一の階調値である描画オブジェクトに対応するハーフトーンパターンを繰り返し使用して描画する描画手段とを備え、前記ハーフトーンパターン生成手段による処理と前記描画手段による処理とを並列に行うことを特徴とする。
【0010】
また、本発明は、所定範囲の領域を示すバンド単位で階調処理後の画像を描画する画像処理装置で実行される画像処理方法であって、画像を描画単位に分解した場合の水平方向の始点と終点との幅である描画幅のハーフトーンパターンのハーフトーンしきい値を、少なくともハーフトーンパターンの垂直方向の幅分記憶するハーフトーンしきい値記憶手段からハーフトーンしきい値を読み込んで、読み込んだハーフトーンしきい値を用いて階調処理を行ない、該階調処理により生成したハーフトーンパターンを、前記描画幅のハーフトーンパターンを少なくとも前記ハーフトーンパターンの垂直方向の幅分記憶する前記ハーフトーンパターン記憶手段へ転送するハーフトーンパターン生成工程と、描画する水平ラインの垂直方向の位置を示す値から、対応するハーフトーンパターンを記憶した前記ハーフトーンパターン記憶手段のハーフトーンパターンアドレス値を生成するハーフトーンパターンアドレス生成手段と、前記描画幅を、前記ハーフトーンパターンの水平方向の幅で割ったときの余り値を求め、該余り値を用いて前記ハーフトーンパターン記憶手段に記憶されているハーフトーンパターンをシフトするためのハーフトーンパターンシフト値を生成するハーフトーンパターンシフト値生成工程と、前記ハーフトーンパターンアドレス値によるアクセスにより前記ハーフトーンパターン記憶手段から転送されるハーフトーンパターンを、前記ハーフトーンパターンシフト値生成工程により生成されたハーフトーンパターンシフト値を用いて、該ハーフトーンパターンシフト値分の巡回シフトを行なう巡回シフト工程と、前記巡回シフトにより、同一の階調値である描画オブジェクトに対応するハーフトーンパターンを繰り返し使用して描画する描画工程とを含み、前記ハーフトーンパターン生成工程による処理と前記描画工程による処理とを並列に行うことを特徴とする。
【発明の効果】
【0011】
本発明によれば、描画時間を短くするという効果を奏する。
【図面の簡単な説明】
【0012】
【図1】図1は、本実施形態に係る画像処理装置を適用可能な画像形成装置(カラープリンタとする)の機構部の構成例を示す図である。
【図2】図2は、画像形成装置100の電装・制御部のハードウェア構成の例を示す図である。
【図3】図3は、画像形成装置100における処理の一例の概略を示すフロー図である。
【図4】図4は、描画装置105の構成例を示すブロック図である。
【図5】図5は、描画処理装置123の構成例を示すブロック図である。
【図6】図6は、水平ライン描画装置136の構成例を示すブロック図である。
【図7】図7は、描画パラメータ設定コマンドのフォーマット例を示す図である。
【図8】図8は、描画実行コマンドのフォーマット例を示す図である。
【図9】図9は、描画処理の一例を示すフローチャートである。
【図10】図10は、パラメータ設定処理の一例を示すフローチャートである。
【図11】図11は、ハーフトーンパターン生成処理の一例を示すフローチャートである。
【図12】図12は、コマンドの一例を示す図である。
【図13】図13は、バンド描画の一例を示す図である。
【図14】図14は、図12のコマンドによるバンド描画の処理時間と本実施形態によるバンド描画の処理時間とを比較する図である。
【発明を実施するための形態】
【0013】
以下に添付図面を参照して、画像処理装置および画像処理方法の一実施形態を詳細に説明する。
【0014】
図1は、本実施形態に係る画像処理装置を適用可能な画像形成装置(カラープリンタとする)の機構部の構成例を示す図である。図1に示す画像形成装置100において、像担持体であるベルト状の感光体1は、回転ローラ2,3により回動可能に支持され、その各回転ローラ2,3の駆動により矢示A方向に回動される。感光体1の外周部には、帯電手段である帯電装置4と、除電ランプLと、感光体1用のクリーニングブレード15Aとが配置されている。帯電装置4の下流位置には、光書込手段であるレーザ書き込みユニット5が配置される。
【0015】
レーザ書き込みユニット5の上部には、複数の現像ユニット(現像手段)が切り換え自在に支持された多色現像装置6が配置されている。多色現像装置6は、収容するトナーの色毎に、イエロー現像ユニット、マゼンタ現像ユニット、シアン現像ユニットを備えている。多色現像装置6の上部には、黒色トナーを収容したブラック現像ユニット7が備えられている。
【0016】
これらの各現像ユニットのいずれか1つが、対応する色の現像タイミングに同期して現像可能な位置に移動する。多色現像装置6は、円周上120度の回転によっていずれかの現像ユニットを選択する機能を有している。そして、これらの現像ユニットが稼動するときには、ブラック現像ユニット7は感光体1より離間した位置に移動する。その移動は、カム45の回転により行なわれる。
【0017】
レーザ書き込みユニット5は、図示しないレーザ光源から複数色の画像形成信号(書き込み情報)に応じたレーザ光を順次発生させ、ポリゴンモータ5Aによって回転されるポリゴンミラー5Bを用いてそのレーザ光を周期的に偏向させ、fθレンズ5Cおよびミラー5Dなどを経て、帯電された感光体1の表面を走査してその表面に静電潜像を形成させる。
【0018】
感光体1の表面に形成される静電潜像は、対応する現像ユニットからのトナーによって現像され、トナー画像が形成されて保持される。中間転写ベルト10は、感光体1に隣接しており、回転ローラ11,12により矢示B方向に回動可能に支持されている。感光体1上のトナー画像は、中間転写ベルト10の裏側にある転写ブラシ(第1の転写手段)13により、その中間転写ベルト10の表面に転写される。
【0019】
感光体1の表面は1色毎にクリーニングブレード15Aによりクリーニングされ、その表面に所定色のトナー画像が形成される。そして、その都度中間転写ベルト10の1回動毎にその表面の同じ位置に感光体1上のトナー画像が転写されて、中間転写ベルト10上に複数色のトナー画像が重ね合わせられて保持される。その後、そのトナー画像は用紙やプラスチック等の記録媒体に転写される。
【0020】
用紙への転写に際しては、給紙装置(給紙カセット)17に収納されている用紙が給紙ローラ18によって繰り出されて搬送ローラ19により搬送され、レジストローラ対20に付き当てられた状態で一旦停止された後、トナー画像の転写位置が正規のものとなるようにタイミングがとられて中間転写ベルト10と転写ローラ(第2の転写手段)14のニップに再搬送される。
【0021】
そして、その用紙は転写ローラ14の作用により中間転写ベルト10上の複数色のトナー画像が一括転写された後、定着装置50に送られ、そこでトナー像が定着された後、排紙ローラ対51により本体フレーム9の上部の排紙スタック部52に排出される。
【0022】
中間転写ベルト10には、回転ローラ11の部位に中間転写ベルト10用のクリーニング装置16が設けられ、クリーニングブレード16Aがクリーニングブレード接離用アーム16Cを介して接離自在の構成となっている。このクリーニングブレード16Aは、感光体1からトナー画像を受け取る工程では、中間転写ベルト10から離れ、中間転写ベルト10より用紙にトナー画像が転写された後に接触するようになっていて、用紙にトナー画像が転写された後の残留トナーをかきとる。
【0023】
クリーニングブレードは、すでに記したように、感光体1用と中間転写ベルト10用がある。これらブレードがかきとった廃トナーは、回収容器15に収納する。その回収容器15は適宜交換される。中間転写ベルト10用のクリーニング装置16の内部に設けられたオーガ16Bが、クリーニングブレード16Aでかきとられた廃トナーを搬送し、図示しない搬送手段で回収容器15に送るようになっている。
【0024】
ユニット化されたプロセスカートリッジ31は、感光体1と、帯電装置4と、中間転写ベルト10と、クリーニング装置16と、用紙搬送路を形成する搬送ガイド30とを一体に組み込み、寿命到来時に交換できるように構成されている。プロセスカートリッジ31の交換のほかに、多色現像装置6、ブラック現像ユニット7なども寿命到来時に交換するが、その交換性やジャム紙の処理を容易にするため、本体の一部の前フレーム8は支軸9Aを中心に開閉可能に回動できる構造にしてある。
【0025】
図1の左側には、コントローラボード60が収納されている。その上方には、ファン58が備えられており、機内の温度過昇防止のために排風する。図の右側には、比較的小規模な別の給紙装置59が備えられている。なお、この実施形態では、中間転写体として中間転写ベルト10を使用したが、中間転写ドラムを使用することもできる。
【0026】
図2は、画像形成装置100の電装・制御部のハードウェア構成の例を示す図である。図2の電装・制御部は、コントローラボード60が、ネットワークを介してパーソナルコンピュータ(以下、「PC」という。)200に接続される。コントローラボード60は、CPU101と、CPU I/F102と、メモリアービター103と、メモリコントローラ104と、ハードウェア回路で構成される描画装置105と、エンジンコントローラ106と、通信コントローラ107と、ローカルI/F108と、ROM109と、パネルコントローラ110と、を含む。
【0027】
CPU101は、画像形成装置100全体の制御を行う。CPU101は、また、PC200から伝送されるPDL(page description language)を解析し、描画コマンド、および、画像処理に必要な情報の生成等を行う。ここでは、所定の言語で記述されるとともに、画像の描画を指示する画像描画指示データの一例として、PDLを例示しているが、これに限定されるものではない。CPU I/F102は、CPU101のインタフェースであり、メモリアービター103を介してメインメモリ112及び他のコントローラ等に接続されている。メインメモリ112は、PDL、PDLを解析して得られる各種データ、PDLに含まれる画像(PDLを解析して得られる画像データ)に対して所定のハーフトーン処理が行われたハーフトーン処理後の画像データ(ハーフトーンパターン)、および、CPU101が実行するコンピュータプログラム等を格納する。
【0028】
メモリアービター103は、メモリコントローラ104と各種のコントローラ間の調停を行う。メモリコントローラ104は、メインメモリ112をコントロールし、メモリアービター103を介して各種のコントローラやCPU101と接続される。
【0029】
描画装置105は、CPU101が生成した描画コマンドを読み込んで解析し、解析したコマンドに従ってバンド単位の描画処理を実行する。そして、描画したバンド画像をメインメモリ112のバンドメモリ領域に書き込む。エンジンコントローラ106は、プリンタエンジン114を制御する。プリンタエンジン114は、エンジンコントローラ106の制御により、画像を媒体上に形成する。PC200は、プリンタエンジン114に出力させる画像のPDLを作成し、ネットワークを介してPDLを画像形成装置100に対して出力する。
【0030】
通信コントローラ107は、ネットワークに接続され、ネットワークを介して接続されたPC200等から送信される各データやコマンド等を受信する。通信コントローラ107は、また、メモリアービター103を介して接続される各コントローラに対して受信したデータ等を出力し、各コントローラから入力されるデータ等を、PC200等に対して送信する。
【0031】
ROM109は、CPU101が実行するコンピュータプログラムや、文字のフォント情報等を格納する。ROM109は、ローカルI/F108を介してメモリアービター103に接続される。パネルコントローラ110は、オペレーション用のパネル113を制御する。パネルコントローラ110は、ローカルI/F108を介してメモリアービター103に接続される。パネル113は、画像形成装置100の状態の表示を行い、また、画像形成装置100に対するユーザーからの操作入力を受け付ける。
【0032】
図3は、画像形成装置100における処理の一例の概略を示すフロー図である。PDL記憶ステップS1では、PC200から入力されるPDLが、メインメモリ112に格納される。次の描画コマンド生成ステップS2では、CPU101は、メインメモリ112に格納されたPDLを読み出して解析し、描画コマンドを生成する。また、CPU101は、PDLを解析して得られる画像に対してハーフトーン処理を実行し、ハーフトーン処理後の画像データ(ハーフトーンパターン)を、メインメモリ112の所定の領域(ハーフトーンパターン格納領域)に書き込む。次の描画コマンド記憶ステップS3では、CPU101は、生成した描画コマンドをメインメモリ112の所定の領域に書き込む。次の描画処理ステップS4では、描画装置105は、メインメモリ112に格納された描画コマンドを読み出し、その読み出した描画コマンドに従って、バンド単位での画像の描画を実行する。CPU101は、描画したバンド画像をメインメモリに書き込んでいき、1ページ分のバンド画像がメインメモリ112に格納される(次のページ記憶ステップS5)。次に、プリンタエンジン114は、メインメモリ112から、描画装置105により描画された1ページ分の画像データを読み出し、印刷して出力する。
【0033】
図4は、描画装置105の構成例を示すブロック図である。図4に示すように、描画装置105は、メモリアービターI/F121と、コマンド解析装置122と、描画処理装置123と、コントローラ124とを含む。メモリアービターI/F121は、コマンド解析装置122および描画処理装置123をメモリアービター103に接続するためのインタフェース装置である。
【0034】
コマンド解析装置122は、メインメモリ112に格納された描画コマンドを読み出し、その読み出した描画コマンドを解析する。コマンド解析装置122は、読み出したコマンドが描画パラメータ設定コマンドである場合は、そのコマンドで特定される各種のパラメータを描画処理装置123へ転送し、次のコマンドをメインメモリ112から読み出す。一方、読み出したコマンドが描画実行コマンドである場合は、描画処理装置123に対して、そのコマンドで特定される各種のパラメータを転送した後、描画用起動信号を転送する。その後、コマンド解析装置122は、描画処理装置123からの描画終了信号を受信した場合に、次の描画コマンドをメインメモリ112から読み出す。また、コマンド解析装置122は、描画コマンドの先頭のコマンドであるバンド初期化コマンドを読み出した場合、そのバンド初期化コマンドで特定されるバンドパラメータ(例えばバンド先頭アドレス、バンド始点Y座標、バンド高さ、バンド幅等)を描画処理装置123へ転送した後、次のコマンドをメインメモリ112から読み出す。
【0035】
描画処理装置123は、コマンド解析装置122から、各種のパラメータ(描画を行うための描画パラメータ)を受け取り、コマンド解析装置122から描画用起動信号を受信した場合に、描画処理を実行する。また、描画処理装置123は、描画処理が終了すると、描画処理の終了を示す終了信号をコマンド解析装置122へ転送する。描画処理装置123の詳細な構成については後述する。コントローラ124は、描画装置105全体を制御する手段である。
【0036】
図5は、描画処理装置123の構成例を示すブロック図である。図5に示すように、描画処理装置123は、DMAアドレス生成装置131と、DMA読み込み装置132と、バンドパラメータ記憶装置133と、グラフィックス用描画パラメータ記憶装置134と、水平ライン変換装置135と、水平ライン描画装置136と、グラフィックス用しきい値マトリックス記憶装置137と、コントローラ138とを含む。
【0037】
DMAアドレス生成装置131は、コマンド解析装置122から、描画を行うためのパラメータなど、各DMAの先頭アドレス(グラフィックス画像しきい値先頭アドレスを含む)を受け取り、DMAアドレスを生成してDMA読み込み装置132へ転送する。DMA読み込み装置132は、DMAアドレス生成装置131から、各DMAの先頭アドレスを受信した場合、メモリアービターI/F121を介してメインメモリ112にアクセスし、メインメモリ112から各DMAの先頭アドレスで特定される領域に格納されたDMAデータを読み込み、グラフィックス用しきい値マトリックス記憶装置137に格納する。グラフィックス用しきい値マトリックス記憶装置137は、DMAされたしきい値マトリックスのデータを記憶する。グラフィックス用描画パラメータ記憶装置134は、コマンド解析装置122から転送されたグラフィックス用描画パラメータを記憶する。バンドパラメータ記憶装置133は、コマンド解析装置122から転送されたバンドパラメータを記憶する。水平ライン変換装置135は、グラフィックス用描画パラメータ記憶装置134に記憶された描画パラメータを読み出し、その読み出した描画パラメータを水平ラインデータに変換する。水平ラインデータには、水平ラインY値、水平ラインX始点値、水平ラインX終点値が含まれる。水平ライン描画装置136は、水平ライン変換装置135からの水平ラインデータに基づき、メモリアービターI/F121を介してメインメモリ112のバンドメモリ領域へ描画する。
【0038】
図6は、水平ライン描画装置136の構成例を示すブロック図である。図6に示すように、水平ライン描画装置136は、ハーフトーンパターンアドレス生成装置141と、X始点ワード値生成装置142と、X終点ワード値生成装置143と、描画ワードX値生成装置144と、ハーフトーンパターンシフト値生成装置145と、描画マスク生成装置146と、ハーフトーンパターン記憶装置147と、巡回シフト装置148と、論理演算装置149と、描画アドレス生成装置150と、ハーフトーンパターン生成装置151と、ハーフトーンしきい値アドレス生成装置152と、水平描画コントローラ153とを含む。
【0039】
ハーフトーンパターンアドレス生成装置141は、水平ライン変換装置135から転送された水平ラインY値と、DMA読み込み装置132で読み込まれたハーフトーンパターンのY方向(垂直方向)の幅(Y幅)とから、水平ラインY値−MOD−ハーフトーンパターンY幅を行い(水平ラインY値をハーフトーンパターンY幅で除算するMOD演算を行い)、割り算の余りであるハーフトーンパターンのY値を求め、ハーフトーンパターンアドレスとして、ハーフトーンパターン記憶装置147へ転送する。
【0040】
X始点ワード値生成装置142は、水平ライン変換装置135から転送された水平ラインX始点値から、描画ワード単位の描画ワードX始点値を求め、描画ワードX値生成装置144へ転送する。
【0041】
X終点ワード値生成装置143は、水平ライン変換装置135から転送された水平ラインX終点値から、描画ワード単位の描画ワードX終点値を求め、描画ワードX値生成装置144へ転送する。
【0042】
描画ワードX値生成装置144は、描画ワード単位のX始点値からX終点値の描画ワードX値を生成し、ハーフトーンパターンシフト値生成装置145へ転送する。なお、描画ワードX値は、画像を描画単位に分解した場合の水平方向の始点と終点との幅である。
【0043】
ハーフトーンパターンシフト値生成装置145は、描画ワードX値生成装置144から転送される描画ワードX値と、DMA読み込み装置132で読み込まれたハーフトーンパターンのX方向の幅(X幅)とから、描画ワードX値−MOD−ハーフトーンパターンX幅を行い、割り算の余りであるハーフトーンパターンのX値を求め、ハーフトーンパターンシフト値として巡回シフト装置148へ転送する。
【0044】
描画マスク生成装置146は、水平ライン変換装置135から転送される水平ラインX始点値および水平ラインX終点値から、描画ワードごとのX始点からX終点までの描画マスクを生成し、論理演算装置149へ転送する。
【0045】
ハーフトーンパターン記憶装置147は、ハーフトーンパターンの描画ワードの水平ラインを、ハーフトーンパターンのY幅分記憶する記憶装置であり、ハーフトーンパターンアドレス生成装置141からのハーフトーンパターンアドレスによりアクセスされたハーフトーンパターン値を巡回シフト装置148へ転送する。
【0046】
巡回シフト装置148は、ハーフトーンパターン記憶装置147からハーフトーンパターン値を、ハーフトーンパターンシフト値生成装置145からハーフトーンパターンシフト値を、描画パラメータ記憶装置134からハーフトーンパターンあまり値を受け取り、ハーフトーンパターン値を巡回シフトし、巡回シフト後のハーフトーンパターン値を論理演算装置149へ転送する。
【0047】
論理演算装置149は、AND回路で構成され、巡回シフト装置148からの巡回シフト後のハーフトーンパターン値と、描画マスク生成装置146からの描画マスクとの論理積を求めて描画パターン値を生成し、その生成した描画パターン値をメモリアービターI/F121へ転送する。
【0048】
描画アドレス生成装置150は、水平ライン変換装置135からの水平ラインY値および水平ラインX始点値からメインメモリ112のバンドメモリへ描画するアドレスである描画アドレスを生成し、メモリアービターI/F121へ転送する。水平描画コントローラ153は、水平ライン描画装置136全体を制御する。
【0049】
ハーフトーンパターン生成装置151は、描画実行コマンド(図8参照)を受け取った後に起動し、グラフィックス用しきい値マトリックス記憶装置137の指定されたしきい値テーブルアドレスからしきい値を読み込み、色値で階調処理を行い、ハーフトーンパターン記憶装置147に階調処理後のハーフトーンパターンを格納する。
【0050】
ハーフトーンしきい値アドレス生成装置152は、描画パラメータ設定コマンド(図7参照)を受取った後に起動し、グラフィックス用しきい値マトリックス記憶装置137の指定されたしきい値テーブルアドレスからしきい値のアドレスを生成する。
【0051】
水平描画コントローラ153は、水平ライン描画装置136による処理動作全体を制御する。
【0052】
図7は、描画パラメータ設定コマンドのフォーマット例を示す図である。図8は、描画実行コマンドのフォーマット例を示す図である。描画コマンドは、図7に示す描画パラメータ設定コマンドと、図8に示す描画実行コマンドとに分けることができる。
【0053】
図7に、バンド初期化コマンド(1)、しきい値テーブル設定コマンド(2)、バンド終了コマンド(3)を示す。
【0054】
図7に示すバンド初期化コマンド(1)は、バンドの先頭アドレスとバンドの高さと幅を定義するためのコマンドである。図4に示すコマンド解析装置122は、このコマンドを受け取ると、バンドの先頭アドレスと、バンドの高さと幅を格納する。
【0055】
図7に示すしきい値テーブル設定コマンド(2)は、ハーフトーンしきい値を設定するためのコマンドである。図4に示すコマンド解析装置122は、このコマンドを受け取ると、(グラフィックス画像)しきい値先頭アドレスを設定し、図5に示すDMAアドレス生成装置131およびDMA読み込み装置132を起動することにより、図2に示すメインメモリ112の描画コマンド領域の中から指定されたしきい値を順次読み込んで、図5に示すグラフィックス用しきい値マトリックス記憶装置137に書き込む。また、図4に示すコマンド解析装置122は、ディザX,Yサイズを、図5に示すグラフィックス用描画パラメータ記憶装置134に格納する。なお、ハーフトーンしきい値とは、多値の画像を少値(2値/4値など)に変換するハーフトーン処理のしきい値マトリックスの値である。組織的ディザ法のしきい値マトリックスを空間周波数特性から大別すると、中心を格に順次太っていくように構成されたドット集中型とドットがなるべく分散するように構成されたドット分散型の2種に分類される。また、ディザX,Yサイズとは、ハーフトーンしきい値(しきい値マトリックス)のX方向のサイズとY方向のサイズを示す。
【0056】
図7に示すバンド終了コマンド(3)は、定義したバンドの描画処理を終了するためのコマンドである。図4に示すコマンド解析装置122は、このコマンドを受け取ると、そのバンドの描画処理を終了する。
【0057】
図8に、四角形描画コマンド(1)と、3角形描画コマンド(2)を示す。
【0058】
図8に示す四角形描画コマンド(1)は、指定された四角形の左上の座標から右下の座標までの四角形を描画するためのコマンドである。図4に示すコマンド解析装置122は、このコマンドを受け取ると、四角形の左上の座標、右下の座標、および四角形コマンド名を、図5に示すグラフィックス用描画パラメータ記憶装置134に格納し、図4に示す描画処理装置123を起動する。
【0059】
図8に示す3角形描画コマンド(2)は、指定された3角形の頂点から3角形を描画するためのコマンドである。図4に示すコマンド解析装置122は、このコマンドを受け取ると、3角形の頂点の座標を、グラフィックス用描画パラメータ記憶装置134に格納し、図4に示す描画処理装置123を起動する。
【0060】
図9は、描画処理の一例を示すフローチャートである。図9は、図2に示す描画装置105による描画処理の一例を示す。
【0061】
図9に示すように、描画装置105は、描画コマンドを読み込む(S101)。続いて、描画装置105は、読み込んだ描画コマンドが描画実行コマンド(四角形描画コマンド、OR、3角形描画コマンド、図8参照)であるか否かを判定する(S102)。
【0062】
判定の結果、描画実行コマンドである場合には(S102、Yes)、描画装置105は、グラフィックス用描画パラメータ記憶装置134に描画パラメータを設定する(S103)。なお、グラフィックス用描画パラメータ記憶装置134をダブルバッファとして、1面に実行中の描画処理の描画パラメータを格納し、もう1面に次の描画時の描画パラメータを格納するように構成することができる。
【0063】
続いて、描画装置105は、描画実行コマンドで設定される色値が、ハーフトーンパターン記憶装置147の色値と同じであるか否かを判定する(S104)。
【0064】
判定の結果、ハーフトーンパターンの色値が異なる場合には(S104、No)、描画装置105は、ハーフトーンパターン生成処理(図11参照)を実行して(S105)、ステップS106の処理へ移る。一方、判定の結果、ハーフトーンパターンの色値が同じである場合には(S104、Yes)、描画装置105は、ハーフトーンパターン生成処理を実行せずに、そのまま、ステップS106の処理へ移る。なお、ハーフトーンパターン記憶装置147をダブルバッファとして、1面に描画時のハーフトーンパターンを格納し、もう1面に次の描画時のハーフトーンパターンを格納するように構成することができる。
【0065】
続いて、描画装置105は、現在、描画中(描画処理の実行中)であるか否かを判定する(S106)。
【0066】
判定の結果、描画中(描画処理の実行中)である場合には(S106、Yes)、描画装置105は、描画が終了するまで待機し(S107)、描画終了後、S108の処理へ移る。一方、判定の結果、描画中(描画処理の実行中)ではない場合には(S106、No)、描画装置105は、そのまま、S108の処理へ移る。
【0067】
続いて、描画装置105は、描画処理が終了すると、グラフィックス用描画パラメータ記憶装置134およびハーフトーンパターン記憶装置147を描画するパラメータに切替えて、起動信号を発生して、描画処理装置123を起動し(S108)、上述したステップS101へ戻る。
【0068】
ここで、上述したステップS102において、判定の結果、描画実行コマンドではない場合には(S102、No)、描画装置105は、描画終了コマンド(図7の(3)参照)であるか否かを判定する(S109)。判定の結果、描画終了コマンドではない場合には(S109、No)、描画装置105は、パラメータ設定処理(図10参照)を実行し(S110)、上述したステップS101へ戻る。一方、判定の結果、描画終了コマンドである場合には(S109、Yes)、描画装置105は、描画処理を終了し、描画処理の終了をCPU101へ通知して、処理を終了する。
【0069】
上述してきたように、図9では、ハーフトーンパターンアドレス値に対応するハーフトーンパターンを用いてハーフトーンパターンシフト値分の巡回シフト処理を行なうことにより、同じ階調値である描画オブジェクトに対して、効率よくハーフトーンパターンを使用して描画処理を行う一方で、階調値である描画オブジェクトについては、実行中の描画処理と並行してハーフトーンパターンの生成を行う。
【0070】
図10は、パラメータ設定処理の一例を示すフローチャートである。図10に示すように、描画装置105は、上述した図9のS101で読み込んだ描画コマンドが、バンド初期化コマンドであるか否かを判定する(S201)。
【0071】
判定の結果、描画コマンドが、バンド初期化コマンドではない場合には(S201、Yes)、描画装置105は、描画コマンドがしきい値テーブル設定コマンド(図7の(2)参照)であるものと判定し、メインメモリ112に記憶されている描画領域のしきい値を、コマンドパラメータの(グラフィックス画像)しきい値先頭アドレスから順次読み込んで、読み込んだしきい値をグラフィックス用しきい値マトリックス記憶装置137に書き込む(S202)。
【0072】
判定の結果、描画コマンドが、バンド初期化コマンドである場合には(S201、Yes)、描画装置105は、バンド初期化コマンドのコマンドパラメータをバンドパラメータ記憶装置133に書き込む(S203)。
【0073】
なお、描画装置105は、ステップS202またはステップS203の処理後、上述した図9のステップS101に戻る。
【0074】
図11は、ハーフトーンパターン生成処理の一例を示すフローチャートである。図11は、ディザのX方向およびY方向のサイズのしきい値を、描画コマンドの色値で階調処理後の1ビットを生成し、ハーフトーンパターンを生成する処理を示す。図11に示すように、描画装置105は、IY=0とし(S301)、IX=0(S302)として、しきい値テーブルの[IY]の値,[IX]の値が、色値未満であるか否かを判定する(303)。
【0075】
判定の結果、しきい値テーブルの[IY],[IX]それぞれの値が、色値未満である場合には(S303、Yes)、描画装置105は、ハーフトーンパターン[IY],[IX]=1とする(S304)。一方、判定の結果、しきい値テーブルの[IY],[IX]それぞれの値が、色値未満ではない場合には(S303、No)、描画装置105は、ハーフトーンパターン[IY],[IX]=0とする(S305)。
【0076】
続いて、描画装置105は、IX=IX+1とし(S306)、IXのサイズが、ディザXサイズ(ディザのX方向のサイズ)未満であるか否かを判定する(S307)。
【0077】
判定の結果、IXのサイズが、ディザXサイズ未満である場合には(S307、Yes)、描画装置105は、上述したS303に戻る。一方、判定の結果、IXのサイズが、ディザXサイズ未満ではない場合には(S307、No)、描画装置105は、IY=IY+1とし(S308)、IYのサイズが、ディザYサイズ(ディザのY方向のサイズ)未満であるか否かを判定する(S309)。
【0078】
判定の結果、IYのサイズが、ディザYサイズ未満である場合には(S309、Yes)、描画装置105は、上述したS302に戻る。一方、判定の結果、IYのサイズが、ディザYサイズ未満ではない場合には(S309、No)、描画装置105は、上述した図9のステップS106に戻る。
【0079】
なお、図11は、階調処理後のビットが1ビットである場合の処理を示すが、階調処理後のビットが2ビットである場合や4ビットである場合も同様に考えることができる。
【0080】
図12は、コマンドの一例を示す図である。図13は、バンド描画の一例を示す図である。図14は、図12のコマンドによるバンド描画の処理時間と本実施形態によるバンド描画の処理時間とを比較する図である。
【0081】
図12に示すコマンド(1)のバンド初期化コマンドは描画パラメータ設定コマンドである。バンド初期化コマンドには、例えば、描画バンドの先頭アドレスと、描画バンドの左上の始点Y座標と、描画バンドの高さと、描画バンドの幅とが設定される(例えば、図7の(1)など参照)。
【0082】
図12に示すに示すコマンド(1)のハーフトーンパターンセットコマンドは描画パラメータ設定コマンドである。ハーフトーンパターンセットコマンドには、例えば、ディザのX方向およびY方向のサイズと、ハーフトーン先頭アドレスとが設定される。ハーフトーンパターン先頭アドレスは、メインメモリ112における、階調処理後のハーフトーンパターンの格納場所を特定するためのアドレスである。なお、階調処理後のハーフトーンパターンは、上述した図3に示す描画コマンド生成ステップS2により、ソフトで使用される色値ごとに、ディザのX方向およびY方向のサイズで生成される。
【0083】
図12に示すコマンド(1)の四角形描画コマンドは、四角形の描画を指示する描画実行コマンドである。図12に示す四角形描画コマンドには、例えば、メインメモリ112のバンド領域に、ページ座標の四角形の左上および右下の頂点の座標が設定される(例えば、図8の(1)参照)。例えば、図12のコマンド(1)の四角形描画コマンドでは、ハーフトーンパターンセットコマンドにより3つの色が設定されている。
【0084】
図12に示すコマンド(1)のバンド終了コマンドは、定義したバンドの描画処理を終了するためのコマンドである。
【0085】
図12に示すコマンド(2)のバンド初期化コマンドは描画パラメータ設定コマンドである。バンド初期化コマンドには、例えば、描画バンドの先頭アドレスと、描画バンドの左上の始点Y座標と、描画バンドの高さと、描画バンドの幅とが設定される(例えば、図7の(1)など参照)。
【0086】
図12に示すコマンド(2)のしきい値テーブルセットコマンドは描画パラメータ設定コマンドである。しきい値テーブルセットコマンドには、ディザのX方向およびY方向のサイズと、しきい値テーブル先頭アドレスとが設定される(例えば、図7の(2)など参照)。しきい値テーブル先頭アドレスは、メインメモリ112における、グラフィックスディザのしきい値を格納場所を特定するためのアドレスである。グラフィックスディザのしきい値は、ディザサイズのものを持っており、描画装置105は、描画コマンドで指定された色値により、階調処理後のハーフトーンパターンを生成する。
【0087】
図12に示すコマンド(2)の四角形描画コマンドは、四角形の描画を指示する描画実行コマンドである。図12に示すコマンド(2)のバンド終了コマンドは、定義したバンドの描画処理を終了するためのコマンドである。
【0088】
描画装置105は、描画コマンド(図12に示すコマンド(1)や(2)など)をメインメモリ112から読み出し、その読み出したコマンドに従って描画処理を実行する。
【0089】
例えば、図12に示すコマンド(1)を読み出した場合、描画装置105は、まず、バンド初期化コマンドを読み出し、描画が行われるバンドを特定する。続いて、描画装置105は、ハーフトーンパターンセットコマンド(1)を読み出し、バンドに対応する階調処理後のハーフトーンパターンをメインメモリ112から読み出す。続いて、描画装置105は、四角形の描画を指示する四角形描画コマンド(1)を読み出し、四角形の描画処理を実行する。描画装置105は、バンド終了コマンドの読み出しが行われるまで、以上の処理を繰り返し行い、バンド終了コマンドの読み出しが行われると、描画処理を終了する。
【0090】
上述してきたように、図12に示すコマンド(1)による描画処理では、描画装置105は、ハーフトーンパターンセットコマンド(1)が来ると、指定されたハーフトーンパターン先頭アドレスから、階調処理後のハーフトーンパターンを順次読み込む。このように、図12に示すコマンド(1)による描画処理では、描画の都度、描画する前にハーフトーンパターンを読み込む必要があるので、その分、描画時間が長くなってしまう。また、図12には示していないが、階調処理によりハーフトーンパターンを生成する必要があるので、その分のソフトの処理時間が長くなってしまう。
【0091】
また、図12に示すコマンド(2)を読み出した場合、描画装置105は、まず、バンド初期化コマンドを読み出し、描画が行われるバンドを特定する。続いて、描画装置105は、しきい値テーブルセットコマンド(1)を読み出し、四角形の描画を指示する四角形描画コマンド(1),(2),(3),(3)を読み出す。続いて、描画装置105は、四角形描画コマンドごとに、しきい値テーブルを使用して階調処理を行い、ハーフトーンパターンを生成する。続いて、描画装置105は、図13に示すように、ハーフトーンパターンを用いて、四角形の描画処理を実行する。続いて、描画装置105は、バンド終了コマンドの読み出しが行われると、描画処理を終了する。
【0092】
上述してきたように、図12に示すコマンド(2)による描画処理では、描画装置105は、しきい値テーブルコマンドセット(1)が来ると、指定されたしきい値テーブルコマンドセットの先頭アドレスから順次読み込み、図12に示すコマンド(1)のように、描画ごとの読み込み処理は行わない。このように、図12に示すコマンド(2)では、描画ごとに、しきい値テーブルコマンドセットを読み込むことはないが、しきい値テーブルを使用して、描画コマンドごとに階調処理を行い、ハーフトーンパターンを生成する必要がある。よって、図12に示すコマンド(2)による描画処理では、ソフトで使用される色値ごとにハーフトーンパターンを生成する必要がないので、ソフトの処理時間は小さくなるが、その一方で、描画コマンドごとに、ハードにより、ハーフトーンパターンを生成することになるので、やはり、描画時間が長くなってしまう。
【0093】
これに対して、図14に示すように、上述してきた実施形態では、例えば、図12に示すコマンド(2)による処理を行う場合、コマンド解析処理(例えば、バンド初期化コマンド処理、しきい値テーブルセットコマンド処理など)やハーフトーンパターン生成処理、四角形の描画処理などを並列に行う。具体的には、しきい値テーブルを使用して階調処理を行うことによりハーフトーンパターンを生成するハーフトーンパターン生成処理と、四角形の描画処理とを並列に処理する。このように、上述した実施形態によれば、ハーフトーンパターン生成処理と、描画処理とを並列に処理するので、ハーフトーンパターン生成処理の時間が表に現れない分、描画時間を短くすることができる。なお、上述した実施形態によれば、図12に示すコマンド(2)による処理を行う場合、図3に示す描画コマンド生成ステップS2において、ソフトで使用される色値ごとにハーフトーンパターンを生成する処理を行う必要がないので、ソフトの処理時間を小さくできる分、描画時間を短くすることができる。
【0094】
また、上述の実施形態では、グラフィックス用描画パラメータ記憶装置134やハーフトーンパターン記憶装置147をダブルバッファとすることで、1面に実行中の描画処理用のデータ(描画パラメータやハーフトーンパターン)を格納し、もう1面に次の描画時のデータを格納することができ、描画処理をスムーズにして描画時間を短くできる。
【符号の説明】
【0095】
100 画像形成装置
103 メモリアービター
104 メモリコントローラ
105 描画装置
106 エンジンコントローラ
107 通信コントローラ
108 ローカルI/F
109 ROM
110 パネルコントローラ
112 メインメモリ
113 パネル
114 プリンタエンジン
122 コマンド解析装置
123 描画処理装置
124 コントローラ
131 DMAアドレス生成装置
132 DMA読み込み装置
133 バンドパラメータ記憶装置
134 グラフィックス用描画パラメータ記憶装置
135 水平ライン変換装置
136 水平ライン描画装置
137 グラフィックス用しきい値マトリックス記憶装置
141 ハーフトーンパターンアドレス生成装置
142 X始点ワード値生成装置
143 X終点ワード値生成装置
144 描画ワードX値生成装置
145 ハーフトーンパターンシフト値生成装置
146 描画マスク生成装置
147 ハーフトーンパターン記憶装置
148 巡回シフト装置
149 論理演算装置
150 描画アドレス生成装置
151 ハーフトーンパターン生成装置
152 ハーフトーンしきい値アドレス生成装置
153 水平描画コントローラ
【先行技術文献】
【特許文献】
【0096】
【特許文献1】特許第3446324号公報
【特許文献2】特許第4490783号公報

【特許請求の範囲】
【請求項1】
所定範囲の領域を示すバンド単位で階調処理後の画像を描画する画像処理装置であって、
画像を描画単位に分解した場合の水平方向の始点と終点との幅である描画幅のハーフトーンパターンのハーフトーンしきい値を、少なくともハーフトーンパターンの垂直方向の幅分記憶するハーフトーンしきい値記憶手段と、
前記描画幅のハーフトーンパターンを、少なくとも前記ハーフトーンパターンの垂直方向の幅分記憶するハーフトーンパターン記憶手段と、
描画する水平ラインの垂直方向の位置を示す値から、対応するハーフトーンパターンを記憶した前記ハーフトーンパターン記憶手段のハーフトーンパターンアドレス値を生成するハーフトーンパターンアドレス生成手段と、
前記ハーフトーンしきい値記憶手段からハーフトーンしきい値を読み込み、読み込んだハーフトーンしきい値を用いて階調処理を行ない、該階調処理により生成したハーフトーンパターンを前記ハーフトーンパターン記憶手段へ転送するハーフトーンパターン生成手段と、
前記描画幅を、前記ハーフトーンパターンの水平方向の幅で割ったときの余り値を求め、該余り値を用いて前記ハーフトーンパターン記憶手段に記憶されているハーフトーンパターンをシフトするためのハーフトーンパターンシフト値を生成するハーフトーンパターンシフト値生成手段と、
前記ハーフトーンパターンアドレス値によるアクセスにより前記ハーフトーンパターン記憶手段から転送されるハーフトーンパターンを、前記ハーフトーンパターンシフト値生成手段により生成されたハーフトーンパターンシフト値を用いて、該ハーフトーンパターンシフト値分の巡回シフトを行なう巡回シフト手段と、
前記巡回シフトにより、同一の階調値である描画オブジェクトに対応するハーフトーンパターンを繰り返し使用して描画する描画手段と
を備え、
前記ハーフトーンパターン生成手段による処理と前記描画手段による処理とを並列に行うことを特徴とする画像処理装置。
【請求項2】
前記描画手段による処理で使用される描画パラメータを記憶する描画パラメータ記憶手段および前記ハーフトーンパターン記憶手段をダブルバッファとして、描画処理用の記憶領域と、次の描画処理用の記憶領域とを設けることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
所定範囲の領域を示すバンド単位で階調処理後の画像を描画する画像処理装置で実行される画像処理方法であって、
画像を描画単位に分解した場合の水平方向の始点と終点との幅である描画幅のハーフトーンパターンのハーフトーンしきい値を、少なくともハーフトーンパターンの垂直方向の幅分記憶するハーフトーンしきい値記憶手段からハーフトーンしきい値を読み込んで、読み込んだハーフトーンしきい値を用いて階調処理を行ない、該階調処理により生成したハーフトーンパターンを、前記描画幅のハーフトーンパターンを少なくとも前記ハーフトーンパターンの垂直方向の幅分記憶する前記ハーフトーンパターン記憶手段へ転送するハーフトーンパターン生成工程と、
描画する水平ラインの垂直方向の位置を示す値から、対応するハーフトーンパターンを記憶した前記ハーフトーンパターン記憶手段のハーフトーンパターンアドレス値を生成するハーフトーンパターンアドレス生成手段と、
前記描画幅を、前記ハーフトーンパターンの水平方向の幅で割ったときの余り値を求め、該余り値を用いて前記ハーフトーンパターン記憶手段に記憶されているハーフトーンパターンをシフトするためのハーフトーンパターンシフト値を生成するハーフトーンパターンシフト値生成工程と、
前記ハーフトーンパターンアドレス値によるアクセスにより前記ハーフトーンパターン記憶手段から転送されるハーフトーンパターンを、前記ハーフトーンパターンシフト値生成工程により生成されたハーフトーンパターンシフト値を用いて、該ハーフトーンパターンシフト値分の巡回シフトを行なう巡回シフト工程と、
前記巡回シフトにより、同一の階調値である描画オブジェクトに対応するハーフトーンパターンを繰り返し使用して描画する描画工程と
を含み、
前記ハーフトーンパターン生成工程による処理と前記描画工程による処理とを並列に行うことを特徴とする画像処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2013−56510(P2013−56510A)
【公開日】平成25年3月28日(2013.3.28)
【国際特許分類】
【出願番号】特願2011−197230(P2011−197230)
【出願日】平成23年9月9日(2011.9.9)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】