(57)【特許請求の範囲】
【請求項１】
画像データから印刷用のドットデータを作成する画像処理を第１のプロセッサーおよび第２のプロセッサーを含む複数のプロセッサーで行なうデータ作成部と、
該データ作成部から送られる前記ドットデータに基づいて印刷媒体に印刷を行なう印刷部とを備えた印刷装置であって、
前記データ作成部は、
前記画像データを前記第１のプロセッサーを使用し、前記第２のプロセッサーを使用しない第１の処理モードと、前記第１のプロセッサーと前記第２のプロセッサーを使用する第２の処理モードと、
を備え、
前記画像処理を、前記第１の処理モードで実行するか、第２の処理モードで実行するかを、前記画像データの隣接する画素の階調値が変化する度合いによる複雑度によって決定し、
前記第１のプロセッサーおよび前記第２のプロセッサーを含む複数のプロセッサーが、同時並行で、同じ処理を実行する、印刷装置。
【請求項２】
請求項１に記載の印刷装置において、
前記複雑度は、前記画像データの隣接する画素の階調値の微分値の変化の度合いから求
めた値である、印刷装置。
【請求項３】
請求項２に記載の印刷装置において、
前記データ作成部は、前記第２の処理モードの実行時の前記プロセッサーの消費電力が
前記第１の処理モードの実行時の前記プロセッサーの消費電力より大きい、印刷装置。
【請求項４】
請求項２に記載の印刷装置において、
前記データ作成部は、前記第２の処理モードの実行時の前記プロセッサーの発熱量が前
記第１の処理モードの実行時の前記プロセッサーの発熱量より大きい、印刷装置。
【請求項５】
請求項１ないし請求項４のいずれかに記載の印刷装置において、
前記データ作成部は、前記第１の処理モードと前記第２の処理モードとを切り換えて画
像処理できる画像データのサイズを単位処理量とすると、該単位処理量の画像データを複
数の領域に分けて、各々の領域を前記複数のプロセッサーで分担して画像処理を行なう、
印刷装置。
【請求項６】
請求項５に記載の印刷装置において、
前記領域内の画像データは、前記印刷媒体に印刷されるときの前記印刷媒体の搬送方向
と直角方向に分けられている、印刷装置。
【請求項７】
請求項５に記載の印刷装置において、
前記領域内の画像データは、前記印刷媒体に印刷されるときの前記印刷媒体の搬送方向
に分けられている、印刷装置。
【請求項８】
請求項２ないし請求項７のいずれかに記載の印刷装置において、
前記データ作成部は、所定の時間当たりに生成するドットデータの量が、前記所定の時
間内に印刷できるドットデータの量を超えた状況にて、前記第１の処理モードから第２の
処理モードへ切り換えることを決定する、印刷装置。
【請求項９】
請求項８に記載の印刷装置において、
前記印刷部が印刷を停止した状況にて、前記第１の処理モードから前記第２の処理モー
ドに移行する、印刷装置。
【請求項１０】
画像データから印刷用のドットデータを作成する画像処理を第１のプロセッサーおよび第２のプロセッサーを含む複数のプロセッサーで行ない、
前記ドットデータに基づいて印刷媒体に印刷を行なう印刷方法であって、
前記画像データを前記第１のプロセッサーを使用し、前記第２のプロセッサーを使用しない第１の処理モードと、前記第１のプロセッサーと前記第２のプロセッサーを使用する第２の処理モードと、
を備え、
前記画像処理を、前記第１の処理モードで実行するか、第２の処理モードで実行するかを、前記画像データの隣接する画素の階調値が変化する度合いによる複雑度によって決定し、
前記第１のプロセッサーおよび前記第２のプロセッサーを含む複数のプロセッサーが、同時並行で、同じ処理を実行する、印刷方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のプロセッサーを備えた印刷装置、および、印刷装置の印刷方法に関するものである。
【背景技術】
【０００２】
印刷装置は、入力された画像データ（例えば、ＪＰＥＧ画像データ）に対して、例えば、色変換処理や、ハーフトーン処理などの各種画像処理を行なうことによって、印刷データ（ドットのＯＮ／ＯＦＦデータ）を生成し、画像の印刷を実行する。画像処理は、印刷装置が備えるＣＰＵ（Central Processing Unit）によって行なわれる。そして、従来、印刷装置に複数のＣＰＵを備えるようにして、これら複数のＣＰＵで処理を分担することによって、画像処理を高速に行なう技術が提案されている（例えば、下記特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１８８９８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術では、印刷データの種類によっては、１つのプロセッサーが処理を実行している間に、他のプロセッサーは、実行する処理がなく待ち状態となることが頻繁に発生することがある。このために、処理の高速化を十分に図ることができないという問題があった。また、画像データのデータサイズが小さいにもかかわらず、複数のプロセッサーを同時に駆動した場合に、プロセッサーの消費電力が大きくなるという課題もあった。
【０００５】
本発明は、上述の課題を解決するためになされたものであり、大容量でコントラストが頻繁に変わる複雑な画像データを迅速に画像処理でき、しかもプロセッサーの効率のよい駆動で省電力性能に優れている印刷装置および印刷装置の印刷方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００７】
［適用例１］
画像データから印刷用のドットデータを作成する画像処理を複数のプロセッサーで行なうデータ作成部と、該データ作成部から送られる前記ドットデータに基づいて印刷媒体に印刷を行なう印刷部とを備えた印刷装置であって、
前記データ作成部は、
前記画像データをＮ個（Ｎは自然数）のプロセッサーで処理する第１の処理モードと、
前記画像データをＮ個と異なるＭ個（Ｍは自然数）のプロセッサーで処理する第２の処理モードと、
を備え、
前記第１の処理モードおよび第２の処理モードを、前記画像データの複雑度によってそれぞれ実行する、印刷装置。
【０００８】
適用例１において、データ作成部は、画像データから印刷用のドットデータを作成する処理モードにつき、画像データの複雑度によって、第１の処理モードまたは第２の処理モードでそれぞれ実行する。第１の処理モードは、画像データの一部である第１の画像データをＮ個で処理するモードであり、第２の処理モードは、Ｎ個と異なるＭ個のプロセッサーで画像処理するモードである。すなわち、データ作成部は、画像データの複雑度の違いにより、プロセッサーの数を変更して画像処理を行なう。
【０００９】
［適用例２］
適用例２において、前記データ作成部が、前記画像データの複雑度が大きい状況にて、Ｎ＜Ｍに決定する、印刷装置である。この適用例において、データ作成部は、画像データの複雑度が大きい状況にて、プロセッサーの数を多くして短時間に画像処理を行なうことで、印刷媒体に高速で印刷することができる印刷部に対応することができる。また、データ作成部は、画像データの複雑度が小さい状況にて、プロセッサーの数を少なくすることにより、プロセッサーの消費電力を低減することができる。
【００１０】
［適用例３］
適用例３において、前記複雑度は、前記画像データの隣接する画素の階調値の微分値の変化の度合いから求めた値である構成をとることができる。
【００１１】
［適用例４］
適用例４において、前記データ作成部は、前記第２の処理モードの実行時の前記プロセッサーの消費電力が前記第１の処理モードの実行時の前記プロセッサーの消費電力より大きい、印刷装置である。
【００１２】
［適用例５］
適用例５において、前記データ作成部は、前記第２の処理モードの実行時の前記プロセッサーの発熱量が前記第１の処理モードの実行時の前記プロセッサーの発熱量より大きい、印刷装置である。
【００１３】
［適用例６］
適用例６において、前記データ作成部は、前記第１の処理モードと前記第２の処理モードとを切り換えて画像処理できる画像データのサイズを単位処理量とすると、該単位処理量の画像データを複数の領域に分けて、各々の領域を前記複数のプロセッサーで分担して画像処理を行なう、印刷装置である。
【００１４】
［適用例７］
適用例において、前記領域内の画像データが前記印刷媒体に印刷されるときの前記印刷媒体の搬送方向と直角方向に分けられている、印刷装置である。この適用例において、プロセッサーが各領域を処理する手段として、各画素を独立して処理する手段をとることが好ましい。これは、領域の境界における処理に煩雑さを生じないからである。
【００１５】
［適用例８］
適用例８において、前記領域内の画像データが前記印刷媒体に印刷されるときの前記印刷媒体の搬送方向に分けられている、印刷装置である。この適用例において、プロセッサーが各領域を処理する手段として、各画素を独立して処理する手段をとることが好ましい。これは、領域の境界における処理に煩雑さを生じないからである。
【００１６】
［適用例９］
適用例９において、前記データ作成部は、所定の時間当たりに生成するドットデータの量が、前記所定の時間内に印刷できるドットデータの量を超えた状況にて、前記第１の処理モードから第２の処理モードへ切り換えて実行する、印刷装置である。この適用例により、前記データ作成部は、所定の時間当たりに生成するドットデータの量が、前記所定の時間内に印刷できるドットデータの量を超えた状況にて、第１の処理モードから第２の処理モードに変更されるから、印刷部は、データ作成部から送られるドットデータを待つことなく、印刷媒体に印刷することができる。
【００１７】
［適用例１０］
適用例１０において、前記印刷部が印刷を停止した状況にて、前記第２の処理モードに移行する、印刷装置である。この適用例において、印刷部が印刷を停止した状況にて、第１の処理モードから第２の処理モードへ移行することにより、印刷部の待機状態を低減することができる。
［適用例１１］
適用例１１は、画像データから印刷用のドットデータを作成する画像処理を複数のプロセッサーで行ない、前記ドットデータに基づいて印刷媒体に印刷を行なう印刷方法であって、
前記画像データをＮ個（Ｎは自然数）のプロセッサーで処理する第１の処理モードと、
前記画像データをＮ個と異なるＭ個（Ｍは自然数）のプロセッサーで処理する第２の処理モードと、
を備え、
前記第１の処理モードおよび第２の処理モードを、前記画像データの複雑度によってそれぞれ実行する、印刷方法である。
【図面の簡単な説明】
【００１８】
【図１】本発明の第１実施例にかかる印刷装置の概略構成を示す説明図である。
【図２】印刷装置で実行される印刷処理を説明するフローチャートである。
【図３】画像データに基づいて印刷媒体上に印刷される画像の一例を説明する説明図である。
【図４】画像データに基づいて印刷媒体上に印刷される画像の一例を説明する説明図である。
【図５】第２実施例にかかる複数のプロセッサーで画像処理をパイプライン処理により実行している様子を示す説明図である。
【図６】画像データに基づいて印刷媒体上に印刷される画像の一例を説明する説明図である。
【図７】第３実施例にかかるモード切換処理を説明するフローチャートである。
【図８】第４実施例にかかるモード切換処理を説明するフローチャートである。
【発明を実施するための形態】
【００１９】
以下、本発明の実施の形態について、実施例に基づき説明する。
Ａ．第１実施例：
図１は本発明の第１実施例にかかる印刷装置３００の概略構成を示す説明図である。本実施例では、印刷装置３００は、いわゆるラインヘッドプリンターであるものとした。この印刷装置３００は、毎分６０ページ以上の高速印刷が可能である。
【００２０】
印刷装置３００は、コントローラー部３１０と、コントローラー部３１０により制御される印刷部３２０、操作パネル３３０および外部メモリー３４０とを備える。コントローラー部３１０は、ＣＰＵ３１１、ＲＡＭ３１２、ＲＯＭ３１３、印刷部インターフェース（Ｉ／Ｆ）３１４、操作パネルインターフェース（Ｉ／Ｆ）３１５、メモリコントローラー３１６、ＣＰＵコントローラー３１７および通信インターフェース（Ｉ／Ｆ）３１８などを備える。これらの各構成要素３１１〜３１８は、バス３１９を介して互いに接続されている。印刷部Ｉ／Ｆ３１４には印刷部３２０が接続されている。操作パネルＩ／Ｆ３１５には操作パネル３３０が接続されている。メモリコントローラー３１６には外部メモリー３４０が接続されている。通信Ｉ／Ｆ３１８にはＵＳＢケーブル１２０が接続されている。
【００２１】
ＣＰＵ３１１は、いわゆるマルチコアプロセッサーであり、本実施例では、第１のプロセッサーコア３１１ａと第２のプロセッサーコア３１１ｂとを備え、これらの第１および第２のプロセッサーコア３１１ａ，３１１ｂで画像処理を分担する。この分担は、ＣＰＵコントローラー３１７によりＣＰＵ３１１に対して指示される。第１および第２のプロセッサーコア３１１ａ，３１１ｂは、ＲＯＭ３１３に記憶されている画像形成プログラムを実行することにより、印刷対象の画像データ（例えば、ＪＰＥＧ、ＧＩＦ画像データ）に対して、例えば、色変換処理やハーフトーン処理などの各種画像処理を行ない、印刷用のドットデータ（ドットのＯＮ／ＯＦＦデータ）を生成する。コントローラー部３１０は、［課題を解決するための手段］におけるデータ作成部に相当する。
【００２２】
印刷部３２０は、インクを蓄えるインクカートリッジ、印刷ヘッド、印刷媒体に実際に画像形成するために必要な機能部を備える。インクとしては、例えば、シアン（Ｃ）、マゼンダ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）の４種類を備える。操作パネル３３０は、ユーザーが印刷処理に関わる各種設定を行なうための操作部である。印刷媒体の種類やサイズの設定、印刷の中止操作などを、ユーザーは操作パネル３３０を操作することでコントローラー部３１０に対して指示することができる。外部メモリー３４０は、ユーザーによりメモリカードなどを装填可能な補助記憶装置である。次に、印刷装置３００がホストコンピューター２００や外部メモリー３４０などから送られる画像データに対して実行される画像処理について説明する。
【００２３】
図２は印刷装置３００で実行される印刷処理を説明するフローチャートである。印刷処理は、ホストコンピューター２００などから送られる画像データを受信することによって開始される。コントローラー部３１０は、印刷処理を開始すると、ＵＳＢケーブル１２０および通信Ｉ／Ｆ３１８を介して、ホストコンピューター２００から画像データを受信し、ＲＡＭ３１２に記憶する（ステップＳ３１０）。そして、ＣＰＵコントローラー３１７が、ＲＡＭ３１２に記憶した圧縮された画像データのヘッダ情報に基づき、圧縮された画像データであれば、圧縮手段を判別する。すなわち、ヘッダ情報から、ファイルの画像データがＪＰＥＧ、ＧＩＦなどの圧縮ファイルであれば、圧縮ファイルに対応したデータ解凍方法により、ＣＰＵ３１１が圧縮された画像データの解凍処理を行なう（ステップＳ３１２）。ＣＰＵ３１１により解凍された画像データは、ＲＡＭ３１２に一時的に記憶される。
【００２４】
続くステップＳ３１４にて、ＲＡＭ３１２に記憶されている画像データにつき、複雑度が取得される。ここで、複雑度を取得するための画像データの容量は、例えば、ＲＡＭ３１２に記憶されている１ページ分またはその一部の領域のデータ量に設定することができる。複雑度は、一例として、画像データの１ページ分またはその一部の領域において、隣接する画素の階調値が変化する度合いの大きさで表わすことができる。複雑度は、以下に表わす式により演算処理で求めている。
【数１】
0005899863.tif 000002
数１は画像データのコントラストＣｆｘを表わしている。ここで、ｆｘは、各々の画素の輝度などの階調値を表わす画像データの関数であり、Ｄ_ｉｆｘは、ｆｘを印刷対象のｉの方向で微分することを意味している。ｉ＝１がｘ方向、ｉ＝２がｙ方向である。したがって、Ｄ＿ｉｆｘは、ｆｘをｘ方向またはｙ方向に微分した値であり、ｆｘを連続する関数とすればＤ＿ｉｆｘは微分値とみることができ、またこれを隣接する画素の離散値でいえば、階調値の差分とみることができる。ここで、画像fxをx方向に微分した値をＤ１とし、画像ｆｘをy方向に微分した値をＤ２とすると、画像データのコントラストＣｆｘは、数１で示すように、Ｄ１，Ｄ２の各画素の値の絶対値を二乗した総和となる。なお、Ｄｉは、負になることもあるので二乗して評価値としている。
【数２】
0005899863.tif 000003
数２は画像データの複雑度Ｋｆｘを表わしている。ここで、Ｄ_ｉｊｆｘは、Ｄ_ｉｆｘを印刷対象のｊの方向でさらに微分することを意味している。ｊ＝１がｘ方向、ｊ＝２がｙ方向である。したがって、Ｄ_ｉｊｆｘは、Ｄ＿ｉｆｘをｘ方向またはｙ方向にさらに微分した値であり、ｆｘを連続する関数とすればＤ_ｉｊｆｘは２重の微分値とみることができ、またこれを隣接する画素を含めた領域でいえば、階調値の差分の変化の割合とみることができる。ここで、Ｄ１をｘ方向に微分した値をＤ１１とし、Ｄ１をｙ方向に微分した値をＤ１２とし、Ｄ２をｘ方向に微分した値をＤ２１とし、Ｄ２をｙ方向に微分した値をＤ２２とすると、画像データの複雑度Ｋｆｘは、数２に示すように、Ｄ１１，Ｄ１２，Ｄ２１，Ｄ２２の２乗の総和となる。なお、Ｄｉｊは、負になることもあるので二乗して評価値としている。
【００２５】
したがって、複雑度Ｋｆｘは、隣接する画素の階調値の差分（微分値）の変化が大きく、階調値の差分が頻繁に変わる場合に、大きな値を示すことになる。図３および図４は画像データに基づいて印刷媒体ＰＭ１，ＰＭ２上に印刷される画像の一例を説明する説明図である。図３は一人の人物が含まれた印刷対象であり、図４は複数（６人）の人物が含まれている印刷対象である。こうした図３および図４の印刷対象の画像データについて、数２の複雑度を取得すると、図４の画像データは、複数の人物による階調値の変化の度合いが大きいことから、図３の画像データより、複雑度Ｋｆｘに大きな値が得られる。
【００２６】
図２に戻り、ＣＰＵコントローラー３１７は、ステップＳ３２０にて、ステップ３１４で求めた複雑度の大小を判定することで、画像データに対して、いずれの処理モードをとるかを決定する。すなわち、ＣＰＵコントローラー３１７が、画像データの複雑度が所定の判定値より小であると判定すると、ステップＳ３３０へ進み、ＣＰＵ３１１のうちの１つの第１のプロセッサーコア３１１ａで画像処理することを決定し、続くステップＳ３３４にて、バッファに一時的に保存された全領域（１ページ分）の画像データについて、色変換処理が実行される。例えば、図３の画像のような単調な画像であって、複雑度が小であると判定されると、画像データの全領域について、色変換処理が実行される。色変換処理は、画像データの各画素を構成する画素データに記録されている（Ｒ，Ｇ，Ｂ）の値を、印刷装置３００が備えるインク色（Ｃ、Ｍ、Ｙ、Ｋ）のインク量データに変換する処理である。本実施例においては、色変換処理はルックアップテーブル（以下、色変換ＬＵＴとも呼ぶ）を用いて行なう。色変換ＬＵＴは、レッド（Ｒ）、グリーン（Ｇ）、ブルー（Ｂ）の３つの各階調値の軸からなる３次元のルックアップテーブルであり、各格子点には、シアン（Ｃ）、マゼンダ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）の各インク量データが格納されている。色変換ＬＵＴは、ＲＯＭ３１３に記憶されており、第１のプロセッサーコア３１１ａがＲＯＭ３１３から読み込んで、画像データに適用することで色変換処理を行なう。
【００２７】
続くステップＳ３３６にて、第１のプロセッサーコア３１１ａは、色変換処理後、各画素がインク量データによって記録されている画像データに対してハーフトーン処理を行なう。ハーフトーン処理は、各画素がインク量データによって記録された画像データを、各画素がドットのオン／オフで記録されたドットデータに変換する多値化処理である。本実施例においては、ハーフトーン処理は、ディザ法により行なう。ディザ法に用いるディザマトリックスは、ＲＯＭ３１３に格納されている。第１のプロセッサーコア３１１ａは、ＲＯＭ３１３からディザマトリックスを読み込んで、インク量データで記録された画像データに適用することによってハーフトーン処理を行ない、ドットデータを作成する。
【００２８】
ハーフトーン処理後に、ＣＰＵ３１１がドットデータとして記録された画像データに基づいて、印刷を実行する（ステップＳ３４０）。具体的には、ＣＰＵ３１１が印刷部３２０としての印刷ヘッドなどの動作を制御し、印刷媒体を走査方向へ搬送しつつ印刷媒上にシアン（Ｃ）、マゼンダ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）の各インクを吐出して画像を形成する。このようにして、印刷装置３００は印刷処理を行なう。なお、印刷実行の処理は、ＣＰＵ３１１の第１または第２のプロセッサーコア３１１ａ，３１１ｂの一方または両方を駆動することにより行なうことができる。
【００２９】
一方、ステップＳ３２０にて、ＣＰＵコントローラー３１７が、画像データの複雑度が所定の判定値より大であると判定すると、ステップＳ３５０へ進み、ＣＰＵ３１１の２つの第１および第２のプロセッサーコア３１１ａ，３１１ｂで画像処理することを決定し、さらに続くステップＳ３５２にて、画像データの領域を分割する。例えば、図４に示すように、画像データが印刷媒体ＰＭ２に印刷されるときに、印刷媒体ＰＭ２の搬送方向をｄｘとすると、搬送方向ｄｘと直角の方向であるｄｙの方向に分割線ＤＬを中心として２分割した領域Ａ，Ｂに設定する。続いて、第１のプロセッサーコア３１１ａが領域Ａに対応する画像データについて、色変換処理（ステップＳ３４５Ａ）およびハーフトーン処理（ステップＳ３５６Ａ）を実行すると同時に、第２のプロセッサーコア３１１ｂが領域Ｂに対応する画像データについて、色変換処理（ステップＳ３４５Ｂ）およびハーフトーン処理（ステップＳ３５６Ｂ）を実行する。すなわち、第１および第２のプロセッサーコア３１１ａ，３１１ｂは、それぞれ図４の分割した領域Ａ，Ｂに対応する画像データをそれぞれＲＡＭ３１２から読み込み、上述したステップＳ３３４およびステップＳ３３６と同様な色変換処理およびハーフトーン処理をそれぞれ実行する。続くステップＳ３５８にて、第１のプロセッサーコア３１１ａおよび第２のプロセッサーコア３１１ｂによって画像処理された領域Ａ，Ｂにおける処理済みの画像データを合体する。続くステップＳ３４０にて、ＣＰＵ３１１は、ドットデータとして記録された画像データに基づいて、印刷を実行する。
【００３０】
ここで、複数の第１および第２のプロセッサーコア３１１ａ，３１１ｂが画像データを分割して処理するには、各領域が他の領域の画像データを必要としない処理、つまり独立性の高いアルゴリズムで処理することが好ましい。例えば、ハーフトーン処理（ステップＳ３５６Ａ，３５６Ｂ）では、各々の画素データを処理するために隣接する画素データを必要とする誤差分散法よりも、ディザ法であることが好ましい。ディザ法は、ＲＯＭ３１３に格納されているディザマトリックスを用いて、各画素データをディザマトリックスのデータと対比することにより、各色の画像データを二値化する方法であり、領域を跨った隣接する画素のデータを必要としない処理である。
【００３１】
本実施例において、ステップＳ３２０にて、画像データの複雑度が小であると判定された場合に実行される処理（ステップＳ３３０〜３３６）が［課題を解決するための手段］における第１の処理モードにおける処理に相当し、プロセッサーの数はＮ＝１であり、画像データの複雑度が大であると判定された場合に実行される処理（ステップＳ３５０〜３５８）が［課題を解決するための手段］における第２の処理モードにおける処理に相当し、プロセッサーの数はＭ＝２である。
【００３２】
前記実施例において、コントローラー部３１０は、画像データの複雑度が大きい状況にて、複数のプロセッサーを使用する第２の処理モードを実行することにより、画像データに対し、短時間に画像処理を行なうことができ、印刷対象を高速で印刷することができる印刷部３２０に対応することができる。すなわち、データサイズが同じであっても複雑度が大きい画像データは、キャッシュの効き難いメモリーのランダムアクセスや分岐命令での分岐予測ミスなどを頻繁に生じやすいが、このような複雑度の大きい画像データに対しても短時間で画像処理を行なうことができる。また、コントローラー部３１０は、画像データの複雑度が小さい状況にて、プロセッサーの数を少ない第１の処理モードを実行することにより、プロセッサーの消費電力を低減することができる。
【００３３】
Ｂ．第２実施例：
図５は複数のプロセッサーで画像処理をパイプライン処理により実行している様子を示す説明図、図６は印刷媒体上の画像データを５つに分割した印刷対象を示す説明図である。パイプライン処理とは、コンピューターにおける処理要素を直列に連結し、ある要素の出力が次の要素の入力となるように配置して処理する方法である。図５の例は、印刷対象の画像データが５つの部分に分割されて処理されている様子を説明する説明図である。すなわち、図６において、印刷対象の画像データは、印刷媒体ＰＭ２の走査方向ｄｘに分割線ＤＬ１，ＤＬ２，ＤＬ３，ＤＬ４にて、「Ｃ１」、「Ｃ２」、「Ｃ３」、「Ｃ４」、「Ｃ５」の各画像データの領域に分割されている。「Ｃ１」、「Ｃ２」、「Ｃ３」、「Ｃ４」、「Ｃ５」の各領域における画像データの容量は、第１の処理モードと第２の処理モードとを切り換え可能である画像データのサイズを単位処理量に設定されている。
【００３４】
図５において、画像データの複雑度が大きいと判定された場合において、コントローラー部３１０は、第１および第２のプロセッサーコア３１１ａ，３１１ｂを用いて、印刷対象の画像データを処理する（第２の処理モード）。すなわち、第１のプロセッサーコア３１１ａは、色変換処理の専用のプロセッサーとして働き、領域「Ｃ１」、「Ｃ２」、「Ｃ３」、「Ｃ４」、「Ｃ５」の各画像データに対して色変換処理を逐次実行する。第２のプロセッサーコア３１１ｂは、ハーフトーン処理の専用のプロセッサーとして働き、第１のプロセッサーコア３１１ａが「Ｃ１」の画像データについての色変換処理を終えると、「Ｃ１」の画像データについてハーフトーン処理を実行し、さらに第１のプロセッサーコア３１１ａでの処理を終えた「Ｃ２」、「Ｃ３」、「Ｃ４」、「Ｃ５」の画像データについてハーフトーン処理を順次実行する。このようなパイプライン処理により、画像処理を高速化することができる。この場合においても、印刷対象が走査方向ｄｘの方向に各領域で分割されており、これらの分割した領域の境界での処理を容易にするために、上述したように独立性の高いアルゴリズムで処理することが好ましい。
【００３５】
Ｃ．第３実施例：
図７は第３実施例にかかる印刷処理のうち第１の処理モードと第２の処理モードとを切り換えるモード切換処理を説明するフローチャートである。本実施例は、処理モードの切換処理の判定条件として、画像データの複雑度の判定に加えて、印刷部３２０の待機状況を加えることで処理モードを切り換える構成に特徴を有する。図７において、ステップＳ４００にて、画像データの複雑度の大小を判定して、複雑度が小である場合には、ステップＳ４１０に進み、第１の処理モード、つまり少ないプロセッサーで処理する第１の処理モードを実行する。一方、ステップＳ４００にて、画像データの複雑度が大である場合には、ステップＳ４２０にて、印刷部３２０の待機状況を判定する。ここで、待機状況の判定条件として、ＣＰＵコントローラー３１７によって、所定の時間当たりに生成されるドットデータの量が、所定の時間内に印刷できるドットデータの量を超えているか、また越えると予測される状況であるかを判定する。なお、待機状況として、印刷部３２０が実際に停止している状況を判定条件としてもよい。そして、ステップＳ４２０にて、印刷部３２０が待機状況であると判定された場合には、第１の処理モードより、使用されるプロセッサーの数の多い第２の処理モードに移行する。したがって、画像データの複雑度が大きい画像データであっても、待機状況にない場合には、できるだけ少ないプロセッサーを駆動させることで、省電力を実現するとともに、印刷部がコントローラー部３１０から送られるドットデータを待つことなく、印刷媒体に印刷することができる。
【００３６】
Ｄ．第４実施例：
図８は第４実施例にかかる印刷処理のうち第１の処理モードと第２の処理モードとを切り換えるモード切換処理を説明するフローチャートである。本実施例は、処理モードの切換処理の判定条件として、画像データの複雑度の判定に加えて、ファイルのデータサイズを加えることで処理モードを切り換える構成に特徴を有する。図８において、ステップＳ４５０にて、コントローラー部３１０にて受信したファイルのデータサイズが判定され、データサイズが第１の判定値より小さい場合には、第１の処理モードへ移行し（ステップＳ４７０）、一方、データサイズが第２の判定値（第１の判定値より大きい値）より大きい場合には、第２の処理モードへ移行する（ステップＳ４８０）。そして、データサイズが第１の判定値と第２の判定との間の中程度の場合には、画像データの複雑度を判定し（ステップＳ４６０）、第１または第２の処理モードを選択する。この実施例によれば、ファイルのデータサイズが大か、小の場合には、画像データの複雑度を行なわず、データサイズが中程度の場合だけに複雑度の判定を実行するから、複雑度の判定のための処理時間をなくすことができ、迅速な画像処理ができる。
【００３７】
Ｅ．変形例：
以上、本発明の第１ないし第４実施例について説明したが、本発明はこれらの実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができる。例えば、ソフトウェアによって実現した機能は、ハードウェアによって実現するものとしてもよい。また、そのほか、以下のような変形が可能である。
【００３８】
（Ｅ）−１  前記各実施例では、ＣＰＵ３１１をマルチコアプロセッサーとすることで、印刷装置３００に複数のプロセッサーを搭載する構成としたが、これに換えて、印刷装置３００に複数のＣＰＵ（プロセッサー）を搭載する構成としてもよい。また、各実施例では、２つのプロセッサーコアを備える構成としたが、これに換えて、３つ以上のプロセッサーコアを備える構成としてもよい。この場合には、３つ以上のプロセッサーコアを２群に分けて、第１群のプロセッサーと第２群のプロセッサーとで処理を分担するようにすればよい。
【００３９】
（Ｅ）−２  前記実施例では、画像データの複雑度の判定は、ページ単位で行なっている場合について説明したが、これに限らず、画像データを分割した領域の一部で判定してもよく、例えば、印刷対象の中央の領域には、輝度、色彩が頻繁に変化する領域が多いことから、その中央の領域の画像データで複雑度を判定してもよい。
【００４０】
（Ｅ）−３  画像データを分割する領域は、コントローラー部３１０が第１の処理モードと第２の処理モードとを切り換えて画像処理できる画像データの単位処理量の範囲であれば、種々の領域に分割し、これに対応してプロセッサーの数を増減してもよい。
【００４１】
（Ｅ）−４  画像データの複雑度を判定するための隣接する画素データとしては輝度のほかに、色彩などの隣接する画素の差が明確に表われる値であればよく、また、判定の対象とする範囲も、１画素で判定するほか、隣接する複数の画素を１群としこれらの平均値をとって，各群同士で判定をおこなってもよい。
【００４２】
（Ｅ）−５  画像データの複雑度を判定するための条件として、画像の種類による判定を加えてもよい。すなわち、画像データの複雑度は、画像データの種類、つまり、画像データが白黒、カラーであるか、または白黒のグラデーションや、カラーの階調の数によって変わることから、これらの要素を処理モードの切換判定に加えてもよい。
【００４３】
（Ｅ）−６  画像データの複雑度を判定するための条件として、画像データの圧縮比による判定を加えてもよい。画像ファイルのヘッダ情報に含まれるデータには、ファイルデータサイズ、縦の画素数および横の画素数が含まれており、これらから全画素数を求めることができる。圧縮比は、画像ファイルのヘッダ情報に含まれるデータのうち、データサイズをＤｓとし、画像データの画素数をＰａとすると、Ｄｓ／Ｐａで定義できる。画像データは、画素数が同一であって、同一の圧縮手段で圧縮しても、圧縮によって画質が劣化するのを避けるために、十分に圧縮がされず、データサイズが大きくなることがある。したがって、画像データのうち、大きな圧縮比で圧縮できない画像データは、複雑度が大きいとみなすことができる。よって、画像データの複雑度の判定に、圧縮比の要素を加えて、処理モードの切換判定を行なってもよい。
【符号の説明】
【００４４】
２００…ホストコンピューター
３００…印刷装置
３１０…コントローラー部
３１１…ＣＰＵ
３１１ａ，３１１ｂ…第１および第２のプロセッサーコア
３１２…ＲＡＭ
３１３…ＲＯＭ
３１４…ステップ
３１６…メモリコントローラー
３１７…ＣＰＵコントローラー
３１８…通信インターフェース
３１９…バス
３２０…印刷部
３３０…操作パネル
３４０…外部メモリー
【図１】
0005899863.tif 000004
【図２】
0005899863.tif 000005
【図３】
0005899863.tif 000006
【図４】
0005899863.tif 000007
【図５】
0005899863.tif 000008
【図６】
0005899863.tif 000009
【図７】
0005899863.tif 000010
【図８】
0005899863.tif 000011