JP5316269B2 - 画像処理装置、ハードウェアアクセラレータ及び画像処理方法 - Google Patents
画像処理装置、ハードウェアアクセラレータ及び画像処理方法 Download PDFInfo
- Publication number
- JP5316269B2 JP5316269B2 JP2009163222A JP2009163222A JP5316269B2 JP 5316269 B2 JP5316269 B2 JP 5316269B2 JP 2009163222 A JP2009163222 A JP 2009163222A JP 2009163222 A JP2009163222 A JP 2009163222A JP 5316269 B2 JP5316269 B2 JP 5316269B2
- Authority
- JP
- Japan
- Prior art keywords
- hardware accelerator
- data
- areas
- drawing area
- comprehensive
- 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
Links
Images
Description
処理の高速化を実現できない理由としては、画像処理を行うとき、画像形成装置のメモリとハードウェアアクセラレータ内のローカルメモリとの間で大量のデータの入出力を伴うことにより、画像形成装置のメモリとハードウェアアクセラレータ内のローカルメモリとの間におけるデータ転送量が増大し、データ転送にかかる時間が長大化して処理速度が低下するためである。
コストの低減を図れない理由としては、前述の画像形成装置のメモリとハードウェアアクセラレータ内のローカルメモリとの間における大量のデータの入出力を行うために、ハードウェアアクセラレータ内のローカルメモリを大容量とする必要が生じるためである。大容量のローカルメモリを有するハードウェアアクセラレータは高価であり、ハードウェアアクセラレータを用いることによるコストの低減を相殺してしまう。
請求項11に記載の発明は、請求項10に記載の画像処理方法であって、前記中間言語データに基づいて、前記描画処理を行う範囲を示す描画領域を求め、複数の前記描画領域の相関に基づいて前記包括描画領域を生成する処理を前記ハードウェアアクセラレータのみが行うことを特徴とする。
請求項12に記載の発明は、請求項10又は11に記載の画像処理方法であって、前記描画領域は、前記描画処理を行うために最低限必要な範囲を含む矩形領域であることを特徴とする。
請求項13に記載の発明は、請求項10から12のいずれか一項に記載の画像処理方法であって、前記ハードウェアアクセラレータによる前記描画処理は前記第2の方向に沿った複数ライン単位であることを特徴とする。
請求項14に記載の発明は、請求項10から12のいずれか一項に記載の画像処理方法であって、前記ハードウェアアクセラレータによる前記描画処理は前記第2の方向に沿ったライン単位であることを特徴とする。
図1は、本発明による画像処理装置を有する画像形成装置1を含むネットワーク構成図である。
回線3は、画像形成装置1、1、1及びコンピュータ2、2によるネットワークを構成する。回線3は、コンピュータ2、2及び画像形成装置1、1、1を通信可能に接続するものであればその形態を問わない。例えば、回線3は、イーサネット(登録商標)、同軸ケーブル、光ファイバー等の有線接続回線や、無線通信を実現するための各種規格等、そのいずれか又は複数の組み合わせによってよい。また、回線3は、LAN(Local Area Network)、インターネット、その他のネットワーク規模を問わない。
コンピュータ2、2はそれぞれ、CPU11、RAM12、ROM13、ストレージデバイス14、入力インタフェース(I/F)15、出力I/F16及び通信装置17を有する。CPU11、RAM12、ROM13、ストレージデバイス14、入力インタフェース(I/F)15、出力I/F16及び通信装置17は、バス20により接続される。
画像形成装置1は、CPU21、RAM22、ROM23、ストレージデバイス24、入力I/F25、画像印刷部26、通信装置27及びハードウェアアクセラレータ28を備える。CPU21、RAM22、ROM23、ストレージデバイス24、入力I/F25、画像印刷部26、通信装置27及びハードウェアアクセラレータ28は、バス30により接続される。
ハードウェアアクセラレータ28は、ローカルメモリ28Aを有する。ハードウェアアクセラレータ28は、データの読み出しや描画処理において、ローカルメモリ28Aの記憶領域を用いて処理を行う。
図4は、画像形成装置1による画像処理の工程及び機能の一例を示す機能ブロック図である。
まず、コンピュータ2からプリントジョブが送信される(図4の31)。
プリントジョブはネットワーク50を介して転送され、画像形成装置1のネットワーク受信処理部51によって受信される(図4の32)。ネットワーク50は、回線3によるコンピュータ2と画像形成装置1との通信接続により構築される。ネットワーク受信処理部51は、画像形成装置1の通信装置27による機能である。
解析処理部52は、解析処理によって生成したDLデータ61をメモリ54へ格納する(図4の34)。本実施形態におけるメモリ54は、RAM22の記憶領域を指す。
本実施形態において、DL61データに基づく描画処理は、ハードウェアアクセラレータ28によって行われる。なお、所定範囲の描画領域とは、例えば所定サイズ(例えばA4)の用紙1ページ分を複数のバンド単位で区切った場合の1バンド分の描画領域等を指す。
プリントジョブによる印刷内容が複数ページに亘る場合、ページ数に応じて解析処理以降の処理が繰り返される。
図5及至図7は、ハードウェアアクセラレータ28による描画処理の仕組みを示す概念説明図である。
図5は、ハードウェアアクセラレータ28がDLデータ61及び印字データ62のうち描画領域Fに対応する部分をメモリ54からローカルメモリ28Aへコピーする処理を示す概念説明図である。
図6は、ハードウェアアクセラレータ28がDLデータ61に基づくオブジェクト81、82を描画する処理を示す概念説明図である。
図7は、ハードウェアアクセラレータ28から出力された描画領域Fのデータがメモリ54の印字データ62へ反映される処理を示す概念説明図である。
図5及至図7では、描画処理部53の記載を省略している。図5及至図7では、DLデータ61を「DL」と記載している。
ラスタライズ処理において、描画処理部53は、所定範囲(例えば1バンド分)の描画領域に対応する印字データ62をメモリ54にあらかじめ格納し、管理する。ハードウェアアクセラレータ28は、DLデータに基づいて描画領域を求めると、メモリ54において格納、管理されている印字データ62のうち描画領域に対応する部分をコピーする。
図8は、1バンド分の描画内容の一例を示す説明図である。
図9は、図8に示す描画内容を示すDLデータ61に基づいて求められた描画領域の一例を示す説明図である。
本実施形態では、同一ライン上に2以上のオブジェクトがある場合、同一ライン上において隣接する二の描画領域の分断の有無及び分断された複数の描画領域間の距離に基づいて隣接する二のオブジェクトを個別に扱うか否かが決定される。
例えば、図8に示すオブジェクト81の描画領域E1とオブジェクト82の描画領域E2は互いの一部分において重なるよう配置されている。ハードウェアアクセラレータ28は、このような描画領域の一部又は全部が重なる複数の描画領域を統合する。その結果、図9に示す描画領域Fのように、複数のオブジェクトの描画領域を含む一の包括描画領域が生成される。
例えば、図8に示すオブジェクト84〜93は、それぞれ他のオブジェクトの描画領域から分断された個別の描画領域E4〜E13を有している。このとき、オブジェクト84〜93について、隣接する描画領域間の距離(図8に示す距離L1〜L9)は全て所定の距離L以下である。ハードウェアアクセラレータ28は、このような隣接する描画領域間の距離が所定の距離L以下である複数の描画領域を包括する新たな描画領域を生成する。その結果、図9に示す描画領域F3のように、複数のオブジェクトの描画領域を含む一の包括描画領域が生成される。
仮に新たな包括描画領域に包括される複数の描画領域を個々に処理する場合、それぞれの描画領域についてメモリ54において格納、管理されている印字データ62のうち描画領域に対応する部分をコピーする処理や、描画処理を完了した描画領域をローカルメモリ28Aからメモリ54に書き戻す処理等を行うこととなる。このとき、個々のコピー命令や書き戻し命令に伴うオーバーヘッドの累計が膨大となることにより、オーバーヘッドの処理時間の累積が膨大となり、データ転送に要する時間が長くなってしまう場合がある。これに対して、複数の描画領域を包括する包括描画領域を一の描画処理単位とすることで、個々のコピー命令や書き戻し命令に伴うオーバーヘッドを大幅に削減することができる。つまり、包括描画領域に包括される個々の描画領域間に含まれる描画処理に関係のない範囲を含むことにより増加したデータ量を転送するのに要する時間よりも、個々のコピー命令や書き戻し命令に伴うオーバーヘッドにより増加する処理時間を含めたデータ転送時間の方が大きくなる場合、複数の描画領域を包括する包括描画領域を生成することでメモリ54とローカルメモリ28A間のデータ転送量を低減させることができる。
分断された三以上の描画領域を一の包括描画領域として処理する場合、まず、ライン上において最も左に位置する描画領域と、その描画領域に隣接する描画領域とを一の包括描画領域とする処理を行う。その後、ライン上において最も左に位置する描画領域とその描画領域に隣接する描画領域とを統合した描画領域と、その描画領域に隣接する描画領域とを一の包括描画領域とする処理を行う。以降、一の包括描画領域として処理する描画領域のうちライン上で最も右の描画領域を統合するまで同様の処理を繰り返す。
図10は、ラスタライズ処理におけるハードウェアアクセラレータ28の処理の流れを示すフローチャートである。
まず、ハードウェアアクセラレータ28は、描画処理部53から入力されたメモリアドレスに基づいてDLデータ61をローカルメモリ28Aにコピーする(ステップS1)。次に、ハードウェアアクセラレータ28は、ステップS1においてローカルメモリ28Aにコピーした全てのDLデータ61について、各DLデータ61に基づくオブジェクトを描画するための矩形の描画領域を求める(ステップS2)。
ステップS3では、例えば図8に示すオブジェクト71の描画領域E1とオブジェクト72の描画領域E2のように、複数のオブジェクトの描画領域が重複している場合に重複している描画領域を含む最低限必要な描画領域(例えば図9に示す描画領域F等)を求める処理を行う。
図11は、図10のステップS4に示す、最適な描画領域を求める処理の流れを示すフローチャートである。
まず、ハードウェアアクセラレータ28は、処理対象となるライン上に所定の数N以上の分断された描画領域があるか否かを判定する(ステップS11)。本実施形態では、所定の数N=2である。所定の数Nは2に限らず、任意の値を設定することができる。
ステップS8において、描画処理部53から入力されたメモリアドレスに対応する全てのDLデータ61について描画処理を完了した場合(ステップS8:YES)、ハードウェアアクセラレータ28は処理を終了する。
例えば、複数の描画領域が分断していない、即ち重複していたり連続していたりする場合には、当該複数の描画領域を一括して処理するために複数の描画領域を包括する包括描画領域とすることで、個々の描画領域のコピー命令や書き戻し命令に伴うオーバーヘッドを低減させることができる。
例えば、複数の描画領域間の距離が大きく離れているにも関らず複数の描画領域を包括する包括描画領域とした場合、複数の描画領域間の不要な描画領域をもローカルメモリ28Aに記憶しなければならなくなる。そこで、このような場合には、複数の描画領域を個々の描画領域として処理することにより、ローカルメモリ28Aに要求される記憶容量を必要最低限とすることができる。
ライン単位で描画処理を行う場合、ローカルメモリ28Aの記憶容量は一ライン上に存在するオブジェクト分のDLデータ61及び一ライン分の描画領域をコピー、格納するための容量があればよく、バンド単位で描画処理を行う場合に比して大幅に少なく済む。このため、ライン単位で描画処理を行う場合、バンド単位で描画処理を行う場合に比してローカルメモリ28Aの記憶容量を小さく済ませることができ、ハードウェアアクセラレータ28のコストをより低減させることができる。
22 RAM
23 ROM
24 ストレージデバイス
28 ハードウェアアクセラレータ
61 DLデータ
62 印字データ
Claims (14)
- 中間言語データに基づいて印刷用のデータを生成する画像処理装置であって、1ページ分の画像を第1の方向に沿って複数のバンドに区切り、バンド単位で印刷用のデータを生成する画像処理装置において、
前記中間言語データを読み出して前記印刷用のデータを生成するための描画処理を行うハードウェアアクセラレータと、
前記中間言語データ及び前記印刷用のデータを格納するメモリと、
前記メモリにおける前記中間言語データのメモリアドレスを前記ハードウェアアクセラレータへ入力する制御部と、を備え、
少なくとも前記ハードウェアアクセラレータ又は前記制御部のいずれか一方は、前記中間言語データに基づいて、前記描画処理を行う範囲に対応する描画領域を求め、複数の前記描画領域の相関に基づいて複数の前記描画領域を包括する包括描画領域を生成し、
前記ハードウェアアクセラレータは、前記包括描画領域ごとに印刷用のデータを生成し、当該生成した印刷用のデータを前記包括描画領域ごとに前記メモリに転送し、
少なくとも前記ハードウェアアクセラレータ又は前記制御部のいずれか一方は、前記包括描画領域を生成する際に、前記描画領域の一部又は全部が重なる複数の前記描画領域を統合するとともに、前記第1の方向に沿った複数の前記描画領域の分断の有無は判断せずに前記第1の方向とは異なる第2の方向に沿った複数の前記描画領域の分断の有無を判断し、当該分断された複数の前記描画領域間の、前記第2の方向に沿った距離が所定の距離以下であった場合に分断された複数の前記描画領域を包括する前記包括描画領域を生成することを特徴とする画像処理装置。 - 前記中間言語データに基づいて、前記描画処理を行う範囲を示す描画領域を求め、複数の前記描画領域の相関に基づいて前記包括描画領域を生成する処理を前記ハードウェアアクセラレータのみが行うことを特徴とする請求項1に記載の画像処理装置。
- 前記描画領域は、前記描画処理を行うために最低限必要な範囲を含む矩形領域であることを特徴とする請求項1又は2に記載の画像処理装置。
- 前記ハードウェアアクセラレータによる前記描画処理は前記第2の方向に沿った複数ライン単位であることを特徴とする請求項1から3のいずれか一項に記載の画像処理装置。
- 前記ハードウェアアクセラレータによる前記描画処理は前記第2の方向に沿ったライン単位であることを特徴とする請求項1から3のいずれか一項に記載の画像処理装置。
- ハードウェアアクセラレータに対して外部に設けられたメモリに格納された中間言語データの、メモリアドレスに基づいて中間言語データを読み出して印刷用のデータを生成するための描画処理を行うハードウェアアクセラレータであって、1ページ分の画像を第1の方向に沿って複数のバンドに区切り、バンド単位で印刷用のデータを生成するハードウェアアクセラレータにおいて、
前記中間言語データに基づいて、前記描画処理を行う範囲に対応する描画領域を求め、複数の前記描画領域の相関に基づいて複数の前記描画領域を包括する包括描画領域を生成し、当該包括描画領域ごとに印刷用のデータを生成し、当該生成した印刷用のデータを前記包括描画領域ごとに前記メモリに転送し、前記包括描画領域を生成する際に、前記描画領域の一部又は全部が重なる複数の前記描画領域を統合するとともに、前記第1の方向に沿った複数の前記描画領域の分断の有無は判断せずに前記第1の方向とは異なる第2の方向に沿った複数の前記描画領域の分断の有無を判断し、当該分断された複数の前記描画領域間の、前記第2の方向に沿った距離が所定の距離以下であった場合に分断された複数の前記描画領域を包括する前記包括描画領域を生成することを特徴とするハードウェアアクセラレータ。 - 前記描画領域は、前記描画処理を行うために最低限必要な範囲を含む矩形領域であることを特徴とする請求項6に記載のハードウェアアクセラレータ。
- 前記ハードウェアアクセラレータによる前記描画処理は前記第2の方向に沿った複数ライン単位であることを特徴とする請求項6又は7に記載のハードウェアアクセラレータ。
- 前記ハードウェアアクセラレータによる前記描画処理は前記第2の方向に沿ったライン単位であることを特徴とする請求項6又は7に記載のハードウェアアクセラレータ。
- ハードウェアアクセラレータとメモリと制御部とを備え、中間言語データに基づいて印刷用のデータを生成する画像処理装置における画像処理方法であって、1ページ分の画像を第1の方向に沿って複数のバンドに区切り、バンド単位で印刷用のデータを生成する画像処理方法において、
前記制御部が、前記中間言語データが格納された前記メモリ上のメモリアドレスを前記ハードウェアアクセラレータへ入力する工程と、
前記ハードウェアアクセラレータが、入力された前記メモリアドレスに基づいて前記中間言語データを読み出して前記印刷用のデータを生成するための描画処理を行う工程と、
少なくとも前記ハードウェアアクセラレータ又は前記制御部のいずれか一方が、前記中間言語データに基づいて、前記描画処理を行う範囲に対応する描画領域を求め、複数の前記描画領域の相関に基づいて複数の前記描画領域を包括する包括描画領域を生成する生成工程と、
前記ハードウェアアクセラレータが、前記包括描画領域ごとに印刷用のデータを生成し、当該生成した印刷用のデータを前記包括描画領域ごとに前記メモリに転送する工程と、を含み、
少なくとも前記ハードウェアアクセラレータ又は前記制御部のいずれか一方が、前記生成工程において、前記描画領域の一部又は全部が重なる複数の前記描画領域を統合するとともに、前記第1の方向に沿った複数の前記描画領域の分断の有無は判断せずに前記第1の方向とは異なる第2の方向に沿った複数の前記描画領域の分断の有無を判断し、当該分断された複数の前記描画領域間の、前記第2の方向に沿った距離が所定の距離以下であった場合に分断された複数の前記描画領域を包括する前記包括描画領域を生成することを特徴とする画像処理方法。 - 前記中間言語データに基づいて、前記描画処理を行う範囲を示す描画領域を求め、複数の前記描画領域の相関に基づいて前記包括描画領域を生成する処理を前記ハードウェアアクセラレータのみが行うことを特徴とする請求項10に記載の画像処理方法。
- 前記描画領域は、前記描画処理を行うために最低限必要な範囲を含む矩形領域であることを特徴とする請求項10又は11に記載の画像処理方法。
- 前記ハードウェアアクセラレータによる前記描画処理は前記第2の方向に沿った複数ライン単位であることを特徴とする請求項10から12のいずれか一項に記載の画像処理方法。
- 前記ハードウェアアクセラレータによる前記描画処理は前記第2の方向に沿ったライン単位であることを特徴とする請求項10から12のいずれか一項に記載の画像処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009163222A JP5316269B2 (ja) | 2009-07-10 | 2009-07-10 | 画像処理装置、ハードウェアアクセラレータ及び画像処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009163222A JP5316269B2 (ja) | 2009-07-10 | 2009-07-10 | 画像処理装置、ハードウェアアクセラレータ及び画像処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011016317A JP2011016317A (ja) | 2011-01-27 |
JP5316269B2 true JP5316269B2 (ja) | 2013-10-16 |
Family
ID=43594496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009163222A Expired - Fee Related JP5316269B2 (ja) | 2009-07-10 | 2009-07-10 | 画像処理装置、ハードウェアアクセラレータ及び画像処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5316269B2 (ja) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10260801A (ja) * | 1997-03-19 | 1998-09-29 | Hitachi Ltd | 情報処理装置および情報処理方法 |
JP2006166224A (ja) * | 2004-12-09 | 2006-06-22 | Canon Inc | 版ずれ補正制御方法及びその装置、ならびにそれらを記憶する記憶媒体 |
JP4614389B2 (ja) * | 2005-05-27 | 2011-01-19 | キヤノン株式会社 | 画像形成装置、印刷装置、表示装置、描画処理方法、及びプログラム |
JP4646703B2 (ja) * | 2005-05-30 | 2011-03-09 | キヤノン株式会社 | 画像処理装置及びその制御方法、プログラム |
JP4471386B2 (ja) * | 2006-02-20 | 2010-06-02 | キヤノン株式会社 | 画像処理装置および地紋付き画像の生成方法 |
-
2009
- 2009-07-10 JP JP2009163222A patent/JP5316269B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011016317A (ja) | 2011-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4543340B2 (ja) | 画像処理装置および画像形成システムとプログラム | |
JP2019165503A (ja) | 印刷データ処理装置及びプログラム | |
JP5920670B2 (ja) | 画像形成装置及び印刷制御プログラム並びに印刷制御方法 | |
JP5171461B2 (ja) | 情報処理装置および情報処理方法並びに情報処理システム及びプログラム | |
JP2012234454A (ja) | 画像形成装置、画像形成装置の制御方法およびコンピュータプログラム | |
JP4396670B2 (ja) | 画像形成装置、画像形成方法及びプログラム | |
US20120013938A1 (en) | Image processing device, hardware accelerator, and image processing method | |
JP6202908B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP6135329B2 (ja) | 印刷データ処理装置、プログラム、及びシステム | |
JP6008115B2 (ja) | 印刷装置、印刷システム | |
JP2011257972A (ja) | 画像処理装置、プログラム及び画像処理方法 | |
JP2006235855A (ja) | 画像形成装置、画像処理装置、プログラムおよび画像処理方法 | |
JP5316269B2 (ja) | 画像処理装置、ハードウェアアクセラレータ及び画像処理方法 | |
JP6904717B2 (ja) | 画像処理装置、その制御方法、およびプログラム | |
JP7408914B2 (ja) | 印刷システム、情報処理装置及びデータ処理方法 | |
JP5929689B2 (ja) | プレビュー画像生成装置、プレビュー画像生成方法およびコンピュータープログラム | |
JP2011143576A (ja) | 印刷データ生成装置、画像形成装置及びプログラム | |
JP4877331B2 (ja) | 画像処理装置、プログラム及びデータ処理方法 | |
JP2004303077A (ja) | 情報処理装置及びページ記述言語生成方法、プログラム及び記憶媒体 | |
JP6492895B2 (ja) | 印刷データ処理装置及びプログラム | |
US20170300789A1 (en) | Image processing apparatus, image processing method, and non-transitory computer-readable medium | |
JP5640545B2 (ja) | 情報処理装置およびプログラム | |
JP5966805B2 (ja) | 印刷のための制御装置 | |
JP2010171597A (ja) | 画像処理装置 | |
JP5800217B2 (ja) | レンダリング方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120619 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120820 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20120820 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121002 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130326 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20130416 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130517 |
|
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: 20130611 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130624 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5316269 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |