JP4921025B2 - 画像形成装置及び画像形成方法 - Google Patents

画像形成装置及び画像形成方法 Download PDF

Info

Publication number
JP4921025B2
JP4921025B2 JP2006121147A JP2006121147A JP4921025B2 JP 4921025 B2 JP4921025 B2 JP 4921025B2 JP 2006121147 A JP2006121147 A JP 2006121147A JP 2006121147 A JP2006121147 A JP 2006121147A JP 4921025 B2 JP4921025 B2 JP 4921025B2
Authority
JP
Japan
Prior art keywords
image data
shape
vector
data
unit
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
Application number
JP2006121147A
Other languages
English (en)
Other versions
JP2007290257A (ja
Inventor
和希 村上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2006121147A priority Critical patent/JP4921025B2/ja
Priority to US11/626,233 priority patent/US7889386B2/en
Publication of JP2007290257A publication Critical patent/JP2007290257A/ja
Application granted granted Critical
Publication of JP4921025B2 publication Critical patent/JP4921025B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)
  • Image Generation (AREA)

Description

本発明は、画像形成装置及び画像形成方法に関する。
ベクタ画像の描画処理は、一般的に、
1)印刷ドライバなどから送られてくるPostScriptやPDF等のベクタ画像データの解釈を行うベクタ画像処理と、
2)回転や色変換等のラスタ画像処理と、
からなる。
ベクタ画像データが入力されると、画像形成装置は、ベクタ画像データを解釈し、各ページのラスタ画像データ、又は圧縮形式の圧縮画像データを生成して、出力する。入力されるベクタ画像データは、複数種類のオブジェクト(描画オブジェクト)の集合として表現され、オブジェクトとしては、例えば図形、テキスト等がある。
画像形成装置が出力した画像は、必要に応じてページ合成や回転、色変換等の画像処理が行われた後、画像出力モジュールに送出され、出力可能となる。出力直前のページ画像データはラスタ画像データとなっており、画像出力モジュールの走査順に整列される。
一般に、PDL等のベクタ画像データ画像の入力から画像出力モジュールへの出力までにかかる時間を短縮するため、画像を複数の領域に区切り、それらの領域を並行処理することによって、1ページの画像処理にかかる時間を短縮する手法が用いられている。ここで、PDLとは、Page Description Languageの略である。
特許文献1には、描画対象となる二次元領域を複数のブロックに分割し、分割された領域を複数の画像生成手段に割り当て、画像を形成する画像処理装置が開示されている。
特開平4−170686号公報
また、複数のブロックに分割されたベクタ画像データから画像を形成する過程で、既に描画の終了したデータのベクタ画像データと、これから描画を行うベクタ画像データとを比較するようにしてもよい。つまり、描画の終了したデータのベクタ画像データを記憶装置等に記憶しておくようにしてもよい。このように構成することによって、両者が一致している場合には、処理時間の大きいベクタ画像データの画像処理を行わず、保持してあるベクタ画像データに対応するデータ(描画データ)を出力することができる。
しかしながら、ブロックに含まれるオブジェクトが多数の場合や、複雑な形状をしている場合、比較に係る計算量が多くなる。その結果、画像形成にかかる時間がかえって長くなる問題があった。また、ブロックに含まれるオブジェクトが多数の場合や、複雑な形状をしている場合、両者が完全に一致する可能性が低く、効率的ではない問題もあった。
本発明はこのような問題点に鑑みなされたもので、画像形成にかかる時間を短縮することを目的とする。
そこで、前記問題を解決するため、本発明の画像形成装置は、ページ記述言語を、複数の領域に対応した、ページ記述言語に変換する変換手段と、前記変換手段において変換されたページ記述言語に基づき、画像データを生成する画像データ生成手段と、前記変換手段により、ページ記述言語を、複数の領域に対応した、ページ記述言語に変換する際に、前記複数の領域に含まれるオブジェクトの形状を判定する形状判定手段と、前記形状判定手段において判定されたオブジェクトの形状が再利用される可能性の高い単純な形状でない場合、前記画像データ生成手段において生成された前記画像データを一時記憶領域に保持せず、前記形状判定手段において判定されたオブジェクトの形状が再利用される可能性の高い単純な形状である場合、前記画像データ生成手段において生成された前記画像データを一時記憶領域に保持する保持手段と、を有することを特徴とする。
また、前記問題を解決するため、本発明は、画像形成方法としてもよい。
本発明によれば、画像形成にかかる時間を短縮することができる。
以下、本発明の実施形態について図面に基づいて説明する。
図1は、画像形成装置122の一例のハードウェア構成図である。画像形成装置122は、バスアクセス調停部123を介してバス124に接続される。バス124には、画像形成装置122に加え、USBに代表される通信インターフェース109、処理に必要な全てのデータを一時格納するメモリ110、装置全体の制御、ベクタ画像データの処理等を行うCPU111が接続される。なお、通信インターフェースとしては、LAN(ローカルエリアネットワーク)インターフェースや、無線インターフェースでもよい。
画像形成装置122には、選択的ブロック分配器101、画像形成部108、形成済みデータ保持置換部125、セレクタ2(119)、バスアクセス調停部123等が含まれる。
選択的ブロック分配器101は、各領域内に含まれるオブジェクト数情報及びCPU111によって付与された形状判定結果を持つ、ブロックベクタ画像データを順次読み出す。また、選択的ブロック分配器101は、ブロックベクタ画像データに付与された形状判定結果を参照し、ブロックベクタ画像を形成済みデータ保持置換部125に記録するか否かを決定する。ブロックベクタ画像を形成済みデータ保持置換部125に記録する場合、選択的ブロック分配器101は、読み出したベクタ画像データを複製し、画像形成部108と、形成済みデータ保持置換部125との双方に分配する。また、選択的ブロック分配器101は、制御部115に対して、ブロックベクタ画像データのオブジェクト数情報に対応するレベルデータイネーブル信号133及びブロックベクタ画像の形状判定結果を示すブロックベクタ画像記録イネーブル信号139を出力する。選択的ブロック分配器101は、通常、1回の起動で1ページ分のベクタ画像データを読み込んだ後に停止する動作を行う。
画像形成部108は、入力されたベクタ画像データを、描画コマンド生成部102、エッジ処理部103、レベル優先度判定部104、色生成部105、色合成部106、ピクセル展開処理部107の各処理部で順次処理し、ピクセルマップデータを形成する。
描画コマンド生成部102は、システムバス124にアクセスしてジョブを読み込み、描画コマンドを発行する。
エッジ処理部103は、描画コマンド生成部102によって発行された描画コマンドに従ってジョブに含まれる辺レコードを読み取り、走査線単位で描画オブジェクトの辺情報を抽出する。続いて、エッジ処理部103は、前記辺情報を走査線方向(X座標方向)の昇順にソートした後、レベル優先度判定部104に辺情報をメッセージとして転送する。
レベル優先度判定部104は、描画コマンド生成部102によって発行された描画コマンドに従い、ジョブに含まれるレベルテーブルと、エッジ処理部103から転送された辺情報とを読み取る。続いて、レベル優先度判定部104は、走査線毎に各レベルの優先度と、活性化された(描画に影響する)画素範囲とを決定し、各走査線の前記活性化された画素範囲の情報を優先度順にソートして他のレベルの画素との関係情報と共に画素範囲情報とする。そして、レベル優先度判定部104は、色生成部105に前記画素範囲情報を転送する。
色生成部105は、描画コマンド生成部102によって発行された描画コマンドに従い、ジョブに含まれるフィルテーブルと、レベル優先度判定部104から転送された画素範囲情報とを読み取る。続いて、色生成部105は、レベル毎に活性化された画素の色を決定し、活性化された画素の色情報を、レベル優先度判定部104から転送されてきた画素範囲情報と共に色合成部106に転送する。
色合成部106は、描画コマンド生成部102によって発行された描画コマンドに従い、レベル優先度判定部104によって生成された各レベルの画素範囲情報と、色生成部105によって決定された画素の色情報とを基に画素単位に色を決定する演算を実行する。そして、色合成部106は、画素の最終的な色を生成する。
ピクセル展開処理部107は、色合成部106によって生成された画素の最終的な色の内、ランレングス形式で表現された画素情報をピクセルに展開し、メモリ110やピクセルマップデータバッファ128に送出する。
選択的ブロック分配器101は、ブロックベクタ画像データを読み込み、読み込んだブロックベクタ画像データに含まれるオブジェクトの数と、形成済みデータ保持置換部125に入力すべきデータ数と、を比較する。
形成済みデータ保持置換部125は、入力されたブロックベクタ画像データのオブジェクト数に対応する、レベルデータ保持置換部136及び制御部115内の処理機能を持つ。各レベルデータ保持置換部は、ブロックベクタ画像データと、前記ブロックベクタ画像データを画像形成した結果(ピクセルマップデータ)と、を組み合わせとして保持するための一時記憶領域113を含む。また、各レベルデータ保持置換部は、新たに入力されたベクタ画像データと、既に保持されたベクタ画像データとを比較する比較器112を更に含む。また、各レベルデータ保持置換部は、一時記憶領域113より、保持されたデータを出力する際に、比較の結果、一致したベクタ画像データに対応するデータ(ピクセルマップデータ)を選択するセレクタ1(118)を更に含む。
また、形成済みデータ保持置換部125は、制御部115から出力されるレベルデータ保持置換部出力選択信号137により、各レベルデータ保持置換部からの有効なピクセルマップデータ出力を選択するセレクタ4(135)を含む。
制御部115は、比較器112による比較の結果に基づいて、ピクセルマップデータの置換、出力、及びベクタ画像データの置換を制御する。
ここで、各レベルデータ保持置換部とは、レベル数1の画像データを保持するレベル1データ保持置換部131と、レベル数2の画像データを保持するレベル2データ保持置換部132とである。
なお、画像形成装置122の他の構成として、形成済みデータ保持置換部内を1つ以上のレベルデータ保持置換部によって構成し、各レベルデータ保持置換部内の一時記憶領域113にオブジェクト数情報を付加するようにしてもよい。そして、画像形成装置122は、オブジェクト数情報と、ベクタ画像データとの双方を、入力ベクタ画像データと、一時記憶領域113に保持されたデータとの等価性判定に使用してもよい。
本実施形態では背景のみのレベル数0の画像データは、制御部115内においてベクタ画像データ入力の一致判定、及びピクセルマップデータへの置換を行うものとする。しかしながら、オブジェクト数0のタイルに対して、レベル0データ保持置換部を設ける構成をとってもよい。この他に、レベル1以上のベクタ画像データ入力の一致判定、及びピクセルマップデータへの置換を制御部115で行ってもよい。
本実施形態では、選択的ブロック分配器101から制御部115に対してブロックベクタ画像記録イネーブル信号139が有効化された状態で、選択的ブロック分配器101から形成済みデータ保持置換部125に供給されたベクタ画像データのオブジェクト数が1であった場合、レベル数1データ保持置換部131の一時記憶領域の何れかに対して書き込みが行われる。同様に、選択的ブロック分配器101から制御部115に対してブロックベクタ画像記録イネーブル信号139が有効化された状態で、選択的ブロック分配器101から形成済みデータ保持置換部125に供給されたベクタ画像データのオブジェクト数が2であった場合、レベル数2データ保持置換部132の一時記憶領域の何れかに対して書き込みが行われる。また、上述したように、オブジェクト数が0のベクタ画像データに対する一致性判定、及びピクセルマップデータ出力処理は、制御部115内で行う。この場合も、選択的ブロック分配器101から制御部115に対してブロックベクタ画像記録イネーブル信号139が有効化された状態で入力されたブロックベクタ画像データに対してのみ、データ保持処理を行う。
本実施形態では、画像形成装置122は、オペランド数が5以下のオブジェクト、且つオペランドがlinetoであるオブジェクト、又は白紙で構成されるブロックについてのみ、レベルデータ保持置換部125に記録するものとする。なお、画像形成装置122は、オブジェクトの選択を、オペランド、又はオペレータの片方のみで行ってもよい。
以下、ページ単位のベクタ画像データがUSBインターフェースより入力された時点から順を追って画像形成装置122の動作例を説明する。
1)ベクタ画像データ入力
通常、ベクタ画像データは、1ページ若しくは複数ページから構成される文章の単位でホストコンピュータ等から通信インターフェースを介して入力される。本実施形態では、DMA付のUSBエンドポイントを介し、1ページのベクタ画像データがメモリ110に格納される例を用いて説明を行なう。
USBインターフェース109は予め起動されており、ベクタ画像データが到着するとDMA転送により、メモリ110上の指定された領域へ、バス124を介し、ベクタ画像データを転送する。その後、インタラプト等の通知手段(図示せず)によりCPU111にデータの到着が通知される。本実施形態では、タイル分割を行った図2の画像が入力された場合を例にして説明を行う。なお、分割手法がライン単位、ストリップ単位の場合においても、本実施形態のタイル処理をライン/ストリップ単位の処理に変更することにより、タイル処理を行う場合と同等の画像形成装置を構成することができる。
2)ベクタ画像データブロック分割
図2のような画像に対応するPDLで記述されたデータを処理する場合を例に取り、図1の画像形成装置122の動作概要を説明する。図2には三角形の描画オブジェクト303や、直線の描画オブジェクト310、円の描画オブジェクト311、316、曲線オブジェクト317等が描かれている。
図3に、図2に示した画像をPDLで記述したベクタ画像データの一例を示す。
例えば、画像形成装置122は、最初に、movetoオペレータ(命令)によってペン座標を(X、Y)=(48、144)に移動させる。ここから、例えば、画像形成装置122は、順にlinetoオペレータによって座標(48、16)、(134、58)、(48、144)に直線を引き、赤い三角形を描く。
次に、画像形成装置122は、(X、Y)=(45、80)、(75、80)を中心とした半径6の円オブジェクト311、316を順に描く。また、画像形成装置122は、movetoオペレータによって、ペン座標を(X、Y)=(60、160)に移動させ、linetoオペレータによって(X、Y)=(60、0)まで直線を描く。
最後に、画像形成装置122は、ペン座標を(X、Y)=(100、75)に移動し、現在のペン座標、(105、80)、(110、75)、(115、88)を制御点とする曲線オブジェクト317を描く。
図1に示した画像形成装置122は、USB等の外部インターフェース(109)から入力され、メモリ110上に格納されたベクタ画像データを、高速に描画するために複数の矩形領域に分割し、それぞれの矩形領域内でのベクタ画像データに形式変換する。
図3に示す描画領域全体のPDLから図4に示すタイル領域のPDLへの変換は、簡単な座標計算により実行できる。
以下、図1のCPU111においてPDLで記述されたベクタ画像データのタイル分割が行われる例を示す。
入力されたPDLで記述されたベクタ画像データ(図3)に基づき、CPU111は、オブジェクト303の頂点306(座標(48、144))、描画オブジェクト310の頂点308(座標(48、16))、描画オブジェクト311に外接する四角形(概形)315の範囲及び描画オブジェクト310の端点312(座標(60、160))を特定する。そして、CPU111は、図2において、X座標が39より小さい領域、及びY座標が160より大きい領域には描画オブジェクトが無いことが分かる。
CPU111が、ページ全体を32×32ピクセルのタイルに分割した場合を考える。すると、タイル番号(x、y)=(0、5)、(0、4)、(0、3)、(0、2)、(0、1)、(0、0)、(1、5)、(2、5)、(3、5)、(4、5)にはオブジェクトが存在しない。
本実施形態ではタイル内に含まれるオブジェクトの計数を、描画オブジェクトの概形情報を用いて行う。ここで概形情報とは、ある描画オブジェクトが存在し得る最大領域を含む矩形領域である。例えば、概形314は描画オブジェクト303の描画過程において通過する頂点306、頂点308及び頂点307を包含する矩形領域である。なお、概形情報を用いたブロック分割については、上述した特許文献1に詳述されている。
なお、前記計数は、各描画オブジェクトと、タイル境界との交点計算を計数時に計算する方法でもよい。
タイル(1、4)において、CPU111は、概形314の辺、及び描画オブジェクト310と、タイル(1、4)の辺と、の交点から2つの描画オブジェクトがタイル内に存在することが分かる。
CPU111は、頂点306、端点312(座標(60、160))及び端点313(座標(60、0))より、書かれるそれぞれのベクトルの傾きを求める。次に、CPU111は、タイル内での頂点の座標から書かれた直線が、タイルの境界と交わる座標を求め、新たなタイル単位のベクタ画像データを生成する。
一般に、頂点A(x、y)の変換後の座標A'(x'、y')は、
x' = 頂点AのX座標x−X方向タイル番号×1タイル内のX方向ピクセル数
y' = 頂点AのY座標y−X方向タイル番号×1タイル内のY方向ピクセル数
となる。
タイル(1、4)に含まれる頂点306の変換後の座標(x'、y')は、
頂点AのX座標 = 48
頂点AのY座標 = 144
X方向タイル番号 = 1
Y方向タイル番号 = 4
1タイル内のX方向ピクセル数 = 1タイル内のY方向ピクセル数 = 32 より、
x' = 48 − 1×32 = 16
y' = 144 − 4×32 = 16
となる。
また、端点312の変換後の座標(x''、y'')は、
x'' = 60 − 1×32 = 28
y'' = 160 − 4×32 = 32
となる。
頂点306を端点とする垂直方向のベクトルは傾き無限大、右斜めのベクトルは、(144−58)/(48−134)= −1 である。したがって、左下を基点としたタイル内でのオブジェクトは、図5に示すように、ベクトルaと、ベクトルbと、ベクトルcと、に変換される。ここで、ベクトルaは、頂点(16、16)を始点とし、垂直下方向にタイル境界までのベクトルである。ベクトルbは、傾き−1でx=32若しくはy=0との交点までのベクトルである。ベクトルcは、2つのベクトルとタイル境界の交点から(32、0)までのベクトルである。
なお、この例の場合、ベクトルbの終点が(32、0)であるのでベクトルbから(32、0)へのベクトルは無い。また、端点312は図5に示すように、端点(28、32)を始点とし、垂直下方向にタイル境界までのベクトルdに変換される。
上述したように、変換後の、タイル単位に分割されたベクタ画像データは、図4のように表現される。
次に入力されたPDLをストリップ単位に分割する例を示す。この場合、前記タイル分割においてy方向の演算を省略すればよい。
このとき、ストリップ内における頂点306の変換後の座標(x'、y')は
x' = 頂点のX座標x = 48
y' = 頂点のY座標y―タイル番号3×1タイル内のY方向ピクセル数32pixel = 16
となる。
また、端点312の変換後の座標(x''、y'')は、
x'' =頂点のX座標x = 60
y'' =頂点のY座標y―タイル番号3×1タイル内のY方向ピクセル数32pixel=32
となる。
以上の処理により、変換後のオブジェクトは、図6に示すように、ベクトルAと、ベクトルBと、ベクトルCと、ベクトルDとに変換される。ここで、ベクトルAは、頂点(48、16)を始点とし、垂直下方向にストリップ境界までのベクトルである。また、ベクトルBは、傾き−1でy=0との交点までのベクトルである。また、ベクトルCは、2つのベクトルと、ストリップの境界の交点とを結ぶベクトルである。また、ベクトルCは、端点(60、32)を始点とし、垂直下方向にタイル境界までのベクトルである。
変換後の、ストリップ単位に分割されたベクタ画像データは、図7のように表現される。
また、ライン単位に分割するためにはあるy座標に対するオブジェクトの交点を求めればよい。
以下、上記何れかの方法を用いてタイル/ストリップ/ライン単位に分割された各領域をブロックと呼ぶ。
PDLで記述されたベクタ画像データのタイル分割が終了すると、CPU111は、画像形成装置122に接続された選択的ブロック分配器101に、ブロックベクタ画像データの格納位置を設定し、画像形成装置122を起動する。
3)画像形成装置起動
CPU111は上記ベクタ画像データのブロック分割終了後、画像形成装置122内の設定レジスタ(図示せず)及び一時記憶領域113内のメモリを初期化する。続いて、CPU111は、図1における選択的ブロック分配器101を起動する。これにより、画像形成装置122が動作を開始する。
4)画像形成処理
選択的ブロック分配器101は、分割されたベクタ画像データをタイル単位で読み込み、形成済みデータ保持置換部125と、画像形成部108とに分配供給する。画像形成部108では、ベクタ画像データを処理し、ピクセルマップデータを生成する。
一方、形成済みデータ保持置換部125内では、レベルデータイネーブル信号133によって選択されたレベルデータ保持置換部内の比較器112が、比較処理を実行する。つまり、比較器112は、選択的ブロック分配器101より入力されたベクタ画像データと、一時記憶領域113に保持されたベクタ画像データとを比較する処理を実行する。
本実施形態では、形成済みデータ保持置換部125でレベル数1及びレベル2のベクタ画像データを記録する構成が示されている。
本構成では読み込んだタイルに含まれるオブジェクト数が、形成済みデータ保持置換部125が対応する1又は2オブジェクトであった場合、選択的ブロック分配器101は、レベルデータイネーブル信号133を有効化する。また、選択的ブロック分配器101は、制御部115及びレベルデータ保持置換部136にオブジェクト数を通知する。それ以外のオブジェクト数のデータが入力された場合、選択的ブロック分配器101は、レベルデータイネーブル信号133を無効化しておく。また、読み込んだタイルに含まれるオブジェクト数が0オブジェクトであった場合、選択的ブロック分配器101は、レベルデータイネーブル信号133を有効化し、制御部115及びレベルデータ保持置換部136にオブジェクト数を通知する。
また、本実施形態では、比較器112は、128ビットのコンパレータを用い、選択的ブロック分配器101より供給されるベクタ画像データを、一時記憶領域113に格納されているベクタ画像データと先頭から逐次比較し続ける。そして、比較器112は、一致している場合に限り一致信号117を有効化し、制御部115に通知する。一旦不一致が発生した場合、比較器112は、一致信号117を無効化し、新たなベクタ画像データが選択的ブロック分配器101より供給されるまで一致信号117を出力しない。
この処理の結果、制御部115は、ベクタ画像データ読み込みが終了後、一致信号117が有効な場合に、ベクタ画像データが一致したと判定することができる。
一般的に、描画コマンド生成部102の処理は、ベクタ画像データ入力終了後、解析、生成の時間が必要であり、以後の描画処理にも図形の複雑度に応じ処理時間が必要である。そのため、比較器112における比較結果は、画像形成部108における描画処理(画像形成処理)終了より早く確定する。
制御部115における処理を図8に示す。
制御部115は、処理が開始されると(S2001)、S2002において、選択的ブロック分配器101が1タイル分のベクタ画像データを読み込み終わるのを待つ。1タイル分のベクタ画像データは読み込みと同時にブロックベクタ画像データバッファ126に一時的に記憶される。
ベクタ画像データの読み込みが終了すると、制御部115は、S2003において、形成済みデータ保持置換部125内に入力されたベクタ画像データに対応するレベルデータ保持置換部136があるか否かを判定する。制御部115は、選択的ブロック分配器101から入力されるレベル1データ保持置換部131、又はレベル2データ保持置換部132に対応するレベルデータイネーブル信号133の入力に基づいて、前記判定を行なう。
1タイル分のベクタ画像データに含まれるオブジェクト数が、形成済みデータ保持置換部125でサポートされたオブジェクト数のベクタ画像データ入力であった場合、制御部115は、S2004において、セレクタ4(135)を切り替える。つまり、制御部115は、入力されたベクタ画像データに対応するレベルデータ保持置換部136の出力を形成済みデータ保持置換部125からの出力とするレベルデータ保持置換部出力選択信号を出力する。
次にS2005において、制御部115は、入力されたベクタ画像データと、入力されたベクタ画像データに対応するレベルデータ保持置換部136の一時記憶領域113内のデータとの一致信号117が存在する否かを判定する。ここで、画像形成装置122の動作が正常であれば、一致信号117は全部無効か、一つが有効な状態になっている。複数の一致信号117が有効になっている場合、制御部115は、異常終了等の処理を行ってもよい。
一致信号117がある場合、S2011において、制御部115は、セレクタ2(119)を切り替え、形成済みデータ保持置換部125から出力されるピクセルマップデータを画像形成装置122の処理結果とする。つまり、制御部115は、入力されたベクタ画像データと一致するベクタ画像データと対応付けて一時記憶領域113に格納されていたピクセルマップデータを処理結果として出力バス120を介し、バスアクセス調停部123に出力する。
本実施形態では、複数ある一時記憶領域113の描画データの選択は、セレクタ1(118)へ直接接続された、比較結果信号117によって既に行われている。なお、前記選択を制御装置115が行ってもよい。
ピクセルマップデータを受け取ったバスアクセス調停部123は、メモリ110上の予め設定された領域へピクセルマップデータを書き出す。
S2012において、バスアクセス調停部123は、描画データの出力終了を待ち、終了した場合、S2013に進み、ベクタ画像データ読み込み指示信号129を用いて選択的ブロック分配器101に次のブロックベクタ画像データの読み込みを指示する。その後、制御部115は、S2002の処理に戻り、次のブロックベクタ画像データの入力終了を待つ。
一方S2003においてレベルデータ保持置換部136が対応しないオブジェクト数のベクタ画像データが入力された場合、S2014において、制御部115は、入力ベクタ画像データが制御部115によってサポートされるレベル0のタイルか否かを判定する。
入力ベクタ画像データがオブジェクトを含まないレベル0のタイルであった場合、S2015において、制御部115は、レベル0のブロックベクタ画像データバッファ(図示せず)に保持されているデータと、入力ベクタ画像データとが一致するか否かを判定する。
S2015における比較の結果、一致するデータが存在する場合、S2016において、制御部115は、セレクタ4(135)を制御部115の出力に切り替える。続いてS2017において、制御部115は、制御部レベル0ピクセルマップデータ出力バス138経由で制御部115内のレベル0のピクセルデータバッファ(図示せず)の内容を出力する。
また、S2015において一致する有効なデータが存在しなかった場合、S2018において、制御部115は、画像形成装置122の出力を画像形成部108の出力に切り替える。また、S2019において、制御部115は、入力されたベクタ画像データを、制御部115が有するレベル0のブロックベクタ画像データバッファにコピーする。S2020にて、制御部115は、画像形成部108の描画終了(画像形成終了)を確認後、S2021において、画像形成後のピクセルマップデータを制御部115が有するレベル0のピクセルデータバッファにコピーする。
一方、S2014においてレベル0以外のオブジェクト数のベクタ画像データが入力された場合、又はS2005において一致信号117が無い場合、S2006において、制御部115は、セレクタ2(119)を画像形成部108の出力へ切り替える。なお、S2014においてレベル0以外のオブジェクト数のベクタ画像データが入力されたと判定し、S2006の処理に移行してきた場合、以下に示すS2000、S2007、S2008、S2010の処理は実行されない。
S2000において、制御部115は、ブロックベクタ画像記録イネーブル信号139及びレベルデータイネーブル信号133が有効になっているか否かを判定する。制御部115は、ブロックベクタ画像記録イネーブル信号139及びレベルデータイネーブル信号133が有効になっていると判定すると、S2007に進む。一方、制御部115は、ブロックベクタ画像記録イネーブル信号139及びレベルデータイネーブル信号133が有効になっていないと判定すると、S2009に進む。
S2007において、制御部115は、複数ある一時記憶領域113から置き換え対象の一時記憶領域113を一つ選択する。本実施形態では、制御部115は、ラウンドロビン方式を用い、書き換えが発生する毎に隣の一時記憶領域113を次の置き換え対象として選択する。
S2008において、制御部115は、S2007において選択した一時記憶領域113へ、ベクタ画像データの格納を行う。これは、ブロックベクタ画像データバッファ126に一時的に記憶したベクタ画像データのコピーによって行われる。
S2009において、制御部115は、画像形成部処理終了信号127を監視することにより、画像形成部108での画像形成終了を待つ。
画像形成が終了すると、S2010へ進み、制御部115は、ベクタ画像データと同様に、ピクセルマップデータバッファ128に格納された、ピクセルマップデータを選択された一時記憶領域113へコピーする。
コピー終了後、S2013に進み、ベクタ画像データ読み込み指示信号129を用いて選択的ブロック分配器101に次のブロックベクタ画像データの読み込みを指示する。
その後、制御部115は、S2002の処理に戻り、次のブロックベクタ画像データの入力終了を待つ。
図2に示す画像を図3に示すベクタ画像データとして入力されると、CPU111において、タイル番号(0、0)から(4、5)までの30のタイルに分割される。CPU111は、例えば、タイル分割時のオブジェクトの概形チェック時に、オブジェクトのパスを指定するオペランドがlinetoであるか否かを判定し、ブロックベクタ画像データにオペランドの判定結果のフラグを付与する。CPU111は、オペランド判定結果が付与された各タイルのベクタ画像データを30個生成し、メモリ110に格納し、各タイルのベクタ画像データの格納場所を選択的ブロック分配器101に保存する。
次に、選択的ブロック分配器101により、タイル番号(0、0)→(1、0)→(2、0)→(3、0)→(4、0)→(0、1)→(1、1)→(2、1)→(3、1)・・・のベクタ画像データが画像形成装置122に読み込まれ、画像形成が行われる。
タイル(0、0)は最初のタイルなので、画像形成部108により描画が行われ、白紙のピクセルマップデータが生成される。制御部115は、図8のS2002→S2003→S2014→S2015→S1018〜S2021→S2013の処理を実行し、制御部115のレベル0のブロックベクタ画像データバッファ及び制御部115のレベル0のピクセルデータバッファが更新される。
次のタイル(1、0)は、linetoのみで構成されるオブジェクト310と、オブジェクト303の概形314と、を含む。タイル(1、0)は、本実施形態におけるオブジェクトの形状判定条件を満たしているため、選択的ブロック分配器101によって、ブロックベクタ画像記録イネーブル信号139が有効化される。また、1タイルに含まれるオブジェクトの概形が2個であるため、選択的ブロック分配器101によって、レベルデータイネーブル信号133が有効化される。
以上、2つの信号が有効化され、選択的ブロック分配器101によって、レベルデータ保持置換部136内のレベル2データ保持置換部132が選択される。しかし、入力ブロックベクタ画像データは、レベル2データ保持置換部132内の一時記憶領域に保持されている何れのブロックベクタ画像データとも一致しない。よって、制御部115は、S2002→S2003→S2004→S2005→S2006→S2000→S2007→S2008→S2009→S2010の順で処理を行う。タイル(1、0)に対しては、画像形成部108による描画処理が行われ、ピクセルマップデータが生成される。ブロックベクタ画像データと、ピクセルマップデータとは、レベル2データ保持置換部132内の1つ目の一時記憶領域113に格納される。
タイル(2、0)は、linetoのみで構成される1つのオブジェクト303の概形314を含む。タイル(2、0)は、本実施形態におけるオブジェクトの形状判定条件を満たしているため、選択的ブロック分配器101によって、ブロックベクタ画像記録イネーブル信号139が有効化される。また、1タイルに含まれるオブジェクトの概形が1個であるため、選択的ブロック分配器101によって、レベルデータイネーブル信号133が有効化される。
以上、2つの信号が有効化され、選択的ブロック分配器101によって、レベルデータ保持置換部136内のレベル1データ保持置換部131が選択される。しかし、入力ブロックベクタ画像データは、レベル1データ保持置換部131内の一時記憶領域113に保持されている何れのブロックベクタ画像データとも一致しない。よって、制御部115は、S2002→S2003→S2004→S2005→S2006→S2000→S2007→S2008→S2009→S2010の順で処理を行う。タイル(2、0)に対しても、画像形成部108による描画処理が行われ、ピクセルマップデータが生成される。ブロックベクタ画像データと、ピクセルマップデータとは、レベル1データ保持置換部131内の1つ目の一時記憶領域113に格納される。
タイル(3、0)は、1つのオブジェクト303の概形314を含む。タイル(3、0)は、本実施形態におけるオブジェクトの形状判定条件を満たしているため、選択的ブロック分配器101によって、ブロックベクタ画像記録イネーブル信号139が有効化される。また、1タイルに含まれるオブジェクトの概形が1個であるため、選択的ブロック分配器101によって、レベルデータイネーブル信号133が有効化される。
以上、2つの信号が有効化され、選択的ブロック分配器101によって、レベルデータ保持置換部136内のレベル1データ保持置換部131が選択される。しかし、入力ブロックベクタ画像データは、レベル1データ保持置換部131内の一時記憶領域113に保持されている何れのブロックベクタ画像データとも一致しない。よって、制御部115は、S2002→S2003→S2004→S2005→S2006→S2000→S2007→S2008→S2009→S2010の順で処理を行う。タイル(3、0)に対しても、画像形成部108による描画処理が行われ、ピクセルマップデータが生成される。ブロックベクタ画像データと、ピクセルマップデータとは、レベル1データ保持置換部131内の2つ目の一時記憶領域113に格納される。
タイル(4、0)は、1つのオブジェクト303の概形314を含む。タイル(4、0)は、本実施形態におけるオブジェクトの形状判定条件を満たしているため、選択的ブロック分配器101によって、ブロックベクタ画像記録イネーブル信号139が有効化される。また、1タイルに含まれるオブジェクトの概形が1個であるため、選択的ブロック分配器101によって、レベルデータイネーブル信号133が有効化される。
以上、2つの信号が有効化され、選択的ブロック分配器101によって、レベルデータ保持置換部136内のレベル1データ保持置換部131が選択される。ここで、タイル(4、0)に対応する入力ブロックベクタ画像データは、2つ目の一時記憶領域113に記憶されたタイル(3、0)のブロックベクタ画像データと一致する。よって、制御部115は、S2002→S2003→S2004→S2005→S2011→S2012→S2013の順で処理を行なう。そして、既に描画されたタイル(3、0)に関するピクセルマップデータが、タイル(4、0)のデータとして出力される。
タイル(0、1)はオブジェクトの概形を含まないため、タイル(0、1)のブロックベクタ画像データと、タイル(0、0)のブロックベクタ画像データとは一致する。よって、制御部115は、S2002→S2003→S2014→S2015→S2016→S2017の順で処理を行う。そして、既に描画されたタイル(0、0)に関するピクセルマップデータが、タイル(0、1)のデータとして出力される。
タイル(1、1)は、2つのオブジェクトを含み、本実施形態におけるオブジェクトの形状判定条件を満たす。そのため、タイル(1、0)と同様に処理され、ブロックベクタ画像データと、ピクセルマップデータとが、レベル2データ保持置換部132内の3つ目の一時記憶領域113に格納される。
以後、タイル(2、1)、タイル(3、1)、タイル(4、1)はそれぞれ新規のブロックベクタ画像データが入力されるため、タイル(2、0)と同様に処理される。ブロックベクタ画像データと、ピクセルマップデータとは、それぞれ、レベル1データ保持置換部131内の3つ目、1つ目、2つ目の一時記憶領域113に記憶される。また、タイル(0、2)は、タイル(0、1)と同様に処理される。
タイル(1、2)は、linetoのみで構成されるオブジェクト310と、円オブジェクト311の概形315を含む。タイル(1、2)は、円オブジェクトの概形313を含むため、本実施形態におけるオブジェクトの形状判定条件を満たさない。このため、選択的ブロック分配器101によって、ブロックベクタ画像記録イネーブル信号139が無効化される。但し、1タイルに含まれるオブジェクトの概形が2個であるため、選択的ブロック分配器101によって、レベルデータイネーブル信号133は有効化される。
よって、制御部115は、S2002→S2003→S2004→S2005→S2006→S2000→S2009→S2010の順で処理を行う。タイル(1、2)に対しては、画像形成部108による描画処理が行われ、ピクセルマップデータが生成される。但し、本実施形態におけるオブジェクトの形状判定条件を満たさなかった場合、制御部115は、ブロックベクタ画像データと、ピクセルマップデータとを保存しない。
タイル(2、2)は、円オブジェクト316の概形319を含むため、タイル(1、2)と同様に処理され、ブロックベクタ画像データと、ピクセルマップデータと、は保存されない。
タイル(2、3)は、曲線オブジェクト317の概形319を含むため、本実施形態におけるオブジェクトの形状判定条件を満たさない。このため、タイル(1、2)と同様に処理され、ブロックベクタ画像データと、ピクセルマップデータとは保存されない。
タイル(2、3)の次にオブジェクトの概形を2個以上含むブロックベクタ画像データが入力されるのはタイル(1、3)である。タイル(1、3)の処理では、タイル(1、1)と同様にレベル2データ保持置換部132が選択される。タイル(2、3)のブロックベクタ画像データは、レベル2データ保持置換部132内の1つ目の一時記憶領域113に記憶されたタイル(1、1)のブロックベクタ画像データと一致する。よって、制御部115は、S2002→S2003→S2004→S2005→S2011→S2012→S2013の順で処理を行う。そして、既に描画されたタイル(1、1)に関するピクセルマップデータが、タイル(2、3)のデータとして出力される。
画像形成装置122は、以上の動作をタイル(4、5)の描画データを出力し終わるまで繰り返す。
以上、説明したように、本実施形態によれば、PDLに代表されるベクタ画像データから画像を形成する過程で、既に描画の終了したブロックベクタ画像データと、これから描画を行うブロックベクタ画像データとを比較する。そして、両者が一致している場合には、処理時間の大きいブロックベクタ画像データの解析描画処理の代わりに、保持してある描画済みデータを出力する。つまり、一旦描画を行ったブロックベクタ画像データの画像形成を行う必要が無くなり、高速な画像形成が実現できる。
特に、1ページを複数のタイルに分割し画像形成を行う構成の場合には、画像形成部で形成する描画データの量を減らすことができる。よって、従来の手法では困難だった、1ページ内の画像形成時間を短縮させることができる。また、画像形成処理は一般的に高速で動作するハードウェア演算装置で実行される場合が多いので、ブロックベクタ画像データ一致時に画像形成を停止することにより消費電力の低減効果もある。
また、本実施形態の形態では、円オブジェクト311、316及び曲線オブジェクト317を一時記憶領域113への記録対象から除外する。つまり、再使用される確率が高い単純な形状のオブジェクトを含む、ベクタ画像データを選択的に一時記憶領域内に保持する。このことにより、より少ない一時記憶領域及び比較器数でレベルデータ保持置換部を構成することができる。よって、実装時のハードウェア規模の低減及び消費電力の低減が期待できる。更に、再使用される可能性が低いブロックに対するデータ同士の等価性判定を省略することできる。よって、等価性判定の時間の短縮が可能となる。また、等価性判定に必要な演算量が低減されるため、等価性判定後に等価性判定に用いた回路を停止することにより、消費電力の低減効果が期待できる。
以上、本実施形態によれば、画像形成にかかる時間を短縮することができる。
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
画像形成装置122の一例のハードウェア構成図である。 画像の一例を示す図である。 図2に示した画像をPDLで記述したベクタ画像データの一例を示す図である。 タイル単位に分割された画像をPDLで記述したベクタ画像データの一例を示す図である。 タイル単位に分割されたオブジェクトの一例を示す図である。 ストリップ単位に分割されたオブジェクトの一例を示す図である。 ストリップ単位に分割された画像をPDLで記述したベクタ画像データの一例を示す図である。 制御部115の動作フローチャートの一例を示す図である。
符号の説明
101 選択的ブロック分配器
102 描画コマンド生成部
103 エッジ処理部
104 レベル優先度判定部
105 色生成部
106 色合成部
107 ピクセル展開処理部
108 画像形成部
110 メモリ
111 CPU
112 比較器
113 一時記憶領域
115 制御部
118 セレクタ1
119 セレクタ2
122 画像形成装置
123 バスアクセス調停部

Claims (5)

  1. ページ記述言語を、複数の領域に対応した、ページ記述言語に変換する変換手段と、
    前記変換手段において変換されたページ記述言語に基づき、画像データを生成する画像データ生成手段と、
    前記変換手段により、ページ記述言語を、複数の領域に対応した、ページ記述言語に変換する際に、前記複数の領域に含まれるオブジェクトの形状を判定する形状判定手段と、
    前記形状判定手段において判定されたオブジェクトの形状が再利用される可能性の高い単純な形状でない場合、前記画像データ生成手段において生成された前記画像データを一時記憶領域に保持せず、前記形状判定手段において判定されたオブジェクトの形状が再利用される可能性の高い単純な形状である場合、前記画像データ生成手段において生成された前記画像データを一時記憶領域に保持する保持手段と、
    を有することを特徴とする画像形成装置。
  2. ベクタ画像データを、複数の領域に対応した、ベクタ画像データに変換する変換手段と、
    前記変換手段において変換されたベクタ画像データに基づき、画像データを生成する画像データ生成手段と、
    前記変換手段により、ベクタ画像データを、複数の領域に対応した、ベクタ画像データに変換する際に、前記複数の領域に含まれるオブジェクトの形状を判定する形状判定手段と、
    前記形状判定手段において判定されたオブジェクトの形状が再利用される可能性の高い単純な形状でない場合、前記画像データ生成手段において生成された前記画像データを一時記憶領域に保持せず、前記形状判定手段において判定されたオブジェクトの形状が再利用される可能性の高い単純な形状である場合、前記画像データ生成手段において生成された前記画像データを一時記憶領域に保持する保持手段と、
    を有することを特徴とする画像形成装置。
  3. 前記再利用される可能性の高い単純な形状でないオブジェクトとは、円オブジェクト及び曲線オブジェクトであり、前記再利用される可能性の高い単純な形状であるオブジェクトとは、直線のオブジェクトであることを特徴とする請求項1又は2記載の画像形成装置。
  4. 画像形成装置における画像形成方法であって、
    ページ記述言語を、複数の領域に対応した、ページ記述言語に変換する変換ステップと、
    前記変換ステップにおいて変換されたページ記述言語に基づき、画像データを生成する画像データ生成ステップと、
    前記変換ステップにおいて、ページ記述言語を、複数の領域に対応した、ページ記述言語に変換する際に、前記複数の領域に含まれるオブジェクトの形状を判定する形状判定ステップと、
    前記形状判定ステップにおいて判定されたオブジェクトの形状が再利用される可能性の高い単純な形状でない場合、前記画像データ生成ステップにおいて生成された前記画像データを一時記憶領域に保持せず、前記形状判定ステップにおいて判定されたオブジェクトの形状が再利用される可能性の高い単純な形状である場合、前記画像データ生成ステップにおいて生成された前記画像データを一時記憶領域に保持する保持ステップと、
    を含むことを特徴とする画像形成方法。
  5. 画像形成装置における画像形成方法であって、
    ベクタ画像データを、複数の領域に対応した、ベクタ画像データに変換する変換ステップと、
    前記変換ステップにおいて変換されたベクタ画像データに基づき、画像データを生成する画像データ生成ステップと、
    前記変換ステップにおいて、ベクタ画像データを、複数の領域に対応した、ベクタ画像データに変換する際に、前記複数の領域に含まれるオブジェクトの形状を判定する形状判定ステップと、
    前記形状判定ステップにおいて判定されたオブジェクトの形状が再利用される可能性の高い単純な形状でない場合、前記画像データ生成ステップにおいて生成された前記画像データを一時記憶領域に保持せず、前記形状判定ステップにおいて判定されたオブジェクトの形状が再利用される可能性の高い単純な形状である場合、前記画像データ生成ステップにおいて生成された前記画像データを一時記憶領域に保持する保持ステップと、
    を含むことを特徴とする画像形成方法。
JP2006121147A 2006-01-27 2006-04-25 画像形成装置及び画像形成方法 Expired - Fee Related JP4921025B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006121147A JP4921025B2 (ja) 2006-04-25 2006-04-25 画像形成装置及び画像形成方法
US11/626,233 US7889386B2 (en) 2006-01-27 2007-01-23 Image processing apparatus and method for processing vector image data units of blocks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006121147A JP4921025B2 (ja) 2006-04-25 2006-04-25 画像形成装置及び画像形成方法

Publications (2)

Publication Number Publication Date
JP2007290257A JP2007290257A (ja) 2007-11-08
JP4921025B2 true JP4921025B2 (ja) 2012-04-18

Family

ID=38761359

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006121147A Expired - Fee Related JP4921025B2 (ja) 2006-01-27 2006-04-25 画像形成装置及び画像形成方法

Country Status (1)

Country Link
JP (1) JP4921025B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5132347B2 (ja) * 2008-02-13 2013-01-30 キヤノン株式会社 画像処理システム
JP5571977B2 (ja) * 2010-03-01 2014-08-13 キヤノン株式会社 画像処理装置
CN111223033B (zh) * 2018-11-26 2023-05-02 株式会社理光 图像处理装置以及图像处理方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2855771B2 (ja) * 1990-04-03 1999-02-10 富士ゼロックス株式会社 文字発生回路
JP2004338213A (ja) * 2003-05-15 2004-12-02 Canon Inc 印刷方法及びその装置

Also Published As

Publication number Publication date
JP2007290257A (ja) 2007-11-08

Similar Documents

Publication Publication Date Title
US7747077B2 (en) Image processing apparatus, image processing method, and image processing program
US5386510A (en) Method of and apparatus for converting outline data to raster data
JP4614389B2 (ja) 画像形成装置、印刷装置、表示装置、描画処理方法、及びプログラム
JPH0412874A (ja) プリンタ制御装置
JP2006289642A (ja) 画像形成装置、画像形成方法、及び印刷装置
US20150331643A1 (en) Image processing method and image processing apparatus
JP4921025B2 (ja) 画像形成装置及び画像形成方法
US7889386B2 (en) Image processing apparatus and method for processing vector image data units of blocks
JP3791259B2 (ja) アウトラインスムージング処理方法
JP4764188B2 (ja) 画像形成装置及び画像処理方法
JP6590606B2 (ja) 画像処理装置、画像処理方法、プログラム
JP4145714B2 (ja) 印刷処理装置
JPH10151815A (ja) 印刷処理装置
JP2001312383A (ja) 印刷装置、高速印刷方法、及び記憶媒体
JP2001096854A (ja) 印刷処理装置および印刷処理方法
JP4764730B2 (ja) 画像形成装置及び画像形成方法
JPH1063250A (ja) 文字処理装置
JP2008018577A (ja) 画像形成装置、画像形成方法及びプログラム
JP4058197B2 (ja) 描画装置及び描画方法、記憶媒体
JP2015027028A (ja) 画像処理装置、画像処理方法、及びプログラム
JP2814709B2 (ja) 描画データ作成装置
JPS61267126A (ja) プロツタ制御装置
JP2006155307A (ja) 負荷分散処理を行う画像処理システム
JPH06238950A (ja) ページプリンタコントローラ
JP4861084B2 (ja) 描画処理装置及びその制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110322

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110523

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110614

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110808

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: 20120124

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: 20120202

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150210

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees