JP5317641B2 - 画像処理方法及び画像処理装置ならびに該画像処理方法を実行するためのプログラム - Google Patents

画像処理方法及び画像処理装置ならびに該画像処理方法を実行するためのプログラム Download PDF

Info

Publication number
JP5317641B2
JP5317641B2 JP2008293938A JP2008293938A JP5317641B2 JP 5317641 B2 JP5317641 B2 JP 5317641B2 JP 2008293938 A JP2008293938 A JP 2008293938A JP 2008293938 A JP2008293938 A JP 2008293938A JP 5317641 B2 JP5317641 B2 JP 5317641B2
Authority
JP
Japan
Prior art keywords
pdl
processing
rip
display list
data
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
JP2008293938A
Other languages
English (en)
Other versions
JP2010120196A5 (ja
JP2010120196A (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 JP2008293938A priority Critical patent/JP5317641B2/ja
Priority to US12/610,613 priority patent/US8379262B2/en
Publication of JP2010120196A publication Critical patent/JP2010120196A/ja
Publication of JP2010120196A5 publication Critical patent/JP2010120196A5/ja
Application granted granted Critical
Publication of JP5317641B2 publication Critical patent/JP5317641B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/28Indexing scheme for image data processing or generation, in general involving image processing hardware

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Record Information Processing For Printing (AREA)

Description

本発明は、画像処理方法及び画像処理装置ならびに該画像処理方法を実行するためのプログラムに関する。特に、PDL処理とRIP処理の負荷分散の制御方法を有する画像処理方法及び画像処理装置ならびに該画像処理方法を実行するためのプログラムに関するものである。
ここで、PDL処理とは、頁記述言語(Page Description Language)を解析してディスプレイリストを生成する処理である。また、RIP処理とは、ラスタイメージプロセッサ(Raster Image Processor)でディスプレイリストをビットマップデータに展開する処理である。
複数のCPUを使用する、これまでの印刷処理におけるPDL処理とRIP処理の並列処理やパイプライン処理においては、負荷の偏りとして、
(1) RIP処理時に描画領域により負荷の偏りが発生する、
(2) PDL処理とRIP処理に負荷の偏りが発生する、
といったものがあげられる。
それらの結果、並列処理を行ったとしても遅い方の処理に律速してしまい、最適な並列処理やパイプライン処理が行われない問題がある。
このような問題の解決策として、下記のような提案がなされている。
(1)に対応する解決策として、特許文献1では、入力されたPDLデータからDLを生成する際に、PDLデータから各描画領域の処理の負荷を予測して負荷補正値を生成する。そして、負荷が均等になるように複数の描画処理部へ描画領域の担当範囲を割り当てることによって、問題の解決を図っていた。
(2)に対応する解決案として、特許文献2では、各プロセッサの描画処理をビットマップまで展開した処理(ビットマップ展開)とするか、描画パラメータ(ベクター情報)の更新のみの処理(空描画)とするかを選択する。この処理によって、複数のプロセッサへの描画処理の負荷分散を行うという提案がなされている。
特開平10−52950 特開2005−63027
しかしながら、上述した従来の技術では、以下のような問題が生じていた。
まず、特許文献1では、DLを生成する際に同時に補正値を生成しているが、この補正値の生成自体がオーバーヘッドになり、印刷処理全体のパフォーマンスを落とす可能性がある。単純なデータの場合、そのオーバーヘッドもそれほど大きくないが、複雑なデータになればなるほど補正値の生成に時間がかかると予想される。また、PDL処理やRIP処理を行うCPUの個数が複数だった場合のCPUの割り当てには言及がされておらず、正確な処理時間の予測が出来ない問題がある。
一方、特許文献2では、同じPDLデータを複数のプロセッサ(CPU)で並列にインタプリタ処理する為、無駄な処理(結果的に描画されないページの空描画:PDL処理も行われる)が発生します。また、特許文献2では、PDL処理を行う際にデータを保持するメモリ領域が各プロセッサ(CPU)毎に必要となるためメモリ使用量が多くなる。
本発明は、上記問題点に鑑み、PDL処理とRIP処理の負荷のバランスを高速かつ容易にとることが出来る、効率的なパイプライン処理を実現する画像処理方法及び画像処理装置ならびに該画像処理方法を実行するプログラムを提供する。
また、PDL処理ではビットマップ展開されていないDLを生成して、RIP処理に使用するメモリ量を少なく抑えることが出来る画像処理方法及び画像処理装置ならびに該画像処理方法を実行するためのプログラムを提供する。
上記の問題を解決するために、本発明の画像処理方法は、ページ記述言語(PDL)で記述されたPDLデータからディスプレイリストを生成し、該ディスプレイリストをレンダリングしてビットマップデータを生成する画像処理方法であって、決定手段が、PDLデータからディスプレイリストを生成するPDL処理の開始に先だって、前記PDL処理とディスプレイリストをレンダリングしてビットマップデータを生成するRIP処理の負荷を均等とするために、前記PDL処理で重なり除去済みのディスプレイリストを生成するか、あるいは重なり除去を行っていないディスプレイリストを生成するかを決定する決定工程と、前記決定工程で重なり除去を行っていないディスプレイリストの生成が決定された場合は、前記PDL処理で重なり除去を行っていないディスプレイリストを生成し、前記RIP処理で前記重なり除去を行っていないディスプレイリストを基にビットマップデータを生成する第1のビットマップデータ展開工程と、前記決定工程で重なり除去済みのディスプレイリストの生成が決定された場合は、前記PDL処理で重なり除去済みのディスプレイリストを生成し、前記RIP処理で前記重なり除去済みのディスプレイリストを基にビットマップデータを生成する第2のビットマップデータ展開工程とを有することを特徴とする。
また、上記画像処理方法の各工程をコンピュータに実行させるためのプログラム、及び該プログラムを記憶したコンピュータで読み取り可能な記憶媒体を提供する。
また、本発明の画像処理装置は、ページ記述言語(PDL)で記述されたPDLデータからディスプレイリストを生成し、該ディスプレイリストをレンダリングしてビットマップデータを生成する画像処理装置であって、前記PDLデータからディスプレイリストを生成するPDL処理で重なり除去を行っていないディスプレイリストを生成し、前記RIP処理で前記重なり除去を行っていないディスプレイリストを基にビットマップデータを生成する第1のビットマップデータ展開手段と、前記PDL処理で重なり除去済みのディスプレイリストを生成し、前記ディスプレイリストをレンダリングしてビットマップデータを生成するRIP処理で前記重なり除去済みのディスプレイリストを基にビットマップデータを生成する第2のビットマップデータ展開手段と、前記PDLデータへの前記PDL処理の開始に先だって、前記PDL処理とRIP処理の負荷を均等とするために前記PDL処理で前記重なり除去済みのディスプレイリストと前記重なり除去を行っていないディスプレイリストの生成を決定する決定手段とを有することを特徴とする。
また、本発明の画像処理装置は、ページ記述言語(PDL)で記述されたPDLデータからディスプレイリストを生成するPDL処理部と、前記PDL処理部により生成されたディスプレイリストをレンダリングしてビットマップデータを生成するRIP処理部と前記PDL処理部の能力と前記RIP処理部の能力と前記RIP処理部の処理待ち状態に応じて、前記PDL処理部に、重なり除去済みのディスプレイリストを生成させるか、記重なり除去われていないディスプレイリストを生成させるか、を決定し、なり除去われていないディスプレイリストが前記PDL処理部によって生成された場合、前記RIP処理部に、該重なり除去われていないディスプレイリストを基にビットマップデータを生成させ、なり除去済みのディスプレイリストが前記PDL処理部によって生成された場合、前記RIP処理に、該重なり除去済みのディスプレイリストを基にビットマップデータを生成させる制御手段とを有することを特徴とする。
本発明においては、PDL処理において、次ぎの条件に従ってレベル処理を行わない(レベル情報の残った)DLを生成するか、レベル処理済みの(レベル情報の除去された)DLを生成するかを切り替える。切り替える条件は、PDL処理及びRIP処理のキューにたまっている処理待ちデータの数と、PDL処理またはRIP処理を行うことが可能なCPUの個数とである。
この結果、PDL処理とRIP処理の負荷のバランスを高速かつ容易にとることができ、効率的なパイプライン処理を実現することが出来る。
また、PDL処理を行う際にデータを保持する領域は1つですむので、メモリ量を少なく抑えることが出来る。
以下、本発明を実施するための最良の実施形態について、添付図面を参照して詳細に説明する。
[実施形態1]
<本実施形態の画像処理装置の構成>
本実施形態を適用するに好適な1Dカラー系MFP(Multi Function Peripheral:マルチファンクション周辺機器)の構成例について、図1を用いて説明する。
1Dカラー系MFPは、原稿露光部101、レーザ露光部102、感光ドラム103a、作像部103、定着部104、給紙/搬送部195、及び、これらを制御する不図示のプリンタ制御部から構成される。
原稿露光部101は、原稿台に置かれた原稿に対して照明を当てて原稿画像を光学的に読み取り、その像を電気信号に変換して画像データを作成する。
レーザ露光部102は、前記画像データに応じて変調されたレーザ光などの光線を等角速度で回転する回転多面鏡(ポリゴンミラー)に入射させ、反射走査光として感光ドラム103aに照射する。
作像部103は、感光ドラム103aを回転駆動し、帯電器によって帯電させ、前記レーザ露光部102によって感光ドラム103a上に形成された潜像をトナーによって現像化し、そのトナー像をシートに転写する。その際に転写されずに感光ドラム103a上に残った微小トナーを回収するといった一連の電子写真プロセスを実行して作像する。
その際、シートが転写ベルトの所定位置に巻きつき、4回転する間に、マゼンタ(M)、シアン(C)、イエロー(Y)、ブラック(K)のトナーを持つそれぞれの現像ユニット(現像ステーション)が入れ替わる。そして、順次前述の電子写真プロセスを繰り返し実行する。4回転の後、4色のフルカラートナー像を転写されたシートは、転写ドラムを離れ、定着部104へ搬送される。
定着部104は、ローラやベルトの組み合わせによって構成され、ハロゲンヒータなどの熱源を内蔵し、前記作像部103によってトナー像が転写されたシート上のトナーを、熱と圧力によって溶解して定着させる。
給紙/搬送部105は、シートカセットやペーパーデッキに代表されるシート収納庫を1つ以上持っている。給紙/搬送部105は、不図示のプリンタ制御部の指示に応じて、シート収納庫に収納された複数のシートの中から1枚分離し、作像部103から定着部104へ搬送する。シートは、作像部103の転写ドラムに巻きつけられ、4回転した後に定着部104へ搬送される。4回転する間に前述のYMCK各色のトナー像がシートに転写される。また、シートの両面に画像形成する場合は、定着部104を通過したシートを再度作像部103へ搬送する搬送経路を通るように制御する。
不図示のプリンタ制御部は、MFP全体を制御するMFP制御部と通信して、その指示に応じて制御を実行する。同時に、前述の原稿露光、レーザ露光、作像、定着、給紙/搬送の各部の状態を管理しながら、全体が調和を保って円滑に動作できるよう指示を行う。
<プリンタ制御部のハードウエア構成例>
図2は、本実施形態におけるMFPのプリンタ制御部(コントローラ)のハードウエア構成例を示すブロック図である。
図2において、プリンタ制御部200は、画像入力デバイスであるスキャナ201や画像出力デバイスであるプリンタエンジン202と接続し、画像データの読み取りやプリント出力のための制御を行う。また、プリンタ制御部200は、LAN_N1や公衆回線204と接続することで、画像情報やデバイス情報をLAN_N1経由で入出力するための制御を行う。
CPU205は、MFP全体を制御するための中央処理装置である。RAM206は、CPU205が動作するためのシステムワークメモリであり、入力された画像データを一時記憶するための画像メモリでもある。さらに、ROM207はブートROMであり、システムのブートプログラムが格納されている。HDD208はハードディスクドライブであり、各種処理のためのシステムソフトウェア及び入力された画像データを等格納する。PDL処理部203は、入力されたページ記述言語(以下、PDL)データを解析し、CPU205の指示に従ってレベル処理をしないディスプレイリスト(以下、DL)とレベル処理済みのDLとを切り替えて、DLを生成する。CPU205の指示は、後述のように、RAM206やHDD208に記憶されたPDL処理とRIP処理のキューの数や、PDL処理とRIP処理に割り当てられたCPUの数により切り替えられる。
操作部I/F209は、画像データ等を表示可能な表示画面を有する操作部210に対するインタフェース部であり、操作部210に対して操作画面データを出力する。また、操作部I/F209は、操作部210から操作者が入力した情報をCPU205に伝える役割をする。ネットワークインタフェース211は、例えばLANカード等で実現され、LAN_N1に接続して外部装置との間で情報の入出力を行う。さらに、モデム212は公衆回線204に接続し、外部装置との間で情報の入出力を行う。
以上のユニットがシステムバス213上に配置されている。イメージバスI/F214は、システムバス213と画像データを高速で転送する画像バス215とを接続するためのインタフェースであり、データ構造を変換するバスブリッジである。
画像バス215上には、ラスタイメージプロセッサ(RIP処理部)216、デバイスI/F217、スキャナ画像処理部218、プリンタ画像処理部219が接続される。また、画像編集用画像処理部220、頁メモリ221、カラーマネージメントモジュール230が接続される。RIP処理部216は、DLのベクトルデータをイメージに展開して、頁メモリ221に一次記憶する。
デバイスI/F部217は、スキャナ201やプリンタエンジン202とプリンタ制御部200とを接続し、画像データの同期系/非同期系の変換を行う。
また、スキャナ画像処理部218は、スキャナ201から入力した画像データに対して、補正、加工、編集等の各種処理を行う。プリンタ画像処理部219は、プリント出力する画像データに対して、プリンタエンジンに応じた補正、解像度変換等の処理を行う。画像編集用画像処理220は、画像データの回転や、画像データの圧縮伸長処理等の各種画像処理を行う。CMM230は、画像データに対して、プロファイルやキャリブレーションデータに基づいた、色変換処理(色空間変換処理ともいう)を施す専用ハードウェアモジュールである。プロファイルとは、機器に依存した色空間で表現したカラー画像データを機器に依存しない色空間(例えばLabなど)に変換するための関数のような情報である。キャリブレーションデータとは、カラー複合機3におけるスキャナ201やプリンタエンジン202の色再現特性を修正するためのデータである。
<プリンタ制御部のソフトウェア構成例>
図3は、MFPの動作を制御するプリンタ制御部のソフトウェアの構成例を示すブロック図である。図3で、頁メモリ(RAM)206やドキュメント記憶部(HDD)208を除く各部は、CPU205あるいはPDL処理やRIP処理を行う複数のCPUによるソフトウエア処理により実現される。図3で図2と同様の機能を果たす構成要素は、同じ参照番号で示している。
ネットワークI/F211は、外部との入出力のためのインタフェースである。プロトコル制御部301は、ネットワークプロトコルを解析して送信することによって外部との通信を行う制御部である。
PDL処理部203は、PDLデータを解析し、より処理しやすい形式のDLに変換する処理部である。PDL処理部203において生成されたDLは、データ描画部(RIP処理部)216に渡されて処理される。RIP処理部303は、PDL処理部203で生成されたDLをビットマップデータに展開するものであり、展開されたビットマップデータは頁メモリ221に逐次描画されて行く。頁メモリ221はレンダラが展開するビットマップデータを一次的に保持する揮発性のメモリである。
パネル入出力制御部305は、操作パネルからの入出力を制御するものである。ドキュメント記憶部306はデータファイルを記憶するハードディスク等の二次記憶装置である。スキャン制御部307は、スキャナ201から入力した画像データに対して、補正、加工、編集などの各種処理を行う。印刷制御部308は、頁メモリ221の内容をビデオ信号に変換処理し、プリンタエンジン202へ画像転送を行なう。プリンタエンジン202は、受け取ったビデオ信号を記録紙に永久可視画像形成するための印刷機構部である。
<本実施形態の画像処理の機能構成例>
図4は、本実施形態のプリンタ制御部での画像処理の機能構成例を示す図である。図4で図2や図3と同じ構成要素は、同じ参照番号で示している。以下、画像データの流れに従って説明する。
図4の401は、外部からのPDLデータを受信するPDLデータ受信部である。PDLデータ受信部401で受信されたPDLデータは、順にPDL処理待ちキュー404にキューイングされる。PDL処理待ちキュー404にキューイングされたPDLデータは、ファーストイン・ファーストアウト(FIFO)でPDL処理部203に読み出されて、PDL処理部203の複数のCPUで並列処理される。この時に、PDL処理切替部403において、PDL処理部203で重なり除去を行うか否かが決定されて、重なり除去処理フラグとしてPDL処理部203に通知される。
ここで、重なり除去処理フラグは、PDL処理待ちキュー404の待ちキュー数、後述のPDL処理部405で動作可能なCPU数、RIP処理待ちキュー406の待ちキュー数、RIP処理部で動作可能なCPU数、に従って決定される。なお、本実施形態では、キュー数とCPU数として単純化しているが、キュー数は負荷量を示す一例であり、CPU数は処理量を示す一例に過ぎない。さらに多用な条件を考慮すれば、より正確な負荷量と処理量とが算出可能であり、キュー数とCPU数に限定されない。本発明は、かかる負荷量と処理量とに基づいてPDL処理で重なり除去を行うか否かを切り替えることが、特徴ある構成である。
PDL処理部203で重なり除去処理フラグに従って処理された、重なり除去済みのDLあるいは重なり除去を行わないDLは、RIP処理待ちキュー406に重なり除去処理フラグと共にキューイングされる。なお、重なり除去処理フラグでなくDL内に重なり除去か否かを記憶させ、RIP処理部407が処理前にDLを解析して判断する構成であってもよい。
RIP処理待ちキュー406のDLは、ファーストイン・ファーストアウト(FIFO)でRIP処理部216に読み出されて、重なり除去か否かに従ってRIP処理部216の複数のCPUで並列にビットマップデータに展開処理される。RIP処理部216で展開処理されたビットマップデータは、頁メモリ221に一時記憶され、1頁の画像形成のためプリンタエンジン202に出力される。
(本実施形態の画像処理に必要なデータ及びプログラム例)
図5は、本実施形態のプリンタ制御部が画像処理に必要とするデータ及びプログラム例を示す図である。なお、図5には、本実施形態に特徴的なデータ及びプログラムのみを示し、他の汎用的なデータ及びプログラムは省かれている。また、図5で図2と同じ構成要素は、同じ参照番号で示している。
図5で、RAM206には以下のデータが一時記憶される。206aは、画像メモリの記憶領域であり、受信されたPDLデータが一時記憶される。206bは、PDL処理において重なり除去を行うか否かを決める重なり除去処理フラグの記憶領域である。かかる記憶領域206aに記憶されているPDLデータが後述のPDL処理待ちキュー208aにキューイングされる。206cは、PDL処理部で使用可能なCPU数とRIP処理で使用可能なCPU数を記憶するCPUの数の記憶領域である。206dは、PDL処理部の処理を待っているキュー数とRIP処理を待っているキュー数を記憶する各処理の待ちキューの数の記憶領域である。
図5で、HDD208には以下のデータ及びプログラムが格納される。208aは、PDL処理部203でDLを生成するためのPDLデータをFIFO方式で格納するPDL処理待ちキューである(図4の404参照)。208bは、RIP処理部216でDLからビットマップデータを展開するための重なり除去処理フラグ付きDLをFIFO方式で格納するRIP処理待ちキューである(図4の406参照)。また、208cは、以下の図13Aに示すフローチャートに従うPDL処理切替プログラムを格納する領域である。かかるPDL処理切替プログラムはRAM206にロードされてCPU205により実行される。
図5で、頁メモリ221にはRIP処理部216で展開されたビットマップデータ221aが一時記憶される。
<本実施形態のプリンタ制御部のデータ処理例>
次に、重なり除去を行っていないDLと重なり除去済みDLの生成、及びDLからのビットマップデータの生成における、PDL処理部とRIP処理部の負荷について、図6A及び図6Bに基づいて説明する。本実施形態では、図6A及び図6Bのように、PDL処理部とRIP処理部の負荷が異なる2つのビットマップデータ展開を準備して、この2つのビットマップデータ展開を負荷が均等隣るように割り当てる。なお、図2乃至図5と同様の構成要素には、同じ参照番号を付加している。
なお、PDLデータによるプリントとは、PC(Personal Computer)上のアプリケーションソフトから印刷を指示した場合に、PC上のプリンタドライバによって生成されたPDLデータを受け取って出力する、プリンタ動作のことである。
(重なり除去を行っていないDLの生成:第1のビットマップデータ展開)
図6Aは、重なり除去を行っていないDLを生成する場合のプリンタ制御部でのデータフローを示している。
受信したPDLデータは、PDL処理待ちキュー404にキューイングされた後、まず、PDL処理部203でPDLデータ解析処理D701によって解析される。次に、頁の先頭からスキャンラインごとにエッジの交差点を抽出するエッジ処理D702を行う。エッジ処理D702が終了した時点でPDL処理部202から出力されるデータは、重なり除去を行っていないDLである。重なり除去を行っていないDLは、RIP処理待ちキュー406にキューイングされる。
次に、RIP処理部216において、重なり除去を行っていないDLを入力データとし、レベル処理D703を行う。レベル処理D703では、エッジ処理D702で抽出した交差点間(スパンと言う)に含まれる塗りつぶし部分(フィルと言う)が持つレベル情報を基に、データを最上位から最下位に向かってデータをソートする。そして、上位レベルにより隠される不必要なデータを除去する。次に、コンポジット処理D704を行う。コンポジット処理とは、ソート処理が終わったフィルが持つ重ね合わせ情報(ラスタオペレーションや透過処理)を基に複数のフィルを最終的に1つのフィルにする処理のことである。最後に、ピクセル生成処理D705においてエッジ処理D702で算出したスパン分のピクセルを生成する処理を行い、ビットマップデータが展開される。ビットマップデータは頁メモリ221に一時記憶されプリンタエンジン202に転送され、最終的に紙上に画像が出力される。
(重なり除去済みのDLの生成:第2のビットマップデータ展開)
次に、図6Bは、重なり除去済みのDLを生成する場合のプリンタ制御部でのデータフローを示している。
重なり除去されていないDL生成のデータフローと異なる点は、エッジ処理D707に引き続き、レベル処理D708及びコンポジット処理D709もPDL処理部203で行うことにより、重なり除去済みのDLが生成される点である。その結果、PDL処理部203からRIP処理待ちキュー406に出力されるDLが重なり除去済みDLであるので、RIP処理部216ではそのままピクセル生成処理D710を行うだけで、ビットマップデータが生成できる。
図6A及び図6Bを比較すると、その負荷の大小が明らかである。すなわち、図6AのようにPDL処理で重なり除去を行っていないDLを生成する場合は、レベル処理とコンポジット処理の無いPDL処理の負荷が小さく、レベル処理とコンポジット処理が追加されたRIP処理の負荷が大きくなる。一方、図6BのようにPDL処理で重なる除去済みのDLを生成する場合は、レベル処理とコンポジット処理が必要なPDL処理の負荷が大きく、レベル処理とコンポジット処理の無いピクセル生成処理だけのRIP処理の負荷が小さくなる。
<DLのデータ構造例>
次に、図7A及び図7Bを用いて、重なり除去を行っていないDLと重なり除去済みDLの構造について、説明を行う。図7A及び図7Bでは、左側の絵が最終的に出力されるイメージであり、真ん中と右側がDLにどのような状態でデータが含まれているかを示している。
(重なり除去を行っていないDLの構成例)
図7Aは、重なり除去を行っていないDLのデータ構成例である。
重なり除去を行っていないDLでは、犬の絵の上下の透過グラデーション部分について、ビットマップと透過グラデーションの合成されたビットマップになってない。その代わり、透過重ね合わせ情報801からグラデーション802とビットマップ803とがリンクされている構造になっている。また、グラデーションも、実際のビットマップではなく、スタートの色、エンドの色、幅など、グラデーションの定義という形で生成されたDL中に含まれている。
(重なり除去済みのDLの構成例)
一方、図7Bは、重なり除去済みDLのデータ構成例である。
重なり除去済みDLでは、ビットマップとグラデーションとが透過で重ね合わされた後のビットマップとして生成されたDLに含まれているので、レベルが2つ以上存在することはない。また、グラデーションもビットマップの状態になったものが生成されたDLに含まれている。
ここでいうレベルとは、DLに含まれるオブジェクトが持つ上下関係のことで、各オブジェクトは一意のレベル番号(No)を持つ。処理中のスキャンラインに複数のオブジェクトが重なったときは、レベルNoが大きいオブジェクトの方が上にくる。レベル処理では、処理中のスキャンラインのオブジェクトが1つの場合、重ね合わせ処理を行う必要がないので、そのオブジェクトのフィルがそのままレンダリングされる。しかし、2つ以上ある場合、そのオブジェクトの上下関係をレベルNoを基に算出し、さらに重ね合わせ情報を基に重ね合わせ処理を行う必要がある。最終的に出力されるオブジェクトは、重ね合わせ処理後のフィルが出力される。
<重ね合わせ情報の重なり除去とレンダリングの例>
ここで、重なり情報801、802、803がどのようにレンダリングされるかを説明する。
図8の161、162はそれぞれDLに含まれる情報で、161は、ビットマップと重ね合わせられるグラデーションの透過情報を示す。162は、透過情報と重ね合わせられるビットマップ情報を示す。
透過情報161を基に、DLに含まれる幅高の大きさで、フィル情報(Fill Info)に含まれる色から色(この場合は透過値)へ変わるように1ピクセルずつ透過を表わすビットマップ163を生成していく。図8では、黒が透過“0”%、白が透過“100”%である。また、ビットマップ情報162を基にオブジェクト画像のビットマップ164が生成される。透過を表わすビットマップ163とオブジェクト画像のビットマップ164とは、1ピクセルずつ透過情報161に含まれる重ね合わせ情報を基に重ね合わせの計算が行われる。その結果、重なり除去済みのビットマップ165が生成される。
本説明では、ビットマップとグラデーションとの重ね合わせだったため、それぞれビットマップ展開していた。しかし、一面塗りつぶし同士の重ね合わせの場合は、ビットマップ展開する必要はなく、1ピクセルのみの重ね合わせの計算を行えばよい。
<PDL処理/RIP処理と他処理におけるCPUの関係>
図9において、PDL処理/RIP処理において使用するCPU数の例について説明する。
前述したように、プリント処理は、PDLデータからDLを生成するPDL処理203とDLを展開してビットマップを生成するRIP処理216とに分けられる。各処理を行うために割り当てられたCPUの個数はシステム構成によって決められるが、図9の上段の例1においては、PDL処理に2個のCPU、RIP処理に2個のCPUが割り当てられているとする。
ところで、MFPでは、プリント処理以外にも、コピー、FAX、スキャンなどの処理が並列に動作することが考えられる。そのため、プリント処理とその他の処理がCPUを共有する場合、図9の下段の例2のように、RIP処理216に2個割り当てられていたCPUのうち、1つのCPUがFAX処理1001に利用されることが考えられる。その結果、図9の上段の例1に比べて、下段の例2ではRIP処理216の能力が半分になったと考えることができる。
なお、本例では、利用可能な(処理を実行可能な)CPUの個数の変化は、ある頁のRIP処理が終了してから他の頁のPDL処理が開始される前に発生し、同じ頁のPDL処理とRIP処理との間に使えるCPUの個数が変化することは考えていない。また、本例では、煩雑をさけるため各CPUの能力は同等と仮定しているので、PDL処理とRIP処理でのCPUの処理能力は単純にCPUの個数に影響される。
しかしながら、各処理で使用可能なCPUの個数や、他の処理が動作した場合にどのCPUを利用するかは、上記例に限定されない。かかるCPUの割り当て数は、CPU205によりRAM206のCPUの数206cを使って管理される。また、CPUの処理能力が同等でない場合には、個数のみで処理能力を判断するのでなく、CPUの能力も含めて判断する。更に、PDL処理及びRIP処理の能力はメモリ容量などにも影響されるので、メモリ空容量などの他のパラメータも考慮に入れてPDL処理における重なリ除去の有無を判断してもよい。
<DLのつくり分けの判断の具体例>
図10及び図11を使って、PDL処理における重なリ除去の有無の2種類のDLの生成の判断についての具体的な説明を行う。
かかる判断は、PDL処理待ちキュー404とRIP処理待ちキュー406にたまっているデータを、現在のPDL処理とRIP処理で使用可能なCPUで処理した場合、どちらが全てのデータを早く処理し終われるかという基準で行う。PDL処理が早く終わると予測された場合、PDL処理の負荷が大きいなるように、PDL処理待ちキュー404から読み出してPDL処理するPDLデータからは、重なり除去済みDLを生成するように指示する。一方、RIP処理の方が早く終わると予測された場合、RIP処理の負荷が大きくなるように、PDL処理待ちキュー404から読み出してPDL処理するPDLデータからは、重なり除去を行っていないDLを生成するように指示する。
(重なリ除去を行うと判断する状況例)
図10は、PDL処理もRIP処理もCPUが1個で、4頁の印刷中、1〜3頁はイメージデータ、4頁目はグラフィックデータである場合の例を示す。図10中、“S”は重なり除去の処理データを示し、“M”は重なり除去を行わない処理データを示す。
本例では、同じCPUの個数なので、単純にキューにたまっているデータが多い方の処理負荷が大きいと判断する。その結果、先頭頁のPDL処理開始時点では、PDL処理の負荷が大きいので、図10の上段のように、PDL処理の負荷が軽い重なり除去を行っていないDLの生成を指示する。1〜3頁は、そのまま重なり除去を行っていないDLの生成が指示される。
4頁目のPDL処理開始時点では、図10の下段のように、先頭頁がRIP処理部216で処理されているが、重なり除去を行っていないDL(1M)なのでRIP処理部216の負荷は大きい。そのため、RIP処理待ちキュー406には既にPDL処理部203で生成された重なり除去を行っていないDL(2M,3M)がスプールされている。
ここで、4頁目のPDL処理における重なり除去の有無を判断する。PDL処理部203の負荷は、4頁目がグラフィックデータであるので、レベル処理を行うとかなり大きいと予測される。しかしながら、RIP処理部216は現在先頭頁のビットマップデータへの展開を行っており、更にRIP処理待ちキュー406には2つの重なり除去を行っていないDL(2M,3M)がキューイングされている。PDL処理部203とRIP処理部216の処理能力は、CPUの数から考慮すると同等であるので、RIP処理部216の負荷がより大きいと判断する。
その結果、4頁目のPDL処理においては重なり除去を行うように指示する。なお、かかる判断例は、上述のように、CPUの能力や他の条件(例えば、メモリ容量など)によって変わり得る。また、重なり除去(レベル処理)をPDL処理中に行う場合と、RIP処理中に行う場合の処理速度やメモリ使用量などの違いがある場合などは、それらも判断の条件となり得る。
(重なリ除去を行わないと判断する状況例)
図11は、PDL処理がCPU1個、RIP処理がCPU2個で、属性に変化のない6頁の印刷を行う例を示す。図11中、“S”は重なり除去の処理データを示し、“M”は重なり除去を行わない処理データを示す。
まず、先頭頁のPDL処理開始時点では、PDL処理の負荷が大きいので、図11の上段のように、PDL処理の負荷が軽い重なり除去を行っていないDLの生成を指示する。1〜4頁は、そのまま重なり除去を行っていないDLの生成が指示される。
図11の5頁目のPDL処理開始時点では、図11の下段のように、PDL処理待ちキュー403には5,6頁の2頁がキューイングされている。一方、RIP処理待ちキュー406にたまっている頁数は、重なり除去を行っていないDL(3M,4M)である。従って、頁数だけでは両処理の負荷は同じであるが、RIP処理に使用できるCPUの個数がPDL処理の2倍なので処理能力も2倍とみなす。従って、PDL処理は1CPU当たり2頁、RIP処理は1CPU当たり1頁となり、PDL処理の方が負荷が大きい状態であると判断する。その結果、PDL処理部203には負荷の軽い重なり除去を行っていないDLの生成が指示される。
なお、本例においても、CPUの能力の違いや、重なり除去を行っていないDLと重なり除去済みのDLの展開の負荷の違いなどは考慮せずに、条件をキューイング数とCPU数に単純化している。
<実施形態1の処理手順例>
図12A乃至図12Cのフローチャートを参照して、実施形態1のPDL処理とRIP処理の負荷分散について、その処理手順を説明する。
(CPU205によるPDL処理での重なり除去の有無の指示)
図12Aは、CPU205が実行するPDL処理の重なり除去の有無の指示の手順例を示すフローチャートである。
CPU205は、ステップS1001においてPDLデータを待って、受信したPDLデータ206aを受け付け、PDL処理待ちキュー404にキューイングする。次に、CPU205は、ステップS1002において、PDL処理部203でDL生成を開始する時点の、PDL処理待ちキュー404とRIP処理待ちキュー406にたまっているデータの頁数を取得する。次に、CPU205は、ステップS1003において、DL生成を開始する時点の、PDL処理とRIP処理それぞれに使用可能なCPUの個数を取得する。次に、CPU205は、ステップS1004において、ステップS1002とS1003で取得したデータを基に、その時点でPDL処理とRIP処理から負荷の大きい処理を判別する。なお、上記データの頁数の取得及びCPUの個数の取得を第1の取得という。
次に、CPU205は、ステップS1004の判別を基に、ステップS1005において生成するDLを重なり除去を行っていないDLとするか、重なり除去済みDLとするかを決定する。次に、CPU205は、ステップS1006において、PDL処理部203に今からPDL処理するPDLデータから生成されるDLのDLタイプ((図4では、重なり除去処理フラグ:重なり除去を行っていないDLか、重なり除去済みDLか)を指示する。
なお、図12Aでは、煩雑さを避けるため、PDl処理部203でDL生成を開始する時点のタイミングが明瞭に図示されていない。実際には、PDL処理待ちキュー404へのキューイングと、PDl処理部203でのDL生成の開始とは非同期で行われる。かかる非同期の処理は、図12Aから容易に変形が可能である。
(PDL処理部のCPUによる処理)
図12Bは、PDL処理部のCPUが実行する処理の手順例を示すフローチャートである。
まず、PDL処理部のCPUはステップS1007で、PDL処理待ちキュー404から先頭のPDLデータを読み出すと共にCPU205からのDLタイプを受信する。次に、PDL処理部のCPUはステップS1008で、DLタイプに基づいて、重なり除去を行っていないDLの生成か、重なり除去済みDLの生成かを判断する。
重なり除去を行っていないDLの生成の場合(S1008のYes)、PDL処理部のCPUはステップS1009で重なり除去を行っていないDLを生成する。一方、重なり除去済みDLの生成の場合(S1008のNo)、PDL処理部のCPUはステップS1010で重なり除去済みDLを生成する。PDL処理部のCPUはステップS1011で、生成されたDLをRIP処理待ちキュー406にキューイングする。
(RIP処理部のCPUによる処理)
図12Cは、RIP処理部のCPUが実行する処理の手順例を示すフローチャートである。
まず、RIP処理部のCPUはステップS1012で、RIP処理待ちキュー406から先頭のDLをDLタイプと共に読み出す。次に、RIP処理部のCPUはステップS1013で、読み出したDLに基づいてDLタイプに従ってDLのレンダリングを行う。RIP処理部のCPUはステップS1014で、ステップS1013で展開されたビットマップデータを頁メモリ221に出力する。

<実施形態1の作用効果>
(メモリ使用量の低減)
特許文献2等の従来例では、PDL処理を行う際にデータを保持するメモリ領域が各プロセッサ(CPU)毎に必要となるが、本実施形態によれば、PDL処理を行う際にデータを保持する領域は1つですむ。すなわち、本実施形態のように、PDL処理とRIP処理のいずれかで重なり除去を行う切り替え(レベルでの負荷分散)を行えば、メモリ使用量が少なくなる。
(CPUへの負荷の低減)
特許文献2等の従来例では、同じPDLデータを複数のプロセッサ(CPU)で並列にインタプリタ処理する為、無駄な処理(結果的に描画されないページの空描画:PDL処理も行われる)が発生する。しかし、本実施形態では、PDL処理はあくまでも1回で、CPUの個数に応じて変わるのは計算速度などであり、CPUへの負荷が低減される。
(負荷分散による処理速度の改善)
図13Aは、特許文献2のビットマップ展開と空描画との切り替え(上段)と、PDL処理とRIP処理の固定化による処理(下段の2つ)とのビットマップデータ展開の処理速度を示す図である。図13Bは、本実施形態の各処理のCPUが1個の場合の重なり除去処理の分散(上段)と、各処理のCPUが2個の場合の重なり除去処理の分散(下段)とのビットマップデータ展開の処理速度を示す図である。
なお、図13A及び図13Bでは、比較のため、同じ属性の4頁のデータを処理する例を示し、1頁の処理を5コマ(内訳は、PDL処理2コマ、レベル処理など1コマ、RIP処理2コマ)と仮定した場合の例する。
図13Aの上段は、従来技術である特許文献1に従った処理である。CPU(プロセッサ)を3個(P1〜P3)有し、各プロセッサはビットマップ展開かベクター情報を生成するのみの空描画(PDL処理のみと仮定した)かを選択して、並列処理を行う例である。
各プロセッサは、5コマのビットマップ展開と2コマのPDL処理のみとを選択し、最初に対象頁の処理を開始したプロセッサのみが5コマのビットマップ展開し、他のプロセッサは2コマのPDL処理のみで次ぎの頁の処理に移る。かかる処理手順で4頁をビットマップ展開する時間は、14コマの時間に相当する。
図13Aの下段の2つは、上図がPDL処理で重なり除去済みのDLを生成するよう固定した場合の例であり、下図がPDL処理で重なり除去を行わないDLを生成するよう固定した場合の例である。かかる例では、本実施形態のように、処理の途中で重なり除去処理(レベル処理、コンポジット処理)がPDL処理とRIP処理との分散されることはない。
いずれの場合も、5コマの内の2コマがPDL処理部とRIP処理部とで並列処理されるのみで、ビットマップ展開するには共に14コマの時間を要する。
これに対して、図13Bには、本実施形態による重なり除去をPDL処理部とRIP処理部のいずれで行うかを制御する方法による4頁のビットマップ展開に要する時間を示す。
図13Bの上段は、PDL処理部とRIP処理部のいずれもがCPUが1個の場合の例、図13Bの下段は、PDL処理部とRIP処理部のいずれもがCPUが2個の場合の例である。
図13Bの上段では、1頁から3頁ではPDL処理部で重なり除去を行わないDLを生成するが、4頁目にはRIP処理部の負荷が大きくなるためPDL処理部で重なり除去済みのDLを生成する。その結果、9コマでPDL処理部とRIP処理部の両方で重なり除去が並列に行われ、13コマの時間で4頁のビットマップ展開が終了する。
図13Bの下段では、1頁と2頁ではPDL処理部で重なり除去を行わないDLを生成するが、3,4頁目にはRIP処理部の負荷が大きくなるためPDL処理部で重なり除去済みのDLを生成する。その結果、1,2頁のRIP処理部における重なり除去と、3,4頁のPDL処理部における重なり除去が並列処理されて、7コマの時間で4頁のビットマップ展開が終了する。
なお、図13A及び図13Bの例では、4頁のみの処理でPDL処理とRIP処理とを同じ負荷とする等の簡略化をしているので、僅かな改善しか見られない。しかし、処理する頁数が増加したりPDL処理とRIP処理の負荷の相違などを考慮すると、大幅なビットマップ展開の処理時間の改善が明らかである。
<1ページ平均の処理能力を考慮する例>
なお、上記実施形態1では、待ちキュー数とCPUの個数に基づいて、PDL処理で重なり除去を行うかを判断した。
しかし、更に、PDL処理とRIP処理の1頁平均の処理能力が取得可能な場合には、次のような処理も可能である。すなわち、まず、1頁平均の処理能力を取得する。そして、PDLとRIPの1頁当たりの平均処理能力と、PDL処理とRIP処理の順番待ちしているデータの個数と、処理可能なCPUの個数とから、PDL処理で重なり除去を行うか否かを判断してもよい。なお、かかる1頁平均の処理能力の取得を第2の取得という。
例えば、処理能力の異なるCPU(例:500MHzのARMと3GHzのIntel CPU)が混在している構成の印刷処理装置の場合など、どのCPUに何の処理が割り当てられたかによって処理時間は大きく異なる。その限定方法としては、本処理前にCPU能力を取得して情報を保存しておき、PDL処理やRIP処理を行うCPUが決定した際、保存した情報から処理能力を取得する。
<キューのサイズを考慮する例>
また、PDL処理とRIP処理を行うデータがたまるキューのサイズが異なる場合には、次のような処理も可能である。すなわち、まず、PDL処理待ちのデータがためられるキューとRIP処理待ちデータがためられるキューのサイズを取得する。そして、PDL処理のキューサイズ及びRIP処理のキューサイズと、PDL処理とRIP処理の順番待ちしているデータの個数と、処理可能なCPUの個数とから、PDL処理で重なり除去を行うか否かを判断してもよい。なお、かかるキューのサイズの取得を第3の取得という。
上記CPUの能力と同様、PDL処理とRIP処理それぞれのキューサイズが、例えば256Mbyteか10Mbyteかでは、キューがたまる速度が大きく変わる(キューがフルになるとその前の処理は止まってしまう)。その限定方法としては、本処理前にそれぞれのキューサイズを取得して情報を保存しておき、PDL処理やRIP処理を行う際に、保存した情報から、PDL処理とRIP処理のそれぞれの処理能力を計算する為の情報とする。
(CPUの処理能力及びキューサイズを考慮する具体例)
以下に、CPUの処理能力及びキューサイズを考慮する判断方法の具体例を説明する。
まず、あらかじめ、能力に応じたポイントを設定しておく(負荷がかかるほどポイントは低く設定する)。
CPUの処理能力テーブルの例を以下に示す。
次に、キューサイズテーブルの例を示す。
次に、あるページを処理する時点の能力を得点化する。
例:PDL処理 1Ghz ⇒ 1ポイント
RIP処理 1.5Ghz ⇒ 2ポイント
PDLキュー 20Mbyte ⇒ 1ポイント
RIPキュー 50Mbyte ⇒ 4ポイント
最後に、得点を元に重なり除去を行う所を決定する。
PDL処理=計2ポイント(1+1=2)
RIP処理=計6ポイント(2+4=6)
この場合は、RIP処理の方が負荷が軽いので、重なり除去はRIP処理側で行うことを決定する。
また、別ページを処理する時点の能力を得点化する。
例:PDL処理 1.5hz ⇒ 2ポイント
RIP処理 1Ghz ⇒ 1ポイント
PDLキュー 40Mbyte ⇒ 3ポイント
RIPキュー 10Mbyte ⇒ 0ポイント
次に、得点を元に重なり除去を行う所を決定する。
PDL処理=計5ポイント(2+3=5)
RIP処理=計1ポイント(1+0=1)
この場合は、PDL処理の方が負荷が軽いので、重なり除去はPDL処理側で行うことを決定する。
なお、上記具体例は2つの例を示したが、これに限定されず、より負荷の少なくなる処理に重なり除去を割り当てることが可能になることは明らかである。
[実施形態1の変形例]
<任意の割合で、重なり除去済みDLと重なり除去なしDLを含む処理例>
ここで、本実施形態の変形例として、図14を参照して、任意の割合で重なり除去済みDLと重なり除去なしDLを含むDLについて説明する。
本実施形態1の変形例では、PDL処理待ちキュー404とRIP処理待ちキュー406に残っているキュー数、PDL処理部203とRIP処理部216で利用可能なCPUの個数から、PDL処理とRIP処理の負荷の大きさを確認する。ここで、例えば、PDL処理部203の負荷が70%、RIP処理部216の負荷が30%の状況だったと仮定する。この場合、より均等な負荷で処理を行うDLを生成しようとする場合、実施形態1のように100%をPDL処理かRIP処理かに分散するよりも、負荷に反比例して、PDL処理に30%、RIP処理に70%の負荷をかけるのが望ましい。
図14の右側の例は、生成されたDLにおいて、1頁中の30%は重なり除去済みの領域、70%は重なり除去なしの領域が含まれるように処理する例を示した図である。RIP処理部におけるレンダリング時には、DLを参照して、重なり除去なし領域では、重ね合わせ処理を行うと共にその結果のフィルがレンダリングされ、重なり除去済み領域では、その領域のフィルがそのままレンダリングされる。
<実施形態1の変形例の作用効果>
かかる実施形態1の変形例によれば、図13Bの処理の例でも、さらにPDL処理部とRIP処理部との負荷に応じて重なり除去が分散されるので、より短時間でビットマップ展開の処理が行われる。
[実施形態2]
実施形態1では、重なり除去を行っていないDLと重なり除去済みDLの生成を、PDL処理部とRIP処理部の負荷を分散する目的で切り替えていた。それに対し実施形態2では、これらのDLの生成を、リアルタイムレンダリングと非リアルタイムレンダリングの観点で切り替える例を説明する。
リアルタイムレンダリングとは、RIP処理の速度がプリンタのエンジンが紙を排紙する速度と同期するRIP処理のことを言う。すなわち、RIP処理後にデータをスプールするためのメモリ領域(以下、スプールメモリ:本例では、ページメモリ221に相当する)が不要である。一方、非リアルタイムレンダリングとは、RIP処理の速度とプリンタのエンジンが紙を排紙する速度とが同期しないRIP処理のことを言う。この場合は、RIP処理後にデータをスプールするためのメモリ領域が必要になる。
リアルタイムレンダリングを行うためには、プリンタのエンジン速度にRIP処理が追いつかなければならないため、RIP処理の負荷が軽いことが望まれる。そのため、重なり除去済みDLであれば、重なり除去が必要でないため、リアルタイムレンダリングに向いたDLであるといえる。一方、MFPでは省メモリ化のために、メモリ領域が他の処理と共有化されることが考えられる。上記で述べたスプールメモリに関しても同様で、通常はPDLデータのプリント処理に用いられているが、場合によっては他の処理(例えば、FAXやコピーなど)がスプールメモリを占有することが起きる。
<実施形態2のDLのつくり分けの判断例>
上記前提を基にして、図15を用いて実施形態2の場合の重なり除去を行っていないDLと重なり除去済みDLの作り分けの判断例を説明する。
図15の上段の問題のない例1では、スプールメモリをコピー処理で占有してしまっている。しかし、PDL処理で重なり除去済みDLを生成したため、リアルタイムレンダリングが可能でスプールメモリを必要とせず、コピー処理と並列動作が可能になる。
また、図15の中段の問題のない例2では、スプールメモリが他処理に使われていない。従って、PDL処理で重なり除去を行っていないDLを生成し、非リアルタイムレンダリングを行ってスプールメモリをプリント処理で用いても問題がない。
一方、図15の下段の問題の例では、スプールメモリがコピー処理で使用しているのにも関わらず、PDL処理でリアルタイムレンダリングが行えない重なり除去を行っていないDLを生成してしまっている。そのため、スプールメモリが解放されるまで、プリント処理に待ちが発生してしまう。
<実施形態2の画像処理装置の構成例>
実施形態2の画像処理装置の構成は、基本的に実施形態1と同様であるので、繰り返すは避ける。
但し、図4に示した画像処理の機能構成では、PDL処理切替部403による重なり除去処理フラグの生成条件が、実施形態1の待ちキュー数とCPU数から変更される。すなわち、スプールメモリ(ページメモリ221)が他の処理(FAXやコピーなど)で専用中か否かが、重なり除去処理フラグの生成条件となる。また、図5では、スプールメモリ(ページメモリ221)他の処理で専用中か否かのフラグが保持される。
<実施形態2の処理手順例>
図16のフローチャートを参照して、実施形態2のPDL処理とRIP処理の負荷分散について、その処理手順を説明する。
(CPU205によるPDL処理での重なり除去の有無の指示)
図16のステップS1503において、CPU205は、PDLデータを待って、受信したPDLデータ206aを受け付け、PDL処理待ちキュー404にキューイングする。次に、CPU205は、ステップS1504において、PDL処理部203でDL生成を開始する時点で、スプールメモリが他の処理に使われているかを確認する。次に、CPU205は、ステップS1505において、スプールメモリが他の処理に使われているか否かを判断して分岐する。
スプールメモリが他の処理に使われていない場合(S1505でYes)はリアルタイムレンダリングをする必要が無いため、CPU205はステップS1506において、重なり除去を行っていないDLの生成をPDL処理部203に指示する。スプールメモリが他の処理に使われていた場合(S1505でNo)はリアルタイムレンダリングを行う必要があるので、CPU205はステップS1507において、重なり除去済みDLの生成をPDL処理部203に指示する。
(PDL処理部及びRIP処理部のCPUによる処理)
以下、PDL処理部及びRIP処理部のCPUによる処理は、図12B及び図12Cと同様であるので、重複説明を避ける。
<実施形態2の作用効果>
かかる実施形態2の処理によれば、RIP処理のレンダリングとプリンタエンジンの動作との同期が外れることによるプリントエラー(プリントデータのショートエラー)を無くして、効率の良いプリントが可能となる。
[他の実施形態]
なお、実施形態1と2を独立した処理として説明したが、実施形態1と2とを組み合わせることにより、更に資源の有効利用と処理時間の短縮を図ることが出来る。また、実施形態1はキュー数(負荷量)とCPU数(処理能力)によるDLの重なり除去処理の有無、実施形態2はスプールメモリの空きか否かによるDLの重なり除去処理の有無を制御を示した。しかし、これに限定することなく、他の条件によるDLの重なり除去処理の有無を制御を行うことも本発明に含まれる。
以上、様々な実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。例えば、スキャナ、プリンタ、PC、複写機、複合機及びファクシミリ装置の如くである。
本発明は、前述した実施形態の各機能を実現するソフトウェアプログラムを、システム若しくは装置に対して直接または遠隔から供給する。そして、そのシステム等に含まれるコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。
従って、本発明の機能・処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、上記機能・処理を実現するためのコンピュータプログラム自体も本発明の一つである。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、記録媒体としては、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM、DVD−R)などもある。
また、プログラムは、クライアントコンピュータのブラウザを用いてインターネット/イントラネットのウェブサイトからダウンロードしてもよい。すなわち、該ウェブサイトから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードしてもよいのである。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるウェブサイトからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明の構成要件となる場合がある。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布してもよい。この場合、所定条件をクリアしたユーザにのみ、インターネット/イントラネットを介してウェブサイトから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報で暗号化されたプログラムを復号して実行し、プログラムをコンピュータにインストールしてもよい。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現されてもよい。なお、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ってもよい。もちろん、この場合も、前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ってもよい。このようにして、前述した実施形態の機能が実現されることもある。
本実施形態の画像形成装置(MFP)の構造例を示す側断面図である。 本実施形態におけるプリンタ制御部の構成例を示すブロック図である。 本実施形態におけるコントローラの構成の一例を示すブロック図である。 実施形態1のプリンタ制御部の機能構成例を示すブロック図である。 実施形態1で使用するプログラム及びデータの記憶例を示す図である。 本実施形態における重なり除去を行っていないディスプレイリストについての処理例を示した図である。 本実施形態における重なり除去済みディスプレイリストについての処理例を示した図である。 本実施形態における重なり除去を行っていないディスプレイリストの詳細な構成例を示す図である。 本実施形態における重なり除去済みディスプレイリストの詳細な構成例を示す図である。 本実施形態における重なり除去を行っていないディスプレイリストが重ね合わせ処理を行いレンダリングされる処理例を示した図である。 実施形態1におけるCPUの個数に関する説明をする図である。 実施形態1におけるCPU数が同じ場合の、重なり除去を行っていないディスプレイリストと重なり除去済みディスプレイリストを作り分ける基準例を示す図である。 実施形態1におけるCPU数が異なる場合の、重なり除去を行っていないディスプレイリストと重なり除去済みディスプレイリストを作り分ける基準例を示す図である。 実施形態1におけるCPU205の処理手順例を示すフローチャートである。 実施形態1におけるPDL処理部のCPUの処理手順例を示すフローチャートである。 実施形態1におけるRIP処理部のCPUの処理手順例を示すフローチャートである。 従来例及び重なり除去を固定化した場合のPDL処理とRIP処理の負荷に偏りがある場合のパイプライン処理の例を示す図である。 実施形態1の負荷分散方法を適応した場合のPDL処理とRIP処理のパイプライン処理の例を示した図である。 実施形態1の変形例における、重なり除去済み部分と重なり除去を行わない部分とが所定の割合で含まれたディスプレイリストの生成例を示した図である。 実施形態2で解決される課題として、問題のない例と問題のある例とを示した図である。 実施形態2におけるCPU205の処理手順例を示すフローチャートである。

Claims (22)

  1. ページ記述言語(PDL)で記述されたPDLデータからディスプレイリストを生成し、該ディスプレイリストをレンダリングしてビットマップデータを生成する画像処理方法であって、
    決定手段が、PDLデータからディスプレイリストを生成するPDL処理の開始に先だって、前記PDL処理とディスプレイリストをレンダリングしてビットマップデータを生成するRIP処理の負荷を均等とするために、前記PDL処理で重なり除去済みのディスプレイリストを生成するか、あるいは重なり除去を行っていないディスプレイリストを生成するかを決定する決定工程と、
    前記決定工程で重なり除去を行っていないディスプレイリストの生成が決定された場合は、第1のビットマップデータ展開手段が、前記PDL処理で重なり除去を行っていないディスプレイリストを生成し、前記RIP処理で前記重なり除去を行っていないディスプレイリストを基にビットマップデータを生成する第1のビットマップデータ展開工程と、
    前記決定工程で重なり除去済みのディスプレイリストの生成が決定された場合は、第2のビットマップデータ展開手段が、前記PDL処理で重なり除去済みのディスプレイリストを生成し、前記RIP処理で前記重なり除去済みのディスプレイリストを基にビットマップデータを生成する第2のビットマップデータ展開工程と
    を有することを特徴とする画像処理方法。
  2. 前記重なり除去は、オブジェクトの交差点間に含まれる塗りつぶし部分が持つレベル情報を基に、データを最上位から最下位に向かってソートして、上位レベルにより隠される不必要なデータを除去するレベル処理と、ソートが終わった塗りつぶし部分が持つ重ね合わせ情報を基に複数の塗りつぶし部分を1つの塗りつぶし部分にするコンポジット処理とを含むことを特徴とする請求項1に記載の画像処理方法。
  3. 前記決定工程では、前記PDL処理への負荷の予測と前記RIP処理への負荷の予測とに基づいて、前記RIP処理への負荷の予測が大きければ前記PDL処理で前記重なり除去済みのディスプレイリストの生成を決定し、前記PDL処理への負荷の予測が大きければ前記重なり除去を行っていないディスプレイリストの生成を決定することを特徴とする請求項1に記載の画像処理方法。
  4. 前記決定工程では、重なり除去済みの部分と重なり除去を行っていない部分を前記PDL処理及びRIP処理への負荷に反比例する割合で含むディスプレイリストの生成を決定することを特徴とする請求項1に記載の画像処理方法。
  5. 第1の取得手段が、前記PDL処理とRIP処理の順番待ちをしているデータの数と実行可能なCPUの個数を取得する第1の取得工程を更に有し、
    前記PDL処理及びRIP処理への負荷は、各処理の順番待ちをしているデータの数と各処理を実行可能なCPUの個数に基づいて予測されることを特徴とする請求項3または4に記載の画像処理方法。
  6. 第2の取得手段が、前記PDL処理とRIP処理の1頁平均の処理能力が取得可能な場合に、1頁平均の処理能力を取得する第2の取得工程を更に有し、
    前記PDL処理及びRIP処理への負荷は、前記PDL処理とRIP処理の1頁当たりの平均処理能力と前記各処理の順番待ちしているデータの個数と前記各処理を処理可能なCPUの個数とに基づいて予測されることを特徴とする請求項5に記載の画像処理方法。
  7. 前記PDL処理とRIP処理を行うデータがたまるキューのサイズが異なる場合に、第3の取得手段が、PDL処理の待ちのデータがためられるキューとRIP処理の待ちデータがためられるキューのサイズを取得する第3の取得工程を更に有し、
    前記PDL処理及びRIP処理への負荷は、前記PDL処理のキューとRIP処理のキューのサイズと、前記各処理の順番待ちしているデータの個数と、前記各処理を処理可能なCPUの個数とに基づいて予測されることを特徴とする請求項5に記載の画像処理方法。
  8. 前記決定工程では、前記RIP処理により生成されたビットマップデータをスプールするスプールメモリが使用可能であるか否かに基づいて、前記スプールメモリが使用可能で無ければ前記PDL処理で前記重なり除去済みのディスプレイリストの生成を決定し、前記スプールメモリが使用可能であれば前記重なり除去を行っていないディスプレイリストの生成を決定することを特徴とする請求項1に記載の画像処理方法。
  9. 前記スプールメモリが他の処理に使われている場合に、前記スプールメモリが使用可能で無いと判断することを特徴とする請求項8に記載の画像処理方法。
  10. 請求項1乃至9のいずれか1項に記載の画像処理方法の各工程をコンピュータに実行させるためのプログラム。
  11. 請求項10に記載のプログラムを記憶したコンピュータで読み取り可能な記憶媒体。
  12. ページ記述言語(PDL)で記述されたPDLデータからディスプレイリストを生成し、該ディスプレイリストをレンダリングしてビットマップデータを生成する画像処理装置であって、
    前記PDLデータからディスプレイリストを生成するPDL処理で重なり除去を行っていないディスプレイリストを生成し、前記RIP処理で前記重なり除去を行っていないディスプレイリストを基にビットマップデータを生成する第1のビットマップデータ展開手段と、
    前記PDL処理で重なり除去済みのディスプレイリストを生成し、前記ディスプレイリストをレンダリングしてビットマップデータを生成するRIP処理で前記重なり除去済みのディスプレイリストを基にビットマップデータを生成する第2のビットマップデータ展開手段と、
    前記PDLデータへの前記PDL処理の開始に先だって、前記PDL処理とRIP処理の負荷を均等とするために前記PDL処理で前記重なり除去済みのディスプレイリストと前記重なり除去を行っていないディスプレイリストの生成を決定する決定手段と
    を有することを特徴とする画像処理装置。
  13. 前記重なり除去は、オブジェクトの交差点間に含まれる塗りつぶし部分が持つレベル情報を基に、データを最上位から最下位に向かってソートして、上位レベルにより隠される不必要なデータを除去するレベル処理と、ソートが終わった塗りつぶし部分が持つ重ね合わせ情報を基に複数の塗りつぶし部分を1つの塗りつぶし部分にするコンポジット処理とを含むことを特徴とする請求項12に記載の画像処理装置。
  14. 前記決定手段は、前記PDL処理への負荷の予測と前記RIP処理への負荷の予測とに基づいて、前記RIP処理への負荷の予測が大きければ前記PDL処理で前記重なり除去済みのディスプレイリストの生成を決定し、前記PDL処理への負荷の予測が大きければ前記重なり除去を行っていないディスプレイリストの生成を決定することを特徴とする請求項12に記載の画像処理装置。
  15. 前記決定手段は、重なり除去済みの部分と重なり除去を行っていない部分を前記PDL処理及びRIP処理への負荷に反比例する割合で含むディスプレイリストの生成を決定することを特徴とする請求項12に記載の画像処理装置
  16. 前記PDL処理とRIP処理の順番待ちをしているデータの数と実行可能なCPUの個数を取得する第1の取得手段を有し、
    前記PDL処理及びRIP処理への負荷は、各処理の順番待ちをしているデータの数と各処理を実行可能なCPUの個数に基づいて予測されることを特徴とする請求項14または15に記載の画像処理装置。
  17. 前記PDL処理とRIP処理の1頁平均の処理能力が取得可能な場合に、1頁平均の処理能力を取得する第2の取得手段を有し、
    前記PDL処理及びRIP処理への負荷は、前記PDL処理とRIP処理の1頁当たりの平均処理能力と前記各処理の順番待ちしているデータの個数と前記各処理を処理可能なCPUの個数とに基づいて予測されることを特徴とする請求項16に記載の画像処理装置。
  18. 前記PDL処理とRIP処理を行うデータがたまるキューのサイズが異なる場合に、PDL処理の待ちのデータがためられるキューとRIP処理の待ちデータがためられるキューのサイズを取得する第3の取得手段を有し、
    前記PDL処理及びRIP処理への負荷は、前記PDL処理のキューとRIP処理のキューのサイズと、前記各処理の順番待ちしているデータの個数と、前記各処理を処理可能なCPUの個数とに基づいて予測されることを特徴とする請求項16に記載の画像処理装置。
  19. 前記RIP処理により生成されたビットマップデータをスプールするスプールメモリを有し、
    前記決定手段は、前記スプールメモリが使用可能であるか否かに基づいて、前記スプールメモリが使用可能で無ければ前記PDL処理で前記重なり除去済みのディスプレイリストの生成を決定し、前記スプールメモリが使用可能であれば前記重なり除去を行っていないディスプレイリストの生成を決定することを特徴とする請求項12に記載の画像処理装置。
  20. 前記スプールメモリが他の処理に使われている場合に、前記スプールメモリが使用可能で無いと判断することを特徴とする請求項19に記載の画像処理装置。
  21. 請求項12乃至20のいずれか1項に記載の画像処理装置を有し、前記RIP処理により生成されたビットマップデータに従って画像を形成することを特徴とする画像形成装置。
  22. ページ記述言語(PDL)で記述されたPDLデータからディスプレイリストを生成するPDL処理部と、
    前記PDL処理部により生成されたディスプレイリストをレンダリングしてビットマップデータを生成するRIP処理部と
    前記PDL処理部の能力と前記RIP処理部の能力と前記RIP処理部の処理待ち状態に応じて、前記PDL処理部に、重なり除去済みのディスプレイリストを生成させるか、記重なり除去われていないディスプレイリストを生成させるか、を決定し、なり除去われていないディスプレイリストが前記PDL処理部によって生成された場合、前記RIP処理部に、該重なり除去われていないディスプレイリストを基にビットマップデータを生成させ、なり除去済みのディスプレイリストが前記PDL処理部によって生成された場合、前記RIP処理に、該重なり除去済みのディスプレイリストを基にビットマップデータを生成させる制御手段と
    を有することを特徴とする画像処理装置。
JP2008293938A 2008-11-17 2008-11-17 画像処理方法及び画像処理装置ならびに該画像処理方法を実行するためのプログラム Expired - Fee Related JP5317641B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008293938A JP5317641B2 (ja) 2008-11-17 2008-11-17 画像処理方法及び画像処理装置ならびに該画像処理方法を実行するためのプログラム
US12/610,613 US8379262B2 (en) 2008-11-17 2009-11-02 Method, apparatus, and program for generating bitmap data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008293938A JP5317641B2 (ja) 2008-11-17 2008-11-17 画像処理方法及び画像処理装置ならびに該画像処理方法を実行するためのプログラム

Publications (3)

Publication Number Publication Date
JP2010120196A JP2010120196A (ja) 2010-06-03
JP2010120196A5 JP2010120196A5 (ja) 2012-01-05
JP5317641B2 true JP5317641B2 (ja) 2013-10-16

Family

ID=42171664

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008293938A Expired - Fee Related JP5317641B2 (ja) 2008-11-17 2008-11-17 画像処理方法及び画像処理装置ならびに該画像処理方法を実行するためのプログラム

Country Status (2)

Country Link
US (1) US8379262B2 (ja)
JP (1) JP5317641B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102388281B (zh) * 2009-02-27 2015-07-01 伊莱克斯家用产品公司 悬挂式空气过滤器

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5596938B2 (ja) * 2009-06-02 2014-09-24 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP5361659B2 (ja) 2009-10-27 2013-12-04 キヤノン株式会社 情報処理システム、情報処理システム制御方法、およびそのプログラム
JP5545050B2 (ja) * 2010-06-09 2014-07-09 コニカミノルタ株式会社 画像処理装置、プログラム及び画像処理方法
JP5148675B2 (ja) * 2010-09-28 2013-02-20 シャープ株式会社 画像処理装置、画像処理システム、画像処理方法、プログラムおよびその記録媒体
JP5170200B2 (ja) * 2010-09-30 2013-03-27 ブラザー工業株式会社 画像形成装置
JP5744574B2 (ja) * 2011-03-07 2015-07-08 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
JP5766059B2 (ja) * 2011-07-25 2015-08-19 キヤノン株式会社 画像形成装置、画像形成装置の制御方法、及びプログラム
JP4900530B1 (ja) * 2011-09-15 2012-03-21 富士ゼロックス株式会社 画像処理装置及びプログラム
JP6341628B2 (ja) * 2012-05-10 2018-06-13 キヤノン株式会社 情報処理装置、情報処理方法、情報処理システム、プログラム
JP6331752B2 (ja) * 2014-06-23 2018-05-30 富士ゼロックス株式会社 画像処理装置
JP6323209B2 (ja) * 2014-06-24 2018-05-16 富士ゼロックス株式会社 画像処理装置及びプログラム
JP6458925B2 (ja) * 2014-09-11 2019-01-30 富士ゼロックス株式会社 画像処理装置及び画像処理プログラム
JP6834402B2 (ja) * 2016-11-24 2021-02-24 株式会社リコー 情報処理装置、情報処理システム、情報処理方法、及びプログラム
EP3537707B1 (de) * 2018-03-06 2021-07-28 B&R Industrial Automation GmbH Kamerakern einer smart kamera für die industrielle bildverarbeitung und verfahren zur industriellen bildverarbeitung
JP6570164B1 (ja) * 2018-11-28 2019-09-04 株式会社ツバサファクトリー コンピュータプログラム、画像処理方法、及び画像処理装置
CN109726343A (zh) * 2018-12-26 2019-05-07 北京字节跳动网络技术有限公司 图像轮播方法和装置
JP7263830B2 (ja) * 2019-02-22 2023-04-25 ブラザー工業株式会社 プリンタ及びモジュール

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5991515A (en) * 1992-11-10 1999-11-23 Adobe Systems Incorporated Method and apparatus for compressing and decompressing data prior to display
DE19513105A1 (de) * 1995-04-07 1996-10-10 Hell Ag Linotype Verfahren zur Generierung einer Contone-Map
US5600768A (en) * 1995-06-06 1997-02-04 Apple Computer, Inc. Image generation with dynamically consolidated list of image data
JPH09190539A (ja) * 1996-01-10 1997-07-22 Fuji Xerox Co Ltd 画像描画装置
JP3610563B2 (ja) * 1996-07-01 2005-01-12 富士ゼロックス株式会社 Pdlデータ処理装置
JP3728820B2 (ja) * 1996-08-09 2005-12-21 富士ゼロックス株式会社 描画処理装置
US6466229B1 (en) * 1999-01-26 2002-10-15 Fuji Xerox Co., Ltd. Graphics processing apparatus and graphics processing method
JP4546561B2 (ja) * 2000-08-08 2010-09-15 キヤノン株式会社 画像処理装置および画像処理方法
JP2002103697A (ja) * 2000-10-04 2002-04-09 Fuji Xerox Co Ltd 画像処理装置
AU2002951651A0 (en) * 2002-09-25 2002-10-10 Canon Kabushiki Kaisha Apparatus for printing using non-overlapping graphic objects
JP2005063027A (ja) * 2003-08-08 2005-03-10 Ricoh Printing Systems Ltd ページプリンタ制御装置
JP4164467B2 (ja) * 2004-03-26 2008-10-15 キヤノン株式会社 画像処理装置、画像処理制御方法、及びプログラム
JP2006178607A (ja) * 2004-12-21 2006-07-06 Canon Inc 情報処理装置及び情報処理方法
US8139263B2 (en) * 2005-11-30 2012-03-20 Adobe Systems Incorporated Systems and methods for printing artwork containing overlapped inks

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102388281B (zh) * 2009-02-27 2015-07-01 伊莱克斯家用产品公司 悬挂式空气过滤器

Also Published As

Publication number Publication date
JP2010120196A (ja) 2010-06-03
US8379262B2 (en) 2013-02-19
US20100123726A1 (en) 2010-05-20

Similar Documents

Publication Publication Date Title
JP5317641B2 (ja) 画像処理方法及び画像処理装置ならびに該画像処理方法を実行するためのプログラム
US20110058191A1 (en) Image forming apparatus and control method thereof
JP5043715B2 (ja) 画像処理装置
JP2003216361A (ja) 印刷システム及び印刷装置
JP2006287745A (ja) 文書管理システム及び文書管理方法
JP2008186253A (ja) 画像処理装置、画像処理システム、画像処理方法、コンピュータプログラム
JP2010120195A (ja) 画像形成装置及びその制御方法
JP2009021879A (ja) 画像処理装置、画像処理方法、及び、画像処理プログラム
US20100020338A1 (en) Printing apparatus, control method, and storage medium
US20090201515A1 (en) Image processing apparatus, image processing method, and storage medium
JP5288879B2 (ja) 印刷装置及びその制御方法、プログラム、並びに、コンピュータ読み取り可能な記憶媒体
JP2014056036A (ja) 画像形成装置および方法
JP2009199557A (ja) 画像処理装置及びその制御方法、プログラム、記憶媒体
JP4174476B2 (ja) データ処理装置およびデータ処理方法およびプリンタドライバプログラムおよび印刷制御装置および印刷制御方法および印刷システム
JP5751814B2 (ja) 画像形成装置、制御方法、およびプログラム
JP4254552B2 (ja) 画像処理装置、画像処理方法、および画像処理プログラム
JP5740913B2 (ja) 画像形成装置およびその制御方法
JP2008146415A (ja) 画像処理装置及びその制御方法、プログラム
US8675244B2 (en) Rendering apparatus having a display list clip processing control method, rendering method, and storage medium
JP2011000794A (ja) 画像形成装置及び画像形成方法ならびに画像形成方法を実行するプログラム
JP2015076694A (ja) 画像形成装置
JPH11115278A (ja) 印刷装置
JP2006245920A (ja) 画像形成装置および画像処理方法
JP2004178418A (ja) 印刷システム
JP2003274203A (ja) 印刷制御装置及び印刷制御方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111115

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130107

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130227

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130709

R151 Written notification of patent or utility model registration

Ref document number: 5317641

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees