(57)【要約】      （修正有）【課題】ラスタライズ処理における効率的なメモリ使用を実現する。【解決手段】画像データ処理装置は、プロセッサと、メモリと、メモリに記憶されたプログラム命令であって、プロセッサによる実行の際に、画像データ処理装置に、三原色の各色に対して設けられている第１色のプレーンと、第２色のプレーンと、第３色のプレーンとを含む複数のプレーンの少なくとも１つに記憶領域を割り当てる記憶領域割り当て工程と、複数のプレーンの相互間でそれぞれ対応する同一の領域を有する複数の画像領域に分割する画像領域分割工程と、複数のプレーンの相互間において対応する画像領域の画像の同一性を表す変数を解析して同一性を決定する工程と、決定された同一性に基づいて複数のプレーンの相互間の流用処理を行って複数のプレーンによって構成されている画像を表す画像データを生成する画像データ生成工程とを含む工程を実施させるプログラム命令とを備える。【選択図】図１
2019081359.tif 000002
【特許請求の範囲】
【請求項１】
画像データ処理装置であって、
プロセッサと、
メモリと、
前記メモリに記憶されたプログラム命令であって、前記プロセッサによる実行の際に、前記画像データ処理装置に、
三原色の各色に対して設けられている第１色のプレーンと、第２色のプレーンと、第３色のプレーンとを含む複数のプレーンの少なくとも１つに記憶領域を割り当てる記憶領域割り当て工程と、
前記複数のプレーンの相互間でそれぞれ対応する同一の領域を有する複数の画像領域に分割する画像領域分割工程と、
前記複数のプレーンの相互間において対応する画像領域の画像の同一性を表す変数を解析して前記同一性を決定する工程と、
前記決定された同一性に基づいて前記複数のプレーンの相互間の流用処理を行って前記複数のプレーンによって構成されている画像を表す画像データを生成する画像データ生成工程と、
を含む工程を実施させるプログラム命令と、
を備える画像データ処理装置。
【請求項２】
請求項１記載の画像データ処理装置であって、
ページ記述言語によって記述されている印刷データを解析して前記複数のプレーンの相互間において対応する画像領域の画像の同一性を特定し、前記特定された同一性に基づいて前記変数を生成する工程を備える画像データ処理装置。
【請求項３】
請求項２記載の画像データ処理装置であって、
前記変数を生成する工程は、前記印刷データから抽出されたオブジェクトが前記三原色のいずれか又は前記三原色の均等な混色によって再現される特定画像の再現を指示するものであるか否かの判断を実行し、前記特定画像の再現を指示するものであるとの判断に応じて前記変数を生成する画像データ処理装置。
【請求項４】
請求項１乃至３のいずれか１項に記載の画像データ処理装置であって、
前記第１色のプレーンは、Ｒ色の階調値を有する複数の画素から構成されているＲプレーンを含み、
前記第２色のプレーンは、Ｇ色の階調値を有する複数の画素から構成されているＧプレーンを含み、
前記第３色のプレーンは、Ｂ色の階調値を有する複数の画素から構成されているＢプレーンを含み、
前記変数は、前記Ｒプレーン、前記Ｇプレーン及び前記Ｂプレーンの相互間において対応する画像領域の画像の同一性を表す第１の変数を含んでいる画像データ処理装置。
【請求項５】
請求項４に記載の画像データ処理装置であって、
前記第１色のプレーンは、Ｃ色の階調値を有する複数の画素から構成されているＣプレーンを含み、
前記第２色のプレーンは、Ｍ色の階調値を有する複数の画素から構成されているＭプレーンを含み、
前記第３色のプレーンは、Ｙ色の階調値を有する複数の画素から構成されているＹプレーンを含み、
前記変数は、前記Ｃプレーン、前記Ｍプレーン及び前記Ｙプレーンの相互間において対応する画像領域の画像の同一性を表す第２の変数を含んでおり、
前記画像データ処理装置は、前記Ｒプレーン、前記Ｇプレーン、前記Ｂプレーンと前記第１の変数とを前記Ｃプレーン、前記Ｍプレーン及び前記Ｙプレーンと前記第２の変数とに変換する画像データ処理装置。
【請求項６】
請求項５に記載の画像データ処理装置であって、
前記第１色のプレーンは、Ｃ色の色材で形成されるドットの形成状態を示すドットデータから構成されているＣドットプレーンを含み、
前記第２色のプレーンは、Ｍ色の色材で形成されるドットの形成状態を示すドットデータから構成されているＭドットプレーンを含み、
前記第３色のプレーンは、Ｙ色の色材で形成されるドットの形成状態を示すドットデータから構成されているＹドットプレーンを含み、
前記変数は、前記Ｃプレーン、前記Ｍプレーン及び前記Ｙプレーンの相互間において対応する画像領域の画像の同一性を表す第３の変数を含んでおり、
前記画像データ処理装置は、前記Ｃプレーン、前記Ｍプレーン、前記Ｙプレーンと前記第１の変数とを、前記Ｃドットプレーン、前記Ｍドットプレーン、前記Ｙドットプレーンと前記第３の変数とに変換する画像データ処理装置。
【請求項７】
画像データ処理方法であって、
三原色の各色に対して設けられている第１色のプレーンと、第２色のプレーンと、第３色のプレーンとを含む複数のプレーンの少なくとも１つに記憶領域を割り当てる記憶領域割り当て工程と、
前記複数のプレーンの相互間でそれぞれ対応する同一の領域を有する複数の画像領域に分割する画像領域分割工程と、
前記複数のプレーンの相互間において対応する画像領域の画像の同一性を表す変数を解析して前記同一性を決定する工程と、
前記決定された同一性に基づいて前記複数のプレーンの相互間の流用処理を行って前記複数のプレーンによって構成されている画像を表す画像データを生成する画像データ生成工程と、
を備える画像データ処理方法。
【請求項８】
プロセッサとメモリとを有する画像データ処理装置を制御するための制御プログラムであって、
三原色の各色に対して設けられている第１色のプレーンと、第２色のプレーンと、第３色のプレーンとを含む複数のプレーンの少なくとも１つに記憶領域を割り当てる記憶領域割り当て工程と、
前記複数のプレーンの相互間でそれぞれ対応する同一の領域を有する複数の画像領域に分割する画像領域分割工程と、
前記複数のプレーンの相互間において対応する画像領域の画像の同一性を表す変数を解析して前記同一性を決定する工程と、
前記決定された同一性に基づいて前記複数のプレーンの相互間の流用処理を行って前記複数のプレーンによって構成されている画像を表す画像データを生成する画像データ生成工程と、
を含む工程を前記画像データ処理装置に実施させるプログラム命令を備える制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理方法、画像処理装置及び画像処理プログラムに関し、特に効率的なメモリ使用を可能とする技術に関する。
【背景技術】
【０００２】
画像形成装置（たとえばプリンター、多機能プリンター、又は複合機（Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ））は、一般にページ記述言語（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）で記述された印刷ジョブに基づいて印刷処理を行うことができる。印刷処理には、印刷ジョブに含まれるＰＤＬデータからテキスト（文字）やイメージ、ベクターグラフィックスといったオブジェクトを抽出し、ラスターデータを生成するラスタライズ処理が含まれる。ラスタライズ処理は、オブジェクトをビットマップ画像データに変換するので、一般に作業領域として大きなメモリ領域を使用する。特に、カラー画像処理では、たとえばＲＧＢやＣＭＹＫの色ごとにビットマップ画像データが生成される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−１９２６２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、本願発明者は、オブジェクトデータの内容によっては、ＲＧＢのビットマップ画像データが相互に同一となる場合があることを見出した。
【０００５】
本発明は、このような状況に鑑みてなされたものであり、ラスタライズ処理における効率的なメモリ使用を実現するための技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の画像データ処理装置は、プロセッサと、メモリと、前記メモリに記憶されたプログラム命令であって、前記プロセッサによる実行の際に、前記画像データ処理装置に、三原色の各色に対して設けられている第１色のプレーンと、第２色のプレーンと、第３色のプレーンとを含む複数のプレーンの少なくとも１つに記憶領域を割り当てる記憶領域割り当て工程と、前記複数のプレーンの相互間でそれぞれ対応する同一の領域を有する複数の画像領域に分割する画像領域分割工程と、前記複数のプレーンの相互間において対応する画像領域の画像の同一性を表す変数を解析して前記同一性を決定する工程と、前記決定された同一性に基づいて前記複数のプレーンの相互間の流用処理を行って前記複数のプレーンによって構成されている画像を表す画像データを生成する画像データ生成工程とを含む工程を実施させるプログラム命令とを備える。
【０００７】
本発明の画像データ処理方法は、三原色の各色に対して設けられている第１色のプレーンと、第２色のプレーンと、第３色のプレーンとを含む複数のプレーンの少なくとも１つに記憶領域を割り当てる記憶領域割り当て工程と、前記複数のプレーンの相互間でそれぞれ対応する同一の領域を有する複数の画像領域に分割する画像領域分割工程と、前記複数のプレーンの相互間において対応する画像領域の画像の同一性を表す変数を解析して前記同一性を決定する工程と、前記決定された同一性に基づいて前記複数のプレーンの相互間の流用処理を行って前記複数のプレーンによって構成されている画像を表す画像データを生成する画像データ生成工程とを備える。
【０００８】
本発明は、プロセッサとメモリとを有する画像データ処理装置を制御するための制御プログラムを提供する。前記制御プログラムは、三原色の各色に対して設けられている第１色のプレーンと、第２色のプレーンと、第３色のプレーンとを含む複数のプレーンの少なくとも１つに記憶領域を割り当てる記憶領域割り当て工程と、前記複数のプレーンの相互間でそれぞれ対応する同一の領域を有する複数の画像領域に分割する画像領域分割工程と、前記複数のプレーンの相互間において対応する画像領域の画像の同一性を表す変数を解析して前記同一性を決定する工程と、前記決定された同一性に基づいて前記複数のプレーンの相互間の流用処理を行って前記複数のプレーンによって構成されている画像を表す画像データを生成する画像データ生成工程とを含む工程を前記画像データ処理装置に実施させるプログラム命令を備える。
【発明の効果】
【０００９】
本発明によれば、ラスタライズ処理における効率的なメモリ使用を実現することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態に係る画像形成装置１０の機能構成を示すブロックダイアグラムである。
【図２】比較例に係るＲＧＢのビットマップ画像データを示す説明図である。
【図３】一実施形態に係るＲＧＢのビットマップ画像データを示す説明図である。
【図４】一実施形態に係る画像データ生成処理の内容を示すフローチャートである。
【図５】一実施形態に係る描画処理の内容を示すフローチャートである。
【図６】一実施形態に係るバンドフラグ設定処理の内容を示すフローチャートである。
【発明を実施するための形態】
【００１１】
Ａ．実施形態：
以下、本発明を実施するための形態（以下、「実施形態」という）を、図面を参照して説明する。
【００１２】
図１は、本発明の一実施形態に係る画像形成装置１０の機能構成を示すブロックダイアグラムである。画像形成装置１０は、制御部１００と、画像形成部２００と、操作表示部３００と、記憶部４００と、通信インターフェース部５００とを備えている。操作表示部３００は、タッチパネルとして機能し、様々なメニューを入力画面として表示してユーザーの操作入力を受け付ける。通信インターフェース部５００は、たとえばＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）プロトコル群を使用して通信を行う。
【００１３】
画像形成装置１０は、通信インターフェース部５００を介してページ記述言語（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）で記述されたＰＤＬデータを含む印刷ジョブを受信することができる。ページ記述言語には、たとえばＰＣＬ  ＸＬ、ＰｏｓｔＳｃｒｉｐｔ、ＰＣＬ、ＲＰＣＳ、ＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）及びＸＰＳがある。ＰＤＬデータは、印刷データとも呼ばれる。
【００１４】
制御部１００は、ＰＤＬ処理部１１１と、描画処理部１１２と、色変換処理部１１３と、ハーフトーン処理部１１４とを備えている。ＰＤＬ処理部１１１は、ＰＤＬデータを解析してＰＤＬデータに含まれるテキスト（文字）やイメージ、ベクターグラフィックスといったオブジェクトを抽出する。描画処理部１１２は、各オブジェクトを使用し、ＰＤＬデータに含まれる描画情報に基づいてＲＧＢの画像データを生成する。ＲＧＢは、加法混色の三原色であり、それぞれ第１色、第２色及び第３色の一例である。
【００１５】
記憶部４００は、非一時的な記録媒体であるハードディスクドライブやフラッシュメモリー等からなる記憶装置である。記憶部４００は、制御部１００のプロセッサが実行する処理の制御プログラムを含む各種データを記憶している。制御プログラムは、ワークメモリ４１０に記憶されて実行されるプログラム命令を含んでいる。ワークメモリ４１０には、ＰＤＬデータの内容に応じてバンドバッファ４１１として利用されるメモリ領域（記憶領域とも呼ばれる。）が確保されている。
【００１６】
図２は、比較例に係るＲＧＢのビットマップ画像データを示す説明図である。ビットマップ画像データは、ＲＧＢの各プレーンＰｒ１、Ｐｇ１、Ｐｂ１を構成するピクセルデータの集合として構成されている。図２（ａ）は、描画対象となるオブジェクトとしてのＡの黒文字を表すためのＲプレーンを示している。図２（ｂ）は、Ａの黒文字を表すためのＧプレーンを示している。図２（ｃ）は、Ａの黒文字を表すためのＢプレーンを示している。Ｒプレーンは、Ｒ色の階調値を有する複数の画素から構成されているプレーンである。Ｇプレーンは、Ｇ色の階調値を有する複数の画素から構成されているプレーンである。Ｂプレーンは、Ｂ色の階調値を有する複数の画素から構成されているプレーンである。
【００１７】
本実施形態では、ＲＧＢの各プレーンは、いずれも予め設定されている複数の画像領域として分割された６個のバンドＢ１〜Ｂ６から構成されている。バンドＢ１は、各プレーンの最上部のバンドである。バンドＢ２は、各プレーンにおいて上から２番目のバンドである。バンドＢ３〜Ｂ５は、各プレーンにおいて上から３番目〜５番目のバンドである。バンドＢ６は、各プレーンの最下部のバンドである。６個のバンドＢ１〜Ｂ６は、ＲＧＢの各プレーン間の相互間において対応する同一の画像領域から構成されている。複数の画像領域は、バンドに限られず、ＲＧＢの各プレーンにおいて共通すれば任意の形状が利用可能である。
【００１８】
バンドＢ１は、Ａの黒文字の上端部分を示している。バンドＢ１において、Ａの黒文字部分の領域を構成する画素の画素値は０であり、他の白色部分の領域を構成する画素の画素値は２５５である。バンドＢ２〜Ｂ６においても、バンドＢ１と同様に、Ａの黒文字部分の領域を構成する画素の画素値は０であり、他の白色部分の領域を構成する画素の画素値は２５５である。
【００１９】
図２（ｄ）は、ＲＧＢの各プレーン間の相互間において対応する画像領域（この例では、各バンドＢ１〜Ｂ６）の画像の同一性を表している同一画像フラグＦ１（第１の変数とも呼ばれる。）を示している。同一画像フラグＦ１は、第１バンドフラグＦｂ１と、第２バンドフラグＦｂ２と、第３バンドフラグＦｂ３と、第４バンドフラグＦｂ４と、第５バンドフラグＦｂ５と、第６バンドフラグＦｂ６とから構成されている。第１〜第６バンドフラグＦｂ１〜Ｆｂ６は、それぞれ第１ビットＦｒと、第２ビットＦｇと、第３ビットＦｂとから構成されている。本明細書では、画像の同一性は、色相の相違を排除したものであり、たとえば濃度画像の同一性に相当する。
【００２０】
第１ビットＦｒ、第２ビットＦｇ及び第３ビットＦｂは、それぞれ「０」と「１」のいずれかのフラグを有している。第１ビットＦｒは、Ｒプレーンの画像の同一性を示している。第２ビットＦｇは、Ｇプレーンの画像の同一性を示している。第３ビットＦｂは、Ｂプレーンの画像の同一性を示している。
【００２１】
「１」のフラグは、ＲＧＢのうちの他のプレーンの同一バンドに同一画像が少なくとも１つ存在していることを示している。「０」のフラグは、ＲＧＢのうちの他のプレーンの同一バンドに同一画像が存在していないことを示している。図２（ｄ）の例では、ＲＧＢの全プレーンの相互間において対応する全バンドが同一画像であることを示している。
【００２２】
図３は、一実施形態に係るＲＧＢのビットマップ画像データを示す説明図である。図３（ａ）は、描画対象となるオブジェクトとしてのＡの黒文字を表すビットマップ画像データを示している。本ビットマップ画像データは、Ｒプレーンと同一画像フラグＦ１とから構成されている。Ｒプレーンは、Ａの黒文字を表すための画像を構成している。
【００２３】
具体的には、Ｒプレーンは、Ａの黒文字を構成する領域の画素が最低階調値０を有し、他の白色領域が最高階調値２５５を有している。同一画像フラグＦ１は、６個のバンドＢ１〜Ｂ６において、ＧプレーンとＢプレーンの双方がＲプレーンと同一の階調値を有していることを示している。黒色は、（Ｒ，Ｇ，Ｂ）＝（０，０，０）、すなわち、Ｒプレーンの最低階調値０、Ｇプレーンの最低階調値０及びＢプレーンの最低階調値０の均等な混色として構成されるからである。
【００２４】
このように、比較例は、同一画像を示すＲＧＢの３つのプレーンのデータを使用してＡの黒文字を表しているが、実施形態は、Ｒの１つのプレーンのデータと、データサイズが小さい同一画像フラグＦ１とを使用してＡの黒文字を表すことができる。これにより、一実施形態は、実質的に１つのプレーン用のメモリサイズのメモリ領域をバンドバッファ４１１に確保（割り当て）することでＲＧＢの画像処理を可能とする。
【００２５】
図３（ｂ）は、描画対象となるオブジェクトとしてのＡのＲ文字（Ｒ色の文字）を表すビットマップ画像データを示している。本ビットマップ画像データは、ＲとＧの２つのプレーンと同一画像フラグＦ２とから構成されている。Ｒ色は、（Ｒ，Ｇ，Ｂ）＝（２５５，０，０）、すなわち、Ｒプレーンの最高階調値２５５と、Ｇ及びＢプレーンの最低階調値０の均等な混色との混色として構成されるからである。
【００２６】
具体的には、Ｒプレーンは、ＡのＲ文字を表すための画像、すなわち全ての画素の階調値が最高階調値２５５を構成している。Ｇプレーンは、Ａのシアン文字を構成する領域の画素が最低階調値０を有し、他の白色領域が最高階調値２５５を有している。同一画像フラグＦ１は、６個のバンドＢ１〜Ｂ６において、ＢプレーンがＧプレーンと同一の階調値を有していることを示している。
【００２７】
具体的には、Ｒプレーンの画像の同一性を示す第１ビットＦｒは、６個のバンドＢ１〜Ｂ６において、いずれも０となっている。すなわち、第１ビットＦｒは、６個のバンドＢ１〜Ｂ６においてＲプレーンの画像がＧプレーンとＢプレーンのいずれの画像にも一致していないことを示している。
【００２８】
Ｇプレーンの画像の同一性を示す第２ビットＦｇは、６個のバンドＢ１〜Ｂ６において、いずれも１となっている。すなわち、第２ビットＦｇは、６個のバンドＢ１〜Ｂ６においてＧプレーンの画像がＲプレーンとＢプレーンのいずれか少なくとも１つの画像に一致していることを示している。一方、Ｂプレーンの画像の同一性を示す第３ビットＦｂは、６個のバンドＢ１〜Ｂ６において、いずれも１となっている。すなわち、第３ビットＦｂは、６個のバンドＢ１〜Ｂ６においてＢプレーンの画像がＲプレーンとＧプレーンのいずれか少なくとも１つの画像に一致していることを示している。
【００２９】
このように、第１ビットＦｒ、第２ビットＦｇ及び第３ビットＦｂは、それぞれ以下の関係を示している。
（１）Ｒプレーンの画像は、ＧプレーンとＢプレーンのいずれの画像にも一致していない（第１ビットＦｒ）。
（２）Ｇプレーンの画像は、ＲプレーンとＢプレーンの少なくとも一方の画像に一致している（第２ビットＦｇ）。
（３）Ｂプレーンの画像は、ＲプレーンとＧプレーンの少なくとも一方の画像に一致している（第３ビットＦｂ）。
【００３０】
これにより、第１ビットＦｒ、第２ビットＦｇ及び第３ビットＦｂは、Ｒプレーンの画像が他のプレーンに一致せず、ＧプレーンとＢプレーンの画像が相互に一致していることを示していることになる。これにより、実施形態は、実質的に２つのプレーン用のメモリサイズのメモリ領域をバンドバッファ４１１に確保することで画像処理を可能とする。
【００３１】
図３（ｃ）は、Ａの黒文字とＢのマゼンタ文字（マゼンタ色の文字）の２つのオブジェクトを表すためのビットマップ画像データを示している。本ビットマップ画像データは、ＲとＧの２つのプレーンと同一画像フラグＦ３とから構成されている。
【００３２】
具体的には、Ｒプレーンは、Ａの黒文字を構成する領域の画素が最低階調値０を有し、他の白色領域が最高階調値２５５を有している。Ｇプレーンは、バンドＢ２及びバンドＢ３の２つのバンドのみから構成され、Ａの黒文字とＢのマゼンタ文字を構成する領域の画素が最低階調値０を有し、他の白色領域が最高階調値２５５を有している。同一画像フラグＦ３は、バンドＢ１，バンドＢ４，バンドＢ５及びバンドＢ６において、ＲＧＢの各プレーンが相互に同一の階調値を有し、バンドＢ２及びバンドＢ３において、ＲＢの両プレーンが相互に同一の階調値を有していることを示している。
【００３３】
これにより、第１ビットＦｒ、第２ビットＦｇ及び第３ビットＦｂは、６個のバンドＢ１〜Ｂ６においてＲ及びＢのプレーンの画像が相互に一致し、４個のバンドＢ１，Ｂ４〜Ｂ６においてＲＧＢの全プレーンの画像が相互に一致していることを示していることになる。これにより、実施形態は、１つのプレーン用のメモリサイズのメモリ領域と、２つのバンド分のメモリサイズのメモリ領域とをバンドバッファ４１１に確保することで画像処理を可能とする。
【００３４】
このように、一実施形態に係る画像形成装置１０は、各バンドにおいて描画対象となるオブジェクトが単色のベクターグラフィックス等である場合には、少ないメモリサイズのメモリ領域をバンドバッファ４１１に確保するだけで画像処理を可能とする。画像形成装置１０は、６個のバンドＢ１〜Ｂ６のそれぞれにおいて描画対象となる単色のオブジェクトの内容を解析し、解析結果に基づいて画像処理に必要なメモリ領域のメモリサイズを特定し、同一画像フラグＦ１〜Ｆ３を生成することができる。
【００３５】
図４は、一実施形態に係る画像データ生成処理の内容を示すフローチャートである。ステップＳ１００では、制御部１００の描画処理部１１２は、プレーンバッファ確保処理を実行する。プレーンバッファ確保処理では、描画処理部１１２は、６個のバンドＢ１〜Ｂ６のそれぞれにおいて描画対象となる単色のオブジェクト等に基づいて単一のプレーン（この例ではＲのプレーン））の画像処理に必要なメモリ領域のメモリサイズを特定する。描画処理部１１２は、特定されたサイズのバンドバッファ４１１を確保し、各色のプレーンの階調値の初期値として初期値２５５（白）を設定する。
【００３６】
ステップＳ２００では、描画処理部１１２は、バンド選択処理を実行する。バンド選択処理では、描画処理部１１２は、６個のバンドＢ１〜Ｂ６を順に選択する。この例では、第１バンドＢ１が選択されたものとする。選択された第１バンドＢ１には、初期フラグ＝１，１，１が設定される。
【００３７】
図５は、一実施形態に係る描画処理の内容を示すフローチャートである。ステップＳ３００では、描画処理部１１２は、描画処理を実行する。ステップＳ３１０では、描画処理部１１２は、オブジェクト選択処理を実行する。オブジェクト選択処理では、ＰＤＬ処理部１１１は、印刷ジョブに含まれているＰＤＬデータを解析してバンドＢ１において描画対象となる単色のオブジェクト（たとえば図２及び図３（ａ）に示される画像（Ａの黒文字））を特定する。描画処理部１１２は、特定されたオブジェクトの中からバンドＢ１の描画に使用されるオブジェクトを順に選択する。
【００３８】
ステップＳ３２０では、描画処理部１１２は、バンドＢ１が共有されている場合には、処理をステップＳ３４０に進め、バンドＢ１が共有されていない場合には、処理をステップＳ３３０に進める。ステップＳ３３０では、描画処理部１１２は、一般描画処理としてＲＧＢの各プレーンの画像処理を実行する。なお、バンドが選択された初期状態では、ＲＧＢの全てのプレーンが共有されているものとする。
【００３９】
ステップＳ３４０では、描画処理部１１２は、プレーン適合性判定処理を実行する。プレーン適合性判定処理では、描画処理部１１２は、バンドバッファを共有している各プレーンが共有に対して適合性を有しているか否かを判定する。適合性の有無は、オブジェクトの解析結果に基づいて判定される。
【００４０】
ステップＳ３５０では、描画処理部１１２は、プレーンが共有に適合している場合には、処理をステップＳ３８０に進め、プレーンが共有に適合していない場合には、処理をステップＳ３６０に進める。この例では、描画処理部１１２は、たとえばオブジェクトとしてＡの黒文字を選択し、その描画処理（図３（ａ）及び図３（ｃ））を実行するものとする。
【００４１】
描画処理部１１２は、全てのプレーンが共有に適合しているので、ステップＳ３６０やステップＳ３７０の処理を実行することなく、処理をステップＳ３８０に進める。したがって、バンドフラグは、初期フラグ＝１，１，１のままで、Ｒプレーンのみが生成される。よって、描画処理部１１２は、Ｒのプレーンについて描画処理を完了させただけで、ＲＧＢの全てのプレーンについて描画処理を完了させたことになる。
【００４２】
他の例として、描画処理部１１２は、たとえばオブジェクトとしてＡのＲ文字を選択し、その描画処理（図３（ｂ））を実行するものとする。この場合には、描画処理部１１２は、処理をステップＳ３６０に進める（ステップＳ３５０）。ステップＳ３６０では、描画処理部１１２は、バンドフラグ設定処理を実行する。
【００４３】
図６は、一実施形態に係るバンドフラグ設定処理の内容を示すフローチャートである。ステップＳ３６１では、描画処理部１１２は、Ｒプレーンの画像とＧプレーンの画像とが同一であるか否かを判断する。描画処理部１１２は、ＡのＲ文字を描画する場合には、Ｒプレーンの画像とＧプレーンの画像とが同一でないので処理をステップＳ３６２に進める。
【００４４】
ステップＳ３６２では、描画処理部１１２は、Ｒプレーンの画像とＢプレーンの画像とが同一であるか否かを判断する。描画処理部１１２は、ＡのＲ文字を描画する場合には、Ｒプレーンの画像とＢプレーンの画像とが同一でないので処理をステップＳ３６３に進める。
【００４５】
ステップＳ３６３では、描画処理部１１２は、Ｇプレーンの画像とＢプレーンの画像とが同一であるか否かを判断する。描画処理部１１２は、ＡのＲ文字を描画する場合には、Ｇプレーンの画像とＢプレーンの画像とが同一なので処理をステップＳ３６６に進める（同一性の決定）。
【００４６】
ステップＳ３６６では、描画処理部１１２は、Ｒプレーンの画像とＧプレーンの画像とを描画すれば、Ｂプレーンの画像がＧプレーンの画像で流用可能（流用処理が可能）であることを判定（決定）することができる。これにより、描画処理部１１２は、初期フラグ＝１，１，１において第１ビットＦｒのフラグを「１」から「０」に変更し、バンドフラグ＝１，１，０とする。
【００４７】
ステップＳ３７０では、描画処理部１１２は、Ｇプレーン用のメモリ領域をバンドバッファ４１１に確保する。ステップＳ３７５では、描画処理部１１２は、処理済みのＲプレーンのデータをＧプレーンのデータとしてバンドバッファ４１１に確保されたＧプレーン用のメモリ領域に複写する。これにより、描画処理部１１２は、処理済みのＲプレーンのデータを有効活用して描画処理を継続することができる。
【００４８】
ステップＳ３８０では、描画処理部１１２は、単色の描画処理の場合には、処理をステップＳ３９０に進め、単色の描画処理でない場合には、処理をステップＳ３３０に進める。この例では、オブジェクトがＡの黒文字あるいはＡのＲ文字なので、描画処理部１１２は、単色描画処理を実行する（ステップＳ３９０）。
【００４９】
描画処理部１１２は、図４に示されるように、描画処理（ステップＳ３００）の処理を全てのオブジェクト（この例では、Ａの黒文字あるいはＡのＲ文字）について実行し、最終オブジェクトの処理完了に応じて処理をステップＳ５００に進める（ステップＳ４００）。
【００５０】
ステップＳ５００では、色変換処理部１１３は、色変換処理を実行する。色変換処理では、色変換処理部１１３は、画像形成部２００で再現可能なＣＭＹＫの色空間の色に変換する。Ａの黒文字を描画する例（図３（ａ）及び図３（ｃ））では、色変換処理部１１３は、ＲＧＢの全てのプレーンについて黒文字領域の画素（Ｒ，Ｇ，Ｂ）＝（０，０，０）の階調値をＫの最高階調値２５５（ＣＭＹ＝最低階調値０）に変換し、背景の空白域の画素（Ｒ，Ｇ，Ｂ）＝（２５５，２５５，２５５）の階調値をＫの最低階調値０（ＣＭＹ＝最低階調値０）に変換する。ＣＭＹは、減法混色の三原色であり、それぞれ第１色、第２色及び第３色の一例である。
【００５１】
この例では、色変換処理部１１３は、Ａの黒文字を再現するためのＫプレーンの画像データを含む画像データを生成する。一方、ＣＭＹについては、Ｃプレーンのメモリ領域を確保して初期値０のままで使用し、ＭＹについてはＣプレーンを流用することができる。Ｃプレーンは、Ｃ色の階調値を有する複数の画素から構成されているプレーンである。Ｍプレーンは、Ｍ色の階調値を有する複数の画素から構成されているプレーンである。Ｙプレーンは、Ｙ色の階調値を有する複数の画素から構成されているプレーンである。Ｋプレーンは、ブラックの階調値を有する複数の画素から構成されているプレーンである。
【００５２】
一方、ＡのＲ文字を描画する例（図３（ｂ））では、色変換処理部１１３は、ＲＧＢの全てのプレーン（流用を含む。）についてＲ文字領域の画素（Ｒ，Ｇ，Ｂ）＝（２５５，０，０）の階調値をＭ及びＹの最高階調値２５５（Ｃ＝最低階調値０）に変換し、背景の空白域の画素（Ｒ，Ｇ，Ｂ）＝（２５５，２５５，２５５）の階調値をＫの最低階調値０（ＣＭＹ＝最低階調値０）に変換する。
【００５３】
この例では、色変換処理部１１３は、ＡのＲ文字を再現するためのＭのプレーンの画像データを含む画像データと、同一画像フラグとを生成する。同一画像フラグは、第２の変数とも呼ばれ、Ｍ及びＹのプレーンが相互に流用可能な同一データであることを示している。よって、ＭＹについては、Ｍプレーンのメモリ領域を確保して最高階調値２５５とし、ＹについてはＭプレーンを流用することができる。一方、Ｃプレーンは、初期値０のままで使用することができる。
【００５４】
なお、第２の変数は、ＣＭＹのプレーン相互間の画像の同一性だけでなく、ＣＭＹとＫの画像の同一性を示すようにしてもよい。たとえばドット非形成領域では、ＣＭＹＫの全てが初期値０の同一階調値を有し、使用メモリの低減に有効であるからである。
【００５５】
また、色変換処理は、必ずしも実際にプレーンの流用を実行してから色変換する必要はなく、たとえば一のプレーン（たとえばＣプレーン）と、流用先を示すフラグとに基づいて直接的に変換する方法を採用してもよい。
【００５６】
ステップＳ６００では、ハーフトーン処理部１１４は、ハーフトーン処理を実行する。Ａの黒文字を再現するハーフトーン処理では、ハーフトーン処理部１１４は、画像形成部２００で再現可能なドットで中間調を再現するためのデータ処理を実行する。この例では、ハーフトーン処理部１１４は、Ｋプレーンの画像データを対象としてハーフトーン処理を実行し、Ｋドットプレーンを含むハーフトーンデータを生成する。
【００５７】
Ｋドットプレーンは、ブラックの色材で形成されるドットの形成状態を示すＫドットデータから構成されている。一方、ＣＭＹについては、Ｃドットプレーンのメモリ領域を確保して初期値０のままで使用し、ＭＹについてはＣドットプレーンを流用することができる。Ｃドットプレーンは、Ｃ色の色材で形成されるドットの形成状態を示すドットデータから構成されているプレーンである。Ｍドットプレーンは、Ｍ色の色材で形成されるドットの形成状態を示すドットデータから構成されているプレーンである。Ｙドットプレーンは、Ｙ色の色材で形成されるドットの形成状態を示すドットデータから構成されているプレーンである。Ｋドットプレーンは、ブラックの色材で形成されるドットの形成状態を示すドットデータから構成されているプレーンである。
【００５８】
ＡのＲ文字を再現する例では、ハーフトーン処理部１１４は、Ｍ及びＹのプレーンの画像データを対象としてハーフトーン処理を実行し、Ｍドットプレーンを含むハーフトーンデータと、同一画像フラグとを生成する。同一画像フラグは、第３の変数とも呼ばれ、Ｍ及びＹのドットプレーンが相互に流用可能な同一データであることを示している。よって、ＭＹについては、Ｍドットプレーンのメモリ領域を確保して最高階調値２５５とし、ＹドットプレーンについてはＭドットプレーンを流用することができる。
【００５９】
ステップＳ７００では、描画処理部１１２は、処理対象が最終バンド（この例では、バンドＢ６）であるか否かを判断する。描画処理部１１２は、最終バンドである場合には、処理を終了し、最終バンドでない場合には、処理をステップＳ２００に戻す。ステップＳ２００では、描画処理部１１２は、バンドＢ１の処理が完了したのでバンドＢ２を選択し、初期フラグを設定する。
【００６０】
バンドＢ２では、一実施形態に係る画像形成装置１０は、図３（ｃ）に示されるＡの黒文字に加えてＢのマゼンタ文字を描画するために以下の処理を実行する。バンドＢ２においては、文字描画処理部１１２は、この例では、図３（ｃ）に示されるように、Ａの黒文字に加えてＢのマゼンタ文字（マゼンタ色の文字）の２つのオブジェクトを表すためのビットマップ画像データを生成する。
【００６１】
ステップＳ３５０（図５参照）では、描画処理部１１２は、プレーン適合性判定処理（ステップＳ３４０）での共有に不適合との判定に基づいて、処理をステップＳ３６０に進める。ステップＳ３６０では、描画処理部１１２は、バンドフラグ設定処理を実行する（図６参照）。
【００６２】
ステップＳ３６１では、描画処理部１１２は、Ｒプレーンの画像とＧプレーンの画像とが同一であるか否かを判断する。この例では、図３（ｃ）に示されるように、Ｂのマゼンタ文字を描画する場合には、Ｒプレーンの画像とＧプレーンの画像とが同一ではないので、描画処理部１１２は、処理をステップＳ３６２に進める。
【００６３】
ステップＳ３６２では、描画処理部１１２は、Ｒプレーンの画像とＢプレーンの画像とが同一であるか否かを判断する。この例では、図３（ｃ）に示されるように、Ｂのマゼンタ文字を描画する場合には、Ｒプレーンの画像とＢプレーンの画像とが同一なので、描画処理部１１２は、処理をステップＳ３６７に進める。
【００６４】
ステップＳ３６７では、Ｒプレーンの画像とＢプレーンの画像とを描画すれば、Ｂプレーンの画像がＲプレーンの画像で流用可能であることを判定することができる。これにより、描画処理部１１２は、初期フラグ＝１，１，１において第２ビットＦｇのフラグを「１」から「０」に変更し、バンドフラグ＝１，０，１とする。
【００６５】
ステップＳ３７０で、描画処理部１１２は、Ｇプレーン用のメモリ領域をバンドバッファ４１１に確保し、処理済みのＲプレーンのデータをＧプレーンに複写する。これにより、描画処理部１１２は、処理済みのＲプレーンのデータを有効活用して描画処理を継続することができる。
【００６６】
ステップＳ３８０では、描画処理部１１２は、単色の描画処理の場合には、処理をステップＳ３９０に進め、単色の描画処理でない場合には、処理をステップＳ３３０に進める。ステップＳ３９０では、描画処理部１１２は、単色描画処理を実行する。
【００６７】
描画処理部１１２は、図４に示されるように、描画処理（ステップＳ３００）の処理を全てのオブジェクト（この例では、Ａの黒文字及びＢのマゼンタ文字）について実行し、最終オブジェクトの処理完了に応じて処理をステップＳ５００に進める（ステップＳ４００）。
【００６８】
ステップＳ５００では、色変換処理部１１３は、色変換処理を実行する。色変換処理では、色変換処理部１１３は、Ａの黒文字領域の画素（Ｒ，Ｇ，Ｂ）＝（０，０，０）の階調値をＫの最高階調値２５５（ＣＭＹ＝最低階調値０）に変換し、Ｂのマゼンタ文字領域の画素（Ｒ，Ｇ，Ｂ）＝（２５５，０，２５５）の階調値をＭの最高階調値２５５（ＣＹ＝最低階調値０）に変換し、Ｂのマゼンタ文字領域の画素と背景の空白域の画素（Ｒ，Ｇ，Ｂ）＝（２５５，２５５，２５５）とを含む領域の画素の階調値をＫの最低階調値０に変換する。
【００６９】
この例では、色変換処理部１１３は、バンドＢ２においては、Ｍのプレーンの画像データを含む画像データを生成する。一方、ＣＹについては、Ｃプレーンのメモリ領域を確保して初期値０のままで使用し、ＹについてはＣプレーンを流用することができる。
【００７０】
ステップＳ６００では、ハーフトーン処理部１１４は、ハーフトーン処理を実行する。この例では、ハーフトーン処理部１１４は、Ｍ及びＫのプレーンの画像データを対象としてハーフトーン処理を実行し、Ｍ及びＫのドットプレーンを含むハーフトーンデータを生成する。一方、ＣＹについては、Ｃドットプレーンのメモリ領域を確保して初期値０のままで使用し、ＹについてはＣドットプレーンを流用することができる。
【００７１】
このような処理（ステップＳ２００〜ステップＳ６００）は、最終バンドであるバンドＢ６まで順に実行される（ステップＳ７００）。この例（図２及び図３（ａ）の例）では、制御部１００は、バンドＢ３乃至バンドＢ６についても同様の処理を実行し、ＣＭＹＫのハーフトーンデータを生成することができる。
【００７２】
このように、一実施形態に係る画像形成装置１０によれば、印刷ジョブに含まれているＰＤＬを解析することによって、ＲＧＢ等の各プレーンで発生する同一画像の処理を省略することができる。これにより、画像形成装置１０は、効率的なメモリ使用を可能とするとともに、画像処理の処理コストを低減させることもできる。
【００７３】
Ｂ．変形例：
本開示は、上記各実施形態だけでなく、以下のような変形例でも実施することができる。
【００７４】
変形例１：上記実施形態では、ＲＧＢＣＭＹのいずれかの最高階調値の単色で再現されるオブジェクトが描画対象となっている場合に本開示が適用されているが、必ずしもＲＧＢＣＭＹのいずれかの最高階調値の単色で再現されるオブジェクトが描画対象となっている場合に限定されない。
【００７５】
具体的には、たとえば少なくとも１組の同一画像（全階調値が０の空白画像を含む）を含む複数の画像の組み合わせで再現されるように予め設定されているインデックスカラーを設定し、その設定内容に基づいてＲＧＢの１又は２のプレーンとフラグとの組み合わせを生成するようにしてもよい。インデックスカラーは、少なくとも１組の相互に流用可能な同一画像（空白画像を含む）を示すプレーンを使用して均等な混色で再現される特定画像を再現するための色であればよく、濃度も設定可能である。
【００７６】
さらに、インデックスカラーの色変換は、たとえばプレゼン資料の印刷においてＣＭＹの純色や鮮やかな色再現を可能とするために予め別途設定された色変換処理を実行するようにしてもよい。
【００７７】
変形例２：上記実施形態では、ＲＧＢのプレーン、ＣＭＹＫのプレーン及びＣＭＹＫのドットプレーンの処理の一部が省略されているが、ＲＧＢの処理についてのみ処理を省略するようにしてもよい。
【００７８】
変形例３：上記実施形態では、同一画像フラグは３ビットから構成されているが、同一画像フラグや同一データフラグは、画像データやハーフトーンデータの同一性を表す変数として構成されていればよく、データ形式を問わない。
【００７９】
変形例４：上記実施形態では、共有対象となるプレーンの数は３個であるが、たとえば淡色の色材（たとえば淡シアンや淡マゼンタ）を使用する４個以上の複数プレーンを共有するようにしてもよい。
【００８０】
変形例５：上記実施形態では、本開示は画像形成装置における文字描画処理としての画像データ処理に適用されているが、ディスプレイその他の画像表示装置における文字描画処理としての画像データ処理装置にも本開示は適用可能である。
【符号の説明】
【００８１】
１０  画像形成装置
１００  制御部
２００  画像形成部
３００  操作表示部
４００  記憶部
５００  通信インターフェース部
【図１】
2019081359.tif 000003
【図２】
2019081359.tif 000004
【図３】
2019081359.tif 000005
【図４】
2019081359.tif 000006
【図５】
2019081359.tif 000007
【図６】
2019081359.tif 000008