画像処理装置、プログラム及び画像処理装置の制御方法
【課題】各種の画像処理を行う処理時間を削減する技術を提供する。
【解決手段】スキャナまたはホストコンピュータより入力された画像データの属性を解析し、画像処理手段に転送する画像データの順序を制御することで、画像処理装置の回路構成変更時間を削減することで処理時間を最適化する。制御手順は同じ属性をもつ画像を一括して処理できるような順序で転送する。画像データの分布に応じて転送順序を決定する。画像処理手段に回路構成を指示することができる。
【解決手段】スキャナまたはホストコンピュータより入力された画像データの属性を解析し、画像処理手段に転送する画像データの順序を制御することで、画像処理装置の回路構成変更時間を削減することで処理時間を最適化する。制御手順は同じ属性をもつ画像を一括して処理できるような順序で転送する。画像データの分布に応じて転送順序を決定する。画像処理手段に回路構成を指示することができる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、プログラム及び画像処理装置の制御方法に関する。
【背景技術】
【0002】
従来、スキャナにより読み取られた画像データや、ホストコンピュータから送出された画像データ等を取得し、取得したデータに各種の画像処理を施し、印刷データとして展開する画像処理装置では、高画質な印刷を求められている。
【0003】
このような高画質な印刷を実現するため、画像内のデータが文字、写真といった画素属性、画像データの送信元がスキャナ、ホストコンピュータといったページ毎の面属性に応じて専用の画像処理を施す必要がある。
【0004】
これらの属性を好適に利用することで、複数ある画像処理装置の処理負荷を最適化する試みがなされている(特許文献1参照)。また、それぞれの画像処理専用のハードウェア全てを備えると、回路規模等が増大してコストアップとなるので、複数種の画像処理のそれぞれを実行可能な処理手段を用意し、前記処理手段を制御する制御手段を備える提案がなされている(特許文献2参照)。
【特許文献1】特開2007−081795号公報
【特許文献2】特開2006−285792号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかし上述した従来の画像処理装置においては、様々な属性の画像データが逐次入力された場合、処理手段の切り換えによる切り換え時間が多くなり、全体の処理時間がかかってしまう。
【0006】
本発明はこのような問題に鑑みてなされたものであり、画像データの属性に応じて画像処理手段に転送する画像データの順序を制御することにより、画像処理する時間を短縮するための技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の目的を達成するために、本発明の画像処理装置は、入力された画像データの属性を判断する判断手段と、前記入力された画像データの属性に応じて、該画像データを処理する回路の構成を変更する画像処理手段と、前記画像処理手段に転送する画像データの順序を制御する制御手段とを有し、前記制御手段は、前記画像処理手段の回路構成の変更を少なくするべく、転送する画像データの順序を制御することを特徴とする。
【0008】
さらに、本発明のプログラムは、回路構成を変更できる画像処理手段を有する画像処理装置を制御するプログラムであって、入力された画像データの属性を判断する判断工程と、前記入力された画像データの属性に応じて、前記画像処理手段に該画像データを処理する回路の構成を変更させる変更工程と、前記画像処理手段に転送する画像データの順序を、前記画像処理手段の回路構成の変更を少なくするべく制御する制御工程を有することを特徴とする。
【0009】
さらに、本発明の画像処理回路の制御方法は、回路構成を変更できる画像処理手段を有する画像処理装置の制御方法であって、入力された画像データの属性を判断する判断工程と、前記入力された画像データの属性に応じて、前記画像処理手段に該画像データを処理する回路の構成を変更させる変更工程と、前記画像処理手段に転送する画像データの順序を、前記画像処理手段の回路構成の変更を少なくするべく制御する制御工程を有することを特徴とする。
【発明の効果】
【0010】
本発明によれば、画像データの属性に応じて画像処理手段に転送する画像データの順序を制御することにより、画像処理する時間を短縮することができる。
【発明を実施するための最良の形態】
【0011】
以下に、図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。
【0012】
図1は、本実施形態に係る画像処理装置を適用したシステムの機能構成を示すブロック図である。同図に示したシステムは大まかには、スキャナ1、ホストコンピュータ2、制御部3、記憶装置4、印字エンジン部5により構成されている。
【0013】
スキャナ1は周知の通り、紙などの記録媒体上に記録された情報(画像、文字など)を読み取り、読み取った画像データとして出力する。出力した画像のデータは制御部3に入力される。
【0014】
ホストコンピュータ2は、一般のPC(パーソナルコンピュータ)やWS(ワークステーション)などのコンピュータであって、このコンピュータでもって作成された画像や文書はPDLデータとして制御部3に入力される。
【0015】
このように制御部3はスキャナ1やホストコンピュータ2から送出されたデータを受け取ることができる。よって当然、制御部3とスキャナ1、制御部3とホストコンピュータ2とはデータ通信が可能なようにネットワークが形成されているのであるが、このネットワークの構成については特に限定するものではない。
【0016】
制御部3はスキャナ1やホストコンピュータ2から受けたデータに基づいて各種の画像処理をし、画像処理された画像データを出力する。なお、制御部3、および制御部3が行う処理の詳細については後述する。
【0017】
記憶装置4は、制御部3から出力された画像データを記憶、保持するものである。
【0018】
印字エンジン部5は、制御部3から出力された画像データに基づいて、紙などの記憶媒体上に印字処理を行う。
【0019】
なお、本実施形態では制御部3にデータを入力するのはスキャナ1とホストコンピュータ2の2つとしたが、これ以外の装置であっても良く、例えば複合機やファクシミリ装置などから送出されたデータを制御部3に入力するようにしても良い。
【0020】
次に、制御部3の構成について説明する。制御部3はスキャナ入力色処理ブロック31、ホストI/F部32、PDL処理部33、CPU34、RAM35、ROM36、画像処理部37、スケジューラ38、ストレージコントローラ部39、エンジンI/F部40により構成されている。
【0021】
スキャナ入力色処理ブロック31は、スキャナ1から入力されたR/G/B形式の画像データを受け、入力された画像データにY/M/C/K形式の画像データに変換する色処理を行う。ここで、スキャナ入力色処理ブロック31は、このような色変換処理だけでなく入力された画像データに対して、画素単位で文字画像を示す属性か写真画像を示す属性かを判断するように構成されている。属性を判断する方法は、公知の判断手法を使えばよい。ホストI/F部32は、ホストコンピュータ2から送出されたPDLデータを受けるためのインターフェースとして機能するものである。なお、ホストI/F部32は、制御部3とホストコンピュータ2とを繋ぐネットワークに応じたものとなるのであるが、例えば、イーサネット(登録商標)やシリアルインターフェースもしくは、パラレルインターフェースといったもので構成されている。
【0022】
PDL処理部33は、ホストI/F部32が受けたPDLデータを展開する処理を行う。ここで、PDL処理部33は、PDLデータを展開する処理だけでなく入力された画像データに対して、画素単位で文字画像を示す属性か写真画像を示す属性かを判断するように構成されている。属性を判断する方法は、公知の判断手法を使えばよい。
【0023】
CPU34は、RAM35やROM36に格納されているコンピュータ読み取り可能な制御プログラムやデータを用いて制御部3全体の制御を行うと共に、制御部3が行う後述の各処理を実行する。
【0024】
RAM35は、スキャナ入力色処理ブロック31やホストI/F部32を介してスキャナ1やホストコンピュータ2から受信したデータを一時的に記憶するためのエリアを備えると共に、CPU34が各種の処理を実行する際に用いるワークエリアを備える。
【0025】
ROM36は、CPU34に制御部3全体を制御すると共に、制御部3が行う後述の各処理をCPU34に実行させるためのプログラムやデータ、また、制御部3の設定データなどが格納されている。
【0026】
画像処理部37は、スキャナ1やホストコンピュータ2から送出されたデータに基づいた画像に対する画像処理を行う。画像処理部37が行う処理の詳細については後述する。
【0027】
スケジューラ38は、画像処理部37へ転送する中間データの順序を決定する。スケジューラ38が行う処理の詳細については後述する。
【0028】
ストレージコントローラ部39は、制御部3によって画像処理された画像データを記憶装置4に記録する処理を制御する。
【0029】
エンジンI/F部40は、制御部3によって画像処理された画像データを印字エンジン部5に送出するための一連の処理を行う。
【0030】
41は上述の各部を繋ぐバスである。
【0031】
次に、スキャナ1、ホストコンピュータ2から制御部3にデータを送出した場合に、制御部3が行う処理について説明する。
【0032】
図2は、スキャナ1から制御部3に対して画像データが送出された場合に、制御部3が行う処理のフローチャートである。ここでは、説明をわかりやすくするために、CPU34がROM36プログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもCPUやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。
【0033】
スキャナ入力色処理ブロック31を介して、スキャナ1から送出された画像データの受信をCPU34が検知すると、同図のフローチャートに従った処理が開始される。先ず、CPU34は、スキャナ入力色処理ブロック31に、この画像データに対して各種の色処理を実行させる(ステップS101)。CPU34は、色処理/属性の判断を行った画像データを一時的にRAM35に格納する。そして色処理後の画像データを構成する各画素の属性情報を生成し、生成した属性情報と色処理後の画像データとをセットにして中間データとして記憶装置4にストレージコントローラ部36を介して送出する(ステップS102)。よってこの中間データは記憶装置4に保存されることになる。画素ごとに付与された属性が、1ページにわたって同じ属性であれば、その属性が面属性として付与される。写真画像や文字画像が混在している場合は、混在していることを表す面属性が付与される。さらに、面属性は、画像データの入力源(ここではスキャナ)を識別できる。
【0034】
図3は、ホストコンピュータ2から制御部3に対してPDLデータを送出した場合に、制御部3が行う処理のフローチャートである。ここでは、説明をわかりやすくするために、CPU34がROM36プログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもCPUやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。
【0035】
ホストI/F部32を介して、ホストコンピュータ2から送出されたPDLデータの受信をCPU34が検知すると、同図のフローチャートに従った処理が開始させる。先ず、CPU34は、受けたPDLデータを一時的にRAM35に格納する(ステップS201)。次に、CPU34がこのPDLデータにに基づいてPDL処理部33に上記中間データを生成させる(ステップS202)。即ち、PDL処理部33は、ホストコンピュータ2から送出されたPDLデータが示す画像を構成する各画素のデータと共に、各画素に対する属性情報をセットにしたものを生成する。画素ごとに付与された属性が、1ページ分にわたって同じ属性であれば、その属性が面属性として付与される。写真画像や文字画像が混在している場合は、混在していることを表す面属性が付与される。さらに、面属性は、画像データの入力源(ここではホストコンピュータ)を識別できる。
【0036】
そして生成した中間データを記憶装置4にストレージコントローラ部39を介して送出する(ステップS203)。よってこの中間データは記憶装置4に保存されることになる。
【0037】
次に、CPU34は、記憶装置4に保存された中間データを読み出して画像処理部3に指示することで、画像処理装置に中間データの処理を行わせるためにスケジューラ38が行う処理について、スケジューラ38のフローチャートを示す図4を用いて以下説明する。ここでは、説明をわかりやすくするために、CPU34がROM36プログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもCPUやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。先ず、CPU34は、画像処理部3に記憶装置4に保存されている中間データをRAM35に読み出しを指示する。CPU34は、画像処理部3に読み出した中間データに対してページ毎に付与される面属性と画素毎に付与される画素属性を取得させる(ステップS301)。これを印刷するページ分繰り返し行わせる(ステップS302)。例えば、Nアップ印刷の場合はNページ分取得させる。次に、CPU34は、取得した属性を元にスケジューラ38にスケジューリングを行わせる(ステップS303)。ここでは、各画素の画像データは、その属性が写真画像か文字画像かに応じて、異なる回路構成を持つ画像処理回路で処理される。そこで、回路構成の変更をすくなくするために、ここでは同じ属性の画像データを一括して処理するようにスケジュールするように構成されている。このようにして、画像処理部へ転送される画像データの順序が決定される。
【0038】
ステップS303における処理の詳細については後述する。そしてスケジューリングに基づき、中間データをRAM35から画像処理部37へ転送する(ステップS304)。
【0039】
次に、記憶装置4に保存された中間データを読み出して印字エンジン部5に送出することで、この中間データに従った印刷をこの印字エンジン部5に行わせる為に制御部3が行う処理について、同処理のフローチャートを示す図5を用いて以下説明する。ここでは、説明をわかりやすくするために、CPU34がROM36プログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもCPUやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。先ず、CPU34は、記憶装置4に保存されている中間データをスケジューラ38の指示によってRAMに読み出し、読み出した中間データに対して画像処理部37に階調変換処理実行させる(ステップS401)。ステップS401おける処理の詳細については後述する。
【0040】
これらの処理により、中間データを印字データに変換するので、変換した印字データを印字エンジン部5に出力する(ステップS402)。
【0041】
以上の各処理により、スキャナ1、ホストコンピュータ2の何れから受けたデータであっても、これを中間データに変換して保持することができる。さらに、これに基づいた印刷を行う場合にはこの中間データに対して階調変換などの画像処理を施し、その結果を印字エンジン部5に出力することができる。なお、以上の説明では中間データは一端記憶装置4に保存するとしたが、生成した中間データを記憶装置4に保存することなく、直接階調変換などの画像処理を施し、その結果を印字エンジン部5に出力するようにしても良い。
【0042】
図6は、中間データの構成(フォーマット)例を示す図である。中間データは上述の通り、画像を構成する各画素のデータと、各画素の属性情報とから成るものであるが、より具体的には同図に示す如く、画素のYMCKデータと、この画素の属性情報とから成る。同図では属性情報を4ビットデータ、Y、M、C、Kそれぞれを8ビットデータとしているが、これに限定するものではない。また、画素のデータとしてはYMCK以外の色空間における色データであっても良い。
【0043】
図7は、図6の属性情報の構成(フォーマット)例を示す図である。同図に示す如く、属性情報は、面属性と画素属性とから成る。面属性とは、画素データ(本実施形態ではRGBデータ)がスキャナ1から取得したものであるのか、ホストコンピュータ2から取得したものであるのかを示すものである。例えば「面属性が1の場合にはスキャナ1から取得した」、「面属性が0の場合にはホストコンピュータ2から取得した」というように、面属性を参照することで、中間データがどの装置から得られたデータに基づくものであるのかをチェックすることができる。
【0044】
なお、本実施形態では中間データはスキャナ1、ホストコンピュータ2という2つの装置の何れかから得られたデータに基づくものである。よって、面属性は1,0の何れかの値を取れば良く、そのため入力モードは1ビットで表現できるのであるが、制御部3がより多くの装置からデータを受信できる場合には、その数に応じて面属性を表現するビット数を多くする必要がある。
【0045】
画素属性とは、中間データに含められる画素データ(本実施形態ではYMCKデータ)が、画像上のどの領域内(例えば、写真領域、文字領域など)のものであるのかを示す情報である。なお、同図では像域情報は3ビットでもって表現されるとしているが、これに限定するものではない。
【0046】
図8は、上記画像処理部37の基本構成を示すブロック図である。同図に示す如く、画像処理部37は、データI/F301、データ分離部302、階調変換部303により構成されている。
【0047】
信号処理回路(リコンフィギャラブル)3001は、様々な階調変換処理が実行できるように、自身の回路構成が変更可能なように構成されており、その構成の変更は比較的高速に行うことができる。ここで、データ分離部302から入力された画素データは、この信号処理回路3001によって処理される。そのときの信号処理回路3001の構成は、コンフィグ制御部3002がデータ分離部302から受けた属性情報に応じてコンフィグ制御部3002が指示する。また属性情報によっては、データI/F301からコンフィグ情報を受信した後、コンフィグ制御部3002が指示する。属性情報に応じた信号処理回路3001の回路構成変更処理については後述する。
【0048】
次に、階調変換部303の動作について説明する。階調変換部303内のコンフィグ制御部3002は、データ分離部302から受けた属性情報に含められている像域情報に応じて、信号処理回路3001の回路構成をどの構成に変更するのかを信号処理回路3001に対して指示する。
【0049】
具体的にはコンフィグ制御部3002は、面属性が「0」の場合で画素属性「101」の場合には、信号処理回路3001の回路構成を、面積階調法を用いて文字用の階調変換処理が行えるように変更すべく、信号処理回路3002に対して指示する。また、次の画素が面属性は変わらず画素情報が「011」に変化した場合は、一旦画像処理を停止し、面積階調法を用いて写真用の階調変換処理が行えるように変更すべく、信号処理回路3001に対して指示する。
【0050】
以上のように面属性が変化しない場合は、コンフィグ制御部3002自身が信号処理回路3001に対して指示する。
【0051】
次に、次画素の面属性が「0」から「1」に変化し、画素属性が「101」の場合について説明する。この場合一旦画像処理を停止し、信号処理回路3001の回路構成を、誤差拡散法を用いて文字用の階調変換処理が行えるように変更すべく、コンフィグ制御部3002が、画像処理部外部よりデータI/F301を介して、コンフィグ情報を受け取る。そして、そのコンフィグ情報から回路構成の変更を指示する。また、次の画素が面属性は変わらず画素情報が「011」に変化した場合は、一旦画像処理を停止し、誤差拡散法を用いて写真用の階調変換処理が行えるように変更すべく、信号処理回路3001に対して指示する。
【0052】
以上のように、属性が変化したときは、画像処理部37は画像処理を一旦画像処理を停止し、属性に応じて回路構成を変更する。また、画素属性が変化する場合より面属性が変化したほうが、コンフィグ情報受け取りの分だけ時間がかかる。画素属性の回路構成変更時間をT1、面属性の回路変更時間をT2とすると、T1<T2となる。
【0053】
図4のステップS302におけるスケジューリングの詳細を図9および図10および図11に基づいて説明する。
【0054】
図9は2in1(2アップ)印刷のページレイアウト例である。図2、図3のフローが実行されることによって、図9に示す画像データの分布が判断される。ページaはスキャナ1から送出された画像データであり、ページbはホストコンピュータ2から送出されたPDLの画像データである。それぞれ文字領域、写真領域が存在する。それぞれの画素については面属性と画素属性が付与されている。即ち、ページaの写真領域画素には面属性「1」画素属性「011」、文字領域の画素には面属性「1」画素属性「101」が付与されている。また、ページbの写真領域画素には面属性「0」画素属性「011」、文字領域の画素には面属性「0」画素属性「101」が付与されている。
【0055】
図10はスケジューラ38が行うスケジューリング処理のフローチャートである。ここでは、説明をわかりやすくするために、スケジューラ38が不図示のROMのプログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもCPUやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。また、CPU34がROM36プログラムに従って同様の制御を実行してもよい。
【0056】
印刷するページ分の属性を取得後、例えば、スキャナ文字領域・PDL写真領域といったそれぞれの画素を同一の属性でまとめ、グループ化する(ステップS501)。
【0057】
次に、グループ化された画素グループ間で、画像処理部37へ転送する順序の並び換えを行う(ステップS502)。画素グループが異なることは即ち属性が異なることである。よって、画像処理部37は回路構成変更が必要となり、画像処理を一時停止し、それによってT1またはT2の回路構成変更時間が発生する。画素グループが複数ある場合は、印刷するページに応じて複数のT1またはT2の組み合わせが発生する。処理時間を削減するには、この組み合わせによる時間が最小となればよい。スケジューラ38はこの組み合わせが最小となるまで並び換えを行う(ステップS503)。この並び換えの詳細は図11を用いて後述する。
【0058】
図11はスケジューラ38が行うスケジューリング処理の展開を表した図である。図9の印刷ページをページ左上から右下に向かって逐次走査し画像処理部へ入力すると、図11の「スケジューリング無し」のような時間経過となる。即ち、領域やページの変化毎に回路構成変更が発生し、ページ印刷の時間が非常に長くなる。
【0059】
スケジューラ38は、図10で説明した通りページ内で同じ属性の画素同士をグループ化して、画像処理部に画像データの転送を行うようにスケジューリングを決定する。「スケジューリング1」「スケジューリング2」「スケジューリング3」はそのスケジューリングの結果例である。
【0060】
前記T1またはT2の組み合わせ時間をT、T1が発生する回数をM、T2が発生する回数をNとするとTは式(1)で表される。
T = T1×M + T2×N …(1)
ここでTが最小となるようにスケジューリングを行う。同じ属性の画素同士をグループ化した後は、グループの数はそのページが持つ属性の種類に等しい。即ちグループ化後は(M+N)は一定となる。よって、T1<T2である場合、Tを最小にするにはNを最小化させるようにスケジューリングすればよい。
【0061】
「スケジューリング1」は文字・写真の画素属性でグループ化して、スケジューリングを実施している。「スケジューリング無し」よりも処理時間は短縮されるが、N=3で時間T2が多く発生している。
【0062】
「スケジューリング2」は文字・写真の画素属性でグループ化して、さらにスキャナの面属性をグループ化したスケジューリングである。「スケジューリング1」と比べるとN=2となり時間T2が削減されている。
【0063】
「スケジューリング3」は文字・写真の画素属性でグループ化して、さらにスキャナ・PDLの面属性をグループ化したスケジューリングである。「スケジューリング2」と比べるとN=1となり時間T2が削減されている。
【0064】
この例では、2in1印刷でスキャナ入力、PDL入力と二種類の面属性があり、N=0とすることはできない。よって「スケジューリング3」が最小の時間となり、この結果に沿って画像処理部37に画像データを転送する。
【0065】
図12は、スケジューリングを行った際の信号処理回路3001の構成が切り替わる様子を示す図である。
【0066】
このように、入力された画像の入力源や画像の属性に応じて処理を行う画像処理を行う回路の構成が異なる。このため、同じ回路構成で処理できる画像データをできるだけ一括して処理することで、入力順で処理する場合と比べ異なる画像処理を行うための回路を構成する回数を著しく減らすことができる。
【0067】
以上の説明により、本実施形態によって、処理時間を削減させて各種の画像処理を行うことができる。
【0068】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給することによって達成される。その際、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、実現できる。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【0069】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるがこれに限らない。
【0070】
即ち、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0071】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれる場合においても、前述した実施形態の機能が実現される。この場合、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行う。その処理によって、前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0072】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【0073】
【図1】本説明の実施形態にかかわる画像処理装置を適用したシステムの機能構成を表すブロック図である。
【図2】スキャナ1から制御部3に対して画像データが送出された場合に、制御部3が行う処理のフローチャートである。
【図3】ホストコンピュータ2から制御部3に対してPDLデータを送出した場合に、制御部3が行う処理のフローチャートである。
【図4】記憶装置4に保存された中間データを読み出して画像処理部3に指示することで、画像処理装置に中間データの処理を行わせるためにスケジューラ38が行う処理のフローチャートである。
【図5】記憶装置4に保存された中間データを読み出して印字エンジン部5に送出することで、この中間データに従った印刷をこの印字エンジン部5に行わせるために制御部3が行う処理のフローチャートである。
【図6】中間データの構成(フォーマット)例を示す図である。
【図7】属性情報の構成(フォーマット)例を示す図である。
【図8】画像処理部35の基本構成を示すブロック図である。
【図9】2in1(2アップ)印刷のページレイアウト例である。
【図10】スケジューラ38が行うスケジューリング処理のフローチャートである。
【図11】スケジューリング展開を表した図である。
【図12】スケジューリングを行った際の信号処理回路3001の構成が切り替わる様子を示す図である。
【技術分野】
【0001】
本発明は、画像処理装置、プログラム及び画像処理装置の制御方法に関する。
【背景技術】
【0002】
従来、スキャナにより読み取られた画像データや、ホストコンピュータから送出された画像データ等を取得し、取得したデータに各種の画像処理を施し、印刷データとして展開する画像処理装置では、高画質な印刷を求められている。
【0003】
このような高画質な印刷を実現するため、画像内のデータが文字、写真といった画素属性、画像データの送信元がスキャナ、ホストコンピュータといったページ毎の面属性に応じて専用の画像処理を施す必要がある。
【0004】
これらの属性を好適に利用することで、複数ある画像処理装置の処理負荷を最適化する試みがなされている(特許文献1参照)。また、それぞれの画像処理専用のハードウェア全てを備えると、回路規模等が増大してコストアップとなるので、複数種の画像処理のそれぞれを実行可能な処理手段を用意し、前記処理手段を制御する制御手段を備える提案がなされている(特許文献2参照)。
【特許文献1】特開2007−081795号公報
【特許文献2】特開2006−285792号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかし上述した従来の画像処理装置においては、様々な属性の画像データが逐次入力された場合、処理手段の切り換えによる切り換え時間が多くなり、全体の処理時間がかかってしまう。
【0006】
本発明はこのような問題に鑑みてなされたものであり、画像データの属性に応じて画像処理手段に転送する画像データの順序を制御することにより、画像処理する時間を短縮するための技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の目的を達成するために、本発明の画像処理装置は、入力された画像データの属性を判断する判断手段と、前記入力された画像データの属性に応じて、該画像データを処理する回路の構成を変更する画像処理手段と、前記画像処理手段に転送する画像データの順序を制御する制御手段とを有し、前記制御手段は、前記画像処理手段の回路構成の変更を少なくするべく、転送する画像データの順序を制御することを特徴とする。
【0008】
さらに、本発明のプログラムは、回路構成を変更できる画像処理手段を有する画像処理装置を制御するプログラムであって、入力された画像データの属性を判断する判断工程と、前記入力された画像データの属性に応じて、前記画像処理手段に該画像データを処理する回路の構成を変更させる変更工程と、前記画像処理手段に転送する画像データの順序を、前記画像処理手段の回路構成の変更を少なくするべく制御する制御工程を有することを特徴とする。
【0009】
さらに、本発明の画像処理回路の制御方法は、回路構成を変更できる画像処理手段を有する画像処理装置の制御方法であって、入力された画像データの属性を判断する判断工程と、前記入力された画像データの属性に応じて、前記画像処理手段に該画像データを処理する回路の構成を変更させる変更工程と、前記画像処理手段に転送する画像データの順序を、前記画像処理手段の回路構成の変更を少なくするべく制御する制御工程を有することを特徴とする。
【発明の効果】
【0010】
本発明によれば、画像データの属性に応じて画像処理手段に転送する画像データの順序を制御することにより、画像処理する時間を短縮することができる。
【発明を実施するための最良の形態】
【0011】
以下に、図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。
【0012】
図1は、本実施形態に係る画像処理装置を適用したシステムの機能構成を示すブロック図である。同図に示したシステムは大まかには、スキャナ1、ホストコンピュータ2、制御部3、記憶装置4、印字エンジン部5により構成されている。
【0013】
スキャナ1は周知の通り、紙などの記録媒体上に記録された情報(画像、文字など)を読み取り、読み取った画像データとして出力する。出力した画像のデータは制御部3に入力される。
【0014】
ホストコンピュータ2は、一般のPC(パーソナルコンピュータ)やWS(ワークステーション)などのコンピュータであって、このコンピュータでもって作成された画像や文書はPDLデータとして制御部3に入力される。
【0015】
このように制御部3はスキャナ1やホストコンピュータ2から送出されたデータを受け取ることができる。よって当然、制御部3とスキャナ1、制御部3とホストコンピュータ2とはデータ通信が可能なようにネットワークが形成されているのであるが、このネットワークの構成については特に限定するものではない。
【0016】
制御部3はスキャナ1やホストコンピュータ2から受けたデータに基づいて各種の画像処理をし、画像処理された画像データを出力する。なお、制御部3、および制御部3が行う処理の詳細については後述する。
【0017】
記憶装置4は、制御部3から出力された画像データを記憶、保持するものである。
【0018】
印字エンジン部5は、制御部3から出力された画像データに基づいて、紙などの記憶媒体上に印字処理を行う。
【0019】
なお、本実施形態では制御部3にデータを入力するのはスキャナ1とホストコンピュータ2の2つとしたが、これ以外の装置であっても良く、例えば複合機やファクシミリ装置などから送出されたデータを制御部3に入力するようにしても良い。
【0020】
次に、制御部3の構成について説明する。制御部3はスキャナ入力色処理ブロック31、ホストI/F部32、PDL処理部33、CPU34、RAM35、ROM36、画像処理部37、スケジューラ38、ストレージコントローラ部39、エンジンI/F部40により構成されている。
【0021】
スキャナ入力色処理ブロック31は、スキャナ1から入力されたR/G/B形式の画像データを受け、入力された画像データにY/M/C/K形式の画像データに変換する色処理を行う。ここで、スキャナ入力色処理ブロック31は、このような色変換処理だけでなく入力された画像データに対して、画素単位で文字画像を示す属性か写真画像を示す属性かを判断するように構成されている。属性を判断する方法は、公知の判断手法を使えばよい。ホストI/F部32は、ホストコンピュータ2から送出されたPDLデータを受けるためのインターフェースとして機能するものである。なお、ホストI/F部32は、制御部3とホストコンピュータ2とを繋ぐネットワークに応じたものとなるのであるが、例えば、イーサネット(登録商標)やシリアルインターフェースもしくは、パラレルインターフェースといったもので構成されている。
【0022】
PDL処理部33は、ホストI/F部32が受けたPDLデータを展開する処理を行う。ここで、PDL処理部33は、PDLデータを展開する処理だけでなく入力された画像データに対して、画素単位で文字画像を示す属性か写真画像を示す属性かを判断するように構成されている。属性を判断する方法は、公知の判断手法を使えばよい。
【0023】
CPU34は、RAM35やROM36に格納されているコンピュータ読み取り可能な制御プログラムやデータを用いて制御部3全体の制御を行うと共に、制御部3が行う後述の各処理を実行する。
【0024】
RAM35は、スキャナ入力色処理ブロック31やホストI/F部32を介してスキャナ1やホストコンピュータ2から受信したデータを一時的に記憶するためのエリアを備えると共に、CPU34が各種の処理を実行する際に用いるワークエリアを備える。
【0025】
ROM36は、CPU34に制御部3全体を制御すると共に、制御部3が行う後述の各処理をCPU34に実行させるためのプログラムやデータ、また、制御部3の設定データなどが格納されている。
【0026】
画像処理部37は、スキャナ1やホストコンピュータ2から送出されたデータに基づいた画像に対する画像処理を行う。画像処理部37が行う処理の詳細については後述する。
【0027】
スケジューラ38は、画像処理部37へ転送する中間データの順序を決定する。スケジューラ38が行う処理の詳細については後述する。
【0028】
ストレージコントローラ部39は、制御部3によって画像処理された画像データを記憶装置4に記録する処理を制御する。
【0029】
エンジンI/F部40は、制御部3によって画像処理された画像データを印字エンジン部5に送出するための一連の処理を行う。
【0030】
41は上述の各部を繋ぐバスである。
【0031】
次に、スキャナ1、ホストコンピュータ2から制御部3にデータを送出した場合に、制御部3が行う処理について説明する。
【0032】
図2は、スキャナ1から制御部3に対して画像データが送出された場合に、制御部3が行う処理のフローチャートである。ここでは、説明をわかりやすくするために、CPU34がROM36プログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもCPUやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。
【0033】
スキャナ入力色処理ブロック31を介して、スキャナ1から送出された画像データの受信をCPU34が検知すると、同図のフローチャートに従った処理が開始される。先ず、CPU34は、スキャナ入力色処理ブロック31に、この画像データに対して各種の色処理を実行させる(ステップS101)。CPU34は、色処理/属性の判断を行った画像データを一時的にRAM35に格納する。そして色処理後の画像データを構成する各画素の属性情報を生成し、生成した属性情報と色処理後の画像データとをセットにして中間データとして記憶装置4にストレージコントローラ部36を介して送出する(ステップS102)。よってこの中間データは記憶装置4に保存されることになる。画素ごとに付与された属性が、1ページにわたって同じ属性であれば、その属性が面属性として付与される。写真画像や文字画像が混在している場合は、混在していることを表す面属性が付与される。さらに、面属性は、画像データの入力源(ここではスキャナ)を識別できる。
【0034】
図3は、ホストコンピュータ2から制御部3に対してPDLデータを送出した場合に、制御部3が行う処理のフローチャートである。ここでは、説明をわかりやすくするために、CPU34がROM36プログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもCPUやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。
【0035】
ホストI/F部32を介して、ホストコンピュータ2から送出されたPDLデータの受信をCPU34が検知すると、同図のフローチャートに従った処理が開始させる。先ず、CPU34は、受けたPDLデータを一時的にRAM35に格納する(ステップS201)。次に、CPU34がこのPDLデータにに基づいてPDL処理部33に上記中間データを生成させる(ステップS202)。即ち、PDL処理部33は、ホストコンピュータ2から送出されたPDLデータが示す画像を構成する各画素のデータと共に、各画素に対する属性情報をセットにしたものを生成する。画素ごとに付与された属性が、1ページ分にわたって同じ属性であれば、その属性が面属性として付与される。写真画像や文字画像が混在している場合は、混在していることを表す面属性が付与される。さらに、面属性は、画像データの入力源(ここではホストコンピュータ)を識別できる。
【0036】
そして生成した中間データを記憶装置4にストレージコントローラ部39を介して送出する(ステップS203)。よってこの中間データは記憶装置4に保存されることになる。
【0037】
次に、CPU34は、記憶装置4に保存された中間データを読み出して画像処理部3に指示することで、画像処理装置に中間データの処理を行わせるためにスケジューラ38が行う処理について、スケジューラ38のフローチャートを示す図4を用いて以下説明する。ここでは、説明をわかりやすくするために、CPU34がROM36プログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもCPUやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。先ず、CPU34は、画像処理部3に記憶装置4に保存されている中間データをRAM35に読み出しを指示する。CPU34は、画像処理部3に読み出した中間データに対してページ毎に付与される面属性と画素毎に付与される画素属性を取得させる(ステップS301)。これを印刷するページ分繰り返し行わせる(ステップS302)。例えば、Nアップ印刷の場合はNページ分取得させる。次に、CPU34は、取得した属性を元にスケジューラ38にスケジューリングを行わせる(ステップS303)。ここでは、各画素の画像データは、その属性が写真画像か文字画像かに応じて、異なる回路構成を持つ画像処理回路で処理される。そこで、回路構成の変更をすくなくするために、ここでは同じ属性の画像データを一括して処理するようにスケジュールするように構成されている。このようにして、画像処理部へ転送される画像データの順序が決定される。
【0038】
ステップS303における処理の詳細については後述する。そしてスケジューリングに基づき、中間データをRAM35から画像処理部37へ転送する(ステップS304)。
【0039】
次に、記憶装置4に保存された中間データを読み出して印字エンジン部5に送出することで、この中間データに従った印刷をこの印字エンジン部5に行わせる為に制御部3が行う処理について、同処理のフローチャートを示す図5を用いて以下説明する。ここでは、説明をわかりやすくするために、CPU34がROM36プログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもCPUやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。先ず、CPU34は、記憶装置4に保存されている中間データをスケジューラ38の指示によってRAMに読み出し、読み出した中間データに対して画像処理部37に階調変換処理実行させる(ステップS401)。ステップS401おける処理の詳細については後述する。
【0040】
これらの処理により、中間データを印字データに変換するので、変換した印字データを印字エンジン部5に出力する(ステップS402)。
【0041】
以上の各処理により、スキャナ1、ホストコンピュータ2の何れから受けたデータであっても、これを中間データに変換して保持することができる。さらに、これに基づいた印刷を行う場合にはこの中間データに対して階調変換などの画像処理を施し、その結果を印字エンジン部5に出力することができる。なお、以上の説明では中間データは一端記憶装置4に保存するとしたが、生成した中間データを記憶装置4に保存することなく、直接階調変換などの画像処理を施し、その結果を印字エンジン部5に出力するようにしても良い。
【0042】
図6は、中間データの構成(フォーマット)例を示す図である。中間データは上述の通り、画像を構成する各画素のデータと、各画素の属性情報とから成るものであるが、より具体的には同図に示す如く、画素のYMCKデータと、この画素の属性情報とから成る。同図では属性情報を4ビットデータ、Y、M、C、Kそれぞれを8ビットデータとしているが、これに限定するものではない。また、画素のデータとしてはYMCK以外の色空間における色データであっても良い。
【0043】
図7は、図6の属性情報の構成(フォーマット)例を示す図である。同図に示す如く、属性情報は、面属性と画素属性とから成る。面属性とは、画素データ(本実施形態ではRGBデータ)がスキャナ1から取得したものであるのか、ホストコンピュータ2から取得したものであるのかを示すものである。例えば「面属性が1の場合にはスキャナ1から取得した」、「面属性が0の場合にはホストコンピュータ2から取得した」というように、面属性を参照することで、中間データがどの装置から得られたデータに基づくものであるのかをチェックすることができる。
【0044】
なお、本実施形態では中間データはスキャナ1、ホストコンピュータ2という2つの装置の何れかから得られたデータに基づくものである。よって、面属性は1,0の何れかの値を取れば良く、そのため入力モードは1ビットで表現できるのであるが、制御部3がより多くの装置からデータを受信できる場合には、その数に応じて面属性を表現するビット数を多くする必要がある。
【0045】
画素属性とは、中間データに含められる画素データ(本実施形態ではYMCKデータ)が、画像上のどの領域内(例えば、写真領域、文字領域など)のものであるのかを示す情報である。なお、同図では像域情報は3ビットでもって表現されるとしているが、これに限定するものではない。
【0046】
図8は、上記画像処理部37の基本構成を示すブロック図である。同図に示す如く、画像処理部37は、データI/F301、データ分離部302、階調変換部303により構成されている。
【0047】
信号処理回路(リコンフィギャラブル)3001は、様々な階調変換処理が実行できるように、自身の回路構成が変更可能なように構成されており、その構成の変更は比較的高速に行うことができる。ここで、データ分離部302から入力された画素データは、この信号処理回路3001によって処理される。そのときの信号処理回路3001の構成は、コンフィグ制御部3002がデータ分離部302から受けた属性情報に応じてコンフィグ制御部3002が指示する。また属性情報によっては、データI/F301からコンフィグ情報を受信した後、コンフィグ制御部3002が指示する。属性情報に応じた信号処理回路3001の回路構成変更処理については後述する。
【0048】
次に、階調変換部303の動作について説明する。階調変換部303内のコンフィグ制御部3002は、データ分離部302から受けた属性情報に含められている像域情報に応じて、信号処理回路3001の回路構成をどの構成に変更するのかを信号処理回路3001に対して指示する。
【0049】
具体的にはコンフィグ制御部3002は、面属性が「0」の場合で画素属性「101」の場合には、信号処理回路3001の回路構成を、面積階調法を用いて文字用の階調変換処理が行えるように変更すべく、信号処理回路3002に対して指示する。また、次の画素が面属性は変わらず画素情報が「011」に変化した場合は、一旦画像処理を停止し、面積階調法を用いて写真用の階調変換処理が行えるように変更すべく、信号処理回路3001に対して指示する。
【0050】
以上のように面属性が変化しない場合は、コンフィグ制御部3002自身が信号処理回路3001に対して指示する。
【0051】
次に、次画素の面属性が「0」から「1」に変化し、画素属性が「101」の場合について説明する。この場合一旦画像処理を停止し、信号処理回路3001の回路構成を、誤差拡散法を用いて文字用の階調変換処理が行えるように変更すべく、コンフィグ制御部3002が、画像処理部外部よりデータI/F301を介して、コンフィグ情報を受け取る。そして、そのコンフィグ情報から回路構成の変更を指示する。また、次の画素が面属性は変わらず画素情報が「011」に変化した場合は、一旦画像処理を停止し、誤差拡散法を用いて写真用の階調変換処理が行えるように変更すべく、信号処理回路3001に対して指示する。
【0052】
以上のように、属性が変化したときは、画像処理部37は画像処理を一旦画像処理を停止し、属性に応じて回路構成を変更する。また、画素属性が変化する場合より面属性が変化したほうが、コンフィグ情報受け取りの分だけ時間がかかる。画素属性の回路構成変更時間をT1、面属性の回路変更時間をT2とすると、T1<T2となる。
【0053】
図4のステップS302におけるスケジューリングの詳細を図9および図10および図11に基づいて説明する。
【0054】
図9は2in1(2アップ)印刷のページレイアウト例である。図2、図3のフローが実行されることによって、図9に示す画像データの分布が判断される。ページaはスキャナ1から送出された画像データであり、ページbはホストコンピュータ2から送出されたPDLの画像データである。それぞれ文字領域、写真領域が存在する。それぞれの画素については面属性と画素属性が付与されている。即ち、ページaの写真領域画素には面属性「1」画素属性「011」、文字領域の画素には面属性「1」画素属性「101」が付与されている。また、ページbの写真領域画素には面属性「0」画素属性「011」、文字領域の画素には面属性「0」画素属性「101」が付与されている。
【0055】
図10はスケジューラ38が行うスケジューリング処理のフローチャートである。ここでは、説明をわかりやすくするために、スケジューラ38が不図示のROMのプログラムに従って、フローチャートを用いて制御する例を説明する。しかし、必ずしもCPUやプログラムを用いて構成する必要はない。以下のフローを実行する専用のハードウェアを使って構成してもよい。また、CPU34がROM36プログラムに従って同様の制御を実行してもよい。
【0056】
印刷するページ分の属性を取得後、例えば、スキャナ文字領域・PDL写真領域といったそれぞれの画素を同一の属性でまとめ、グループ化する(ステップS501)。
【0057】
次に、グループ化された画素グループ間で、画像処理部37へ転送する順序の並び換えを行う(ステップS502)。画素グループが異なることは即ち属性が異なることである。よって、画像処理部37は回路構成変更が必要となり、画像処理を一時停止し、それによってT1またはT2の回路構成変更時間が発生する。画素グループが複数ある場合は、印刷するページに応じて複数のT1またはT2の組み合わせが発生する。処理時間を削減するには、この組み合わせによる時間が最小となればよい。スケジューラ38はこの組み合わせが最小となるまで並び換えを行う(ステップS503)。この並び換えの詳細は図11を用いて後述する。
【0058】
図11はスケジューラ38が行うスケジューリング処理の展開を表した図である。図9の印刷ページをページ左上から右下に向かって逐次走査し画像処理部へ入力すると、図11の「スケジューリング無し」のような時間経過となる。即ち、領域やページの変化毎に回路構成変更が発生し、ページ印刷の時間が非常に長くなる。
【0059】
スケジューラ38は、図10で説明した通りページ内で同じ属性の画素同士をグループ化して、画像処理部に画像データの転送を行うようにスケジューリングを決定する。「スケジューリング1」「スケジューリング2」「スケジューリング3」はそのスケジューリングの結果例である。
【0060】
前記T1またはT2の組み合わせ時間をT、T1が発生する回数をM、T2が発生する回数をNとするとTは式(1)で表される。
T = T1×M + T2×N …(1)
ここでTが最小となるようにスケジューリングを行う。同じ属性の画素同士をグループ化した後は、グループの数はそのページが持つ属性の種類に等しい。即ちグループ化後は(M+N)は一定となる。よって、T1<T2である場合、Tを最小にするにはNを最小化させるようにスケジューリングすればよい。
【0061】
「スケジューリング1」は文字・写真の画素属性でグループ化して、スケジューリングを実施している。「スケジューリング無し」よりも処理時間は短縮されるが、N=3で時間T2が多く発生している。
【0062】
「スケジューリング2」は文字・写真の画素属性でグループ化して、さらにスキャナの面属性をグループ化したスケジューリングである。「スケジューリング1」と比べるとN=2となり時間T2が削減されている。
【0063】
「スケジューリング3」は文字・写真の画素属性でグループ化して、さらにスキャナ・PDLの面属性をグループ化したスケジューリングである。「スケジューリング2」と比べるとN=1となり時間T2が削減されている。
【0064】
この例では、2in1印刷でスキャナ入力、PDL入力と二種類の面属性があり、N=0とすることはできない。よって「スケジューリング3」が最小の時間となり、この結果に沿って画像処理部37に画像データを転送する。
【0065】
図12は、スケジューリングを行った際の信号処理回路3001の構成が切り替わる様子を示す図である。
【0066】
このように、入力された画像の入力源や画像の属性に応じて処理を行う画像処理を行う回路の構成が異なる。このため、同じ回路構成で処理できる画像データをできるだけ一括して処理することで、入力順で処理する場合と比べ異なる画像処理を行うための回路を構成する回数を著しく減らすことができる。
【0067】
以上の説明により、本実施形態によって、処理時間を削減させて各種の画像処理を行うことができる。
【0068】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給することによって達成される。その際、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、実現できる。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【0069】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるがこれに限らない。
【0070】
即ち、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0071】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれる場合においても、前述した実施形態の機能が実現される。この場合、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行う。その処理によって、前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0072】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【0073】
【図1】本説明の実施形態にかかわる画像処理装置を適用したシステムの機能構成を表すブロック図である。
【図2】スキャナ1から制御部3に対して画像データが送出された場合に、制御部3が行う処理のフローチャートである。
【図3】ホストコンピュータ2から制御部3に対してPDLデータを送出した場合に、制御部3が行う処理のフローチャートである。
【図4】記憶装置4に保存された中間データを読み出して画像処理部3に指示することで、画像処理装置に中間データの処理を行わせるためにスケジューラ38が行う処理のフローチャートである。
【図5】記憶装置4に保存された中間データを読み出して印字エンジン部5に送出することで、この中間データに従った印刷をこの印字エンジン部5に行わせるために制御部3が行う処理のフローチャートである。
【図6】中間データの構成(フォーマット)例を示す図である。
【図7】属性情報の構成(フォーマット)例を示す図である。
【図8】画像処理部35の基本構成を示すブロック図である。
【図9】2in1(2アップ)印刷のページレイアウト例である。
【図10】スケジューラ38が行うスケジューリング処理のフローチャートである。
【図11】スケジューリング展開を表した図である。
【図12】スケジューリングを行った際の信号処理回路3001の構成が切り替わる様子を示す図である。
【特許請求の範囲】
【請求項1】
画像処理装置であって、
入力された画像データの属性を判断する判断手段と、
前記入力された画像データの属性に応じて、該画像データを処理する回路の構成を変更する画像処理手段と、
前記画像処理手段に転送する画像データの順序を制御する制御手段とを有し、
前記制御手段は、前記画像処理手段の回路構成の変更を少なくするべく、転送する画像データの順序を制御することを特徴とする画像処理装置。
【請求項2】
前記制御手段は、前記画像処理手段が同じ属性を有する画像データを一括して処理できるように前記転送する画像データの順序を制御することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記制御手段は、前記画像処理手段に画像データの属性を示す情報に応じた画像処理を実行できるように前記画像処理手段に対して回路構成を指示することを特徴とする請求項1または2に記載の画像処理装置。
【請求項4】
前記制御手段は、属性ごとの画像データの分布に応じて、画像データを転送する画像データの順序を決定することを特徴とする請求項1ないし3のいずれか1項に記載の画像処理装置。
【請求項5】
前記判断手段は、前記入力された画像データの属性を画素単位で判断することを特徴とする請求項1ないし4のいずれか1項に記載の画像処理装置。
【請求項6】
前記判断手段は、前記入力された画像データの属性をページ毎に判断することを特徴とする請求項1ないし5のいずれか1項に記載の画像処理装置。
【請求項7】
回路構成を変更可できる画像処理手段を有する画像処理装置に、
入力された画像データの属性を判断する判断工程と、
前記入力された画像データの属性に応じて、前記画像処理手段に該画像データを処理する回路の構成を変更させる変更工程と、
前記画像処理手段に転送する画像データの順序を、前記画像処理手段の回路構成の変更を少なくするべく制御する制御工程と、
を実行させるためのコンピュータ読み取り可能なプログラム。
【請求項8】
前記制御工程は、前記画像処理手段が同じ属性を有する画像データを一括して処理できるように前記転送する画像データの順序を制御することを特徴とする請求項7に記載のプログラム。
【請求項9】
前記制御工程は、前記画像処理手段に画像データの属性を示す情報に応じた画像処理を実行できるように前記画像処理手段に対して回路構成を指示することを特徴とする請求項7または8に記載のプログラム。
【請求項10】
前記制御工程は、属性ごとの画像データの分布に応じて、画像データを転送する画像データの順序を決定することを特徴とする請求項7ないし9のいずれか1項に記載のプログラム。
【請求項11】
前記判断工程は、前記入力された画像データの属性を画素単位で判断することを特徴とする請求項7ないし10のいずれか1項に記載のプログラム。
【請求項12】
前記判断工程は、前記入力された画像データの属性をページ毎に判断することを特徴とする請求項7ないし11のいずれか1項に記載のプログラム。
【請求項13】
回路構成を変更できる画像処理手段を有する画像処理装置の制御方法であって、
入力された画像データの属性を判断する判断工程と、
前記入力された画像データの属性に応じて、前記画像処理手段に該画像データを処理する回路の構成を変更させる変更工程と、
前記画像処理手段に転送する画像データの順序を、前記画像処理手段の回路構成の変更を少なくするべく制御する制御工程と、
を有することを特徴とする画像処理装置の制御方法。
【請求項1】
画像処理装置であって、
入力された画像データの属性を判断する判断手段と、
前記入力された画像データの属性に応じて、該画像データを処理する回路の構成を変更する画像処理手段と、
前記画像処理手段に転送する画像データの順序を制御する制御手段とを有し、
前記制御手段は、前記画像処理手段の回路構成の変更を少なくするべく、転送する画像データの順序を制御することを特徴とする画像処理装置。
【請求項2】
前記制御手段は、前記画像処理手段が同じ属性を有する画像データを一括して処理できるように前記転送する画像データの順序を制御することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記制御手段は、前記画像処理手段に画像データの属性を示す情報に応じた画像処理を実行できるように前記画像処理手段に対して回路構成を指示することを特徴とする請求項1または2に記載の画像処理装置。
【請求項4】
前記制御手段は、属性ごとの画像データの分布に応じて、画像データを転送する画像データの順序を決定することを特徴とする請求項1ないし3のいずれか1項に記載の画像処理装置。
【請求項5】
前記判断手段は、前記入力された画像データの属性を画素単位で判断することを特徴とする請求項1ないし4のいずれか1項に記載の画像処理装置。
【請求項6】
前記判断手段は、前記入力された画像データの属性をページ毎に判断することを特徴とする請求項1ないし5のいずれか1項に記載の画像処理装置。
【請求項7】
回路構成を変更可できる画像処理手段を有する画像処理装置に、
入力された画像データの属性を判断する判断工程と、
前記入力された画像データの属性に応じて、前記画像処理手段に該画像データを処理する回路の構成を変更させる変更工程と、
前記画像処理手段に転送する画像データの順序を、前記画像処理手段の回路構成の変更を少なくするべく制御する制御工程と、
を実行させるためのコンピュータ読み取り可能なプログラム。
【請求項8】
前記制御工程は、前記画像処理手段が同じ属性を有する画像データを一括して処理できるように前記転送する画像データの順序を制御することを特徴とする請求項7に記載のプログラム。
【請求項9】
前記制御工程は、前記画像処理手段に画像データの属性を示す情報に応じた画像処理を実行できるように前記画像処理手段に対して回路構成を指示することを特徴とする請求項7または8に記載のプログラム。
【請求項10】
前記制御工程は、属性ごとの画像データの分布に応じて、画像データを転送する画像データの順序を決定することを特徴とする請求項7ないし9のいずれか1項に記載のプログラム。
【請求項11】
前記判断工程は、前記入力された画像データの属性を画素単位で判断することを特徴とする請求項7ないし10のいずれか1項に記載のプログラム。
【請求項12】
前記判断工程は、前記入力された画像データの属性をページ毎に判断することを特徴とする請求項7ないし11のいずれか1項に記載のプログラム。
【請求項13】
回路構成を変更できる画像処理手段を有する画像処理装置の制御方法であって、
入力された画像データの属性を判断する判断工程と、
前記入力された画像データの属性に応じて、前記画像処理手段に該画像データを処理する回路の構成を変更させる変更工程と、
前記画像処理手段に転送する画像データの順序を、前記画像処理手段の回路構成の変更を少なくするべく制御する制御工程と、
を有することを特徴とする画像処理装置の制御方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2010−136275(P2010−136275A)
【公開日】平成22年6月17日(2010.6.17)
【国際特許分類】
【出願番号】特願2008−312376(P2008−312376)
【出願日】平成20年12月8日(2008.12.8)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成22年6月17日(2010.6.17)
【国際特許分類】
【出願日】平成20年12月8日(2008.12.8)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]