(57)【要約】【課題】アプリケーションが利用する論理描画のパターンは年々変化していくものであり、ラスタライズに使用される属性ビット生成アルゴリズムが、アプリケーションやユーザの意図しないものとなり、結果として画質の劣化や画像不正になる場合がある。また、ラスタライズは高速処理のためハードウェアで実装される場合が多く、容易に搭載されるアルゴリズムを変更することはできない。【解決手段】入力される１つ以上の描画オブジェクトの描画情報が、予め定められた条件を満たすか検知する、オブジェクト検知手段（Ｓ５０５）と、前記オブジェクト検知手段が予め定められた条件を満たすことを検知した場合、前記レンダリング手段の生成する画像画素には影響を与えず、属性ビットのみを変更する、新たな描画オブジェクトを生成するオブジェクト生成手段（Ｓ５０８）を持つ。【選択図】図５
2012120027.tif 000002
【特許請求の範囲】
【請求項１】
描画オブジェクトを背景画像に合成する画像処理装置であって、
前記描画オブジェクトが、前記背景画像に合成されると、該合成される領域の一部では前記描画オブジェクトの画素値を持ち、残りの領域では前記背景画像の画素値を持つことになるパターンであって、かつ予め記憶手段に記憶されている特定のパターンと合致するか判定する判定手段と、
前記判定手段で合致すると判定した場合に、前記描画オブジェクトが前記背景画像に合成される全ての画素に対して同じ、前記描画オブジェクトの有する属性情報と同一の属性情報を生成する生成手段と
を備えたことを特徴とする画像処理装置。
【請求項２】
入力される描画オブジェクトをレンダリングし、画素毎に画像データおよび描画オブジェクトの属性を示す属性ビットを出力するレンダリング手段を有する画像形成システムであって、
入力される１つ以上の描画オブジェクトの描画情報が、予め定められた条件を満たすか否か検知する検知手段と、
前記検知手段が予め定められた条件を満たすことを検知した場合、前記レンダリング手段の生成する画素には影響を与えず、属性ビットのみを変更する新たな描画オブジェクトを生成するオブジェクト生成手段と、
前記生成された描画オブジェクトを前記属性ビットに適用して、前記画像データの画像形成に使用する適用手段と
を備えたことを特徴とする画像形成システム。
【請求項３】
請求項２のシステムにおいて、前記描画情報は、論理描画指定、描画領域指定および論理描画で指定される各オペランドの属性である、色やビットマップのうち１つ以上を含むことを特徴とする。
【請求項４】
請求項２のシステムにおいて、前記予め定められた条件は、第１の描画オブジェクトの論理描画指定が“ＸＯＲ”であり、第２の描画オブジェクトの論理描画指定が“ＡＮＤ”であり、第２の描画オブジェクトのオペランドが特定のパターンを描画するものであり、第３の描画オブジェクトが第１の描画オブジェクトと同じであること特徴とする。
【請求項５】
請求項２のシステムにおいて、前記予め定められた条件は、描画オブジェクトの論理描画指定がＲＯＰ３の“０ｘＣＡ”であり、描画オブジェクトのオペランドが特定のパターンを描画するものであることを特徴とする。
【請求項６】
請求項２のシステムにおいて、前記オブジェクト生成手段が生成する描画オブジェクトは、１００％の透過属性を持つことを特徴とする。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、千鳥パターン等の特定パターンに対する属性生成技術に関する。
【背景技術】
【０００２】
従来、複合機やレーザープリンタ等の画像形成装置では、装置内で生成されたビットマップ画像に対して、色変換、フィルタリング処理または２n値化処理等、様々なデバイスに合わせた画像処理を施すことで高画質化が行われている。また、各画像処理は、文字、グラフィックスまたはイメージ等の画像の特徴に合わせて行なうことが好ましく、１つのページ内であっても領域毎に最適な画像処理を切り替えながら処理される。
【０００３】
この領域毎の画像の特徴を保持する方法として、画像を構成する画素毎に付加属性ビットを生成、保存する方法が知られている。この属性ビットは、複合機におけるスキャナ入力画像では、入力された画像を画像解析することにより生成される。また、ホストＰＣから画像データを受信して行うプリンタ印刷では、ホストＰＣでの画像生成時または、プリンタ（画像形成装置）内でページ記述言語（ＰＤＬ）等からラスタ画像を生成するラスタライズ時に生成される。
【０００４】
ホストＰＣ上での画像生成およびＰＤＬからのラスタライズによるラスタ画像の生成においては、論理演算処理が頻繁に使用される。例えば、２つのオブジェクト間の論理演算では、背景画像（デスティネーション）の各画素値と、合成される前景画像（ソース）の画素値とで、画素値を構成するビット毎にビット演算が行われる。この論理演算を利用すると、単純な上書き描画では表現できない特殊な描画を行うことも可能である。例えば、３つの描画オブジェクトで、第一のイメージのＸＯＲ描画，描画形状を指定するマスクパターンのＡＮＤ描画、第一のイメージと同一のイメージのＸＯＲ描画を行うと、イメージをマスクパターンで型抜きしたオブジェクトを描画することができる。
【０００５】
しかし、論理演算で描画された画像に対する、属性ビットの決定は容易ではない。例えば、テキストの属性ビットが”１１”，グラフィックスの属性ビットが”０１”，イメージの属性ビットが”００”というビットパターンで定義されていると仮定する。前述のＸＯＲ−ＡＮＤ−ＸＯＲの描画の例で、属性ビットにも画素値と同様の論理演算を適用すると、結果は、イメージの型抜きされる前の全領域で属性ビットは”００”となる。描画結果は型抜きされたされた領域のみイメージとなるから、属性ビットも、描画結果と同様に肩抜きされた領域のみが”００”となる必要があるので、適正な結果とは言えない。このような描画結果に一致した属性ビットを算出するアルゴリズムが、例えば特許文献１に開示されている。
【０００６】
一方、ホストＰＣの表示性能が向上し、視覚効果を狙った透明度を持ったオブジェクトを使用したドキュメントが多く作成されるようになってきている。アプリケーションが透明度を持ったオブジェクトの描画／印刷を行うとき、透明度に応じた、タイルパターンを作成し、このタイルパターンをマスクパターンとして描画オブジェクトの一部を抜くことで、視覚的に透明の効果を実現することができる。例えば、５０％の透明度を持ったオブジェクトを描画するとき、濃度が５０％、つまり１ピクセル毎にマスクのオン／オフが切り替わる千鳥模様のマスクパターンを用意する。オブジェクトをＸＯＲ、そのマスクパターンをＡＮＤに指定した、ＸＯＲ−ＡＮＤ−ＸＯＲの論理描画を行うことで、描画したいオブジェクトが画素毎に値が切り替わる千鳥模様で型抜きされて描画され、オブジェクトの背景にある画像が５０％透ける効果が得られる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００２−１２７５０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、前述の千鳥模様のマスクパターンを使用した論理描画に対し、特許文献１のアルゴリズムにもとづいて、描画結果に一致した属性ビットを生成すると、生成される属性ビットも画素毎に値が切り替わる千鳥模様状となってしまう。一般的に画像データは、圧縮率を変更可能なＪＰＥＧに代表される非可逆圧縮が適用される保存されるが、属性ビットはビット単位での再生が必要であるため、パックビッツ圧縮に代表される可逆圧縮が適用される。この結果、属性ビットのパックビッツ圧縮により、画素毎に値が切り替わるようなデータが最も圧縮効率が悪くなり、圧縮した結果のデータサイズが大きくなってしまうという問題がある。逆に、圧縮後の画像および属性ビットの保存されるバッファは有限であるため、可逆圧縮である属性ビットのサイズが大きくならないように圧縮率可変の画像データを小さくすると、結果として圧縮による画像劣化を引き起こしてしまうこととなる。
【０００９】
また、属性ビットに応じて適用される画像処理には、ディザ法を用いた２値化処理のように、画素単位ではなく領域単位で適用されることを前提としているものがある。ディザ法による２値化処理では、画像の特徴に応じて異なるディザマトリクスが選択される。例えば、文字やグラフィックスの領域には解像度重視のディザ、イメージの領域には階調重視のディザマトリクスが適用される。異なるディザマトリクスが画素単位で切り替わりながら描画されることで、干渉が発生し、想定外の干渉縞が発生してしまう場合がある。
【００１０】
図１１に、一例を示す。図１１（ａ）は、解像度重視のディザマトリクスを適用して２５％の濃度を描画したパターンの拡大図であり、図１１（ｄ）はその印刷結果である。同様に、図１１（ｂ）は、階調重視のディザマトリクスを適用して７５％の濃度を描画したパターンの拡大図であり、図１１（ｅ）はその印刷結果である。また、図１１（ｃ）は、１画素ずつ千鳥模様状に２５％と７５％の濃度が切り替わる画像に対して、解像度重視のディザマトリクスと階調重視のディザマトリクスとを１画素ごとに切り替えながら適用したときに、生成されるパターンの拡大図である。図１１（ｆ）は図１１（ｃ）の印刷結果である。図１１の（ｃ）および（ｆ）では、解像度重視のディザと階調重視のディザの干渉が発生していることがわかる。
【００１１】
このように、アプリケーションが利用する論理描画のパターンは年々変化するものであり、ラスタライズに使用される属性ビット生成アルゴリズムが、アプリケーションやユーザの意図しないものとなった結果、画質の劣化や画像不正になるという問題がある。さらに、このような問題を解決しようとする場合、ラスタライズは高速処理のためハードウェアで実装されることが多く、容易に搭載されるアルゴリズムを変更することはできないという問題がある。
【００１２】
本発明では、入力される描画オブジェクトのパターンが、画質劣化や画像不正を引き起こす可能性の有無を予め検知する。さらに、画質劣化や画像不正を引き起こす可能性を検知した場合、属性ビットのみを上書きする新たな描画オブジェクトを追加することで、容易に画像劣化や画像不正のない高画質画像を生成するシステムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の画像処理装置は、描画オブジェクトを背景画像に合成する画像処理装置であって、描画オブジェクトが、背景画像に合成されると、合成される領域の一部では描画オブジェクトの画素値を持ち、残りの領域では背景画像の画素値を持つことになるパターンであって、かつ予め記憶手段に記憶されている特定のパターンと合致するか判定する判定手段と、判定手段で合致すると判定した場合に、描画オブジェクトが背景画像に合成される全ての画素に対して同じ、描画オブジェクトの有する属性情報と同一の属性情報を生成する生成手段とを備えたことを特徴とする。
【００１４】
また、本発明の画像形成システムは、入力される描画オブジェクトをレンダリングし、画素毎に画像データおよび画像オブジェクトの属性を示す属性ビットを出力するレンダリング手段を有する画像形成システムであって、入力される１つ以上の描画オブジェクトの描画情報が、予め定められた条件を満たすか否か検知する検知手段と、検知手段が予め定められた条件を満たすことを検知した場合、レンダリング手段の生成する画素には影響を与えず、属性ビットのみを変更する新たな描画オブジェクトを生成するオブジェクト生成手段と、生成された描画オブジェクトを属性ビットに適用して、画像データの画像形成に使用する適用手段とを備えたことを特徴とする。
【発明の効果】
【００１５】
以上、本発明によれば、入力される描画オブジェクトのパターンが、画質劣化や画像不正を引き起こす可能性の有無を予め検知する。さらに、画質劣化や画像不正を引き起こす可能性を検知した場合、属性ビットのみを上書きする新たな描画オブジェクトを追加することで、容易に画像劣化や画像不正のない高画質画像を生成するシステムを提供する。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施例のカラー複合機の構造を示す側断面図である。
【図２】本発明の一実施例における各機器のコントロールユニットの構成例を示すブロック図である。
【図３】本発明の一実施例にコントローラソフトウェアの構成の一例を示すブロック図である。
【図４】本発明の一実施例におけるカラー複合機１のＰＤＬ処理を示すフローチャートである。
【図５】本発明の一実施例におけるＰＤＬ解析処理を示すフローチャートである。
【図６】本発明の一実施例に属性置換判定処理を示すフローチャートである。
【図７】本発明の一実施例に属性置換判定処理を示すフローチャートである。
【図８】本発明の一実施例に属性置換判定処理を示すフローチャートである。
【図９】本発明の一実施例に属性置換判定処理を示すフローチャートである。
【図１０】本発明の一実施例における判定処理１の結果としてのレンダリング結果の一例を示す図である。
【図１１】本願の課題の一例であるディザパターンの干渉を説明するための図である。
【図１２】本発明の一実施例における特定パターンの例を示す図である。
【発明を実施するための形態】
【００１７】
［第１実施例］
以下、本発明を実施するための最良の形態について、図面を参照して説明する。
（画像処理装置の構成）
本実施例を適用するに好適な、画像形成システムであるカラー複合機１０１の構成について、図１を用いて説明する。なお、本実施例の画像形成装置は、カラー複合機に限られるものではなく、他のモノクロ複合機やプリンタ単体機等、他の画像形成装置でも良いことは言うまでもない。図１を参照すると理解できるように、カラー複合機１０１は１ドラム（１Ｄ）カラー複合機であるが、これに限られず本実施例のカラー複合機はいずれの種類のものも使用することができる。
【００１８】
カラー複合機１０１は、スキャナ部１０２、レーザ露光部１０３、感光ドラム１０４、作像部１０５、定着部１０６、給紙／搬送部１０７及び、これらを制御する不図示のプリンタ制御部から構成される。スキャナ部１０２は、原稿台１０８に置かれた原稿に対して、照明を当てて原稿画像を光学的に読み取り、その像を電気信号に変換して画像データを作成する。レーザ露光部１０３は、作成された画像データに応じて変調されたレーザ光などの光線を等角速度で回転する回転多面鏡（ポリゴンミラー）１０９に入射させ、反射走査光として感光ドラム１０４に照射する。
【００１９】
作像部１０５は、感光ドラム１０４を回転駆動し、帯電器によって帯電させ、照射されたレーザ光によって感光ドラム上に形成された潜像をトナーによって現像し、そのトナー像をシートに転写する。その際に転写されずに感光ドラム１０４上に残った微小トナーを回収するといった一連の電子写真プロセスを実行して作像する。その際、シートが転写ベルトの所定位置に巻きつき、４回転する間に、マゼンタ（Ｍ）、シアン（Ｃ）、イエロー（Ｙ）、ブラック（Ｋ）のトナーを持つそれぞれの現像ユニット（現像ステーション）が入れ替わりで順次前述の電子写真プロセスを繰り返し実行する。４回転の後、４色のフルカラートナー像を転写されたシートは、転写ドラムを離れ、定着部１０６へ搬送される。
【００２０】
定着部１０６は、ローラやベルトの組み合わせによって構成され、ハロゲンヒータなどの熱源を内蔵し、作像部１０５によってシート上に転写されたトナー像のトナーを、熱と圧力によって溶解、定着させる。給紙／搬送部１０７は、シートカセットやペーパーデッキに代表されるシート収納庫１１０を一つ以上有している。給紙／搬送部１０７は、図示しないプリンタ制御部の指示に応じてシート収納庫１１０に収納された複数のシートの中から一枚分離し、作像部１０５および定着部１０６へ搬送する。シートは作像部１０５の転写ドラム１０４に巻きつけられ、上述したように４回転した後に定着部１０６へ搬送される。４回転する間に前述のＹＭＣＫ各色のトナー像がシートに転写される。また、シートの両面に画像形成する場合は、定着部１０６を通過したシートを再度作像部１０５へ搬送する搬送経路を通るように制御する。
【００２１】
プリンタ制御部は、カラー複合機１０１全体を制御するコントローラユニット２００と通信して、その指示に応じて制御を実行する。これと共に、前述のスキャナ部１０２、レーザ露光部１０３、作像部１０５、定着部１０６、給紙／搬送部１０７の各部の状態を管理しながら、全体が調和を保って円滑に動作できるよう指示を行う。
【００２２】
（コントローラユニットの構成）
図２は、本実施例に係る画像処理システムにおけるカラー複合機１０１のコントロールユニット（コントローラ）２００の一構成例を示すブロック図である。図２において、コントロールユニット２００は、画像入力デバイスであるスキャナ２０１や画像出力デバイスであるプリンタエンジン２０２と接続し、画像データの読み取りやプリント出力のための制御を行う。また、コントロールユニット２００は、ＬＡＮ２０３や公衆回線２０４を介して、画像情報やデバイス情報を送受信する。
【００２３】
図２に示すコントロールユニット２００において、ＣＰＵ２０５はシステム全体を制御するための中央処理装置である。ＲＡＭ２０６は、ＣＰＵ２０５が動作するためのシステムワークメモリであり、入力された画像データを一時記憶するための画像メモリでもある。さらに、ＲＯＭ２０７はブートＲＯＭであり、システムのブートプログラムが格納されている。ＨＤＤ２０８はハードディスクドライブであり、各種処理のためのシステムソフトウェア及び入力された画像データや後述するドキュメントデータ等を格納する。
【００２４】
さらに、図２において、操作部Ｉ／Ｆ２０９は、画像データ等を表示可能な表示画面を有する操作部２１０に対するインタフェース部であり、操作部２１０に対して画像データを出力する。また、操作部Ｉ／Ｆ２０９は、操作部２１０から操作者（すなわち、本画像処理システムの使用者）が入力した情報をＣＰＵ２０５に伝える役割をする。さらに、ネットワークインタフェース２１１は、例えばＬＡＮカードで実現され、ＬＡＮ２０３に接続して外部装置との間で情報の入出力を行う。さらにまた、モデム２１２は公衆回線２０４に接続し、外部装置との間で情報の入出力を行う。本実施例に係るコントロールユニット２００では、以上のデバイスがシステムバス２１３上に配置されている。
【００２５】
次に、イメージバスＩ／Ｆ２１４は、システムバス２１３と画像データを高速で転送する画像バス２１５とを接続するためのインタフェースであり、データ構造を変換するバスブリッジである。画像バス２１５は、ＰＣＩバス又はＩＥＥＥ１３９４で構成される。画像バス２１５上には、後述するＲＩＰ２１６、デバイスＩ／Ｆ２１７、スキャナ画像処理部２１８、プリンタ画像処理部２１９、画像編集用画像処理部２２０、カラーマネージメントモジュール（ＣＭＭ）２３０といったデバイスが接続される。
【００２６】
ラスタイメージプロセッサ（ＲＩＰ）２１６は、ディスプレイリスト（ＤＬ）を解釈し、ラスタイメージ及びラスタイメージの各画素に対応する属性ビットを作成（レンダリング）する。デバイスＩ／Ｆ部２１７は、スキャナ２０１やプリンタエンジン２０２と、コントロール２００とを接続し、画像データの同期系／非同期系の変換を行う。
【００２７】
また、スキャナ画像処理部２１８は、入力画像データに対して、補正、加工、編集等の各種処理を行う。プリンタ画像処理部２１９は、プリント出力画像データに対して、プリンタの補正、解像度変換、ＲＩＰ２１６の生成した属性ビットに基づいた２値化処理等の処理を行う。画像編集用画像処理２２０は、画像データの回転や、画像データおよび属性ビットの圧縮伸長処理および、ＲＩＰ２１６の生成した属性ビットに基づいた各種画像処理を行う。さらに、ＣＭＭ２３０は、画像データに対して、プロファイルやキャリブレーションデータに基づいた、色変換処理を施す専用ハードウェアモジュールである。
【００２８】
（コントローラソフトウェア構成）
図３は、本実施例に係る画像処理システムにおけるカラー複合機１０１のコントロールユニット２００上で動作する、コントローラソフトウェアのモジュール構成の一例を示すブロック図である。本ソフトウェアは主にＣＰＵ２０５上で動作する。
【００２９】
図３に示すジョブコントロール処理３０１は、図示または不図示の各ソフトウェアモジュールを統括・制御し、カラー複合機１０１内で発生するあらゆるジョブの制御を行う。ネットワーク処理３０２は、主にネットワークＩ／Ｆ２１１を介して行われる、外部装置との通信を制御するモジュールであり、ＬＡＮ２０３の各機器との通信制御を行う。ネットワーク処理部３０２はＬＡＮ２０３の各機器からの制御コマンドやデータを受信すると、その内容を、ジョブコントロール処理３０１へ通知する。また、ジョブコントロール処理３０１からの指示に基づき、ＬＡＮ２０３の各機器へ制御コマンドやデータの送信を行う。
【００３０】
ＵＩ処理３０３は、主に操作部２１０に係る制御を行う。操作者が操作部２１０を操作した内容を、ジョブコントロール処理３０１へ通知すると共に、ジョブコントロール処理３０１からの指示に基づいて、操作部２１０上の表示画面の表示内容を制御する。ＦＡＸ処理３０４は、ＦＡＸ機能の制御を行う。ＦＡＸ処理３０４は、モデム２１２を介してＦＡＸ受信を行い、ＦＡＸ画像特有の画像処理を施した後、受信画像をジョブコントロール処理３０１へ通知する。また、ジョブコントロール処理３０１からの指定される画像を、指定通知先へＦＡＸ送信する。
【００３１】
ＰＤＬ解析処理３０５は、ジョブコントロール処理３０１の指示に基づいて、ＰＤＬデータを解析し、ＲＩＰ処理３１１で処理可能なディスプレイリスト（ＤＬ）を生成し、ジョブコントロール処理３０１へ通知する。また、ＰＤＬ解析処理３０５は、ＰＤＬに含まれる描画オブジェクトの組み合わせが特定のパターンであるとき（描画オブジェクトに特定のパターンが含まれるとき）、ＲＩＰ処理３１１で生成される属性ビットを置換する新規ＤＬを生成する。これは、ＰＤＬ解析処理３０５が有する属性置換オブジェクト生成処理３０６で実行される。
【００３２】
画像格納処理３０７は、ジョブコントロール処理３０１の指示に基づいて、画像編集用画像処理部２２０を制御することで、指示画像および属性ビットを圧縮処理してＲＡＭ２０６上の圧縮画像バッファまたはＨＤＤ２０８に格納する。ＲＩＰ処理３１１は、ＰＤＬ処理３０８で生成したＤＬを、ＲＩＰ２１６を制御してレンダリングすることで、ラスタイメージおよびラスタイメージの各画素に対応する属性ビットを作成し、ジョブコントロール処理３０１へ通知する。ここで、生成される各属性ビットは、１ｂｉｔのカラービット、１ｂｉｔの細線／小文字ビット及び２ｂｉｔのオブジェクト種ビットの３つのビットフィールド計４ｂｉｔで構成されている。
【００３３】
カラービットは対応する画素がカラーオブジェクトを構成する画素であるか、白黒オブジェクトを構成する画素であるかを表す。このビットが”０”である時にはカラーオブジェクトを構成する画素であり、”１”である時には白黒オブジェクトを構成する画素であることを示すようにすることができる。  オブジェクト種ビットは、対応する画素がどのような種類の描画オブジェクトを構成しているかを表す。例えば、属性情報としてオブジェクト種ビットが”００”の時には文字オブジェクトを構成する画素、”０１”のときにはグラフィックスオブジェクトを構成する画素、”１１”の時にはイメージオブジェクトを構成する画素とすることができる。
【００３４】
細線／小文字ビットは、対応する画素が細線又は小文字を構成する画素であるか否かを表す。例えば、このビットが”１”であるとき、前述のオブジェクト種ビットが文字オブジェクトである時、その画素は小文字を構成する画素である。また、細線／小文字ビットが“１”であり、前記オブジェクト種ビットがグラフィックオブジェクトであるとき、その画素は細線を構成する画素であることを示す。  プリント処理３０８は、ジョブコントロール処理３０１の指示に基づいて、画像編集用画像処理部２２０、プリンタ画像処理２１９およびプリンタエンジン２０２を制御し、指定画像の印刷処理を行う。
【００３５】
プリント処理３０８は、ジョブコントロール処理３０１より、画像データ、画像情報（画像データのサイズ、カラーモード、解像度）、レイアウト情報（オフセット、拡大縮小、面つけ）および出力用紙情報（サイズ、印字方向）の情報を受け取る。続いて、画像処理部２２０およびプリンタ画像処理２１９を制御して、画像データに対して適切な画像処理を施し、プリンタエンジン２０２を制御して指定用紙への印刷を行う。スキャン処理３１０は、ジョブコントロール処理３０１の指示に基づいて、スキャナ２０１およびスキャナ画像処理２１８を制御して、スキャナ２０１上にある原稿の読み込みを行う。ジョブコントロール処理３０１の指示には、カラーモードの指示が含まれており、スキャン処理３１０ではカラーモードの指示に応じた処理が行われる。すなわち、カラーモードの指示がカラーであれば、原稿をカラー画像として入力し、カラーモードの指示がモノクロであれば、原稿をモノクロ画像として入力する。また、カラーモードの指示がＡｕｔｏである場合には、プレスキャンにより原稿がカラーであるか、モノクロであるかの判定を行った後、判定結果に基づいた画像として入力する。
【００３６】
スキャン処理３１０は、スキャナ２０１が原稿台１０８にある原稿のスキャンを実行すると、デジタルデータとして画像の入力を行う。入力した画像のカラー情報は、ジョブコントロール処理３０１へ通知される。さらに、スキャン処理３１０は、入力画像に対し、スキャナ画像処理２１８を制御して画像の圧縮等、適切な画像処理を施した後、ジョブコントロール処理３０１へ画像処理済みの入力画像を通知する。
【００３７】
（ＰＤＬ処理）
ここで、本実施例に係るカラー複合機１０１がＰＤＬデータを受信したときのＰＤＬ印刷処理を図４のフローチャートを参照して説明する。カラー複合機１０１は外部ネットワークＬＡＮ２０３からＰＤＬデータを受信すると、ネットワーク処理３０２を介して受信したＰＤＬデータをジョブコントロール処理３０１へ送信する。ＰＤＬデータを受信したジョブコントロール処理３０１は、受信したＰＤＬデータを解析するため、ＰＤＬ解析処理３０５を起動しＰＤＬデータを通知する（Ｓ４０１）。Ｓ４０１でＰＤＬ解析処理３０５は、通知されたＰＤＬデータを解析することでＤＬを生成し、生成したＤＬをジョブコントロール処理３０１へ送信する。
【００３８】
ジョブコントロール処理３０１は、ＤＬを受信するとＲＩＰ処理３１１を起動し、Ｓ４０１で生成したＤＬを送信するする（Ｓ４０２）。Ｓ４０２で、ＲＩＰ処理３１１は受信したＤＬを所定のアルゴリズムでレンダリングすることで、ラスタイメージおよび属性ビットを生成し、ジョブコントロール処理３０１へ送信する。ジョブコントロール処理３０１は、ラスタイメージおよび属性ビットを受信すると、画像格納処理３０７を起動し、Ｓ４０２で生成した、ラスタイメージおよび属性ビットを送信する（Ｓ４０３）。Ｓ４０３でラスタイメージおよび属性ビットの受信した画像格納処理３０７は、ラスタイメージを画像編集用画像処理部２２０のＪＰＥＧ圧縮モジュールを利用してＪＰＥＧ圧縮する。また、画像格納処理３０７は、属性イメージを画像編集用画像処理部２２０のパックビッツ圧縮モジュールを利用してパックビッツ圧縮する。
【００３９】
さらに、画像格納処理３０７は、ＪＰＥＧ圧縮を施したラスタイメージと、パックビッツ圧縮を施した属性ビットとの合計容量が所定値に収まらない場合、ラスタイメージの再圧縮を行うことで、合計容量が所定値に収まるようにする。このラスタイメージの再圧縮はＪＰＥＧ圧縮のＱ−Ｔａｂｌｅをより高い圧縮ターゲットのものに変更することで行う。画像格納処理３０７は、ラスタイメージおよび属性ビットの合計容量を所定値以内まで圧縮すると、ジョブコントロール処理３０１へ画像格納終了を通知する。
【００４０】
ジョブコントロール処理３０１は、画像格納終了の通知を受けると、プリント処理３０８を起動し、画像データとしてＳ４０３で圧縮したラスタイメージおよび属性ビットを送信して指定用紙への印刷を行う（Ｓ４０４）。Ｓ４０４で、プリント処理３０８は、受信した画像データに対して印刷に必要な画像処理を施した後、プリンタエンジン２０２を制御して指定用紙への印刷を行う。画像処理の一例としては、文字に対する強調処理やディザ法による２値化処理を施すことができる。例えば、画像処理が文字オブジェクト強調処理の場合、ラスタイメージの各画素に対応する属性ビットを参照し、属性ビットのオブジェクト種が文字である画素は、画素値の濃度を上げると共にエッジ強調を行う処理を施される。
【００４１】
また、ディザ法による２値化処理では、ラスタイメージの各画素に対応する属性ビットを参照し、属性ビットのオブジェクト種に対応するディザマトリクスを参照し、画素値がディザマトリクス上の対応する値より大きい場合に１とする。カラー複合機１０１ではデフォルトとして、オブジェクト種が文字オブジェクトまたはグラフィックスオブジェクトでは高解像度ディザマトリクス、オブジェクト種がイメージオブジェクトでは高階調マトリクスが適用される。但し、適用されるマトリクスはユーザ設定により変更可能である。
【００４２】
（ＰＤＬ解析処理）
ここで、本実施例に係るＰＤＬ解析処理３０５について、図５のフローチャートを参照して説明する。ＰＤＬ解析処理３０５は、ＰＤＬデータが通知されると、順次データの解析処理を行い（Ｓ５０１）、解析処理の結果に応じて別の処理を行う（Ｓ５０２）。解析処理の結果、ページ開始処理を実行する場合はＳ５０３へ、ページ終了処理を実行する場合はＳ５０４へ、描画オブジェクトの描画を行う場合はＳ５０５へ進む。
【００４３】
Ｓ５０３では、ページ開始処理としてＤＬのオープン処理を行い、Ｓ５０９へ進む。Ｓ５０４では、ページ終了処理として、ＲＩＰ処理３１１で解釈可能な形式にＤＬを整形しクローズした後Ｓ５０９へ進む。Ｓ５０５では、描画オブジェクトの情報を基に、属性置換判定処理を行いＳ５０６へ進む。属性置換判定処理の詳細は後述するが、属性置換判定処理の結果として、置換フラグが設定されると共に、オブジェクト形状とオブジェクト種が保存される。
【００４４】
Ｓ５０６ではＰＤＬデータに含まれる描画オブジェクトを、ＲＩＰ処理３１１でレンダリングするためのＤＬが生成される。ＤＬには各描画オブジェクトの論理描画指定、描画領域指定、形状、論理描画の各オペランド、オブジェクト種の情報が含まれる。また、ＤＬに含まれる各オペランドは、色情報またはビットマップおよび透明度を含む。Ｓ５０７では、上述の属性置換判定処理の結果である、置換フラグを参照し、“ＴＲＵＥ”であれば、Ｓ５０８へ進み、“ＦＡＬＳＥ”であればＳ５０９へ進む。
【００４５】
Ｓ５０８では、属性置換判定処理の結果として保存されている、オブジェクト形状とオブジェクト種に基づいて、属性ビットを上書きするためのＤＬを生成する。属性ビットを上書きするためのＤＬは、オブジェクト形状とオブジェクト種は、属性置換判定処理の結果保存されているものを利用し、論理描画指定が“ＯＲ”、“１００％”の透明度を持つ、すなわち１００％の透過属性を持つ。なお、属性ビットを上書きするためのＤＬは、ラスタイメージには影響を与えず属性ビットのみを所望の属性に設定するためのものであれば、前述のＤＬに限られるものはない。Ｓ５０９では、解析すべきＰＤＬデータが残っているか判断し、残っている場合Ｓ５０２へ戻ってＰＤＬ解析処理を継続し、通全知されたＰＤＬデータを解析済みであれば終了する。
【００４６】
なお、ＰＤＬにはＬＩＰＳ（LBP Image Processing System）（商標）やＰＳ（PostScript（商標））など様々な種類が存在する。しかし、これらは、Ｓ５０１内のＰＤＬ解析部のロジックが異なるだけであり、本技術分野で知られたいずれのものも使用することができる。ジョブコントロール処理３０１は、予めＰＤＬ種別を判定し、ＰＤＬ解析処理実行時に適切なロジックが適用されるよう制御する。
【００４７】
（属性置換判定処理）
ここで、Ｓ５０５で行われる属性置換判定処理について図６ないし図９を参照して説明する。属性置換判定処理は、ＰＤＬデータに含まれる各描画オブジェクトを入力として、属性置換の要否を判定すると共に、属性置換が必要であると判断した場合に、属性ビットの上書きに必要なＤＬを生成するため、オブジェクト形状とオブジェクト種を保存する。
【００４８】
図６のフローチャートは、属性置換判定処理のメイン処理を示す。属性置換判定処理を開始すると、Ｓ６０１で属性置換の要否を示す置換フラグを“ＦＡＬＳＥ”に初期化してＳ６０２へ進む。Ｓ６０２ないしＳ６０４は、判定したい描画オブジェクトパターン毎に用意される判定処理１ないし３に対応する。各判定処理を終了すると属性置換判定処理は終了である。なお、判定処理として後述する判定処理１ないし３を例示するがこれに限られるものではない。
【００４９】
図７を参照してＳ６０２で行われる判定処理１を説明する。判定処理１は、生成されるレンダリングの結果、生成される属性ビットが、千鳥模様のようなタイルパターン状になるか否かを判定し、タイルパターン上になるときは均一の属性ビットに置換する処理である。判定処理１を開始するとＳ６１１で、入力された描画オブジェクトの論理描画指定を参照し、論理描画指定が”ＸＯＲ”であればＳ６１２へ進み、論理描画指定が”ＸＯＲ”以外であれば、Ｓ６１４へ進む。なお、本実施例では、現在処理中、または処理する予定の内容、例えば適用する論理描画指定などの描画情報について、装置に内蔵された、あるいはプロセッサからアクセス可能なメモリに“状態”として保持しておく。本実施例の処理は、そのメモリに保持された内容に基づいて実行される。
【００５０】
Ｓ６１２では、判定処理１で保持される“状態”を参照し、“状態”が“ＡＮＤ”であればＳ６１８へ進み、“状態”が“ＡＮＤ”以外であればＳ６１３で“状態”を“ＸＯＲ”に書き換えると共に、入力された描画オブジェクトの各描画属性を保存して終了する。Ｓ６１４では、論理描画指定が“ＡＮＤ”であり、且つ“状態”が“ＸＯＲ”という条件に一致すればＳ６１５へ進む。この条件に一致しなければＳ６１５で、入力された描画オブジェクトが千鳥模様のような特定のタイルパターン（図１２（ａ）（ｂ）（ｃ）参照）と合致するか（合致する部分があるか）否か判定する。なお、この判定は、パターンマッチングにより行う。よって、例えば、描画オブジェクトのサイズが大きく、そのうちの一部に特定のタイルパターンと完全に一致する部分があれば、特定のタイルパターンと合致すると判定する。一方で、描画オブジェクトの中に特定のタイルパターンと完全に一致する部分が無い場合には、特定のタイルパターンと合致しないと判定する。
【００５１】
Ｓ６１５で、特定のタイルパターンに合致すると判定される場合には、Ｓ６１６へ進んで“状態”を“ＡＮＤ”に変更して終了し、特定のタイルパターンに合致しない場合は、Ｓ６１７で“状態”を“ＮＯＮＥ”に初期化して終了する。なお、Ｓ６１５での判定処理は、事前に登録済みのテンプレートとのパターンマッチング処理により判定すればよく、登録されるテンプレートは複数あってもよい。Ｓ６１８では、入力された描画オブジェクトの各描画属性と、事前にＳ６１３で保存されている各描画属性が一致するか確認し、一致していればＳ６１９へ進み、一致していなければＳ６１７で、“状態”を”ＮＯＮＥ”に初期化して終了する。Ｓ６１９では、入力された描画オブジェクトについてオブジェクトの形状およびオブジェクト種を保存し、さらに、置換フラグを”ＴＲＵＥ”に設定した後、Ｓ６１７へ進んで、“状態”を”ＮＯＮＥ”に初期化して終了する。
【００５２】
以上説明したように、判定処理１では、３つの連続する描画オブジェクトの論理描画指定がＸＯＲ→ＡＮＤ→ＸＯＲの順で、ＡＮＤで指定されているオブジェクトが千鳥模様のようなタイルパターンである。さらに、これに加えて、１番目と３番目の描画オブジェクトが同じ場合、抽出が行われる。
【００５３】
図１０に、判定処理１の結果、属性ビットの上書きが行われた場合の一例を示す。図１０（ａ）に示す描画オブジェクト１ないし３が図１０（ｂ）の背景画像上に描画される場合のレンダリング結果が、図１０（ｄ）となる。図１０（ｃ）は、仮に判定処理１の結果、属性ビットの上書きが発生しなかった場合のレンダリング結果である。以下、このようなレンダリング結果にいたる、図１０（ａ）の描画オブジェクト１ないし３を順次、図１０（ｂ）の背景画像に描画していく様子を説明する。
【００５４】
まず、ラスタイメージの描画について説明する。背景画像の白（＝０ｘｆｆ）の上に描画オブジェクト１の色（＝０ｘ８０）を描画すると０ｘｆｆと０ｘ８０のＸＯＲは０ｘ７ｆ（＝０ｘ８０の反転）となるので、描画オブジェクト１の描画結果は０ｘ７ｆとなる。その後、描画オブジェクト２の描画指定はＡＮＤなので、描画オブジェクト２の白（＝０ｘｆｆ）の部分は０ｘ７ｆに、黒（＝０ｘ００）の部分は０ｘ００となる。最後に、描画オブジェクト３の色（＝０ｘ８０）をＸＯＲで描画すると、０ｘ７ｆと０ｘ８０のＸＯＲは０ｘｆｆとなり、０ｘ００と０ｘ８０のＸＯＲは０ｘ８０となる。
【００５５】
この結果として、ラスタイメージは、オブジェクト２の白の部分は背景色（＝０ｘｆｆ）となり、オブジェクト２の黒の部分は描画オブジェクト１および３の色（＝０ｘ８０）となって、図１０（ｃ）に示すように全体として千鳥模様状になる。
【００５６】
続いて、属性ビットの描画について説明する。ＲＩＰ２１０に搭載されている属性ビット生成アルゴリズムにより、属性ビットは、ＸＯＲはデスティネーションの属性となり、ＡＮＤはラスタイメージの色を見て、白の場合デスティネーションの属性ビット、黒の場合ソースのデスティネーションとなる。したがって、描画オブジェクト１の描画結果の属性ビットは背景画像の属性であるイメージとなる。また、描画オブジェクト２の描画結果は、描画オブジェクト２のラスタイメージの白の部分はイメージ、黒の部分は描画オブジェクト２の属性であるグラフィックとなる。さらに、描画オブジェクト３の描画結果は、描画オブジェクト２の描画結果のままとなり、図１０（ｃ）に示すように全体として属性ビットも千鳥模様状となる。
【００５７】
ここで、判定処理１が適用されると、属性ビットの上書きするＤＬ、すなわち論理描画指定が“ＯＲ”、“１００％の透明度”を持ち、オブジェクト種がグラフィックオブジェクトとなるＤＬが追加される。この、ＤＬを描画すると、１００％の透明度を持つため、ラスタイメージに影響はない。一方、“ＯＲ”の属性ビットはソースの属性となるため、図１０（ｄ）のように、ラスタイメージは千鳥模様であるが、属性ビットは、描画オブジェクトの形状全面が均一の属性ビットを持つ画像としてレンダリングされる。これにより、属性ビットの圧縮率が向上し、ラスタイメージの圧縮後の容量を大きく確保することができる結果、ＪＰＥＧ圧縮による画像劣化を抑えることができる。また、ディザ法による２値化処理により描画オブジェクトの領域に均一のディザマトリクスが適用されることで、画素単位でディザマトリクスが切り替わることによる干渉縞の発生を抑制し画質が向上する。
【００５８】
続いて、図８のフローチャートを参照して判定処理２を説明する。判定処理２は、判定処理１と同様に、レンダリングの結果生成される属性ビットが、千鳥模様のようなタイルパターン状になる場合を判定し、均一の属性ビットに置換する処理である。判定処理２を開始すると、Ｓ６２１で入力された描画オブジェクトの描画論理指定が“ＲＯＰ３の０ｘＣＡ”であるか否か判定し、”０ｘＣＡ“であれば、Ｓ６２２へ進み、”０ｘＣＡ“でなければ終了する。描画論理のＲＯＰ３は、ソース、デスティネーション、パターンの３つのオブジェクト間で論理演算を行う処理である。また、ＲＯＰ３の”０ｘＣＡ“は、パターンのビットが１の部分はソースのビットが使用され、パターンのビットが”０“の部分はデスティネーションのビットが使用される演算処理である。結果として、パターンに指定されるビットマップをマスクとして、マスクのビットが１の部分のみソースに指定される描画オブジェクトを描画することができる。
【００５９】
Ｓ６２２では、入力された描画オブジェクトのパターンに指定されるオブジェクトが千鳥模様のような特定のタイルパターンであるか否か判定する。Ｓ６２２で，特定のタイルパターンであると判定される場合には、Ｓ６２３へ進み、特定のタイルパターンであると判定されない場合は終了する。なお、Ｓ６２２での判定処理は、事前に登録済みのテンプレートとのパターンマッチング処理により判定すればよく、登録されるテンプレートは複数あってもよい。Ｓ６２３では、入力された描画オブジェクトについてオブジェクトの形状およびオブジェクト種を保存し、さらに、置換フラグを”ＴＲＵＥ”に設定して終了する。
【００６０】
続いて、図９のフローチャートを参照して判定処理３を説明する。判定処理３は、論理描画ＮＸＯＲを利用して、黒色グラフィックオブジェクトを描画した場合の属性ビットを上書きするための判定処理である。判定処理３を開始するとＳ６３１で、入力された描画オブジェクトの論描画指定が”ＮＸＯＲ“、且つ塗りの指定がフラットの黒（＝０ｘ００００００）の条件に一致するか確認し、条件に一致すればＳ６２３へ進み、条件に一致しなければそのまま終了する。
【００６１】
Ｓ６２３では、入力された描画オブジェクトについてオブジェクトの形状およびオブジェクト種を保存し、さらに、置換フラグを”ＴＲＵＥ”に設定して終了する。例えば、ＲＩＰ２１０に搭載される属性ビット生成アルゴリズムでは、ＮＸＯＲは背景画像に対する論理操作であると判断し、描画論理が“ＮＸＯＲ”をレンダリングした結果、属性ビットは背景にある属性ビットのままとする。しかしながら、描画オブジェクトの塗りの指定が黒である場合には、黒色の描画を指定している可能性が高いため、入力された描画オブジェクトの属性ビットに上書きするオブジェクトを追加することで、正しい属性ビットが生成される。
【００６２】
［その他の実施形態］
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。また、本発明は、複数のプロセッサが連携して処理を行うことによっても実現できるものである。
【図１】
2012120027.tif 000003
【図２】
2012120027.tif 000004
【図３】
2012120027.tif 000005
【図４】
2012120027.tif 000006
【図５】
2012120027.tif 000007
【図６】
2012120027.tif 000008
【図７】
2012120027.tif 000009
【図８】
2012120027.tif 000010
【図９】
2012120027.tif 000011
【図１０】
2012120027.tif 000012
【図１１】
2012120027.tif 000013
【図１２】
2012120027.tif 000014