JP2006331191A - 画像形成装置、印刷装置、表示装置、描画処理方法、及びプログラム - Google Patents

画像形成装置、印刷装置、表示装置、描画処理方法、及びプログラム Download PDF

Info

Publication number
JP2006331191A
JP2006331191A JP2005155743A JP2005155743A JP2006331191A JP 2006331191 A JP2006331191 A JP 2006331191A JP 2005155743 A JP2005155743 A JP 2005155743A JP 2005155743 A JP2005155743 A JP 2005155743A JP 2006331191 A JP2006331191 A JP 2006331191A
Authority
JP
Japan
Prior art keywords
data
objects
group
drawing data
commands
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.)
Granted
Application number
JP2005155743A
Other languages
English (en)
Other versions
JP2006331191A5 (ja
JP4614389B2 (ja
Inventor
Takashi Furukawa
剛史 古川
Kazuki Murakami
和希 村上
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 JP2005155743A priority Critical patent/JP4614389B2/ja
Publication of JP2006331191A publication Critical patent/JP2006331191A/ja
Publication of JP2006331191A5 publication Critical patent/JP2006331191A5/ja
Application granted granted Critical
Publication of JP4614389B2 publication Critical patent/JP4614389B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Generation (AREA)
  • Image Processing (AREA)

Abstract

【課題】 PDLデータを言語レベルの段階で並列処理することを可能にする。
【解決手段】 並列に描画処理が可能な複数の画像処理プロセッサ102〜104を備えた画像形成装置において、描画命令分割部101が、入力された描画データによって描画されるべき複数の描画オブジェクトに対して交差判定を行い、交差すると判定された複数の描画オブジェクトを1つのオブジェクトグループとするとともに、他の描画オブジェクトと交差しないと判定された1つの描画オブジェクトを1つのグループとする。そして、グループ化された各オブジェクトグループにそれぞれ関連する描画命令を、オブジェクトグループごとに画像処理プロセッサ102〜104にそれぞれ割り当て、対応する描画処理を並列実行させる。
【選択図】 図1

Description

本発明は、画像形成装置、印刷装置、表示装置、描画処理方法、及びプログラムに関し、特に、並列に描画処理が可能な複数の描画処理装置を備え、ページ記述言語(PDL)で記述された描画データを解釈し、画像データを生成する画像形成装置、該画像形成装置に適用される描画処理方法、及び該描画処理方法をコンピュータに実行させるためのプログラムに関する。
画像形成装置に対し、PostScript(登録商標)やPDF(Portable Document Format)等のページ記述言語(PDL)で記述された描画データが入力されると、その描画データが画像形成装置において解釈されて各ページの画像データが生成される。入力された描画データは、複数種類のオブジェクト(描画オブジェクト)の集合で構成され、そのオブジェクトとしては図形、テキスト、その他の画像がある。生成される画像データは、1ページ分のラスタ画像のデータや、圧縮された画像データ等である。画像形成装置で生成された画像データは、必要に応じてページ合成や回転等の画像処理を行われた後、プリンタエンジンに送出されて印刷される。
画像形成装置における描画データの解釈では、その内容の複雑さにもよるが、一般に多くの演算が必要である。
印刷処理の高速化を図るためには、画像生成までの時間をできる限り削減する必要がある。
画像生成にかかる時間を削減するためには、複数の画像生成過程を並列に同時に行う並列化方法が有効であり、複数ページの画像データをページごとに並列に処理する方法や、画像形成装置が出力したラスタ画像をタイル状に分割して並列に処理する方法がある。しかし、これらの方法だけでは、処理負荷の重い画像形成処理を高速化することはできない。
このため、画像形成処理の高速化手法として画像形成処理の各過程を並列化する手法が考えられている。例えば特許文献1には、線または短冊状に描画対象を水平方向に分割し、分割された描画対象に対して並列処理を行う装置が開示されている。また、特許文献2には、描画対象となる二次元領域を複数のブロックに分割する画像処理装置が開示されている。
特開平9−167242号公報 特開平4−170686号公報
しかしながら、上記の描画対象となる二次元領域を複数のブロックに分割する従来の画像処理装置において、ページ記述言語(PDL)で記述された描画データを均等なブロック単位の描画データに分割した場合、各ブロックに含まれる描画オブジェクトの数に偏りがあり得、この偏りに起因して、各ブロックの描画処理で扱われる演算量にばらつきが生じてしまう。このような演算量のばらつきは、各ブロックのラスタ画像処理におけるレイテンシ(処理に伴う遅延時間)のばらつきの原因となる。
ブロックに含まれる描画オブジェクトの種類にもよるが、一般的に描画オブジェクトを多く含むブロックの描画処理の負荷は、描画オブジェクトの数が少ないブロックに比べ大きくなってしまう。そして、レイテンシの大きいブロックにおいて印刷処理などライン単位の処理を行う場合にスループットが制限されてしまうという問題があった。
また、上記分割ブロックに描画処理を割当てる際に、入力されたPDLデータを言語のレベルで一旦全て解析して、どのブロックにどの描画命令を割当てるかを確定した後に、分割処理を割当てねばならないという問題があった。すなわち、PDLデータの解析が終了して描画される座標や順序が全て確定してから、分割処理を分割領域に割当てる必要があり、PDLという言語で記述された高い抽象度レベルでの並列処理やスケジューリングが困難であるという課題があった。
本発明はこのような問題点に鑑みてなされたものであって、PDLデータを言語レベルの段階で並列処理することを可能にする画像形成装置、印刷装置、表示装置、描画処理方法、及びプログラムを提供することを目的とする。
上記目的を達成するために、請求項1記載の発明によれば、並列に描画処理が可能な複数の描画処理装置を備えた画像形成装置において、入力された描画データによって描画されるべき複数の描画オブジェクトに対して交差判定を行う交差判定手段と、前記交差判定手段によって交差すると判定された複数の描画オブジェクトを1つのオブジェクトグループとするとともに、他の描画オブジェクトと交差しないと判定された1つの描画オブジェクトを1つのグループとするグループ化手段と、前記グループ化手段によってグループ化された各オブジェクトグループにそれぞれ関連する描画命令を、オブジェクトグループごとに前記複数の描画処理装置にそれぞれ割り当て、対応する描画処理を並列実行させる実行制御手段とを有することを特徴とする画像形成装置が提供される。
また、請求項5記載の発明によれば、並列に描画処理が可能な複数の描画処理装置を備えた画像形成装置に適用される描画処理方法において、入力された描画データによって描画されるべき複数の描画オブジェクトに対して交差判定を行う交差判定ステップと、前記交差判定ステップにおいて交差すると判定された複数の描画オブジェクトを1つのオブジェクトグループとするとともに、他の描画オブジェクトと交差しないと判定された1つの描画オブジェクトを1つのグループとするグループ化ステップと、前記グループ化ステップによってグループ化された各オブジェクトグループにそれぞれ関連する描画命令を、オブジェクトグループごとに前記複数の描画処理装置にそれぞれ割り当て、対応する描画処理を並列実行させる実行制御ステップとを有することを特徴とする描画処理方法が提供される。
また、請求項10記載の発明によれば、描画データを読み込み、オブジェクトの重複を判定する判定手段と、前記判定手段による判定結果に応じて、描画データを分割する分割手段と、前記分割手段により分割された描画データの描画処理を実行する複数のプロセッサとを有することを特徴とする画像形成装置が提供される。
また、請求項12記載の発明によれば、描画データを読み込み、オブジェクトの重複を判定する判定ステップと、前記判定ステップによる判定結果に応じて、描画データを分割する分割ステップと、前記分割ステップにより分割された描画データの描画処理を複数のプロセッサに実行させるステップとを有することを特徴とする描画処理方法が提供される。
さらに、上記描画処理方法をコンピュータに実行させるためのプログラムが提供される。
また、請求項16記載の発明によれば、描画データを読み込み、オブジェクトの重複を判定する判定手段と、前記判定手段による判定結果に応じて、描画データを分割する分割手段と、前記分割手段により分割された描画データの描画処理を実行する複数のプロセッサと、前記複数のプロセッサで描画処理された画像データを印刷する印刷手段とを有することを特徴とする印刷装置が提供される。
また、請求項18記載の発明によれば、描画データを読み込み、オブジェクトの重複を判定する判定手段と、前記判定手段による判定結果に応じて、描画データを分割する分割手段と、前記分割手段により分割された描画データの描画処理を実行する複数のプロセッサと、前記複数のプロセッサで描画処理された画像データを表示する表示手段とを有することを特徴とする表示装置が提供される。
本発明によれば、並列に描画処理が可能な複数の描画処理装置を備えた画像形成装置において、入力された描画データによって描画されるべき複数の描画オブジェクトに対して交差判定を行い、交差すると判定された複数の描画オブジェクトを1つのオブジェクトグループとするとともに、他の描画オブジェクトと交差しないと判定された1つの描画オブジェクトを1つのグループとする。そして、グループ化された各オブジェクトグループにそれぞれ関連する描画命令を、オブジェクトグループごとに複数の描画処理装置にそれぞれ割り当て、対応する描画処理を並列実行させる。
これにより、描画データを言語レベルの段階で並列処理することが可能になり、描画処理時間を短縮することができる。したがって、画像形成装置全体の応答時間を短縮できる。
また特に、ページ記述言語のような、ビットマップ処理よりも高い抽象度の処理レベルにおいて分割並列化した描画処理を行えるので、各種の画像処理装置に幅広く対応して並列高速化処理を行なうことができる。
以下、本発明を実施するための最良の形態について、図面を参照して説明する。
図1は、本発明の一実施の形態に係る画像形成装置の構成を示すブロック図である。
本画像形成装置は、例えばPostScriptやPDF等のページ記述言語(PDL)で記述された描画データ(PDLデータ)を受け取り、該描画データに基づいて画像データを形成する。
図1に示すように、本画像形成装置は、CPU106と、描画データを画像データに変換する画像処理プロセッサ102,103,104と、メモリ105とによって構成され、各部がバスによって接続される。メモリ105には、制御プログラムが格納されるとともに、描画オブジェクト情報や画像処理プロセッサ102,103,104で変換された画像データ等が書き込まれる。なお、本画像形成装置を構成する描画命令分割部101は、CPU106が、メモリ105に格納された制御プログラムを読み出して実行することにより実現される機能を示すものである。
描画命令分割部101は、PDLデータ(描画データ)を受け取り、そのPDLデータをページ記述言語(PDL)の規約に沿って解釈する機能と、描画オブジェクトを包含する領域(概形)を算出する機能と、描画オブジェクト毎に描画命令((描画コマンド)を切り出す機能とから成る。
描画命令分割部101に入力されるPDLデータは、一般には、直線や曲線によって囲まれ塗り潰される閉領域、直線や曲線そのもの、文字などの描画オブジェクトの描画操作を記述したプログラム言語データである。描画命令分割部101は、このような描画オブジェクトが存在する領域を、PDLデータに含まれる描画命令から抽出した座標情報によって定義する。
本実施の形態では、PDLデータから抽出した座標情報に基づいて、描画オブジェクトが存在する可能性のある領域(この領域を、以下「概形」とよぶ)を求め、複数の概形が重なり合っているか(位置関係が重複しているか)否かによって交点演算の実行の必要性を判断する。
例えば、三角形の描画オブジェクトにおいて、該三角形の3つの頂点座標のX値およびY値の各々における最大値および最小値を求め、X値の最大値および最小値並びにY値の最大値および最小値によって囲まれる矩形領域を求める。このとき、この三角形の描画オブジェクトは該矩形領域内に必ず存在する。また、ベジエ曲線の描画オブジェクトの場合は、4点の制御点の座標が得られれば、これらの座標のX値およびY値の各々における最大値および最小値を基に、同様に矩形領域を求めることができ、該矩形領域内にベジエ曲線の描画オブジェクトが必ず存在する。
以上のように、描画オブジェクト全体が包含される矩形領域を求め、これを概形として用いる。なお、概形は、描画オブジェクトが包含される領域であれば矩形以外の形状でもよく、描画オブジェクトが包含され、はみ出さないという条件を満たす領域であれば、その形状は他のものであってもよく、その決定方法を問わない。
以下の説明では、概形は、描画オブジェクト全体を含む矩形であるものとする。概形を矩形に限定した場合、単純な解釈で、描画オブジェクトの概形が含まれるブロックを判定可能である。
描画命令分割部101では、このような描画オブジェクトの概形情報を用いて、複数の描画オブジェクト間の交点演算の必要性を判定する。すなわち、描画オブジェクトの概形が他の描画オブジェクトの概形と重なり合わない場合、交点演算が不必要と判断し、描画オブジェクトの描画処理を、他の描画オブジェクトと無関係に独立して実行する。具体的には、描画命令分割部101は、概形情報から、自己の概形が他の概形と重なり合わず、独立して描画処理が行えると判断された描画オブジェクトの描画命令を、入力されたPDLデータの描画命令から分割し、画像処理プロセッサ102,103,104のいずれかに割り当てる。
画像処理プロセッサ102,103,104の各々では、割り当てられた描画命令に基づき描画処理を行って画像データを形成し、該画像データをメモリ105に格納する。なお、画像データをそのまま後段の画像処理装置や出力装置、表示装置等に転送する場合もあり得る。
図2は、図1に示す描画命令分割部101に入力される描画データの一例を示す図である。この描画データは、PostScirpt言語で記述されている。また、図3は、図2に示す描画データが表す描画オブジェクトおよび概形を示す図である。以下、図2および図3を参照して説明する。
図2において、200〜205はそれぞれ、各描画オブジェクトの描画命令であり、これらの描画命令によって、図3に示す描画領域300に、円オブジェクト301、円オブジェクト302、三角形オブジェクト303、直線オブジェクト304、直線オブジェクト305、曲線オブジェクト306がそれぞれ描画される。
図2において、210は、円オブジェクト301の形状を定義する命令、211は、円オブジェクト301の色を定義する命令、212は、円オブジェクト301を塗りつぶす命令である。また、213は、円オブジェクト302の形状を定義する命令、214は、円オブジェクト302の色を定義する命令、215は、円オブジェクト302を塗りつぶす命令である、また、220は、三角形オブジェクト303の形状を定義する命令、221は、三角形オブジェクト303の色を定義する命令、222は、三角形オブジェクト303を塗りつぶす命令である。また、223は、直線オブジェクト304の形状を定義する命令、224は、直線オブジェクト305の形状を定義する命令、225は、曲線オブジェクト306の形状を定義する命令、230は、画像データを1ページ分として出力することを指示する命令である。
図3において、311が円オブジェクト301の概形、312が円オブジェクト302の概形、313が三角オブジェクト303の概形、314が直線オブジェクト304の概形、315が直線オブジェクト305の概形、316が曲線オブジェクト306の概形である。
図4は、図1に示す画像形成装置によって行われる描画処理の手順を示すフローチャートである。以下、図3に示す描画オブジェクトおよび概形の例を参照しながら、本描画処理を説明する。
まず、ステップS401において、描画命令分割部101が描画データを読み込み、解釈を行う。この描画データは、例えば図2に示したPostScript言語で記述された描画データである。
ステップS401での描画データ解釈終了後、ステップS402に移り、描画命令分割部101は描画オブジェクトの概形を算出する。この概形の算出を、図2および図3に示す一例を参照して以下に説明する。
まず、図2に示す円オブジェクト301の描画命令200を解釈し、中心座標(80,220)および半径50である円オブジェクト301の取りうるX座標およびY座標の範囲を計算し、概形を求める。円オブジェクト301の概形は、図3の矩形領域311に相当する。この円オブジェクト301のX座標およびY座標の最小値は(X,Y)=(80−50,220−50)=(30,170)であり、最大値は(X,Y)=(80+50,220+50)=(130,270)である。
次に、円オブジェクト302の描画命令201を解釈し、同様の手法を用いて円オブジェクト302の概形312についても算出する。
次に、三角形オブジェクト303の描画命令202を解釈し、概形を計算する。すなわち最初に、moveto命令によってペン座標を(X,Y)=(80,60)に移動させる。ここから、lineto命令によって座標(X,Y)=(110, 140)、(200,90)、(80,60)に順に直線を引き、三角形を描く。このように、三角形オブジェクト303は直線から構成される図形であるので、描画命令分割部101は、描画命令202の解釈終了まで、描画オブジェクトの各頂点の最大値および最小値を単純に更新しつづけることで描画オブジェクトを包含する領域を特定することが可能である。ここでは、3つの頂点の座標から、X座標およびY座標の最小値は(X,Y)=(80,60)、最大値は(X,Y)=(200,140)であることが検出される。こうして得られる三角形オブジェクト303の概形は、図3に示す矩形領域313となる。
次に描画命令分割部101は、直線オブジェクト304の描画命令203を解釈する。直線オブジェクト304は、moveto命令によってペン座標を(X,Y)=(20,260)に移動させ、lineto命令によって座標(X,Y)=(70,310)に直線を引く。直線オブジェクトでは、始点、終点の座標値からX座標およびY座標の最小値、最大値が求められる。ここではX座標およびY座標の最小値は、(X,Y)=(20、260)、最大値は(X,Y)=(70、310)である。これによって、直線オブジェクト304の概形は、図3に示す矩形領域314となる。
次に直線オブジェクト305の描画命令204も同様に解釈され、直線オブジェクト305の概形は、図3に示す矩形領域315となる。
最後に、描画命令分割部101は、曲線オブジェクト306の描画命令205を解釈し、概形を計算する。ここでは最初に、ペンの座標を(X,Y)=(30,20)に移動させ、現在のペン座標と3つの座標(X,Y)=(50,80)、(100,40)、(90,20)との4制御点に基づきベジエ曲線を描く。ベジエ曲線は、各制御点のX座標およびY座標の最小値および最大値から、描画オブジェクトを包含する矩形領域を判定可能である。このベジエ曲線を含む領域は、座標(X,Y)=(30,20)、(100,80)で表される図3の矩形領域316となる。
このようにして各描画オブジェクトの概形が算出される。
なお、この概形の算出によって得られた描画オブジェクトごとのX座標およびY座標が共に最小となる点の座標値(min)と、共に最大となる点の座標値(max)とを、概形情報としてメモリ105に格納する。
図5は、メモリ105に格納された各概形の概形情報の一例を示す図である。
600〜605はそれぞれ、円オブジェクト301の概形311、円オブジェクト302の概形312、三角形オブジェクト303の概形313、直線オブジェクト304の概形314、直線オブジェクト305の概形315、曲線オブジェクト306の概形316に対応する。
図4に戻って、ステップS402で各描画オブジェクトの概形を算出した後、ステップS403では、メモリ105に格納された各概形の概形情報を用いて、概形の相互間に位置関係の重複が発生しているか否かを判定する。すなわち、メモリ105に格納された各概形の概形情報を参照して、X軸方向において同一の範囲内に互いの概形が存在するとともに、Y軸方向においても同一の範囲内に互いの概形が存在するか否かを判定する。その結果、2つの概形が、X軸方向およびY軸方向において、共に重なり合っているならば、これらの2つの概形の間に位置関係の重複が発生していると判定する。一方、2つの概形が、単にX軸方向またはY軸方向の一方で重なり合っているだけか、またはX軸方向でもY軸方向でも重なり合っていなければ、これらの2つの概形の間に位置関係の重複が発生していないと判定する。
図5に示す概形情報の一例では、三角形オブジェクト303の概形情報602と曲線オブジェクト306の概形情報605とにおいて、X軸方向の範囲はそれぞれ80〜200と30〜100となっており、X軸方向で重なり合いが発生している。さらにY軸方向の範囲はそれぞれ60〜140と20〜80となっており、Y軸方向でも重なり合いが発生している。したがって、三角形オブジェクト303の概形313と曲線オブジェクト306の概形316との間に位置関係の重複が発生していると判定される。
この判定の結果、三角形オブジェクト303と曲線オブジェクト306とは重なり合う可能性があり、交点演算を行わねばならない可能性がある。
ステップS403で概形の重複の判定を行った後、ステップS404に移り、描画データに含まれる描画命令を分割する。すなわち、ステップS403で概形の重複がないと判定された円オブジェクト301、円オブジェクト302、直線オブジェクト304、直線オブジェクト305に関しては、描画オブジェクトが互いに交わることはなく、交点演算が不要であるため、対応の描画命令200,201,203,204をそれぞれ分割する。これによって、各描画命令に対して同時に並列に描画処理を実行することが可能となる。
一方、ステップS403で概形が重複していると判定された三角形オブジェクト303と曲線オブジェクト306とに関しては、両描画オブジェクトの交点演算を行わねばならない可能性があるので、三角形オブジェクト303の描画命令202と曲線オブジェクト306の描画命令205とを分割することはできない。ただし、三角形オブジェクト303と曲線オブジェクト306とが、円オブジェクト301、円オブジェクト302、直線オブジェクト304、直線オブジェクト305のいずれとの間でも、重複していないため、三角形オブジェクト303の描画命令202と曲線オブジェクト306の描画命令205とを、他の描画命令200,201,203,204から分割し、並列に描画処理することは可能である。
よって、描画命令分割部101は、図2に示す入力描画データを、図6に示すような5つの描画命令に分割する。
図6は、ステップS404において分割された描画命令の例を示す図である。
すなわち、図2に示す入力描画データは、円オブジェクト301の描画命令200に対応する描画命令(グループ)501と、円オブジェクト302の描画命令201に対応する描画命令(グループ)502と、直線オブジェクト304の描画命令203に対応する描画命令(グループ)504と、直線オブジェクト305の描画命令204に対応する描画命令(グループ)505と、三角形オブジェクト303の描画命令202および曲線オブジェクト306の描画命令205に対応する描画命令(グループ)503とに分割される。
これらの5つの分割された描画命令に対して、互いに独立に描画処理を実行することができ、各描画処理結果は、他の描画処理結果によって影響されることはない。
なお、描画命令(グループ)503においては、三角形オブジェクト303の描画命令202と曲線オブジェクト306の描画命令205とを連結するようにし、これにより、描画命令の並び順序を再順序化(リオーダリング)した1つのPDLデータとして扱うことができる。
ステップS406に移り、未処理の描画命令が存在するか否かを判定する。例えば、ステップS404で描画データを分割して得られた描画命令(グループ)501−505のうち、描画処理が未だ行われていない描画命令が存在するか否かを判定し、存在するならばステップS407へ進み、すべての描画命令が処理済みであるならばステップS410へ進む。
描画命令分割部101は、図1に示す画像処理プロセッサ102,103,104の実行状況を監視しており、ステップS407では、それらの実行状況を確認する。
その確認の結果、ステップS408では、描画命令を処理していないアイドル状態にある画像処理プロセッサが存在するか否かを判別し、アイドル状態にある画像処理プロセッサが存在するならばステップS409へ進み、存在しないならばステップS407へ戻る。
ステップS409では、アイドル状態の画像処理プロセッサを選択し、ステップS406で未処理とされた描画命令を、該アイドル状態の画像処理プロセッサに割り当て、該画像処理プロセッサは、割り当てられた描画命令に従い描画処理を実行する。
ステップS406〜S409を繰り返し実行することで、例えば、ステップS404で描画データを分割して得られた描画命令501−505が、画像処理プロセッサ102,103,104にそれぞれ割り当てられ、画像処理プロセッサ102,103,104は、同時並列に描画処理を実行することになる。これにより、単一の画像処理プロセッサで描画処理するよりも、全体の描画処理に要する時間を短縮することができる。
なお、ステップS406〜S409を繰り返し実行することで、アイドル状態の画像処理プロセッサが存在しないときには、画像処理プロセッサが描画処理の実行を完了するまで待ち、いずれかの画像処理プロセッサがアイドル状態になると、該画像処理プロセッサに未処理の描画命令が割り当てられる。
未処理の描画命令が存在しなくなれば、ステップS410に進み、各画像処理プロセッサ102〜104での描画処理が終了するまで待機する。描画処理が完了した画像処理プロセッサは、ラスタ画像を出力するので、該出力によって、描画処理の完了を確認できる。
各画像処理プロセッサでの描画処理の完了を確認した後、ステップS411において、各画像処理プロセッサ102〜104が出力したラスタ画像の統合処理を行う。この統合処理は、入力された描画データを分割せずに描画処理した場合に得られる画像データと同等の画像データを生成するための処理である。
例えば、概形情報から、分割された描画命令による描画範囲を算出できるので、その描画範囲を表すアドレスにラスタ画像を出力するように、予め画像処理プロセッサに設定することでラスタ画像を統合することができる。また、画像処理プロセッサが任意のアドレスにラスタ画像を出力し、全体の描画画像(例えば図3の300相当)から、任意のアドレスに出力されたラスタ画像(例えば図3の311〜316相当)へリンクする処理を行ってもよい。また、CPU106が、任意のアドレスに出力されたラスタ画像を統合してもよい。
ステップS411において、統合処理が終了し、統合されたラスタ画像がメモリ105に格納されると、本描画処理が終了となる。
以上のように、本実施の形態では、まず、描画オブジェクトの概形情報より、複数の描画オブジェクトが相互間で重複していないことを確認する。こうしたことが確認された各描画オブジェクトに係る描画命令の相互間では依存関係がないので、こうした複数の描画命令を分割し、該分割された各描画命令を複数の画像処理プロセッサにそれぞれ割り当て、複数の画像処理プロセッサに同時並列に描画処理を実行させる。これにより、単一の画像処理プロセッサで描画処理するよりも、全体の描画処理に要する時間を短縮することができる。
〔他の実施の形態〕
また、本発明の目的は、上記の実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出して実行することによっても達成される。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
また、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。または、プログラムコードをネットワークを介してダウンロードしてもよい。
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOSなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も、本発明に含まれることは言うまでもない。
この場合、上記プログラムは、該プログラムを記憶した記憶媒体から直接、又はインターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続された不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
また、図1の画像処理プロセッサ102〜104で処理されメモリ105に記憶された画像データを、メモリ105から読み出し印刷するための電子写真方式やインクジェット方式のプリンタエンジンを画像形成装置に追加し、こうして構成された印刷装置を提供するようにしてもよい。
また、図1の画像処理プロセッサ102〜104で処理されメモリ105に記憶された画像データを、メモリ105から読み出し表示するための表示エンジンを画像形成装置に追加し、こうして構成された表示装置を提供するようにしてもよい。
本発明の一実施の形態に係る画像形成装置の構成を示すブロック図である。 図1に示す描画命令分割部に入力される描画データの一例を示す図である。 図2に示す描画データが表す描画オブジェクトおよび概形を示す図である。 図1に示す画像形成装置によって行われる描画処理の手順を示すフローチャートである。 メモリに格納された各概形の概形情報の一例を示す図である。 図4のステップS404において分割された描画命令の例を示す図である。
符号の説明
101 描画命令分割部(交差判定手段、グループ化手段、実行制御手段)
102、103、104 画像処理プロセッサ(描画処理装置)
105 メモリ
106 CPU
200 円オブジェクト描画命令
201 円オブジェクト描画命令
202 三角オブジェクト描画命令
203 直線オブジェクトの描画命令
204 直線オブジェクトの描画命令
205 曲線オブジェクトの描画命令
300 描画領域
301 円オブジェクト
302 円オブジェクト
303 三角形オブジェクト
304 直線オブジェクト
305 直線オブジェクト
306 曲線オブジェクト
600〜605 概形情報

Claims (19)

  1. 並列に描画処理が可能な複数の描画処理装置を備えた画像形成装置において、
    入力された描画データによって描画されるべき複数の描画オブジェクトに対して交差判定を行う交差判定手段と、
    前記交差判定手段によって交差すると判定された複数の描画オブジェクトを1つのオブジェクトグループとするとともに、他の描画オブジェクトと交差しないと判定された1つの描画オブジェクトを1つのグループとするグループ化手段と、
    前記グループ化手段によってグループ化された各オブジェクトグループにそれぞれ関連する描画命令を、オブジェクトグループごとに前記複数の描画処理装置にそれぞれ割り当て、対応する描画処理を並列実行させる実行制御手段と
    を有することを特徴とする画像形成装置。
  2. 前記交差判定手段は、
    前記複数の描画オブジェクトをそれぞれ包含する各オブジェクト包含領域を生成する領域生成手段と、
    前記領域生成手段によって生成された各オブジェクト包含領域における相互間の位置関係の重複を検出する検出手段と、
    前記検出手段によって重複が検出された複数のオブジェクト包含領域にそれぞれ対応する複数の描画オブジェクトは互いに交差すると判定する判定手段と
    を含むことを特徴とする請求項1記載の画像形成装置。
  3. 前記領域生成手段は、描画オブジェクトを表すX座標値およびY座標値の各最大値および各最小値から得られる矩形領域を、前記描画オブジェクトを包含するオブジェクト包含領域とすることを特徴とする請求項2記載の画像形成装置。
  4. 前記グループ化手段は、前記交差判定手段によって交差すると判定された複数の描画オブジェクトにそれぞれ関連する各描画命令を連結して描画命令の並び順序を整えることを特徴とする請求項1記載の画像形成装置。
  5. 並列に描画処理が可能な複数の描画処理装置を備えた画像形成装置に適用される描画処理方法において、
    入力された描画データによって描画されるべき複数の描画オブジェクトに対して交差判定を行う交差判定ステップと、
    前記交差判定ステップにおいて交差すると判定された複数の描画オブジェクトを1つのオブジェクトグループとするとともに、他の描画オブジェクトと交差しないと判定された1つの描画オブジェクトを1つのグループとするグループ化ステップと、
    前記グループ化ステップによってグループ化された各オブジェクトグループにそれぞれ関連する描画命令を、オブジェクトグループごとに前記複数の描画処理装置にそれぞれ割り当て、対応する描画処理を並列実行させる実行制御ステップと
    を有することを特徴とする描画処理方法。
  6. 前記交差判定ステップは、
    前記複数の描画オブジェクトをそれぞれ包含する各オブジェクト包含領域を生成する領域生成ステップと、
    前記領域生成ステップにおいて生成された各オブジェクト包含領域における相互間の位置関係の重複を検出する検出ステップと、
    前記検出手ステップにおいて重複が検出された複数のオブジェクト包含領域にそれぞれ対応する複数の描画オブジェクトは互いに交差すると判定する判定ステップと
    を含むことを特徴とする請求項5記載の描画処理方法。
  7. 前記領域生成ステップでは、描画オブジェクトを表すX座標値およびY座標値の各最大値および各最小値から得られる矩形領域を、前記描画オブジェクトを包含するオブジェクト包含領域とすることを特徴とする請求項6記載の描画処理方法。
  8. 前記グループ化ステップでは、前記交差判定ステップにおいて交差すると判定された複数の描画オブジェクトにそれぞれ関連する各描画命令を連結して描画命令の並び順序を整えることを特徴とする請求項5記載の描画処理方法。
  9. 並列に描画処理が可能な複数の描画処理装置を備えた画像形成装置に適用される描画処理方法を、コンピュータに実行させるためのプログラムにおいて、
    入力された描画データによって描画されるべき複数の描画オブジェクトに対して交差判定を行う交差判定ステップと、
    前記交差判定ステップにおいて交差すると判定された複数の描画オブジェクトを1つのオブジェクトグループとするとともに、他の描画オブジェクトと交差しないと判定された1つの描画オブジェクトを1つのグループとするグループ化ステップと、
    前記グループ化ステップによってグループ化された各オブジェクトグループにそれぞれ関連する描画命令を、オブジェクトグループごとに前記複数の描画処理装置にそれぞれ割り当て、対応する描画処理を並列実行させる実行制御ステップと
    を有することを特徴とするプログラム。
  10. 描画データを読み込み、オブジェクトの重複を判定する判定手段と、
    前記判定手段による判定結果に応じて、描画データを分割する分割手段と、
    前記分割手段により分割された描画データの描画処理を実行する複数のプロセッサと
    を有することを特徴とする画像形成装置。
  11. 前記分割手段は、重複しないオブジェクトがそれぞれ個別の描画命令となるように描画データを分割し、重複するオブジェクトが1つのグループの描画命令となるように描画データを分割することを特徴とする請求項10記載の画像形成装置。
  12. 描画データを読み込み、オブジェクトの重複を判定する判定ステップと、
    前記判定ステップによる判定結果に応じて、描画データを分割する分割ステップと、
    前記分割ステップにより分割された描画データの描画処理を複数のプロセッサに実行させるステップと
    を有することを特徴とする描画処理方法。
  13. 前記分割ステップは、重複しないオブジェクトがそれぞれ個別の描画命令となるように描画データを分割し、重複するオブジェクトが1つのグループの描画命令となるように描画データを分割することを特徴とする請求項12記載の描画処理方法。
  14. 描画データを読み込み、オブジェクトの重複を判定する判定ステップと、
    前記判定ステップによる判定結果に応じて、描画データを分割する分割ステップと、
    前記分割ステップにより分割された描画データの描画処理を複数のプロセッサに実行させるステップと
    をコンピュータに実行させるプログラム。
  15. 前記分割ステップは、重複しないオブジェクトがそれぞれ個別の描画命令となるように描画データを分割し、重複するオブジェクトが1つのグループの描画命令となるように描画データを分割することを特徴とする請求項14記載のプログラム。
  16. 描画データを読み込み、オブジェクトの重複を判定する判定手段と、
    前記判定手段による判定結果に応じて、描画データを分割する分割手段と、
    前記分割手段により分割された描画データの描画処理を実行する複数のプロセッサと、
    前記複数のプロセッサで描画処理された画像データを印刷する印刷手段と
    を有することを特徴とする印刷装置。
  17. 前記分割手段は、重複しないオブジェクトがそれぞれ個別の描画命令となるように描画データを分割し、重複するオブジェクトが1つのグループの描画命令となるように描画データを分割することを特徴とする請求項16記載の印刷装置。
  18. 描画データを読み込み、オブジェクトの重複を判定する判定手段と、
    前記判定手段による判定結果に応じて、描画データを分割する分割手段と、
    前記分割手段により分割された描画データの描画処理を実行する複数のプロセッサと、
    前記複数のプロセッサで描画処理された画像データを表示する表示手段と
    を有することを特徴とする表示装置。
  19. 前記分割手段は、重複しないオブジェクトがそれぞれ個別の描画命令となるように分割し、重複するオブジェクトが1つのグループの描画命令となるように描画データを分割することを特徴とする請求項18記載の表示装置。
JP2005155743A 2005-05-27 2005-05-27 画像形成装置、印刷装置、表示装置、描画処理方法、及びプログラム Expired - Fee Related JP4614389B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005155743A JP4614389B2 (ja) 2005-05-27 2005-05-27 画像形成装置、印刷装置、表示装置、描画処理方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005155743A JP4614389B2 (ja) 2005-05-27 2005-05-27 画像形成装置、印刷装置、表示装置、描画処理方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2006331191A true JP2006331191A (ja) 2006-12-07
JP2006331191A5 JP2006331191A5 (ja) 2008-07-10
JP4614389B2 JP4614389B2 (ja) 2011-01-19

Family

ID=37552802

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005155743A Expired - Fee Related JP4614389B2 (ja) 2005-05-27 2005-05-27 画像形成装置、印刷装置、表示装置、描画処理方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP4614389B2 (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007094758A (ja) * 2005-09-29 2007-04-12 Canon Inc 画像処理装置および画像処理装置の制御方法および記憶媒体
JP2009260575A (ja) * 2008-04-15 2009-11-05 Konica Minolta Business Technologies Inc 画像処理方法、画像処理プログラム、および画像処理装置
JP2009285891A (ja) * 2008-05-27 2009-12-10 Canon Inc 画像形成装置及び画像形成システム
US20100245887A1 (en) * 2009-03-30 2010-09-30 Nguyen Uoc H Methods and Systems for Rendering Data
US20100245918A1 (en) * 2009-03-30 2010-09-30 Nguyen Uoc H Methods and Systems for Rendering Data
JP2010238236A (ja) * 2009-03-30 2010-10-21 Sharp Corp 印刷システムおよび印刷システムの制御方法
JP2011016317A (ja) * 2009-07-10 2011-01-27 Konica Minolta Business Technologies Inc 画像処理装置、ハードウェアアクセラレータ及び画像処理方法
US8339672B2 (en) 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data using graphic-list partitions and associated rendering processors
US8339653B2 (en) 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data based on overlap characteristics
US8339671B2 (en) 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data by partitioning a graphics list
US8411319B2 (en) 2009-03-30 2013-04-02 Sharp Laboratories Of America, Inc. Methods and systems for concurrent rendering of graphic-list elements
US20180260930A1 (en) * 2013-03-14 2018-09-13 Microsoft Technology Licensing, Llc Graphics Processing using Multiple Primitives

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6580944B2 (ja) 2015-10-29 2019-09-25 理想科学工業株式会社 画像形成装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991015831A1 (en) * 1990-04-05 1991-10-17 Seiko Epson Corporation Page description language interpreter
JPH09185721A (ja) * 1995-12-28 1997-07-15 Fuji Xerox Co Ltd 画像形成装置
JPH1040360A (ja) * 1996-07-26 1998-02-13 Fuji Xerox Co Ltd 命令解析装置
JPH1115986A (ja) * 1997-06-25 1999-01-22 Fuji Xerox Co Ltd 画像形成装置
JPH1131052A (ja) * 1997-07-14 1999-02-02 Fuji Xerox Co Ltd 文書処理システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991015831A1 (en) * 1990-04-05 1991-10-17 Seiko Epson Corporation Page description language interpreter
JPH09185721A (ja) * 1995-12-28 1997-07-15 Fuji Xerox Co Ltd 画像形成装置
JPH1040360A (ja) * 1996-07-26 1998-02-13 Fuji Xerox Co Ltd 命令解析装置
JPH1115986A (ja) * 1997-06-25 1999-01-22 Fuji Xerox Co Ltd 画像形成装置
JPH1131052A (ja) * 1997-07-14 1999-02-02 Fuji Xerox Co Ltd 文書処理システム

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4724517B2 (ja) * 2005-09-29 2011-07-13 キヤノン株式会社 画像処理システムおよび画像処理方法およびプログラムおよび記憶媒体
JP2007094758A (ja) * 2005-09-29 2007-04-12 Canon Inc 画像処理装置および画像処理装置の制御方法および記憶媒体
JP2009260575A (ja) * 2008-04-15 2009-11-05 Konica Minolta Business Technologies Inc 画像処理方法、画像処理プログラム、および画像処理装置
JP2009285891A (ja) * 2008-05-27 2009-12-10 Canon Inc 画像形成装置及び画像形成システム
US8368907B2 (en) 2008-05-27 2013-02-05 Canon Kabushiki Kaisha Image forming apparatus and image forming system
US8339653B2 (en) 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data based on overlap characteristics
JP2010238236A (ja) * 2009-03-30 2010-10-21 Sharp Corp 印刷システムおよび印刷システムの制御方法
US8339672B2 (en) 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data using graphic-list partitions and associated rendering processors
US20100245918A1 (en) * 2009-03-30 2010-09-30 Nguyen Uoc H Methods and Systems for Rendering Data
US8339670B2 (en) 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data based on graphic-list partitioning
US8339671B2 (en) 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data by partitioning a graphics list
US20100245887A1 (en) * 2009-03-30 2010-09-30 Nguyen Uoc H Methods and Systems for Rendering Data
US8411319B2 (en) 2009-03-30 2013-04-02 Sharp Laboratories Of America, Inc. Methods and systems for concurrent rendering of graphic-list elements
JP2011016317A (ja) * 2009-07-10 2011-01-27 Konica Minolta Business Technologies Inc 画像処理装置、ハードウェアアクセラレータ及び画像処理方法
US20180260930A1 (en) * 2013-03-14 2018-09-13 Microsoft Technology Licensing, Llc Graphics Processing using Multiple Primitives

Also Published As

Publication number Publication date
JP4614389B2 (ja) 2011-01-19

Similar Documents

Publication Publication Date Title
JP4614389B2 (ja) 画像形成装置、印刷装置、表示装置、描画処理方法、及びプログラム
US7747077B2 (en) Image processing apparatus, image processing method, and image processing program
JP5336067B2 (ja) グラフィックスを処理する方法および装置
JP4885904B2 (ja) 画像処理方法、画像処理プログラム、および画像処理装置
JP3474078B2 (ja) 描画処理装置
JP6385406B2 (ja) 画像処理装置、画像処理方法、及びプログラム
TW201439667A (zh) 電子束描繪裝置、電子束描繪方法及記錄媒體
JP2009134620A (ja) 描画装置、描画プログラムおよび描画方法
JP2817687B2 (ja) 画像形成装置
US20130027402A1 (en) 2d region rendering
JP2006289642A (ja) 画像形成装置、画像形成方法、及び印刷装置
JP3871011B2 (ja) 情報処理装置および情報処理方法
JP6590606B2 (ja) 画像処理装置、画像処理方法、プログラム
JP2007122188A (ja) 画像形成装置及び画像処理方法、並びにプログラム
JP2007237510A (ja) 画像形成装置、並びに当該装置で実行される画像形成方法及び画像形成プログラム
JPH1011593A (ja) 画像形成装置
JP6226604B2 (ja) ディスプレイリストを生成する装置、方法、プログラム
JP5687612B2 (ja) 画像形成装置
EP4362057A1 (en) Electron beam rendering device, electron beam rendering method, and recording medium
JP4764730B2 (ja) 画像形成装置及び画像形成方法
JPH10151815A (ja) 印刷処理装置
JP2006092125A (ja) 画像処理装置、画像処理方法、プログラムおよび記憶媒体
JPH11232473A (ja) 印刷処理装置
JPH11227266A (ja) 印刷処理装置および印刷処理方法
JP2017081033A (ja) 画像形成装置

Legal Events

Date Code Title Description
RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20070626

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080526

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080526

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100202

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100405

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100426

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100720

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100921

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

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

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees