(57)【要約】【課題】画像データに有彩色が含まれている場合はその画像データに含まれているグレーを複数色の濃度の組み合わせで表現し、有彩色が含まれていない場合は黒単色の濃度で表現する場合において、より早い段階で変換データを出力できる画像処理装置を提供する。【解決手段】画像処理装置は、有彩色を含む部分データより前にグレーを含む部分データを取得した場合は出力を待機し、待機開始後に有彩色を含む部分データを取得した場合は、グレーを複数色の濃度の組み合わせによって表現した変換データである複数色変換データを出力する一方、待機開始後に有彩色を含む部分データを取得することなく画像データの取得が終了した場合は、グレーを黒単色の濃度で表現した変換データである黒単色変換データを出力し、有彩色を含む部分データを取得した場合はそれ以後に取得する部分データを複数色変換データに変換して出力する。【選択図】図３
2011049861.tif 000002
【特許請求の範囲】
【請求項１】
第１の色空間で表される画像データを部分データごとに順次取得する取得手段と、
前記取得手段により取得した部分データの色空間を前記第１の色空間とは異なる第２の色空間に変換するものであって、前記部分データに含まれるグレーを黒単色の濃度及び複数色の濃度の組み合わせの両方によって表現可能な第２の色空間に変換し、その変換データを出力する色空間変換手段と、
を備え、
前記色空間変換手段は、
有彩色を含む部分データより前にグレーを含む部分データを取得した場合は出力を待機し、
待機開始後に有彩色を含む部分データを取得した場合は、前記出力が待機されている部分データについてグレーを前記複数色の濃度の組み合わせによって表現した前記変換データである複数色変換データを出力する一方、
待機開始後に有彩色を含む部分データを取得することなく前記画像データの取得が終了した場合は、前記出力が待機されている部分データについてグレーを黒単色の濃度で表現した前記変換データである黒単色変換データを出力し、
有彩色を含む部分データを取得した場合はそれ以後に取得する部分データを前記複数色変換データに変換して出力する、
画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
前記変換データを記憶する記憶手段を備え、
前記色空間変換手段は、待機開始後、有彩色を含む部分データを取得するか又は前記画像データの取得が終了するまで前記出力が待機されている部分データを前記黒単色変換データ及び前記複数色変換データの両方に変換して前記記憶手段に記憶させ、
待機開始後に有彩色を含む部分データを取得した場合は前記記憶手段に記憶されている前記複数色変換データを出力し、
待機開始後に有彩色を含む部分データを取得することなく前記画像データの取得が終了した場合は前記記憶手段に記憶されている前記黒単色変換データを出力する、画像処理装置。
【請求項３】
請求項２に記載の画像処理装置であって、
前記色空間変換手段は、前記記憶手段に記憶させた前記黒単色変換データ及び前記複数色変換データのうちいずれか出力しなかった変換データを破棄する、画像処理装置。
【請求項４】
請求項２又は請求項３に記載の画像処理装置であって、
前記色空間変換手段は、前記黒単色変換データ及び前記複数色変換データの少なくとも一方の変換データを前記記憶手段に記憶させるとき前記記憶手段の空き容量を判断し、空き容量が所定値未満と判断した場合は当該少なくとも一方の変換データを圧縮して記憶させる、画像処理装置。
【請求項５】
請求項１乃至請求項４のいずれか一項に記載の画像処理装置であって、
前記色空間変換手段は、有彩色を含む部分データを取得するより前において、グレーを含む部分データを取得するまでは部分データを取得する毎に前記黒単色変換データに変換して出力し、グレーを含む部分データを取得した以後は出力を待機する、画像処理装置。
【請求項６】
コンピュータを、
第１の色空間で表される画像データを部分データごとに順次取得する取得手段と、
前記取得手段により取得した部分データの色空間を前記第１の色空間とは異なる第２の色空間に変換するものであって、前記部分データに含まれるグレーを黒単色の濃度及び複数色の濃度の組み合わせの両方によって表現可能な第２の色空間に変換し、その変換データを出力する色空間変換手段と、
して機能させ、
前記色空間変換手段は、
有彩色を含む部分データより前にグレーを含む部分データを取得した場合は出力を待機し、
待機開始後に有彩色を含む部分データを取得した場合は、前記出力が待機されている部分データについてグレーを前記複数色の濃度の組み合わせによって表現した前記変換データである複数色変換データを出力する一方、
待機開始後に有彩色を含む部分データを取得することなく前記画像データの取得が終了した場合は、前記出力が待機されている部分データについてグレーを黒単色の濃度で表現した前記変換データである黒単色変換データを出力し、
有彩色を含む部分データを取得した場合はそれ以後に取得する部分データを前記複数色変換データに変換して出力する、
画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、及び画像処理プログラムに関する。
【背景技術】
【０００２】
例えば画像データの色空間をＣＭＹＫ色空間に変換する場合、グレーをＣＭＹＫ４色の濃度の組み合わせで表現するとグレーと有彩色との階調連続性を保つことができ、一方、グレーをＫ（黒）単色の濃度で表現するとグレーをＫ単色ですっきりと表現することができる。
【０００３】
そこで、従来、グレーをＣＭＹＫ４色の濃度の組み合わせで表現するか又はＫ単色の濃度で表現するかをグレーの近辺に有彩色が有るか否かに応じて判定する方法が知られている（例えば、特許文献１参照）。ただし、この方法では、グレーをＣＭＹＫ４色の濃度の組み合わせで表現するか又はＫ単色の濃度で表現するかが画像データ内で統一されないものとなる。
【０００４】
また、従来、画像データに有彩色を表す画素が含まれているか否かを調べ、含まれている場合はその画像データに含まれている全てのグレーをＣＭＹＫ４色の濃度の組み合わせで表現し、有彩色が含まれていない場合はＫ単色の濃度で表現する方法も知られている。この方法では、グレーをＣＭＹＫ４色の濃度の組み合わせで表現するか又はＫ単色の濃度で表現するかが確定されると、画像データ内のグレーは、全て確定された表現で統一されたものとなる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−３２０１４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、グレーをＣＭＹＫ４色の濃度の組み合わせで表現するか又はＫ単色の濃度で表現するかを画像データ内で統一する方法においては、画像データに有彩色が含まれているか否かを調べてから変換を開始していた。言い換えると、画像データに有彩色が含まれているか否かが確定してから変換を開始していた。このため、確定に時間を要し、変換データが出力されるまでに長時間を要するという問題があった。
【０００７】
本発明は上記のような事情に基づいて完成されたものであって、画像データに有彩色が含まれている場合はその画像データに含まれているグレーを複数色の濃度の組み合わせで表現し、有彩色が含まれていない場合は黒単色の濃度で表現する場合において、より早い段階で変換データを出力できる画像処理装置、及び画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
第１の発明は、画像処理装置であって、第１の色空間で表される画像データを部分データごとに順次取得する取得手段と、前記取得手段により取得した部分データの色空間を前記第１の色空間とは異なる第２の色空間に変換するものであって、前記部分データに含まれるグレーを黒単色の濃度及び複数色の濃度の組み合わせの両方によって表現可能な第２の色空間に変換し、その変換データを出力する色空間変換手段と、を備え、前記色空間変換手段は、有彩色を含む部分データより前にグレーを含む部分データを取得した場合は出力を待機し、待機開始後に有彩色を含む部分データを取得した場合は、前記出力が待機されている部分データについてグレーを前記複数色の濃度の組み合わせによって表現した前記変換データである複数色変換データを出力する一方、待機開始後に有彩色を含む部分データを取得することなく前記画像データの取得が終了した場合は、前記出力が待機されている部分データについてグレーを黒単色の濃度で表現した前記変換データである黒単色変換データを出力し、有彩色を含む部分データを取得した場合はそれ以後に取得する部分データを前記複数色変換データに変換して出力する。
【０００９】
この発明によると、有彩色を含む部分データより前にグレーを含む部分データを取得した場合には、グレーを黒単色の濃度、又は複数色の濃度の組み合わせのいずれによって表現すべきかを決定できないので、有彩色が含まれるか否かが確定するまで待機する。
しかしながら、この発明によると、グレーを含む部分データが入力されるより前に取得した部分データについては画像データに有彩色が含まれるか否かが確定するのを待つことなく変換データを出力する。
よってこの発明によると、画像データに有彩色が含まれるか否かが確定するのを待って変換を開始する場合に比べ、より早い段階で変換データを出力できる。
【００１０】
第２の発明は、第１の発明の画像処理装置であって、前記変換データを記憶する記憶手段を備え、前記色空間変換手段は、待機開始後、有彩色を含む部分データを取得するか又は前記画像データの取得が終了するまで前記出力が待機されている部分データを前記黒単色変換データ及び前記複数色変換データの両方に変換して前記記憶手段に記憶させ、待機開始後に有彩色を含む部分データを取得した場合は前記記憶手段に記憶されている前記複数色変換データを出力し、待機開始後に有彩色を含む部分データを取得することなく前記画像データの取得が終了した場合は前記記憶手段に記憶されている前記黒単色変換データを出力する。
この発明によると、出力が待機されている部分データについて、有彩色を含む部分データを取得してから第２の色空間への変換を開始する場合に比べ、あるいは画像データの取得が終了してから第２の色空間への変換を開始する場合に比べ、より早い段階で当該待機されている部分データについての変換データを出力できる。
【００１１】
第３の発明は、第２の発明の画像処理装置であって、前記色空間変換手段は、前記記憶手段に記憶させた前記黒単色変換データ及び前記複数色変換データのうちいずれか出力しなかった変換データを破棄する。
この発明によると、記憶手段の使用容量を低減できる。
【００１２】
第４の発明は、第２又は第３の発明の画像処理装置であって、前記色空間変換手段は、前記黒単色変換データ及び前記複数色変換データの少なくとも一方の変換データを前記記憶手段に記憶させるとき前記記憶手段の空き容量を判断し、空き容量が所定値未満と判断した場合は当該少なくとも一方の変換データを圧縮して記憶させる。
部分データを黒単色変換データ及び複数色変換データの両方に変換している状態においては、結果的にいずれの変換データを出力するかわからない。この発明によると、記憶手段の空き容量が所定値以上の場合は変換データを圧縮せずに記憶させるので、無駄な圧縮処理を行わないようにすることができる。
一方、この発明によると、記憶手段の空き容量が所定値未満の場合は変換データを圧縮することにより、記憶手段の使用容量を低減できる。
【００１３】
第５の発明は、第１〜第４のいずれかの発明の画像処理装置であって、前記色空間変換手段は、有彩色を含む部分データを取得するより前において、グレーを含む部分データを取得するまでは部分データを取得する毎に前記黒単色変換データに変換して出力し、グレーを含む部分データを取得した以後は出力を待機する。
この発明によると、有彩色又はグレーを含む部分データを取得する前において、取得した部分データが有彩色を含まず且つグレーを含まない部分データ（すなわち白、黒、又はその両方からなる部分データ）である場合には待機することなく出力するので、より早い段階で変換データの出力を開始できる。
【００１４】
第６の発明は、画像処理プログラムであって、コンピュータを、第１の色空間で表される画像データを部分データごとに順次取得する取得手段と、前記取得手段により取得した部分データの色空間を前記第１の色空間とは異なる第２の色空間に変換するものであって、前記部分データに含まれるグレーを黒単色の濃度及び複数色の濃度の組み合わせの両方によって表現可能な第２の色空間に変換し、その変換データを出力する色空間変換手段と、して機能させ、前記色空間変換手段は、有彩色を含む部分データより前にグレーを含む部分データを取得した場合は出力を待機し、待機開始後に有彩色を含む部分データを取得した場合は、前記出力が待機されている部分データについてグレーを前記複数色の濃度の組み合わせによって表現した前記変換データである複数色変換データを出力する一方、待機開始後に有彩色を含む部分データを取得することなく前記画像データの取得が終了した場合は、前記出力が待機されている部分データについてグレーを黒単色の濃度で表現した前記変換データである黒単色変換データを出力し、有彩色を含む部分データを取得した場合はそれ以後に取得する部分データを前記複数色変換データに変換して出力する。
この発明によると、画像データに有彩色が含まれるか否かが確定するのを待って変換を開始する場合に比べ、より早い段階で変換データを出力できる。
【発明の効果】
【００１５】
本発明によれば、画像データに有彩色が含まれている場合はその画像データに含まれているグレーを複数色の濃度の組み合わせで表現し、有彩色が含まれていない場合は黒単色の濃度で表現する場合において、より早い段階で変換データを出力できる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施形態に係る印刷システムの構成を示す模式図。
【図２】画像処理装置で実行される印刷処理の流れを示すフローチャート。
【図３】色空間変換処理を概念的に説明するための模式図。
【図４】色空間変換処理を概念的に説明するための模式図。
【図５】色空間変換処理を概念的に説明するための模式図。
【図６】色空間変換処理を概念的に説明するための模式図。
【図７】色空間変換処理の全体的な流れを示すフローチャート。
【図８】Ｋモード変換の処理の流れを示すフローチャート。
【図９】デュアルモード変換の処理の流れを示すフローチャート。
【図１０】ＣＭＹＫモード変換の処理の流れを示すフローチャート。
【発明を実施するための形態】
【００１７】
＜実施形態１＞
本発明の実施形態１を図１ないし図１０によって説明する。
（１）印刷システムの構成
図１は、印刷システム１０の構成を示す模式図である。印刷システム１０は、パーソナルコンピュータ１（画像処理装置の一例、以下「ＰＣ」という）、プリンタ２、及びそれらを通信可能に接続するＬＡＮ３（Local Area Network）などのネットワークで構成されている。
【００１８】
（１−１）プリンタの電気的構成
プリンタ２は、制御部２１、印刷部２２、ネットワークインタフェース（Ｉ／Ｆ）２３などを備えて構成されている。
【００１９】
制御部２１は、ＣＰＵ２４、ＲＯＭ２５、ＲＡＭ２６などで構成されている。ＣＰＵ２４はＲＯＭ２５に記憶されている各種のプログラムを実行することによりプリンタ２の各部を制御する。ＲＯＭ２５はＣＰＵ２４が実行するための各種のプログラムやデータなどを記憶している。ＲＡＭ２６はＣＰＵ２４が各種の処理を実行するための主記憶装置として用いられる。
【００２０】
印刷部２２は、Ｃ（シアン）、Ｍ（マゼンタ）、Ｙ（イエロー）、及びＫ（黒）の４色のトナーを用いて紙などの被記録媒体にレーザー方式やＬＥＤ方式でカラー画像を形成する。なお、印刷部２２はインクジェット方式でカラー画像を形成するものであってもよい。
ネットワークインタフェース（Ｉ／Ｆ）２３は、ネットワークを介してＰＣ１などの外部の機器と接続されている。
【００２１】
（１−２）ＰＣ１の電気的構成
ＰＣ１は、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、記憶部１４、表示部１５、操作部１６、ネットワークインタフェース（Ｉ／Ｆ）１７などを備えて構成されている。
【００２２】
ＣＰＵ１１（取得手段、色空間変換手段の一例）は、ＲＯＭ１２に記憶されている各種のプログラムを実行することによりＰＣ１の各部を制御する。ＲＯＭ１２はＣＰＵ１１が実行するための各種のプログラムやデータなどを記憶している。ＲＡＭ１３（記憶手段の一例）はＣＰＵ１１が各種の処理を実行するための主記憶装置として用いられる。
【００２３】
記憶部１４は、ハードディスクやフラッシュメモリなどの不揮発性の記憶媒体を用いて各種のプログラムやデータを記憶する外部記憶装置である。記憶部１４にはプリンタ２用のプリンタドライバ（画像処理プログラムの一例）が記憶されている。
【００２４】
表示部１５は、ＣＲＴや液晶ディスプレイなどの表示装置で構成されている。
操作部１６は、マウスやキーボードなどで構成されている。
ネットワークインタフェース（Ｉ／Ｆ）は、ネットワークを介してプリンタ２などの外部の機器と接続される。
【００２５】
（２）印刷処理の全体的な流れ
図２は、ＰＣ１で実行される印刷処理の全体的な流れを示すフローチャートである。本処理はユーザが例えばＰＣ１上で実行されるワードプロセッサなどのアプリケーションプログラムで印刷を指示すると開始される。ＣＰＵ１１は印刷が指示されるとプリンタドライバを実行し、以下に示す印刷処理を実行する。
【００２６】
Ｓ１０１では、ＣＰＵ１１はまず印刷対象のデータがあるか否かを確認する。ＣＰＵ１１は印刷対象のデータがなければ処理を終了する。本処理の開始直後は印刷対象のデータがあるのでＳ１０２に進む。
【００２７】
Ｓ１０２では、ＣＰＵ１１は印刷対象のデータに対して描画処理を実行する。描画処理は、印刷対象のデータから所定単位にＲＧＢ色空間（第１の色空間の一例）で表される画像データ（例えばビットマップ形式）を生成し、生成した画像データをＲＡＭ１３に記憶させる処理である。上述した所定単位は、１枚の被記録媒体に印刷される単位（ページ単位）であってもよいし、ページ単位を更に分割したブロック単位であってもよい。
【００２８】
Ｓ１０３では、ＣＰＵ１１はＲＡＭ１３に記憶した画像データに対して「色空間変換処理」を実行する。色空間変換処理は、画像データを１ライン（部分データの一例）毎にＲＧＢ色空間からＣＭＹＫ色空間（第２の色空間の一例）に変換し、ＣＭＹＫ色空間に変換した１ライン分の画像データ（変換データ）をページ記述言語に変換（コマンド化）してプリンタ２に送信（出力）する処理である。
【００２９】
以上がＰＣ１側における印刷処理の全体的な流れである。プリンタ２はＰＣ１からコマンド（コマンド化された変換データ）を受信すると、受信したコマンドを解釈して被記録媒体に画像を印刷する。
【００３０】
（３）色空間変換処理
図３〜図６は、上述した色空間変換処理を概念的に説明するための模式図である。本実施形態に係る色空間変換処理では、画像データに有彩色が含まれている場合は画像データに含まれている全てのグレーをＣＭＹＫ４色の濃度の組み合わせで表現し、画像データに有彩色が含まれていない場合は画像データに含まれている全てのグレーをＣＭＹＫのうちＫ単色の濃度で表現する。
【００３１】
図３は、白、黒（Ｂｌａｃｋ）、グレー（Ｇｒａｙ）、及び赤（ＲＥＤ）からなる画像データ３１を示している。図３において、描画処理にてはじめに処理されるデータを上、最後に処理されるデータを下とすると、ここでは図３において上から下の順で画像データ３１を１ラインごとに順次ＲＡＭ１３から読み出す（取得する）ものとする。上から下の順で取得することにより、画像データ３１では始めに白のみからなるライン（以下「白ライン」）が入力され、以後、白、及び黒（Ｂｌａｃｋ）からなるライン（以下「黒ライン」）、白、黒、及びグレー（Ｇｒａｙ）からなるライン（以下「グレーライン」）、白、黒、グレー、及び赤（ＲＥＤ）からなるライン（以下「赤ライン」）の順で取得することになる。ここで赤（ＲＥＤ）は有彩色の一例である。
【００３２】
ＣＰＵ１１は、白ライン及び黒ラインについてはそれらのラインを１ライン取得する毎に取得したラインをＫ単色データ（黒単色変換データの一例）に変換してその都度プリンタ２に出力する。
ここでＫ単色データとは、ＣＭＹＫ色空間において各画素を黒単色の濃度で表現した変換データのことをいい、グレーについてもＫ単色の濃度で表現される。
【００３３】
そして、グレーラインを取得すると、ＣＰＵ１１は変換データの出力を待機し、取得するラインをその都度Ｋ単色データ、及びＣＭＹＫデータ（複数色変換データの一例）の両方に変換してＲＡＭ１３に記憶する。
ここでＣＭＹＫデータとは、ＣＭＹＫ色空間において各画素をＣＭＹＫ４色の濃度の組み合わせで表現した変換データのことをいい、グレーについても４色の濃度の組み合わせで表現される。
【００３４】
グレーラインを取得すると変換データの出力を待機するのは、有彩色が含まれているラインをその後に取得するか否かがこの時点で不明であるので、Ｋ単色データ、及びＣＭＹＫデータのいずれを出力するかを決定できないからである。
【００３５】
そして、赤ラインを取得すると、画像データに有彩色が含まれていることがその時点で確定するので、ＣＰＵ１１はＲＡＭ１３に記憶しておいた変換データのうちＫ単色データを破棄し、ＣＭＹＫデータを直ちに出力する。そして、ＣＰＵ１１は赤ライン以後のラインについて、１ラインを取得する毎に当該ラインをＣＭＹＫデータに変換してその都度出力する。
従って、図３に示す例では、グレーラインを取得するまでのラインについてはＫ単色データが出力され、グレーラインを取得した以後のラインについてはＣＭＹＫデータが出力されることになる。
【００３６】
図４は、図３に示す画像データ３１の赤（ＲＥＤ）が黒（Ｂｌａｃｋ）になった画像データ３２を示している。従って、まず白ライン及び黒ラインをＫ単色データに変換してその都度プリンタ２に出力した後、グレーラインをその都度Ｋ単色データ、及びＣＭＹＫデータの両方に変換してＲＡＭ１３に記憶させる。画像データ３２には有彩色が含まれていないので、有彩色を含むラインを取得することなく画像データの取得が終了する。ＣＰＵ１１は有彩色を含むラインを取得することなく画像データの取得が終了した場合には、ＲＡＭ１３に記憶しておいた変換データのうちＣＭＹＫデータを破棄し、Ｋ単色データを出力する。従って、図４に示す例の場合はＫ単色データのみが出力されることになる。
【００３７】
図５は、図３に示す画像データ３１のグレー（Ｇｒａｙ）が青（Ｂｌｕｅ）になった画像データ３３を示している。ここで青（Ｂｌｕｅ）は有彩色の一例である。この場合は青ラインを取得するまでは１ライン取得する毎にＫ単色データに変換して都度出力し、青ラインを取得した以降は１ライン取得する毎にＣＭＹＫデータに変換して都度出力する。
【００３８】
従って、図５に示す例の場合は、青ラインを取得するまでのラインについてはＫ単色データが出力され、青ラインを取得した以後のラインについてはＣＭＹＫデータが出力されることになる。そして、図５に示す例では画像データ３３にグレーが含まれないので、変換データの出力を待機する時間は生じないことになる。
【００３９】
図６は、図３に示す画像データ３１のグレー（Ｇｒａｙ）及び赤（ＲＥＤ）が黒（Ｂｌａｃｋ）になった画像データ３４を示している。グレーラインが入力されないので、全てのラインをＫ単色データに変換してその都度プリンタ２に出力する。この場合もＫ単色データのみが出力され、変換データの出力を待機する時間は生じないことになる。
【００４０】
（３−１）色空間変換処理の全体的な流れ（前半）
図７は、上述した色空間変換処理の全体的な流れを示すフローチャートである。ここでは図７に示す色空間変換処理の前半（Ｓ２０１〜Ｓ２０８）について説明する。
【００４１】
Ｓ２０１では、ＣＰＵ１１はまず初期化を行う。この初期化では、ＣＰＵ１１は色モードをＫモードに設定するとともに、取得したラインのＹ座標を表す変数ｙに０（零）を代入する。Ｙ座標とは画像データ上の座標系におけるＹ座標のことをいい、変数ｙは画像データのラインを示す変数である。なお、変数ｙ＝０は１番目のラインを意味する（図３）。
【００４２】
ここで色モードとは画像データをＣＭＹＫ色空間に変換するときのＣＰＵ１１の動作モードをいい、Ｋモード、デュアルモード、ＣＭＹＫモードの３つがある。
Ｋモードは、白のみ、黒のみ又はその両方のみを含む１ライン分の画像データを取得する毎にＫ単色データに変換して都度出力するモードである。
デュアルモードは、有彩色を含むラインを取得するより前にグレーを含むラインを取得した場合に、変換データの出力を待機し、待機開始後に取得するラインをＫ単色データ及びＣＭＹＫデータの両方に変換してＲＡＭ１３に記憶させるモードである。
ＣＭＹＫモードは、有彩色を含むラインを取得した以後に、１ライン分の画像データを取得する毎にＣＭＹＫデータに変換して都度出力するモードである。
【００４３】
Ｓ２０２では、ＣＰＵ１１は変数ｙと画像データの全ライン数とを比較して画像データの全ラインについて変換が終了したか否かを判定する。画像データの全ライン数は前述した描画処理の処理結果から事前に知ることができる。具体的には、画像データのヘッダに含まれているピクセル数や、印刷を指示する場合にユーザにより設定される印刷解像度や被記録媒体のサイズなどから事前に知ることができる。
ＣＰＵ１１は変数ｙが全ライン数より小さい場合は変換が終了していないと判定してＳ２０３に進み、変数ｙが全ライン数と等しい場合は変換が終了したと判定してＳ２０９に進む。
【００４４】
Ｓ２０３では、ＣＰＵ１１は画素のＸ座標を表す変数ｘに０（零）を代入する。Ｘ座標とは、画像データ上の座標系におけるＸ座標のことをいい、変数ｘは画像データの幅を示す変数である。なお、変数ｘ＝０は１ラインにおける１番目の画素を意味する（図３）。
Ｓ２０４では、ＣＰＵ１１は色モードがＫモードか否かを判定する。本処理が開始された直後は初期化によりＫモードが設定されているので、最初は必ずＫモードと判定される。ＣＰＵ１１は色モードがＫモードの場合はＳ２０５に進み、Ｋモード以外の場合はＳ２０６に進む。
【００４５】
Ｓ２０５では、ＣＰＵ１１は「Ｋモード変換」を実行する。
Ｓ２０６では、ＣＰＵ１１は色モードがデュアルモードか否かを判定する。ＣＰＵ１１は、色モードがデュアルモードの場合はＳ２０７に進み、デュアルモードではない場合（すなわちＣＭＹＫモードの場合）はＳ２０８に進む。
【００４６】
Ｓ２０７では、ＣＰＵ１１は「デュアルモード変換」を実行する。
Ｓ２０８では、ＣＰＵ１１は「ＣＭＹＫ変換」を実行する。
【００４７】
（３−２）Ｋモード変換
図８は、Ｋモード変換の処理の流れを示すフローチャートである。
Ｓ３０１では、ＣＰＵ１１は１ライン分の変換が終了したか否かを判定する。ＣＰＵ１１は変数ｘが画像の幅より小さい場合は１ライン分の変換が終了していないと判定してＳ３０２に進み、画像の幅と同じ場合は終了したと判定してＳ３０９に進む。画像データの画像の幅は、画像データの全ライン数と同様に、前述した描画処理の処理結果から事前に知ることができる。
【００４８】
Ｓ３０２では、ＣＰＵ１１は処理対象のラインから（変数ｘ、変数ｙ）座標の画素（以下「対象画素」という）の画素値（ＲＧＢ各成分の値）を取得する。
Ｓ３０３では、ＣＰＵ１１は取得した画素値に基づいて対象画素の色がグレーであるか否かを判定する。ＲＧＢ各成分の階調を０〜２５５の２５６階調とした場合、ＲＧＢ各成分の値が全て０であればその画素が表す色は黒となり、全て２５５であれば白となる。そして、ＲＧＢ各成分の値が全て同じであり、且つその値が０及び２５５以外であればグレーとなる。ＣＰＵ１１は対象画素の色がグレー以外（白、黒、及び有彩色）の場合はＳ３０４に進み、グレーの場合は有彩色を含むラインより前にグレーを含むラインを取得したと判定してＳ３０７に進む。
【００４９】
Ｓ３０４では、ＣＰＵ１１は対象画素の色が有彩色（白、黒、及びグレー以外の色）であるか否かを判定する。ＣＰＵ１１は対象画素の色が有彩色ではない場合、すなわち白か黒である場合はＳ３０５に進み、有彩色の場合は有彩色を含むラインを取得したと判定してＳ３０８に進む。Ｓ３０４で有彩色を含むラインを取得したと判定されると、画像データに有彩色が含まれていることが確定する。
【００５０】
Ｓ３０５では、ＣＰＵ１１は対象画素をＫ単色データに変換する。以下に対象画素をＫ単色データに変換する変換式の一例を示す。
Ｃ＝０
Ｍ＝０
Ｙ＝０
Ｋ＝２５５−Ｒ（＝２５５−Ｇ＝２５５−Ｂ）
【００５１】
Ｓ３０６では、ＣＰＵ１１は変数ｘに１を加算してＳ３０１に戻る。
Ｓ３０７では、ＣＰＵ１１は色モードをデュアルモードに設定してＳ３０９に進む。
Ｓ３０８では、ＣＰＵ１１は色モードをＣＭＹＫモードに設定してＳ３０９に進む。
【００５２】
Ｓ３０９では、ＣＰＵ１１は処理対象のラインについて途中までＫ単色データに変換した変換結果を破棄する。途中まで変換した変換結果を破棄するのは、「デュアルモード」又は「ＣＭＹＫモード」を設定した場合には図中のＳ３１３が実行されず（すなわち変数ｙに１が加算されず）、Ｓ２０２（図７）に戻ると同じラインについて「デュアルモード変換」又は「ＣＭＹＫモード変換」のいずれかが最初からやり直されるからである。
Ｓ３０９の後、Ｋモード変換処理を終了してＳ２０２（図７）へ戻ると、Ｓ３０７又はＳ３０８においてデュアルモード又はＣＭＹＫモードに設定されているので、以降はデュアルモード変換（Ｓ２０７）又はＣＭＹＫモード変換（Ｓ２０８）に進むことになる。
【００５３】
Ｓ３１０では、ＣＰＵ１１は１ライン分のＫ単色データを圧縮する。
Ｓ３１１では、ＣＰＵ１１はＳ３１０で圧縮した１ライン分のＫ単色データをコマンド化する。
Ｓ３１２では、ＣＰＵ１１はコマンド化した１ライン分のＫ単色データをプリンタ２に出力する。
Ｓ３１３では、ＣＰＵ１１は変数ｙに１を加算して処理を終了し、Ｓ２０２（図７）の処理に戻る。ただし、色モードはＫモードのままであるので、次のラインについてもＫモード変換（Ｓ２０５）が行われることになる。
【００５４】
（３−３）デュアルモード変換
図９は、デュアルモード変換の処理の流れを示すフローチャートである。
Ｓ４０１では、ＣＰＵ１１は１ライン分の変換が終了したか否かを判定する。ＣＰＵ１１は変数ｘが画像の幅より小さい場合は１ライン分の変換が終了していないと判定してＳ４０２に進み、画像の幅と同じ場合は終了したと判定してＳ４０７に進む。
【００５５】
Ｓ４０２では、ＣＰＵ１１は処理対象のラインから（変数ｘ、変数ｙ）座標の画素（対象画素）の画素値（ＲＧＢ各成分の値）を取得する。
Ｓ４０３では、ＣＰＵ１１は取得した画素値に基づいて対象画素の色が有彩色であるか否かを判定する。ＣＰＵ１１は、対象画素の色が有彩色ではない場合（白、黒、又はグレーの場合）はＳ４０４に進み、有彩色の場合は有彩色を含むラインを取得したと判定してＳ４１３に進む。Ｓ４０３で有彩色を含むラインを取得したと判定されると、画像データに有彩色が含まれていることが確定する。
【００５６】
Ｓ４０４では、ＣＰＵ１１は対象画素をＫ単色データに変換し、一時Ｋ単色データとして一時Ｋ単色用メモリに記憶する。本実施形態ではＲＡＭ１３を一時Ｋ単色用メモリとして用いる。
【００５７】
Ｓ４０５では、ＣＰＵ１１は対象画素をＣＭＹＫデータに変換し、一時ＣＭＹＫデータとして一時ＣＭＹＫ用メモリに記憶する。本実施形態ではＲＡＭ１３を一時ＣＭＹＫ用メモリとして用いる。
以下に対象画素をＣＭＹＫデータに変換する変換式の一例を示す。
Ｃ＝２５５−Ｒ−Ｋ
Ｍ＝２５５−Ｇ−Ｋ
Ｙ＝２５５−Ｂ−Ｋ
Ｋ＝ｍｉｎ（２５５−Ｒ，２５５−Ｇ，２５５−Ｂ）
【００５８】
Ｓ４０６では、ＣＰＵ１１は変数ｘに１を加算してＳ４０１に戻る。
Ｓ４０７では、ＣＰＵ１１は一時Ｋ単色用メモリに記憶されている１ライン分の一時Ｋ単色データをＲＡＭ１３に記憶されているＫ単色データに追加するとともに、一時ＣＭＹＫ用メモリに記憶されている１ライン分の一時ＣＭＹＫデータをＲＡＭ１３に記憶されているＣＭＹＫデータに追加する。デュアルモードを初めて実行したときはまだＲＡＭ１３にＫ単色データ、及びＣＭＹＫデータは記憶されていないので、その場合は一時Ｋ単色データ、及び一時ＣＭＹＫデータをＫ単色データ、及びＣＭＹＫデータとして記憶させ、次回以降はそのＫ単色データ、及びＣＭＹＫデータに追加するものとする。
【００５９】
Ｓ４０８では、ＣＰＵ１１はＲＡＭ１３の空き容量が予め設定されている所定値未満か否かを判断する。ＣＰＵ１１は、ＲＡＭ１３の空き容量が所定値未満の場合はＳ４０９に進み、所定値以上の場合はＳ４１１に進む。
Ｓ４０９では、ＣＰＵ１１はＳ４０７で追加した１ライン分のＫ単色データ、及びＣＭＹＫデータを圧縮する。
【００６０】
Ｓ４１０では、ＣＰＵ１１はＳ４０９で圧縮したＫ単色データ、及びＣＭＹＫデータをコマンド化する。そしてコマンド化したデータをＲＡＭ１３に記憶させる。
Ｓ４１１では、ＣＰＵ１１は変数ｙに１を加算する。
Ｓ４１２では、ＣＰＵ１１はＲＡＭ１３に記憶した一時Ｋ単色データ、及び一時ＣＭＹＫデータをＲＡＭ１３から破棄する。そして、ＣＭＹＫモード変換を終了し、Ｓ２０２（図７）に戻る。この場合色モードはデュアルモードのままであるので、次のラインについてもデュアルモード変換（Ｓ２０７）が行われることになる。
【００６１】
Ｓ４１３〜Ｓ４１８までの処理は、図８に示すＳ３０３で有彩色を含むラインより前にグレーを含むラインを取得したと判定されたことによりデュアルモードに遷移して変換データの出力を待機していた状態において、待機開始後にＳ４０３で有彩色を含むラインを取得したと判定されたことにより、すなわち画像データに有彩色が含まれていることが確定したことにより、グレーをＣＭＹＫ４色の濃度の組み合わせで表現することが確定したので、待機中に変換してＲＡＭ１３に記憶しておいたＫ単色データ及びＣＭＹＫデータのうちＣＭＹＫデータをまとめて出力する処理である。
【００６２】
Ｓ４１３では、ＣＰＵ１１は色モードをＣＭＹＫモードに設定する。
Ｓ４１４では、ＣＰＵ１１はコマンド化されていないＣＭＹＫデータがＲＡＭ１３に記憶されているか否かを判定する。処理対象のラインより前のラインについてデュアルモードが実行されている場合には、ＲＡＭ１３の空き容量が所定値以上であったことによりＣＭＹＫデータがＳ４０９及びＳ４１０において圧縮及びコマンド化されずにＲＡＭ１３に記憶されている場合がある。そこで、ＣＰＵ１１はコマンド化されずにＲＡＭ１３に記憶されているＣＭＹＫデータをコマンド化するために、コマンド化されていないＣＭＹＫデータがＲＡＭ１３に記憶されているか否かを判定する。
ＣＰＵ１１は、コマンド化されていないＣＭＹＫデータが記憶されている場合はＳ４１５に進み、記憶されていない場合はＳ４１７に進む。
【００６３】
Ｓ４１５では、ＣＰＵ１１はＲＡＭ１３に記憶されているコマンド化されていないＣＭＹＫデータをライン毎にそれぞれ圧縮する。
Ｓ４１６では、ＣＰＵ１１は圧縮したＣＭＹＫデータをそれぞれコマンド化する。
Ｓ４１７では、ＣＰＵ１１はコマンド化した全てのＣＭＹＫデータ、すなわち出力が待機されていた全てのＣＭＹＫデータをプリンタ２に出力する。
Ｓ４１８では、ＣＰＵ１１はＲＡＭ１３に記憶されている全てのＫ単色データを破棄して処理を終了する。ＲＡＭ１３に記憶されているＫ単色データを破棄するのは、処理対象のラインより前のラインについてデュアルモードが実行されている場合には前のライン分のＫ単色データがＲＡＭ１３に記憶されていることになるが、画像データに有彩色が含まれていることが確定した時点（Ｓ４０３で「Yes」と判定された時点）でそれらのＫ単色データが不要になるからである。
【００６４】
（３−４）ＣＭＹＫモード変換
図１０は、ＣＭＹＫモード変換の処理の流れを示すフローチャートである。
Ｓ５０１では、ＣＰＵ１１は１ライン分の変換が終了したか否かを判定する。ＣＰＵ１１は変数ｘが画像の幅より小さい場合は１ライン分の変換が終了していないと判定してＳ５０２に進み、画像の幅と同じ場合は終了したと判定してＳ５０５に進む。
【００６５】
Ｓ５０２では、ＣＰＵ１１は処理対象のラインから（変数ｘ、変数ｙ）座標の画素（対象画素）の画素値を取得する。
Ｓ５０３では、ＣＰＵ１１は対象画素をＣＭＹＫデータに変換する。
Ｓ５０４では、ＣＰＵ１１は変数ｘに１を加算してＳ５０１に戻る。
Ｓ５０５では、ＣＰＵ１１は変換した１ライン分のＣＭＹＫデータを圧縮する。
【００６６】
Ｓ５０６では、ＣＰＵ１１はＳ５０５で圧縮したＣＭＹＫデータをコマンド化する。
Ｓ５０７では、ＣＰＵ１１はコマンド化したＣＭＹＫデータをプリンタ２に出力する。
Ｓ５０８では、ＣＰＵ１１は変数ｙに１を加算する。そしてＣＭＹＫモード変換を終了し、Ｓ２０２（図７）に戻る。ただし、色モードはＣＭＹＫモードのままであるので、次のラインについてもＣＭＹＫモード変換（Ｓ２０８）が行われ、以後、画像データの取得が終了するまでＣＭＹＫモード変換が行われることになる。
【００６７】
（３−５）色空間変換処理の全体的な流れ（後半）
図７に戻り、色空間変換処理の全体的な流れの後半（Ｓ２０９〜Ｓ２１３）について説明する。
Ｓ２０９〜Ｓ２１３までの処理は、デュアルモードに遷移していた場合に実行される処理である。デュアルモードに遷移して変換データの出力を待機していた状態において、待機開始後に有彩色を含むラインを取得することなく画像データの取得が終了した場合は、画像データに有彩色が含まれていないことが確定するので、グレーをＫ単色の濃度で表現することが確定し、待機中に変換してＲＡＭ１３に記憶しておいたＫ単色データ及びＣＭＹＫデータのうちＫ単色データをまとめて出力する。
ただし、デュアルモードに遷移していてもその後にＣＭＹＫモードに遷移していた場合には待機中にＲＡＭ１３に記憶したＫ単色データはＳ４１８で破棄されているので、その場合にはこの処理を実行してもＫ単色データは出力されない。
【００６８】
前述したデュアルモード変換では、ＣＭＹＫデータについてはＳ４０９〜Ｓ４１０で圧縮及びコマンド化されなくてもＳ４１３で色モードがＣＭＹＫモードに設定されたときに圧縮及びコマンド化される。しかしながら、Ｋ単色データについてはＳ４０９〜Ｓ４１０で圧縮及びコマンド化されなかった場合にはその後にデュアルモード変換の中でそのＫ単色データが圧縮及びコマンド化されることはない。
【００６９】
そのため、デュアルモード変換でＣＭＹＫモードが設定されることなく画像データの取得が終了し、それによりＲＡＭ１３に記憶されているＫ単色データを出力することが確定した場合には、ＲＡＭ１３に記憶されているＫ単色データのうち圧縮及びコマンド化されていないデータを圧縮及びコマンド化する必要がある。
【００７０】
そこで、色空間変換処理の後半では、デュアルモード変換のＳ４０９〜Ｓ４１０で圧縮及びコマンド化されなかったＫ単色データを圧縮及びコマンド化し、Ｓ４０９〜Ｓ４１０で圧縮及びコマンド化されていたＫ単色データも含めてプリンタ２に出力する。
【００７１】
Ｓ２０９では、ＣＰＵ１１は色モードがデュアルモードであるか否かを判定する。ＣＰＵ１１は、色モードがデュアルモードの場合はＳ２１０に進み、それ以外のモードの場合は色空間変換処理を終了しＳ１０１（図２）に戻る。
Ｓ２１０では、ＣＰＵ１１はＲＡＭ１３に記憶されているＫ単色データのうち圧縮及びコマンド化されていないデータがあるか否かを判定する。ＣＰＵ１１は、圧縮及びコマンド化されていないデータがある場合にはＳ２１１に進み、ない場合はＳ２１３に進む。
【００７２】
Ｓ２１１では、ＣＰＵ１１はＲＡＭ１３に記憶されているＫ単色データのうち圧縮及びコマンド化されていないデータを圧縮する。
Ｓ２１２では、ＣＰＵ１１はＳ２１１で圧縮したＫ単色データをコマンド化する。
Ｓ２１３では、ＣＰＵ１１はコマンド化した全てのＫ単色データ、すなわち出力が待機されていた全てのＫ単色データをプリンタ２に出力する。そして、色空間変換処理を終了し、Ｓ１０１（図２）に戻る。
【００７３】
（４）実施形態の効果
以上説明した本発明の一実施形態に係るＰＣ１によると、有彩色を含むラインより前にグレーを含むラインを取得した場合には、グレーを黒単色の濃度、又は複数色の濃度の組み合わせのいずれによって表現すべきかを決定できないので、有彩色が含まれるか否かが確定するまで待機する。
しかしながら、ＰＣ１によると、グレーを含むラインが入力されるより前に取得したラインについては画像データに有彩色が含まれるか否かが確定するのを待つことなく変換データを出力する。
よってＰＣ１によると、画像データに有彩色が含まれるか否かが確定するのを待って変換を開始する場合に比べ、より早い段階で変換データを出力できる。
【００７４】
例えば、文字が黒で表される文書データ（画像データの一例）などのように画像データにグレーや有彩色が含まれない場合、有彩色の有無が確定してから変換を開始する従来技術とＰＣ１とを比較すると、従来技術では画像データに有彩色が含まれない場合には画像データを最後まで調べることになるので、画像データを最後まで調べてから変換を開始することになる。
これに対し、ＰＣ１によると、画像データにグレーが含まれない場合には待機することなく変換データを出力するので、画像データを最後まで調べて有彩色が含まれていないことが確定した時には大部分のラインについて変換データの出力が終了していることになる。
このように、ＰＣ１によると、特に画像データにグレーや有彩色が含まれない場合には従来技術に比べて大幅に速く変換データの出力を開始できる。そして、一般にプリンタで印刷する画像データは文書データが大半であると推測されるので、多くの場合においてＰＣ１は従来技術よりも大幅に速く変換データを出力できる。
【００７５】
また、ＰＣ１によると、注目画素の近辺に有彩色が有るか否かを調べないので、グレーをＣＭＹＫ４色の濃度の組み合わせで表現するか又はＫ単色の濃度で表現するかを注目画素の近辺に有彩色が有るか否かに応じて判定する場合に比べて処理量を低減できる。これにより、より早い段階で変換データを出力できる。
【００７６】
更に、ＰＣ１によると、有彩色を含むラインを取得する前にグレーを含むラインを取得した場合はＣＭＹＫデータを出力すべきかＫ単色データを出力すべきかを決定できないのでデュアルモードに遷移して出力を待機する。しかしながら、デュアルモードでは取得するラインをＫ単色データ及びＣＭＹＫデータの両方に変換してＲＡＭ１３に記憶しておくので、変換データの出力が待機されているラインについて、有彩色を含むラインが入力されてからＣＭＹＫデータへの変換を開始する場合に比べ、あるいは画像データの取得が終了してからＫ単色データへの変換を開始する場合に比べ、より早い段階で当該待機されているラインについての変換データを出力できる。
【００７７】
更に、ＰＣ１によると、Ｋ単色データ及びＣＭＹＫデータの両方の変換データに変換する場合に、ＲＡＭ１３に記憶させたＫ単色データ及びＣＭＹＫデータのうちいずれか出力しなかった変換データを破棄するので、ＲＡＭ１３の使用容量を低減できる。
【００７８】
更に、ＰＣ１によると、Ｋ単色データ及びＣＭＹＫデータの両方の変換データに変換する場合に、ＲＡＭ１３の空き容量が所定値以上の場合は変換データを圧縮せずにＲＡＭ１３に記憶させる。取得するラインを黒単色データ及びＣＭＹＫデータの両方に変換している状態（デュアルモード）においては、結果的にいずれの変換データを出力するかわからない。ＰＣ１によると、ＲＡＭ１３の空き容量が所定値以上の場合は変換データを圧縮せずに記憶させるので、無駄な圧縮処理を行わないようにすることができる。一方、ＰＣ１によると、ＲＡＭ１３の空き容量が所定値未満の場合は変換データを圧縮することにより、ＲＡＭ１３の使用容量を低減できる。
また、ＲＡＭ１３の空き容量が所定値未満の場合は圧縮の後にコマンド化をしてもよい。このようにすると、変換データのサイズをさらに小さくすることができＲＡＭ１３の使用容量を低減する効果が高まる。
【００７９】
更に、ＰＣ１によると、有彩色又はグレーを含むラインを取得する前において、取得したラインが有彩色を含まず且つグレーを含まないライン（すなわち白、黒、又はその両方からなるライン）である場合には待機することなく出力するので、より早い段階で変換データの出力を開始できる。
【００８０】
＜他の実施形態＞
本発明は上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような実施形態も本発明の技術的範囲に含まれる。
【００８１】
（１）上記実施形態では有彩色を含むライン（部分データ）を取得するより前にグレーを含むラインを取得した場合には、変換データの出力を待機して、取得したラインをＫ単色データ及びＣＭＹＫデータの両方に変換しておく場合を例に説明したが、グレーを含むラインを取得した場合、その後に有彩色を含むラインを取得するか又は画像データの取得が終了するまで変換を行わずに待機し、有彩色を含むラインを取得するか又は画像データの取得が終了してから初めてそれら待機されていたラインについてＣＭＹＫ色空間への変換を開始するようにしてもよい。
【００８２】
（２）上記実施形態では画像処理装置としてＰＣ１を例に説明したが、画像処理装置はプリンタであってもよい。この場合は、例えば描画処理までをＰＣ１で実行してプリンタに出力し、その後の色空間変換処理から印刷までをプリンタで実行してもよいし、描画処理も含めてプリンタで実行してもよい。
また、画像処理装置は例えばＵＳＢメモリなどの着脱可能な不揮発性の記憶媒体から画像を直接読み込んで印刷する所謂ダイレクトプリント機能を有するプリンタであってもよい。この場合は描画処理も含めてプリンタで実行することになる。
【００８３】
（３）上記実施形態では１ライン分の画像データを１つの部分データとしているが、２ラインや３ラインなどの複数のラインを１つの部分データとしてもよいし、画像データの１画素を１つの部分データとしてもよい。
また、本実施形態では少なくとも有彩色を含むラインを取得した以後は１ライン取得する毎に変換して都度出力する場合を例に説明したが、複数の部分データを取得してからまとめて変換を行うようにしてもよいし、複数のラインが変換されるまで待ってまとめて出力するようにしてもよい。
【００８４】
（４）上記実施形態では画像データをＣＭＹＫ色空間に変換する場合を例に説明したが、これはプリンタがＣＭＹＫの４色のトナーを用いるものであるからであり、どのような色空間に変換するかはプリンタが印刷に用いるトナーの色数に応じて適宜に決定できる。また、入力する画像データの色空間についても適宜に決定できる。
【符号の説明】
【００８５】
１・・・パーソナルコンピュータ（ＰＣ）
２・・・プリンタ
１０・・・印刷システム
１１・・・ＣＰＵ
１３・・・ＲＡＭ
３１〜３４・・・画像データ
【図１】
2011049861.tif 000003
【図２】
2011049861.tif 000004
【図３】
2011049861.tif 000005
【図４】
2011049861.tif 000006
【図５】
2011049861.tif 000007
【図６】
2011049861.tif 000008
【図７】
2011049861.tif 000009
【図８】
2011049861.tif 000010
【図９】
2011049861.tif 000011
【図１０】
2011049861.tif 000012