画像形成装置
【課題】 画像品位向上のために、高解像度化と多様な画像処理に対応する必要がある。これに伴い、多様な画像処理からデータに適した画像処理を選択するための属性データは、高解像度化、多ビット化でデータ量が増加しつつあり、大量のメモリが必要となっている。
【解決手段】 分割領域内に含まれる属性の種類数を判定し、種類数に応じて属性データのデータ形式を変更し、データサイズを削減する。また、生成された属性データを再利用し、さらにデータサイズを削減する。
【解決手段】 分割領域内に含まれる属性の種類数を判定し、種類数に応じて属性データのデータ形式を変更し、データサイズを削減する。また、生成された属性データを再利用し、さらにデータサイズを削減する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像形成装置に関する。印刷装置等の画像形成装置において、印刷する各オブジェクトの特徴を示すオブジェクト属性を保持し、オブジェクト属性に応じて画像処理を行う手段を備えた画像形成システムに関するものである。
【背景技術】
【0002】
近年、画像形成装置は出力品位向上のため、高解像度で印刷できる印刷デバイスが開発されている。また、多種の画像処理を搭載し、様々なデータ、画像オブジェクトに最適な画像処理に切り替えて処理することで、高画質な出力をすることができるようになってきている。これに伴い、高解像度化により画像形成装置で作成する画像データはデータサイズが大幅に増加している。また、画像処理の多様化に伴い、多種の画像処理からデータに適した画像処理を選択するための属性データも多ビット化し、データが増加しつつある。現在、データサイズを小さくするために、JPEG等の非可逆圧縮が用いられ、大幅にサイズを小さくすることが可能となっている。また、従来のデータサイズ削減技術には、画像データを複数の領域に分割し、各領域について属性を判別し、判別結果から画像データの圧縮方式を変更する手段がある。(例えば、特許文献1参照。)
【特許文献1】特開平11−252377号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、特許文献1の手段においては、画像データのサイズを削減する技術であり、属性データについては削減することができない。また、属性データについては、非可逆圧縮を用いると適切な画像処理が行われなくなり、著しく画質低下するため、サイズを大幅に削減することができない。
【課題を解決するための手段】
【0004】
上記課題を解決するために、本発明の画像形成装置は、
外部装置からデータを受信する受信手段(202)と、
前記受信手段により受信したデータを解析する解析手段(S1001)と、
前記解析手段により解析したデータから中間データを生成する中間データ生成手段(S1003)と、
前記中間データ生成手段により生成された中間データから画像データを生成するレンダリング手段(S1141)と、
前記中間データ生成手段により生成された中間データのオブジェクトのうち、分割領域に含まれる全てのオブジェクトについて複数種の属性の中から1つを選択するオブジェクト属性判定手段(S1103)と、
前記オブジェクト属性判定手段により判定したオブジェクト属性の種類数を決定するオブジェクト属性数決定手段(S1104)と、
前記オブジェクト属性数決定手段により決定したオブジェクト属性数に応じて、属性データの複数のデータ形式から1つのデータ形式を決定するデータ形式決定手段(S1108、S1120、S1130)と、
前記データ形式決定手段により決定したデータ形式に従って、属性データ(300)を生成する属性データ生成手段(S1110、S1122、S1132、S1133)と、
前記レンダリング手段により生成された属性データによってイメージデータの画像処理を切り替える画像処理切り替え手段(210)を有する。
【発明の効果】
【0005】
分割領域内に含まれる属性の種類数を判定し、種類数から、属性データのビット数を削減することが可能となり、属性データのサイズを小さくする。また、生成された属性データを再利用することでさらに属性データのサイズを小さくできる。
【発明を実施するための最良の形態】
【0006】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【0007】
図1は、本発明における画像形成装置102のシステム構成の一例を示す図である。
【0008】
102は画像形成装置であり、202は外部デバイスと情報の入出力を行うためのネットワークI/Fであり、外部デバイスから送信された印刷データを受信する。203は様々な情報を一時格納するRAMである。RAM203は、受信バッファ204、ワークメモリ205、フレームバッファ206、ラスタメモリ207からなる。受信バッファ204は、ネットワークI/F202を介して受信した印刷データを格納するメモリである。205は、入力されたデータを中間コードに変換するときに一時的に使用するワークメモリである。206は、プリンタ内部の中間コードなどを格納するフレームバッファである。207は中間コードを展開したデータを格納するラスタメモリである。
【0009】
208は、画像形成装置102におけるCPU211の制御コードを格納するROMである。ROM208は、解析処理部214、中間コード生成部215、展開処理部216、属性データ生成部209、画像処理部210からなる。214は、受信バッファ204から読み出したデータを解析し、所定の処理に振り分ける解析処理部である。215は、解析処理部214において解析したデータから中間データを生成し、フレームバッファ206に格納する中間コード生成部である。216は、フレームバッファ206に格納された中間コードを展開した画像データをラスタメモリ207に格納する展開処理部である。209は、フレームバッファ206に格納された中間コードのオブジェクト属性値から属性データを生成し、ラスタメモリ207に格納する属性データ生成部である。210は、ラスタメモリ207に格納された属性データに応じて画像データの画像処理を行う画像処理部である。
【0010】
211は画像形成装置201の演算処理や制御を行う中央演算処理装置(CPU)である。212はプリンタエンジン213との信号の入出力を行うエンジンI/Fである。213はイメージデータに基づいて、周知の電子写真プロセスによって感光ドラム上に潜像を形成し、用紙に転写して定着し印字を行うプリンタエンジンである。
【実施例1】
【0011】
図2は、本実施例における印刷処理のフローチャートを示した図である。
【0012】
ステップS1001で、ネットワークI/F部204を介して、PDLデータを受信すると、ステップS1002では、解析処理部214において、PDLデータを解析する。ステップS1003では、解析処理部214の指示に従ってオブジェクトを生成し、中間コード生成部215において、中間コードを生成し、フレームバッファ207に格納する。ステップS1004では、受信したPDLデータのページ終了を判定する。ページ終了と判定した場合は、ステップS1005で、展開処理部216、および属性データ生成部209において、フレームバッファ207に格納された中間コードをレンダリングし、ラスタメモリ208に画像データと属性データを格納する。ステップS1006では、画像処理部210において、ラスタメモリ208に格納された属性データに従って、ラスタメモリ208に格納された画像データに対し色処理等の画像処理を行う。ステップS1007で、画像処理後の画像データをエンジンI/F212を介して、プリンタエンジン213に出力し、印刷を行う。
【0013】
図3は、本実施例の展開処理部216、および属性データ生成部209におけるレンダリング処理のフローチャートを示した図である。
【0014】
ステップS1101では、フレームバッファ207に格納された中間コードを読み、N×Nのサイズに分割された領域(以後、ブロック)にオブジェクトが含まれているかどうかを判定する。判定した結果、ブロック内にオブジェクトが存在した場合、ステップS1102で、属性数カウンタを0に初期化する。ステップS1103で、オブジェクトの属性を判定する。ステップS1104では、判定したオブジェクト属性がワークメモリ205に格納されたオブジェクト属性テーブルに存在するかを判定する。ステップS1105は、ステップS1106は、オブジェクト属性テーブルに判定したオブジェクト属性がないときのみ実行される。ステップ1105では、属性数カウンタをインクリメントし、ステップS1106では、ワークメモリ205に格納されたオブジェクト属性テーブルにオブジェクト属性を追加する。
【0015】
ステップS1107で、ブロック領域内の全オブジェクトについて処理したと判定するまで、ステップS1102〜ステップS1106を実行する。
【0016】
ブロック内の判定処理が終了すると、ステップS1108で、ブロック内に含まれる属性数が1であるかを判定する。判定した結果、属性数が1の場合に、ステップS1010で、属性モードに属性値指定を示す値、属性データにオブジェクト属性値を設定し、ラスタメモリ208に格納する。
【0017】
一方、ステップS1120では、属性数が2であるかを判定する。判定した結果、属性数が2の場合に、ステップS1121で、属性モードにインデックス1ビット指定を示す値を設定し、2つのオブジェクト属性値を属性データのインデックステーブルに設定し、ラスタメモリ208に格納する。また、フレームバッファ207に格納された中間コードから各ピクセル1ビットの属性データを生成し、ラスタメモリ208に格納する。
【0018】
一方、ステップS1130では、属性数が3または4であるかを判定する。判定した結果、属性数が3または4の場合に、ステップS1131で、属性モードにインデックス2ビット指定を示す値を設定し、3つまた4つのオブジェクト属性値を属性データのインデックステーブルに設定し、ラスタメモリ208に格納する。また、フレームバッファ207に格納された中間コードから各ピクセル2ビットの属性データを生成し、ラスタメモリ208に格納する。属性値が5以上の場合は、属性モードに8ビット指定を示す値を設定し、各ピクセル8ビットの属性データを生成し、ラスタメモリ208に格納する。
【0019】
次に、ステップS1140では、フレームバッファ207に格納された中間コードから画像データを生成し、ラスタメモリ208に格納する。
【0020】
ステップS1101でブロック内にオブジェクトがない場合、ステップS1050で、属性モードに属性値指定を示す値、属性データにデフォルトのオブジェクト属性値を設定し、ラスタメモリ208に格納する。ステップS1051では、デフォルト値の画像データを生成し、ラスタメモリ208に格納する。
【0021】
ステップS1141、ステップS1152で、全てのブロックについて処理したと判定するまで、ステップS1102〜ステップS1140および、ステップS1150、ステップ1151を実行する。
【0022】
図4は、本実施例のステップS1005で、展開処理部216、および属性データ生成部209で生成される属性データ300と画像データ350とのデータ構造の一例を示した図である。
【0023】
属性データ300は、属性モード301、属性値データ302から構成される。
【0024】
属性モード301は、属性データのフォーマットの種類を示す値であり、ステップS1110、ステップS1121、ステップS1131、ステップS1133で設定される。本属性モード301には、属性値モード、インデックス1ビットモード、インデックス2ビットモード、8ビットモードの4種類が指定される。
【0025】
属性値データ302は、フレームバッファ206に格納された中間コードのオブジェクト属性から生成されたピクセル毎のオブジェクト属性値データであり、属性モードに従って生成するフォーマットを変更する。
【0026】
図5は、属性モードが属性値モードのときの構成である。属性モード301には、属性値モードを示す0×0を指定する。属性値データ302には、1つの属性値を指定し、画像処理部210では、指定した1つの属性値に従って、ブロック内の全ピクセルの画像処理が実行される。
【0027】
図6(a)は、属性モードがインデックス1ビットのときの構成である。属性モード301には、インデックス1ビットモードを示す0×1を指定する。属性値データ302には、2つの属性値のインデックステーブルと、各ピクセル1ビットのインデックスデータが指定され、画像処理部210で各ピクセルの属性値に復元し、復元した属性値に従って画像処理が実行される。
【0028】
図6(b)は、属性モードがインデックス2ビットのときの構成である。属性モード301には、インデックス2ビットモードを示す0×2を指定する。属性値データ302には、4つの属性値のインデックステーブルと、各ピクセル2ビットのインデックスデータが指定され、画像処理部210で各ピクセルの属性値に復元し、復元した属性値に従って画像処理が実行される。
【0029】
図7は、属性モードが8ビットのときの構成である。属性モード301には、8ビットモードを示す0×3を指定する。属性値データ302には、各ピクセルの属性値を指定し、画像処理部210で、指定した属性値に従って、各ピクセルの画像処理が実行される。
【0030】
図8は、本実施例を適用したときの一例である。
【0031】
(0,0),(1,0)のブロックのレンダリング処理において、1ビットのインデックステーブルと1ビットのインデックスデータを作成する。(3,4)のブロックのレンダリング処理において、2ビットのインデックステーブルと2ビットのインデックスデータを作成する。これにより、属性データを削減することができる。
【0032】
本実施例においては、属性データのビット数を減らすことでデータサイズを削減しているが、さらに可逆圧縮を実行することによってデータサイズを削減することが可能である。
【実施例2】
【0033】
図9は、本実施例の展開処理部216、および属性データ生成部209におけるレンダリング処理のフローチャートを示した図である。
【0034】
ステップS1005で、展開処理部216、および属性データ生成部209におけるレンダリング処理のフローチャートを示した図である。
【0035】
ステップS1201では、フレームバッファ207に格納された中間コードを読み、N×Nのサイズに分割された領域(以後、ブロック)にオブジェクトが含まれているかどうかを判定する。判定した結果、ブロック内にオブジェクトが存在した場合、ステップS1202で、属性数カウンタを0に初期化する。ステップS1203で、オブジェクトの属性を判定する。ステップS1204では、判定したオブジェクト属性がワークメモリ205に格納されたオブジェクト属性テーブルに存在するかを判定する。ステップS1205とステップS1206は、オブジェクト属性テーブルに判定したオブジェクト属性がないときのみ実行される。ステップ1105では、属性数カウンタをインクリメントし、ステップS1206では、ワークメモリ205に格納されたオブジェクト属性テーブルにオブジェクト属性を追加する。
【0036】
ステップS1207で、ブロック領域内の全オブジェクトについて処理したと判定するまで、ステップS1202〜ステップS1206を実行する。
【0037】
ブロック内の判定処理が終了すると、ステップS1208で、ブロック内に含まれる属性数が1であるかを判定する。判定した結果、属性数が1の場合に、ステップS1010で、属性モードに属性値指定を示す値、属性データにオブジェクト属性値を設定し、ラスタメモリ208に格納する。
【0038】
一方、ステップS1220では、属性数が2であるかを判定する。判定した結果、属性数が2の場合に、ステップS1221で、インデックステーブルリストから同一のオブジェクト属性値をもったインデックステーブルを検索する。検索した結果、同一ではない場合は、ステップS1222で、属性モードにインデックス1ビット指定を示す値を設定し、また、2つのオブジェクト属性値を属性データのインデックステーブルに設定し、ラスタメモリ208に格納する。ステップS1223で、ラスタメモリ208に格納したインデックステーブルのアドレスをインデックステーブルリストに登録し、属性データにインデックステーブルIDを設定する。
【0039】
次に、フレームバッファ207に格納された中間コードから各ピクセル1ビットの属性データを生成し、ラスタメモリ208に格納する。
【0040】
一方、ステップS1230では、属性数が3または4であるかを判定する。判定した結果、属性数が3または4の場合に、ステップS1231で、インデックステーブルリストから同一のオブジェクト属性値をもったインデックステーブルを検索する。検索した結果、同一ではない場合は、ステップS1232で、属性モードにインデックス2ビット指定を示す値を設定し、また、3つまたは4つのオブジェクト属性値を属性データのインデックステーブルに設定し、ラスタメモリ208に格納する。ステップS1233で、ラスタメモリ208に格納したインデックステーブルのアドレスをインデックステーブルリストに登録し、属性データにインデックステーブルIDを設定する。
【0041】
次に、ステップS1240では、フレームバッファ207に格納された中間コードから画像データを生成し、ラスタメモリ208に格納する。
【0042】
ステップS1201でブロック内にオブジェクトがない場合、ステップS1050で、属性モードに属性値指定を示す値、属性データにデフォルトのオブジェクト属性値を設定し、ラスタメモリ208に格納する。ステップS1051では、デフォルト値の画像データを生成し、ラスタメモリ208に格納する。
【0043】
ステップS1241、ステップS1252で、全てのブロックについて処理したと判定するまで、ステップS1202〜ステップS1240および、ステップS1250、ステップ1151を実行する。
【0044】
図10は、展開処理部216、および属性データ生成部209で生成される属性データ400と画像データ450とインデックステーブルリスト500の基本構成である。
【0045】
属性データ400は、属性モード401、インデックステーブルID402、属性データ403から構成される。
【0046】
属性モード401は、属性データのフォーマットの種類を示す値であり、ステップS1210、ステップS1222、ステップS1232、ステップS1233で設定される。本属性モード401には、属性値モード、インデックス1ビットモード、インデックス2ビットモード、8ビットモードの4種類が指定される。
【0047】
インデックステーブルID402は、ステップS1223、ステップ1133でインデックステーブルリスト500に登録したインデックステーブル510のIDである。
【0048】
属性データ403は、フレームバッファ207に格納された中間コードのオブジェクト属性から生成されたピクセル毎のオブジェクト属性データであり、属性モードに従って生成するフォーマットを変更する。
【0049】
インデックステーブルリスト500は、インデックステーブル510の先頭アドレスを格納するアドレスリストである。
【0050】
インデックステーブル510は、属性モード511と属性リスト512から構成され、ステップS1222、ステップS1232で生成される。
【0051】
属性モード511は、インデックステーブルの種類を示す値であり、本実施例においてはインデックス1ビット、インデックス2ビットのいずれかである。
【0052】
属性値リスト512は、複数の属性値から構成される。
【0053】
図11は、インデックステーブルリストに登録されたときの構成である。インデックステーブルリストには、2つのアドレスが登録され、インデックス1ビットモードのインデックステーブルには2つの属性値、インデックス2ビットモードインデックステーブルには4つの属性値が指定される。
【0054】
図12(a)は、属性モードがインデックス1ビットのときの構成である。属性モードには、インデックス1ビットモードを示す01を指定する。属性データには、各ピクセル1ビットのインデックスデータが指定され、画像処理部210でインデックステーブルから各ピクセルの属性値に復元し、復元した属性値に従って画像処理が実行される。
【0055】
図12(b)は、属性モードがインデックス2ビットのときの構成である。属性モードには、インデックス2ビットモードを示す10を指定する。属性データには、各ピクセル2ビットのインデックスデータが指定され、画像処理部210でインデックステーブルから各ピクセルの属性値に復元し、復元した属性値に従って画像処理が実行される。
【0056】
図13は、本実施例を適用したときの一例である。
【0057】
(0,0)のブロックのレンダリング処理において、1ビットのインデックステーブル生成後、インデックステーブルリストに登録し、次の(1.0)のブロックのレンダリング処理においても、同じ1ビットのインデックステーブルを使用している。
【0058】
これにより、さらに属性データを削減することができる。本実施例においては、属性データのビット数を減らすことでデータサイズを削減しているが、さらに可逆圧縮を実行することによってデータサイズを削減することが可能である。
【図面の簡単な説明】
【0059】
【図1】本発明における画像形成装置102のシステム構成の一例を示した図
【図2】本発明における印刷処理のフローチャートを示した図
【図3】実施例1におけるレンダリング処理のフローチャートを示した図
【図4】実施例1における属性データ300と画像データ350のデータ構造図
【図5】実施例1における属性値モードの属性データの一例を示した図
【図6】実施例1におけるインデックスモードの属性データの一例を示した図
【図7】実施例1における8ビットモードの属性データの一例を示した図
【図8】実施例1を適用したときの一例を示した図
【図9】実施例1におけるレンダリング処理のフローチャートを示した図
【図10】実施例2における属性データ400と画像データ450のデータ構造図
【図11】実施例2におけるインデックステーブルリストの一例を示した図
【図12】実施例1におけるインデックスモードの属性データの一例を示した図
【図13】実施例2を適用したときの一例を示した図
【技術分野】
【0001】
本発明は、画像形成装置に関する。印刷装置等の画像形成装置において、印刷する各オブジェクトの特徴を示すオブジェクト属性を保持し、オブジェクト属性に応じて画像処理を行う手段を備えた画像形成システムに関するものである。
【背景技術】
【0002】
近年、画像形成装置は出力品位向上のため、高解像度で印刷できる印刷デバイスが開発されている。また、多種の画像処理を搭載し、様々なデータ、画像オブジェクトに最適な画像処理に切り替えて処理することで、高画質な出力をすることができるようになってきている。これに伴い、高解像度化により画像形成装置で作成する画像データはデータサイズが大幅に増加している。また、画像処理の多様化に伴い、多種の画像処理からデータに適した画像処理を選択するための属性データも多ビット化し、データが増加しつつある。現在、データサイズを小さくするために、JPEG等の非可逆圧縮が用いられ、大幅にサイズを小さくすることが可能となっている。また、従来のデータサイズ削減技術には、画像データを複数の領域に分割し、各領域について属性を判別し、判別結果から画像データの圧縮方式を変更する手段がある。(例えば、特許文献1参照。)
【特許文献1】特開平11−252377号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、特許文献1の手段においては、画像データのサイズを削減する技術であり、属性データについては削減することができない。また、属性データについては、非可逆圧縮を用いると適切な画像処理が行われなくなり、著しく画質低下するため、サイズを大幅に削減することができない。
【課題を解決するための手段】
【0004】
上記課題を解決するために、本発明の画像形成装置は、
外部装置からデータを受信する受信手段(202)と、
前記受信手段により受信したデータを解析する解析手段(S1001)と、
前記解析手段により解析したデータから中間データを生成する中間データ生成手段(S1003)と、
前記中間データ生成手段により生成された中間データから画像データを生成するレンダリング手段(S1141)と、
前記中間データ生成手段により生成された中間データのオブジェクトのうち、分割領域に含まれる全てのオブジェクトについて複数種の属性の中から1つを選択するオブジェクト属性判定手段(S1103)と、
前記オブジェクト属性判定手段により判定したオブジェクト属性の種類数を決定するオブジェクト属性数決定手段(S1104)と、
前記オブジェクト属性数決定手段により決定したオブジェクト属性数に応じて、属性データの複数のデータ形式から1つのデータ形式を決定するデータ形式決定手段(S1108、S1120、S1130)と、
前記データ形式決定手段により決定したデータ形式に従って、属性データ(300)を生成する属性データ生成手段(S1110、S1122、S1132、S1133)と、
前記レンダリング手段により生成された属性データによってイメージデータの画像処理を切り替える画像処理切り替え手段(210)を有する。
【発明の効果】
【0005】
分割領域内に含まれる属性の種類数を判定し、種類数から、属性データのビット数を削減することが可能となり、属性データのサイズを小さくする。また、生成された属性データを再利用することでさらに属性データのサイズを小さくできる。
【発明を実施するための最良の形態】
【0006】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【0007】
図1は、本発明における画像形成装置102のシステム構成の一例を示す図である。
【0008】
102は画像形成装置であり、202は外部デバイスと情報の入出力を行うためのネットワークI/Fであり、外部デバイスから送信された印刷データを受信する。203は様々な情報を一時格納するRAMである。RAM203は、受信バッファ204、ワークメモリ205、フレームバッファ206、ラスタメモリ207からなる。受信バッファ204は、ネットワークI/F202を介して受信した印刷データを格納するメモリである。205は、入力されたデータを中間コードに変換するときに一時的に使用するワークメモリである。206は、プリンタ内部の中間コードなどを格納するフレームバッファである。207は中間コードを展開したデータを格納するラスタメモリである。
【0009】
208は、画像形成装置102におけるCPU211の制御コードを格納するROMである。ROM208は、解析処理部214、中間コード生成部215、展開処理部216、属性データ生成部209、画像処理部210からなる。214は、受信バッファ204から読み出したデータを解析し、所定の処理に振り分ける解析処理部である。215は、解析処理部214において解析したデータから中間データを生成し、フレームバッファ206に格納する中間コード生成部である。216は、フレームバッファ206に格納された中間コードを展開した画像データをラスタメモリ207に格納する展開処理部である。209は、フレームバッファ206に格納された中間コードのオブジェクト属性値から属性データを生成し、ラスタメモリ207に格納する属性データ生成部である。210は、ラスタメモリ207に格納された属性データに応じて画像データの画像処理を行う画像処理部である。
【0010】
211は画像形成装置201の演算処理や制御を行う中央演算処理装置(CPU)である。212はプリンタエンジン213との信号の入出力を行うエンジンI/Fである。213はイメージデータに基づいて、周知の電子写真プロセスによって感光ドラム上に潜像を形成し、用紙に転写して定着し印字を行うプリンタエンジンである。
【実施例1】
【0011】
図2は、本実施例における印刷処理のフローチャートを示した図である。
【0012】
ステップS1001で、ネットワークI/F部204を介して、PDLデータを受信すると、ステップS1002では、解析処理部214において、PDLデータを解析する。ステップS1003では、解析処理部214の指示に従ってオブジェクトを生成し、中間コード生成部215において、中間コードを生成し、フレームバッファ207に格納する。ステップS1004では、受信したPDLデータのページ終了を判定する。ページ終了と判定した場合は、ステップS1005で、展開処理部216、および属性データ生成部209において、フレームバッファ207に格納された中間コードをレンダリングし、ラスタメモリ208に画像データと属性データを格納する。ステップS1006では、画像処理部210において、ラスタメモリ208に格納された属性データに従って、ラスタメモリ208に格納された画像データに対し色処理等の画像処理を行う。ステップS1007で、画像処理後の画像データをエンジンI/F212を介して、プリンタエンジン213に出力し、印刷を行う。
【0013】
図3は、本実施例の展開処理部216、および属性データ生成部209におけるレンダリング処理のフローチャートを示した図である。
【0014】
ステップS1101では、フレームバッファ207に格納された中間コードを読み、N×Nのサイズに分割された領域(以後、ブロック)にオブジェクトが含まれているかどうかを判定する。判定した結果、ブロック内にオブジェクトが存在した場合、ステップS1102で、属性数カウンタを0に初期化する。ステップS1103で、オブジェクトの属性を判定する。ステップS1104では、判定したオブジェクト属性がワークメモリ205に格納されたオブジェクト属性テーブルに存在するかを判定する。ステップS1105は、ステップS1106は、オブジェクト属性テーブルに判定したオブジェクト属性がないときのみ実行される。ステップ1105では、属性数カウンタをインクリメントし、ステップS1106では、ワークメモリ205に格納されたオブジェクト属性テーブルにオブジェクト属性を追加する。
【0015】
ステップS1107で、ブロック領域内の全オブジェクトについて処理したと判定するまで、ステップS1102〜ステップS1106を実行する。
【0016】
ブロック内の判定処理が終了すると、ステップS1108で、ブロック内に含まれる属性数が1であるかを判定する。判定した結果、属性数が1の場合に、ステップS1010で、属性モードに属性値指定を示す値、属性データにオブジェクト属性値を設定し、ラスタメモリ208に格納する。
【0017】
一方、ステップS1120では、属性数が2であるかを判定する。判定した結果、属性数が2の場合に、ステップS1121で、属性モードにインデックス1ビット指定を示す値を設定し、2つのオブジェクト属性値を属性データのインデックステーブルに設定し、ラスタメモリ208に格納する。また、フレームバッファ207に格納された中間コードから各ピクセル1ビットの属性データを生成し、ラスタメモリ208に格納する。
【0018】
一方、ステップS1130では、属性数が3または4であるかを判定する。判定した結果、属性数が3または4の場合に、ステップS1131で、属性モードにインデックス2ビット指定を示す値を設定し、3つまた4つのオブジェクト属性値を属性データのインデックステーブルに設定し、ラスタメモリ208に格納する。また、フレームバッファ207に格納された中間コードから各ピクセル2ビットの属性データを生成し、ラスタメモリ208に格納する。属性値が5以上の場合は、属性モードに8ビット指定を示す値を設定し、各ピクセル8ビットの属性データを生成し、ラスタメモリ208に格納する。
【0019】
次に、ステップS1140では、フレームバッファ207に格納された中間コードから画像データを生成し、ラスタメモリ208に格納する。
【0020】
ステップS1101でブロック内にオブジェクトがない場合、ステップS1050で、属性モードに属性値指定を示す値、属性データにデフォルトのオブジェクト属性値を設定し、ラスタメモリ208に格納する。ステップS1051では、デフォルト値の画像データを生成し、ラスタメモリ208に格納する。
【0021】
ステップS1141、ステップS1152で、全てのブロックについて処理したと判定するまで、ステップS1102〜ステップS1140および、ステップS1150、ステップ1151を実行する。
【0022】
図4は、本実施例のステップS1005で、展開処理部216、および属性データ生成部209で生成される属性データ300と画像データ350とのデータ構造の一例を示した図である。
【0023】
属性データ300は、属性モード301、属性値データ302から構成される。
【0024】
属性モード301は、属性データのフォーマットの種類を示す値であり、ステップS1110、ステップS1121、ステップS1131、ステップS1133で設定される。本属性モード301には、属性値モード、インデックス1ビットモード、インデックス2ビットモード、8ビットモードの4種類が指定される。
【0025】
属性値データ302は、フレームバッファ206に格納された中間コードのオブジェクト属性から生成されたピクセル毎のオブジェクト属性値データであり、属性モードに従って生成するフォーマットを変更する。
【0026】
図5は、属性モードが属性値モードのときの構成である。属性モード301には、属性値モードを示す0×0を指定する。属性値データ302には、1つの属性値を指定し、画像処理部210では、指定した1つの属性値に従って、ブロック内の全ピクセルの画像処理が実行される。
【0027】
図6(a)は、属性モードがインデックス1ビットのときの構成である。属性モード301には、インデックス1ビットモードを示す0×1を指定する。属性値データ302には、2つの属性値のインデックステーブルと、各ピクセル1ビットのインデックスデータが指定され、画像処理部210で各ピクセルの属性値に復元し、復元した属性値に従って画像処理が実行される。
【0028】
図6(b)は、属性モードがインデックス2ビットのときの構成である。属性モード301には、インデックス2ビットモードを示す0×2を指定する。属性値データ302には、4つの属性値のインデックステーブルと、各ピクセル2ビットのインデックスデータが指定され、画像処理部210で各ピクセルの属性値に復元し、復元した属性値に従って画像処理が実行される。
【0029】
図7は、属性モードが8ビットのときの構成である。属性モード301には、8ビットモードを示す0×3を指定する。属性値データ302には、各ピクセルの属性値を指定し、画像処理部210で、指定した属性値に従って、各ピクセルの画像処理が実行される。
【0030】
図8は、本実施例を適用したときの一例である。
【0031】
(0,0),(1,0)のブロックのレンダリング処理において、1ビットのインデックステーブルと1ビットのインデックスデータを作成する。(3,4)のブロックのレンダリング処理において、2ビットのインデックステーブルと2ビットのインデックスデータを作成する。これにより、属性データを削減することができる。
【0032】
本実施例においては、属性データのビット数を減らすことでデータサイズを削減しているが、さらに可逆圧縮を実行することによってデータサイズを削減することが可能である。
【実施例2】
【0033】
図9は、本実施例の展開処理部216、および属性データ生成部209におけるレンダリング処理のフローチャートを示した図である。
【0034】
ステップS1005で、展開処理部216、および属性データ生成部209におけるレンダリング処理のフローチャートを示した図である。
【0035】
ステップS1201では、フレームバッファ207に格納された中間コードを読み、N×Nのサイズに分割された領域(以後、ブロック)にオブジェクトが含まれているかどうかを判定する。判定した結果、ブロック内にオブジェクトが存在した場合、ステップS1202で、属性数カウンタを0に初期化する。ステップS1203で、オブジェクトの属性を判定する。ステップS1204では、判定したオブジェクト属性がワークメモリ205に格納されたオブジェクト属性テーブルに存在するかを判定する。ステップS1205とステップS1206は、オブジェクト属性テーブルに判定したオブジェクト属性がないときのみ実行される。ステップ1105では、属性数カウンタをインクリメントし、ステップS1206では、ワークメモリ205に格納されたオブジェクト属性テーブルにオブジェクト属性を追加する。
【0036】
ステップS1207で、ブロック領域内の全オブジェクトについて処理したと判定するまで、ステップS1202〜ステップS1206を実行する。
【0037】
ブロック内の判定処理が終了すると、ステップS1208で、ブロック内に含まれる属性数が1であるかを判定する。判定した結果、属性数が1の場合に、ステップS1010で、属性モードに属性値指定を示す値、属性データにオブジェクト属性値を設定し、ラスタメモリ208に格納する。
【0038】
一方、ステップS1220では、属性数が2であるかを判定する。判定した結果、属性数が2の場合に、ステップS1221で、インデックステーブルリストから同一のオブジェクト属性値をもったインデックステーブルを検索する。検索した結果、同一ではない場合は、ステップS1222で、属性モードにインデックス1ビット指定を示す値を設定し、また、2つのオブジェクト属性値を属性データのインデックステーブルに設定し、ラスタメモリ208に格納する。ステップS1223で、ラスタメモリ208に格納したインデックステーブルのアドレスをインデックステーブルリストに登録し、属性データにインデックステーブルIDを設定する。
【0039】
次に、フレームバッファ207に格納された中間コードから各ピクセル1ビットの属性データを生成し、ラスタメモリ208に格納する。
【0040】
一方、ステップS1230では、属性数が3または4であるかを判定する。判定した結果、属性数が3または4の場合に、ステップS1231で、インデックステーブルリストから同一のオブジェクト属性値をもったインデックステーブルを検索する。検索した結果、同一ではない場合は、ステップS1232で、属性モードにインデックス2ビット指定を示す値を設定し、また、3つまたは4つのオブジェクト属性値を属性データのインデックステーブルに設定し、ラスタメモリ208に格納する。ステップS1233で、ラスタメモリ208に格納したインデックステーブルのアドレスをインデックステーブルリストに登録し、属性データにインデックステーブルIDを設定する。
【0041】
次に、ステップS1240では、フレームバッファ207に格納された中間コードから画像データを生成し、ラスタメモリ208に格納する。
【0042】
ステップS1201でブロック内にオブジェクトがない場合、ステップS1050で、属性モードに属性値指定を示す値、属性データにデフォルトのオブジェクト属性値を設定し、ラスタメモリ208に格納する。ステップS1051では、デフォルト値の画像データを生成し、ラスタメモリ208に格納する。
【0043】
ステップS1241、ステップS1252で、全てのブロックについて処理したと判定するまで、ステップS1202〜ステップS1240および、ステップS1250、ステップ1151を実行する。
【0044】
図10は、展開処理部216、および属性データ生成部209で生成される属性データ400と画像データ450とインデックステーブルリスト500の基本構成である。
【0045】
属性データ400は、属性モード401、インデックステーブルID402、属性データ403から構成される。
【0046】
属性モード401は、属性データのフォーマットの種類を示す値であり、ステップS1210、ステップS1222、ステップS1232、ステップS1233で設定される。本属性モード401には、属性値モード、インデックス1ビットモード、インデックス2ビットモード、8ビットモードの4種類が指定される。
【0047】
インデックステーブルID402は、ステップS1223、ステップ1133でインデックステーブルリスト500に登録したインデックステーブル510のIDである。
【0048】
属性データ403は、フレームバッファ207に格納された中間コードのオブジェクト属性から生成されたピクセル毎のオブジェクト属性データであり、属性モードに従って生成するフォーマットを変更する。
【0049】
インデックステーブルリスト500は、インデックステーブル510の先頭アドレスを格納するアドレスリストである。
【0050】
インデックステーブル510は、属性モード511と属性リスト512から構成され、ステップS1222、ステップS1232で生成される。
【0051】
属性モード511は、インデックステーブルの種類を示す値であり、本実施例においてはインデックス1ビット、インデックス2ビットのいずれかである。
【0052】
属性値リスト512は、複数の属性値から構成される。
【0053】
図11は、インデックステーブルリストに登録されたときの構成である。インデックステーブルリストには、2つのアドレスが登録され、インデックス1ビットモードのインデックステーブルには2つの属性値、インデックス2ビットモードインデックステーブルには4つの属性値が指定される。
【0054】
図12(a)は、属性モードがインデックス1ビットのときの構成である。属性モードには、インデックス1ビットモードを示す01を指定する。属性データには、各ピクセル1ビットのインデックスデータが指定され、画像処理部210でインデックステーブルから各ピクセルの属性値に復元し、復元した属性値に従って画像処理が実行される。
【0055】
図12(b)は、属性モードがインデックス2ビットのときの構成である。属性モードには、インデックス2ビットモードを示す10を指定する。属性データには、各ピクセル2ビットのインデックスデータが指定され、画像処理部210でインデックステーブルから各ピクセルの属性値に復元し、復元した属性値に従って画像処理が実行される。
【0056】
図13は、本実施例を適用したときの一例である。
【0057】
(0,0)のブロックのレンダリング処理において、1ビットのインデックステーブル生成後、インデックステーブルリストに登録し、次の(1.0)のブロックのレンダリング処理においても、同じ1ビットのインデックステーブルを使用している。
【0058】
これにより、さらに属性データを削減することができる。本実施例においては、属性データのビット数を減らすことでデータサイズを削減しているが、さらに可逆圧縮を実行することによってデータサイズを削減することが可能である。
【図面の簡単な説明】
【0059】
【図1】本発明における画像形成装置102のシステム構成の一例を示した図
【図2】本発明における印刷処理のフローチャートを示した図
【図3】実施例1におけるレンダリング処理のフローチャートを示した図
【図4】実施例1における属性データ300と画像データ350のデータ構造図
【図5】実施例1における属性値モードの属性データの一例を示した図
【図6】実施例1におけるインデックスモードの属性データの一例を示した図
【図7】実施例1における8ビットモードの属性データの一例を示した図
【図8】実施例1を適用したときの一例を示した図
【図9】実施例1におけるレンダリング処理のフローチャートを示した図
【図10】実施例2における属性データ400と画像データ450のデータ構造図
【図11】実施例2におけるインデックステーブルリストの一例を示した図
【図12】実施例1におけるインデックスモードの属性データの一例を示した図
【図13】実施例2を適用したときの一例を示した図
【特許請求の範囲】
【請求項1】
外部装置からデータを受信する受信手段(202)と、
前記受信手段により受信したデータを解析する解析手段(S1001)と、
前記解析手段により解析したデータから中間データを生成する中間データ生成手段(S1003)と、
前記中間データ生成手段により生成された中間データから画像データを生成するレンダリング手段(S1140)と、
前記中間データ生成手段により生成された中間データのオブジェクトのうち、分割領域に含まれる全てのオブジェクトについて複数種の属性の中から1つを選択するオブジェクト属性判定手段(S1103)と、
前記オブジェクト属性判定手段により判定したオブジェクト属性の種類数を決定するオブジェクト属性数決定手段(S1104)と、
前記オブジェクト属性数決定手段により決定したオブジェクト属性数に応じて、属性データの複数のデータ形式から1つのデータ形式を決定するデータ形式決定手段(S1108、S1120、S1130)と、
前記データ形式決定手段により決定したデータ形式に従って、属性データ(300)を生成する属性データ生成手段(S1110、S1122、S1132、S1133)と、
前記レンダリング手段により生成された属性データによってイメージデータの画像処理を切り替える画像処理切り替え手段(210)を有することを特徴とする画像形成装置(102)。
【請求項2】
外部装置からデータを受信する受信手段(202)と、
前記受信手段により受信したデータを解析する解析手段(S1001)と、
前記解析手段により解析したデータから中間データを生成する中間データ生成手段(S1003)と、
前記中間データ生成手段により生成された中間データから画像データを生成するレンダリング手段(S1241)と、
前記中間データ生成手段により生成された中間データのオブジェクトのうち、分割領域に含まれる全てのオブジェクトについて複数種の属性の中から1つを選択するオブジェクト属性判定手段(S1203)と、
前記オブジェクト属性判定手段により判定したオブジェクト属性の種類数を決定するオブジェクト属性数決定手段(S1204)と、
前記オブジェクト属性数決定手段により決定したオブジェクト属性数に応じて、属性データの複数のデータ形式から1つのデータ形式を決定するデータ形式決定手段(S1208、S1220、S1230)と、
前記データ形式決定手段により決定したデータ形式のデータが既に使われているデータと同じかどうかを判定するデータ判定手段(S1221、S1231)と、
前記データ形式決定手段により決定したデータ形式と前記データ判定手段の判定結果に従って、属性データ(400)を生成する属性データ生成手段(S1210、S1224、S1234、S1250)と、
前記レンダリング手段により生成された属性データによってイメージデータの画像処理を切り替える画像処理切り替え手段(210)を有することを特徴とする画像形成装置(102)。
【請求項1】
外部装置からデータを受信する受信手段(202)と、
前記受信手段により受信したデータを解析する解析手段(S1001)と、
前記解析手段により解析したデータから中間データを生成する中間データ生成手段(S1003)と、
前記中間データ生成手段により生成された中間データから画像データを生成するレンダリング手段(S1140)と、
前記中間データ生成手段により生成された中間データのオブジェクトのうち、分割領域に含まれる全てのオブジェクトについて複数種の属性の中から1つを選択するオブジェクト属性判定手段(S1103)と、
前記オブジェクト属性判定手段により判定したオブジェクト属性の種類数を決定するオブジェクト属性数決定手段(S1104)と、
前記オブジェクト属性数決定手段により決定したオブジェクト属性数に応じて、属性データの複数のデータ形式から1つのデータ形式を決定するデータ形式決定手段(S1108、S1120、S1130)と、
前記データ形式決定手段により決定したデータ形式に従って、属性データ(300)を生成する属性データ生成手段(S1110、S1122、S1132、S1133)と、
前記レンダリング手段により生成された属性データによってイメージデータの画像処理を切り替える画像処理切り替え手段(210)を有することを特徴とする画像形成装置(102)。
【請求項2】
外部装置からデータを受信する受信手段(202)と、
前記受信手段により受信したデータを解析する解析手段(S1001)と、
前記解析手段により解析したデータから中間データを生成する中間データ生成手段(S1003)と、
前記中間データ生成手段により生成された中間データから画像データを生成するレンダリング手段(S1241)と、
前記中間データ生成手段により生成された中間データのオブジェクトのうち、分割領域に含まれる全てのオブジェクトについて複数種の属性の中から1つを選択するオブジェクト属性判定手段(S1203)と、
前記オブジェクト属性判定手段により判定したオブジェクト属性の種類数を決定するオブジェクト属性数決定手段(S1204)と、
前記オブジェクト属性数決定手段により決定したオブジェクト属性数に応じて、属性データの複数のデータ形式から1つのデータ形式を決定するデータ形式決定手段(S1208、S1220、S1230)と、
前記データ形式決定手段により決定したデータ形式のデータが既に使われているデータと同じかどうかを判定するデータ判定手段(S1221、S1231)と、
前記データ形式決定手段により決定したデータ形式と前記データ判定手段の判定結果に従って、属性データ(400)を生成する属性データ生成手段(S1210、S1224、S1234、S1250)と、
前記レンダリング手段により生成された属性データによってイメージデータの画像処理を切り替える画像処理切り替え手段(210)を有することを特徴とする画像形成装置(102)。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2010−167623(P2010−167623A)
【公開日】平成22年8月5日(2010.8.5)
【国際特許分類】
【出願番号】特願2009−10978(P2009−10978)
【出願日】平成21年1月21日(2009.1.21)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成22年8月5日(2010.8.5)
【国際特許分類】
【出願日】平成21年1月21日(2009.1.21)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]