JP5447219B2 - 印刷データ生成装置、印刷データ生成方法および印刷データ生成プログラム - Google Patents

印刷データ生成装置、印刷データ生成方法および印刷データ生成プログラム Download PDF

Info

Publication number
JP5447219B2
JP5447219B2 JP2010139809A JP2010139809A JP5447219B2 JP 5447219 B2 JP5447219 B2 JP 5447219B2 JP 2010139809 A JP2010139809 A JP 2010139809A JP 2010139809 A JP2010139809 A JP 2010139809A JP 5447219 B2 JP5447219 B2 JP 5447219B2
Authority
JP
Japan
Prior art keywords
color conversion
data
processing
print data
data generation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2010139809A
Other languages
English (en)
Other versions
JP2012000917A (ja
Inventor
正嗣 高口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2010139809A priority Critical patent/JP5447219B2/ja
Publication of JP2012000917A publication Critical patent/JP2012000917A/ja
Application granted granted Critical
Publication of JP5447219B2 publication Critical patent/JP5447219B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本発明は、印刷データ生成装置、印刷データ生成方法および印刷データ生成プログラム
に関する。
近年、フォトブック等のビットマップ画像を多用したデータの印刷が増加している。しかし、ビットマップ画像データのRIP処理(ラスタライズ処理:Raster Image Processing)は、文字データや図形データと比較して時間を要し、また、これにより、印刷速度の低下を引き起こす。また、プリントエンジンの高解像度化も進んでおり、高解像度でのRIP処理を行う必要があり、RIP処理の高速化が厳しい状況である。
そのため、RIP処理に係る言語解析処理、色変換処理、レンダリング処理および印刷処理を複数プロセスで実行することで、RIP処理の高速化を図っている(例えば、特許文献1参照。)。
特開2009−241485号公報
しかし、色変換処理は画素毎に実行されるため、高解像度になると画素数も増えて、処理時間が増加し、色変換処理が律速となる虞があり、この場合、後の処理ができないため、RIP処理速度が低下する問題を有する。
本発明は、上記従来技術に伴う課題を解決するためになされたものであり、色変換処理の高速化が可能である印刷データ生成装置、印刷データ生成方法および印刷データ生成プログラムを提供することを目的とする。
本発明の上記目的は、下記の手段によって達成される。
(1)並列に作動自在の複数の演算部を有する印刷データ生成装置であって、
PDLデータに含まれるオブジェクトの色空間を出力用の色空間に変換する色変換処理を実行するための色変換部を有しており、
前記色変換部は、前記オブジェクトの属性が画像であり、文字および図形でない場合、前記オブジェクトのデータを分割し、分割データの色変換処理を複数の演算部によって並列に実行するための並列処理部を有する
ことを特徴とする印刷データ生成装置。
(2)前記色変換部は、前記オブジェクトのデータ数を閾値と比較するための比較部をさらに有し、
前記並列処理部においては、前記オブジェクトの属性が画像でありかつ前記データ数が閾値以上である場合、前記オブジェクトのデータが分割され、分割データの色変換処理が、複数の演算部によって並列に実行される
ことを特徴とする上記(1)に記載の印刷データ生成装置。
(3)前記閾値は、前記分割データの色変換処理を並列に実行する前記演算部を、協調動作させるためのオーバーヘッドに基づいて設定されることを特徴とする上記(2)に記載の印刷データ生成装置。
(4)前記色変換部においては、担当した分割データの色変換処理を実行している途中である第1の演算部と、担当した分割データの色変換処理が完了した別の演算部が存在する場合、前記第1の演算部に係る色変換されていない分割データが再分割され、再分割データの色変換処理が、前記第1の演算部および前記別の演算部によって並列に実行される
ことを特徴とする上記(1)〜(3)のいずれか1項に記載の印刷データ生成装置。
(5)前記色変換部による色変換処理に先立って、前記PDLデータに含まれるオブジェクトの言語解析処理を実行するための言語解析処理部と、
前記色変換部による色変換処理の後において、色変換されたデータのレンダリング処理を実行するためのレンダリング処理部と、をさらに有しており、
前記言語解析処理部における言語解析処理を実行する演算部と、前記言語解析処理の対象であるページの前ページを対象とする前記レンダリング処理部における前記レンダリング処理を実行する演算部とは、異なっており、前記言語解析処理の言語解析処理および前記レンダリング処理部のレンダリング処理は、並列に実行される
ことを特徴とする上記(1)〜()のいずれか1項に記載の印刷データ生成装置。
(6)前記色変換部による色変換処理の後において、色変換されたデータのレンダリング処理を実行するためのレンダリング処理部をさらに有しており、
前記色変換部において分割データの色変換処理を並列に実行している演算部の1つは、時分割によって制御されており、
前記色変換部における色変換処理の対象であるページの前ページを対象とする前記レンダリング処理部における前記レンダリング処理は、前記演算部の1つによって時分割で実行される
ことを特徴とする上記(1)〜()のいずれか1項に記載の印刷データ生成装置。
(7)並列に作動自在の複数の演算部を有する印刷データ生成装置に適用される印刷データ生成方法であって、
PDLデータに含まれるオブジェクトの色空間を出力用の色空間に変換する色変換処理を実行するステップ(A)を有しており、
前記ステップ(A)は、前記オブジェクトの属性が画像であり、文字および図形でない場合、前記オブジェクトのデータを分割し、分割データの色変換処理を複数の演算部によって並列に実行するステップ(A1)を有する
ことを特徴とする印刷データ生成方法。
(8)前記ステップ(A)は、前記オブジェクトのデータ数を閾値と比較するステップ(A2)をさらに有し、
前記ステップ(A1)においては、前記オブジェクトの属性が画像でありかつ前記データ数が閾値以上である場合、前記オブジェクトのデータが分割され、分割データの色変換処理が、複数の演算部によって並列に実行される
ことを特徴とする上記(7)に記載の印刷データ生成方法。
(9)前記閾値は、前記分割データの色変換処理を並列に実行する前記演算部を、協調動作させるためのオーバーヘッドに基づいて設定されることを特徴とする上記(8)に記載の印刷データ生成方法。
(10)前記ステップ(A)においては、担当した分割データの色変換処理を実行している途中である第1の演算部と、担当した分割データの色変換処理が完了した別の演算部が存在する場合、前記第1の演算部に係る色変換されていない分割データが再分割され、再分割データの色変換が、前記第1の演算部および前記別の演算部によって並列に実行されることを特徴とする上記(7)〜(9)のいずれか1項に記載の印刷データ生成方法。
(11)前記ステップ(A)による色変換処理に先立って、前記PDLデータに含まれるオブジェクトの言語解析処理を実行するステップ(B)と、
前記ステップ(A)による色変換処理の後において、色変換されたデータのレンダリング処理を実行するステップ(C)と、をさらに有しており、
前記ステップ(B)における言語解析処理を実行する演算部と、前記言語解析処理の対象であるページの前ページを対象とする前記ステップ(C)における前記レンダリング処理を実行する演算部とは、異なっており、前記ステップ(B)の言語解析処理および前記ステップ(C)のレンダリング処理は、並列に実行される
ことを特徴とする上記(7)〜(10)のいずれか1項に記載の印刷データ生成方法。
(12)前記ステップ(A)による色変換処理の後において、色変換されたデータのレンダリング処理を実行するステップ(C)をさらに有しており、
前記ステップ(A)において分割データの色変換を並列に実行している演算部の1つは、時分割によって制御されており、
前記ステップ(A)における色変換処理の対象であるページの前ページを対象とする前記ステップ(C)における前記レンダリング処理は、前記演算部の1つによって時分割で実行される
ことを特徴とする上記(7)〜(11)のいずれか1項に記載の印刷データ生成方法。
(13)並列に作動自在の複数の演算部を有する印刷データ生成装置を制御する印刷データ生成プログラムであって、
PDLデータに含まれるオブジェクトの色空間を出力用の色空間に変換する色変換処理を実行する手順(A)を有する処理を、前記印刷データ生成装置に実行させ、
前記手順(A)は、前記オブジェクトの属性が画像であり、文字および図形でない場合、
第1の演算部によって、前記オブジェクトのデータを分割し、1つの分割データの色変換処理を実行する一方、残りの分割データの色変換処理を実行する別の演算部を起動させることにより、前記オブジェクトのデータの色変換処理を複数の演算部によって並列に実行させる手順(A1)を有する
ことを特徴とする印刷データ生成プログラム。
(14)前記手順(A)は、前記オブジェクトのデータ数を閾値と比較する手順(A2)をさらに有し、
前記手順(A1)においては、前記オブジェクトの属性が画像でありかつ前記データ数が閾値以上である場合、前記オブジェクトのデータが分割され、分割データの色変換処理が、複数の演算部によって並列に実行される
ことを特徴とする上記(13)に記載の印刷データ生成プログラム。
(15)前記閾値は、前記分割データの色変換処理を並列に実行する前記演算部を協調動作させるためのオーバーヘッドに基づいて設定されることを特徴とする上記(14)に記載の印刷データ生成プログラム。
(16)前記手順(A)においては、担当した分割データの色変換処理を実行している途中である第1の演算部と、担当した分割データの色変換処理が完了した別の演算部が存在する場合、
前記第1の演算部によって、前記第1の演算部に係る色変換されていない分割データを再分割し、1つの再分割データの色変換処理を実行する一方、前記別の演算部によって残りの再分割データの色変換処理を実行たせるために前記別の演算部を起動させることにより、再分割データの色変換が、前記第1の演算部および前記別の演算部によって並列に実行される
ことを特徴とする上記(13)〜(15)のいずれか1項に記載の印刷データ生成プログラム。
(17)前記印刷データ生成装置に実行させる前記処理は、
前記手順(A)による色変換処理に先立って、前記PDLデータに含まれるオブジェクトの言語解析処理を実行する手順(B)と、
前記手順(A)による色変換処理の後において、色変換されたデータのレンダリング処理を実行する手順(C)と、をさらに有しており、
前記手順(B)における言語解析処理を実行する第1の演算部によって、前記言語解析処理の対象であるページの前ページを対象とする前記手順(C)における前記レンダリング処理を実行するために別の演算部を起動させることにより、
前記手順(B)の言語解析処理および前記手順(C)のレンダリング処理は、並列に実行される
ことを特徴とする上記(13)〜(16)のいずれか1項に記載の印刷データ生成プログラム。
(18)前記印刷データ生成装置に実行させる前記処理は、前記手順(A)による色変換処理の後において、色変換されたデータのレンダリング処理を実行する手順(C)と、をさらに有しており、
前記手順(A)において分割データの色変換を並列に実行している別の演算部の1つは、時分割によって制御されており、
前記手順(A)における色変換処理の対象であるページの前ページを対象とする前記手順(C)における前記レンダリング処理は、前記別の演算部の1つによって時分割で実行される
ことを特徴とする上記(13)〜(17)のいずれか1項に記載の印刷データ生成プログラム。
本発明に係る印刷データ生成装置、印刷データ生成方法および印刷データ生成プログラムによれば、PDLデータに含まれるオブジェクトを分割し、分割データの色変換を複数の演算部によって並列に実行するため、色変換処理を短縮化することが可能である。また、分割の対象となる属性が画像であるオブジェクトにおいては、構成データ(画素)毎に色変換処理を実行する必要があるため、並列実行による効果が顕著となる。つまり、色変換処理の高速化が可能である印刷データ生成装置、印刷データ生成装置および印刷データ生成プログラムを提供することが可能である。
本発明の実施形態に係る画像処理装置を説明するためのブロック図である。 図1に示される画像処理装置が接続されるネットワークの構成を説明するための概略図である。 図1に示されるプリンタコントローラに組み込まれたプログラムの構成およびデータフローを説明するための概略図である。 PDLデータに含まれるオブジェクトを説明するための概念図である。 PostScriptの描画命令の一例を説明するための図表である。 色変換処理の対象となるデータの構成を説明するための概念図である。 CMYK色空間における画素構成を説明するための概念図である。 RGB色空間における画素構成を説明するための概念図である。 色変換処理の対象となるデータの格納構成を説明するための概念図である。 本発明の実施形態に係る印刷データ生成処理方法を説明するためのフローチャートである。 図10に示される色変換処理を説明するためのフローチャートである。 図10に示される色変換処理を説明するためのシーケンスチャートである。 本発明の実施形態に係る変形例1を説明するためのシーケンスチャートである。 本発明の実施形態に係る変形例2を説明するためのシーケンスチャートである。
以下、本発明の実施の形態を、図面を参照しつつ説明する。
図1は、本発明の実施形態に係る画像処理装置を説明するためのブロック図、図2は、図1に示される画像処理装置が接続されるネットワークの構成を説明するための概略図である。
本実施形態に係る画像処理装置100は、プリンタコントローラ120およびプリントエンジン140を有しており、ネットワーク400を経由して接続されるクライアント端末200,300から転送されるプリントジョブを受信して、印刷処理を行うために使用される。
ネットワーク400は、イーサネット(登録商標)、トークンリング、およびFDDI(Fiber−Distributed Data Interface)等の規格によりコンピュータやネットワーク機器同士を接続する構内情報通信網(LAN:Local Area Network)、LAN同士を専用線で接続した広域情報通信網(WAN:Wide Area Network)、インターネット、これらの組み合わせ等の各種のネットワークからなる。ネットワークプロトコルは、例えば、TCP/IP(Transmission Control Protocol/Internet Protocol)である。ネットワーク400に接続される機器の種類および台数は、図2に示される構成に限定されない。
クライアント端末200,300は、本体部、ディスプレイおよび入力装置を有するコンピュータ装置によって構成され、各種のアプリケーションがインストールされている。アプリケーションは、例えば、電子文書を作成するための文書作成プログラムや、電子文書を印刷するためのドライバープログラムである。電子文書の規格は、例えば、XPS(XML Paper Specification)や、PDF(Portable Document Format)である。
ドライバープログラムは、画像処理装置100が対応可能な記述言語形式による印刷データを作成し、これをプリントジョブとしてネットワーク400を介して画像処理装置100に送信する。記述言語形式は、PostScript(登録商標)やPCL(Printer Control Language)等のPDL(ページ記述言語:Page Description Language)である。
プリンタコントローラ120は、クライアント端末200,300から転送されたPDLデータをラスターデータに変換し、前記ラスターデータをプリントエンジン140に転送するために使用される印刷データ生成装置であり、CPU122、RAM124、HDD126、NIC128およびエンジンインターフェース130を有し、これらは、バス134を経由して相互に接続されている。
CPU122は、プログラムにしたがって上記各部の制御や各種の演算処理を実行するマルチコアのプロセッサ等から構成される制御回路であり、プリンタコントローラ120の各機能は、それに対応するプログラムをCPU122が実行することにより発揮される。なお、前記プロセッサは、後述される色変換を並列に実行する演算部である第1コア122Aおよび第2コア122Bを有する。
RAM124は、作業領域として一時的にプログラムおよびデータを記憶する高速のランダムアクセス記憶装置である。HDD126は、プリンタドライバやオペレーティングシステムを含む各種プログラムや各種データを格納する大容量のランダムアクセス記憶装置である。HDD126に格納されるプログラムには、クライアント端末200,300から転送されたPDLデータをRIP処理(ラスタライズ処理:Raster Image Processing)するためのプログラムが含まれる。なお、プログラムは、ソリッドステートドライブ(SSD:Solid state drive)やコンパクトフラッシュ(CF:CompactFlash)等の半導体メモリを使用した記憶装置に適宜格納することも可能である。
NIC128は、所謂LANボードからなる通信部であり、ネットワーク400に接続するための通信機能をプリンタコントローラ120に追加する拡張装置である。
エンジンインターフェース130は、プリントエンジン140と通信するための専用インタフェース(VIF:ビデオインタフェース)であり、転送用バッファ132が接続されており、RIP処理が完了したラスターデータ(ページデータ)を、順次、プリントエンジン140へ転送するために使用される。なお、RS−232(Recommended Standard 232)C、IEEE(Institute of Electrical and Electronics Engineers))1394、USB(Universal Serial Bus)等のシリアルインタフェース、IEEE1284等のパラレルインタフェース、独自規格によるインタフェースを、VIFの代わりに適宜適用することも可能である。なお、転送用バッファ132は、ラスターデータを、プリントエンジン140に転送する際に、一時的に保存するための専用バッファである。
プリントエンジン140は、コピー機能、プリンタ機能およびスキャン機能を有するMFP(Multi−Function Peripheral)からなり、例えば、プリンタコントローラ120から転送されるラスターデータを印刷するために使用され、制御部142、原稿読み取り装置144、印刷装置146、記憶装置148、操作部150およびエンジンインターフェース152を有し、これらは、バス154を経由して相互に接続されている。
制御部142は、プログラムにしたがって上記各部の制御や各種の演算処理を実行するマイクロプロセッサ等から構成される制御回路であり、プリントエンジン140の各機能は、それに対応するプログラムを制御部142が実行することにより発揮される。
原稿読み取り装置144は、原稿画像から画像データを生成するためのCCD(Charge Coupled Device)画像センサを備えているスキャナからなり、ADF(自動原稿搬送装置:Auto Document Feeder)を有する。ADFは、単数もしくは複数枚の原稿を、一枚ずつ所定の読み取り位置に搬送するために使用される。
印刷装置146は、帯電、露光、現像、転写および定着工程を含む電子写真式プロセス等の作像プロセスを用いて、記録媒体である用紙上に画像を形成するエンジンを有しており、プリンタコントローラ120や原稿読み取り装置144からのデータを、印刷するために使用され、用紙を供給するための給紙トレイおよび手差しトレイを有する。
記憶装置148は、各種プログラムおよび各種データを記憶するリードオンリーメモリ(ROM)から構成される読取り専用の記憶装置と、作業領域として一時的にプログラムおよびデータを記憶する高速のRAMから構成されるランダムアクセス記憶装置と、プリンタドライバやオペレーティングシステムを含む各種プログラムや各種データを記憶する大容量記憶装置とが適宜組み合わされて構成されており、例えば、プリンタコントローラ120や原稿読み取り装置144からのデータを保存するために使用される。
操作部150は、液晶タッチパネルおよびキーボードを有し、プリントジョブの進行状況やエラーの発生状況を表示すると共に、種々の操作(入力)が可能となるように構成されており、設定をユーザに提示するための出力装置と、ユーザ指示を取得するための入力装置とを兼ねている。キーボードは、コピー枚数等を設定するテンキー、動作の開始を指示するスタートキー、動作の停止を指示するストップキー等からなる複数のキーを有している。
エンジンインターフェース152は、プリンタコントローラ120と通信するための専用インタフェース(VIF:ビデオインタフェース)であり、エンジンインターフェース130と接続される。
次に、プリンタコントローラ120を詳述する。
図3は、図1に示されるプリンタコントローラに組み込まれたプログラムの構成およびデータフローを説明するための概略図、図4は、PDLデータに含まれるオブジェクトを説明するための概念図、図5は、PostScriptの描画命令の一例を説明するための図表、図6は、色変換処理の対象となるデータの構成を説明するための概念図、図7および図8は、CMYK色空間およびRGB色空間における画素構成を説明するための概念図、図9は、色変換処理の対象となるデータの格納構成を説明するための概念図である。
プリンタコントローラ120に組み込まれているプログラムは、データ受信部、インタプリタ部、色変換部および画像転送部を有しており、HDD126に保存され、起動時にRAM124に展開されて実行される。
データ受信部は、NIC128経由で受信したクライアント端末200,300からのPDLデータをRAM124に格納し、インタプリタ部に転送するモジュールである。PDLデータは、例えば、図4に示されるように、文字(Text)オブジェクト、図形(Graphics)オブジェクトおよび画像(Image)オブジェクトを含んでいる。なお、文字オブジェクト、図形オブジェクトおよび画像オブジェクトは、属性が文字、図形および画像であるオブジェクトである。例えば、低解像度の画像オブジェクトは、100dpi(dot per inch)以下のGIF(Graphics Interchange Format)画像であり、高解像度の画像オブジェクトは、300dpi以上の写真画像である。
PDLデータの描画命令は、通常、文字、図形および画像毎に異なる描画コマンドで記述される。例えば、図5に示されるように、描画コマンド「(text)show」は、文字を描画するための命令であり、文字列の後のshowコマンドを受けて、インタプリタ部は、文字を描画する。描画コマンド「10 10 100 100 rectfill」は、図形を描画するための命令であり、位置とサイズ指定の後に矩形を描画するためのコマンドが配置されている。描画コマンド「image 5152535455…」は、画像を描画するための命令である。したがって、PDLデータの描画命令のコマンドを解析することによって、PDLデータに含まれる入力オブジェクトの属性を判別することができる。
インタプリタ部は、PDLデータの言語解析処理を実行し、PDLデータに含まれるオブジェクトをラスターデータに展開するモジュールであり、前記ラスターデータは、RAM124のフレームメモリに記憶される。
色変換部は、インタプリタ部による展開の際に、入力オブジェクト(受信したPDLデータのオブジェクト)の色空間を出力用の色空間に変換するためのモジュールである。なお、色変換部においては、処理の高速化を図るため、入力オブジェクトの属性および閾値に基づき、入力オブジェクトが分割され、第1コア122Aおよび第2コア122Bに係る2つのスレッドで色変換処理が並列に実行される。
入力オブジェクトの色は、RGB(赤(Red)、緑(Green)、青(Blue))、Gray Scale、CMYK(シアン(Cyan)、マゼンタ(Magenta)、イエロー(Yellow)、キー(Key))、CIE(Commision Internationale de l’Eclairage)色空間等の色空間で指定されるが、プリントエンジン140のサポートする色空間はCMYKのみであるため、入力色空間からCMYKへの色変換処理を実行する必要がある。
色変換処理には、例えば、ICC(International Color Consortium)プロファイルを使用した方法や、PostScript言語ではCSA(Color Space Array)/CRD(Color Rendering Dictionary)を使用した方法が適用される。
色変換処理の対象となる画像データは、例えば、6x5のサイズを有する30個の画素で構成され(図6参照)、4byte分のデータからなるCMYK色空間で指定され(図7参照)、RAM124に配置される(図7参照)。なお、RGB色空間で指定される場合は、3byteとなる(図8参照)。また、色変換処理の対象となる画像データは、CMYKの順に、図6に示される1〜30の画素の順かつCMYKの順に、RAM124のメモリ上に格納される(図9参照)。
画像転送部は、RAM124のフレームメモリに展開されたラスターデータを、エンジンインターフェース130を経由してプリントエンジン140に転送するモジュールである。
次に、本発明の実施形態に係る印刷データ生成処理方法を説明する。
図10は、本発明の実施形態に係る印刷データ生成処理方法を説明するためのフローチャートである。なお、図10に示されるフローチャートにより示されるアルゴリズムは、HDD126にプログラムとして記憶されており、CPU122によって実行される。
本実施形態に係る印刷データ生成処理方法においては、まず、クライアント端末200,300からのプリントジョブをNIC128経由で受信すると、プリントジョブに含まれるPDLデータが、RAM124の所定領域に格納され(ステップS01)、言語解析処理が実行される(ステップS02)。言語解析処理においては、PDLデータに含まれるコマンドを解析し、入力オブジェクトの属性(文字、図形、画像)やデータ数(解像度)等が検出される。
そして、入力オブジェクトの色変換処理が実行される(ステップS03)。色変換処理においては、処理の高速化を図るため、入力オブジェクトの属性および閾値に基づき、入力オブジェクトが分割され、第1コア122Aおよび第2コア122Bに係る2つのスレッドで色変換処理が並列に実行される。
次に、1ページ分の言語解析処理および色変換処理が完了したか否かが判断される(ステップS04)。1ページ分の言語解析処理および色変換処理が完了していないと判断される場合(ステップS04:No)、処理はステップS02にリターンする。1ページ分の言語解析処理および色変換処理が完了したと判断される場合(ステップS04:Yes)、レンダリング処理が実行される(ステップS05)。レンダリング処理においては、1ページ分のラスターデータが生成され、RAM124のフレームメモリに展開される(ステップS05)。
そして、画像転送処理が実行される(ステップS06)。画像転送処理においては、ラスターデータは、転送用バッファ132に一旦格納された後で、エンジンインターフェース130,152を経由して、順次、プリントエンジン140へ転送され、印刷装置146によって、用紙に印刷される。なお、画像転送には、1ページ分のラスターデータが生成されてから転送する方法あるはバンド単位で生成されたラスターデータを順次転送する方式が適宜適用される。
次に、入力オブジェクトの最終ページであるか否かが判断される(ステップS07)。最終ページでないと判断される場合(ステップS07:No)、処理はステップS02にリターンする。最終ページであると判断される場合(ステップS07:Yes)、処理は、終了する。
なお、PDLデータ(入力オブジェクト)が複数ページからなる場合、レンダリング処理と並列に、レンダリング処理の対象であるページの次のページを対象とする言語解析処理および色変換処理を実行することも可能である。
次に、色変換処理を詳述する
図11は、図10に示される色変換処理を説明するためのフローチャート、図12は、図10に示される色変換処理を説明するためのシーケンスチャートである。なお、図11に示されるフローチャートにより示されるアルゴリズムは、HDD126にプログラムとして記憶されており、CPU122によって実行される。また、後述するマルチスレッド処理以外の処理においては、CPU122の第1コア122Aによって実行される。
まず、入力オブジェクト(受信したPDLデータのオブジェクト)の属性が、PDLデータの描画命令のコマンドに基づき、画像であるか否かが判断される(ステップS11)。入力オブジェクトの属性が画像でない(文字オブジェクトまたは図形オブジェクトである)と判断される場合(ステップS11:No)、処理はステップS14に進む。
入力オブジェクトの属性が画像であると判断される場合(ステップS11:Yes)、データ数(解像度)が閾値以上であるか否かが判断される(ステップS12)。データ数が閾値以上である(高解像度の画像オブジェクトである)と判断される場合(ステップS12:Yes)、処理はステップS13に進む。入力オブジェクトのデータ数が閾値未満である(低解像度の画像オブジェクトである)と判断される場合(ステップS12:No)、処理はステップS14に進む。
ステップS13においては、高解像度の画像オブジェクトに対するマルチスレッド処理が実行される。マルチスレッド処理においては、画像オブジェクトのデータが2分割され、第1コア122Aに係るスレッド(親スレッド)によって、第2コア122Bに係るスレッド(子スレッド)が起動され、2分の1のデータに対応する色変換1および色変換2が、第1コア122Aおよび第2コア122Bによって並列に実行される(図12参照)。例えば、画像オブジェクトの1から15の画素は、親スレッドによる色変換1が適用され、16から30の画素は、子スレッドによる色変換2が適用される(図9参照および図12参照)。
これは、画像オブジェクトは、含まれる全画素の色変換処理が必要になるため、画像オブジェクトのデータを分割し、2つのスレッドで処理を並列に実行することにより、処理の高速化を図ることが容易であるためである。なお、色変換処理を2つのスレッド(第1コア122Aおよび第2コア122B)で協調動作させるために必要であるスレッド間通信は、例えば、オペレーティングシステム内に実装されるメッセージキューが利用される。また、画像オブジェクトのデータは、等分に分割する形態に限定されない。
ステップS14においては、文字オブジェクト、図形オブジェクトおよび低解像度の画像オブジェクトに対するシングルスレッド処理が実行される。シングルスレッド処理においては、第1コア122Aのみを利用するスレッドによる色変換1が単独で実行される(図12参照)。
これは、文字および図形オブジェクトは、1画素分だけ色変換を行えば後は同じ色で塗りつぶすことができるため、文字および図形オブジェクトを分割し、複数のスレッドにより並列に実行しても、処理の高速化を図ることが困難であるためである。
色変換処理を複数のスレッドで実行するか否かの閾値は、スレッド間通信のためのオーバーヘッドを考慮して決定される。例えば、色変換処理を実行する画素数が少ない場合、並列処理による短縮分より、スレッド間通信に必要な所要時間が大きくなり、処理の高速化を図れない虞がある。そこで、色変換処理の対象であるデータの画素数に応じて、一つのスレッドで行うか、分割して行うかの判断を実施することにより、確実な処理の高速化を図ることが可能である。つまり、並列実行による短縮分より、協調動作させるためのオーバーヘッドが大きくなるオブジェクトを、並列実行の対象から排除している。なお、閾値は、スレッド間通信のためのオーバーヘッドを考慮する形態に限定されない。
次に、本発明の実施形態に係る変形例1および変形例2を説明する。
図13は、本発明の実施形態に係る変形例1を説明するためのシーケンスチャートである。
高解像度の画像オブジェクトに係る色変換処理は、2つのスレッド(親スレッドによる色変換1および子スレッドによる色変換2)によって並列に実行されるが、使用状況等によっては、一方の処理が先に終わる場合がある。この際、色変換処理が完了していないデータ数が閾値以上である場合、未処理のデータを再分割し、当該再分割データを2つのスレッドによって、並列に実行することも可能である。例えば、二分の1のデータを親スレッドおよび子スレッドがそれぞれ処理する図13に示される例においては、処理が継続中の親スレッドに対して、子スレッドが処理の完了を通知することにより、親スレッドは、未処理であるデータ(四分の1のデータ)を2分割し、八分の1のデータを親スレッドおよび子スレッドがそれぞれ処理することになる。この場合、八分の1のデータの色変換処理を実行するための処理時間から、スレッド間通信のためのオーバーヘッドを減じた値が、実質的な短縮時間となる。
図14は、本発明の実施形態に係る変形例2を説明するためのシーケンスチャートである。
第2コア122Bは、マルチスレッド処理における子スレッドの起動に適用される形態に限定されない。例えば、第1コア122Aによって言語解析処理が実行されている際に、言語解析処理の対象であるページの前ページ(言語解析処理および色変換処理が完了済み)に対するレンダリング処理を、第2コア122Bに割り当てることも可能である。
また、色変換処理においてマルチスレッド処理が実行される場合、第2コア122Bを時分割に利用することで、色変換処理のための子スレッドと、レンダリング処理のためのスレッドとを実質的に並列に実行することが可能である。
以上のように、本実施の形態において、PDLデータに含まれるオブジェクトを分割し、分割データの色変換を複数の演算部によって並列に実行するため、色変換処理を短縮化することが可能である。また、分割の対象となる属性が画像であるオブジェクトにおいては、構成データ(画素)毎に色変換処理を実行する必要があるため、並列実行による効果が顕著となる。つまり、色変換処理の高速化が可能である印刷データ生成装置、印刷データ生成装置および印刷データ生成プログラムを提供することが可能である。
なお、並列に作動自在の複数の演算部は、マルチコアのプロセッサを適用する形態に限定されず、複数のシングルコアのプロセッサを協調動作させることによって構成することも可能である。また、コア数が3以上のプロセッサを適用することで、色変換処理を3スレッド以上で並列に実行することも可能である。色変換の並列処理は、スレッドを適用する形態に限定されず、例えば、プロセス単位で実行する形態を適用することも可能である。
本発明は、上述した実施の形態に限定されるものではなく、特許請求の範囲で種々改変することができる。例えば、プリンタコントローラ(印刷データ生成装置)は、プリントエンジンと別体となっている形態に限定されず、また、プリントエンジンは、特にMFPに限定されない。
なお、本発明に係る手段、方法およびプログラムは、専用のハードウェア回路によっても実現することも可能である。また、プログラムされたコンピュータ装置によって本発明を実現する場合、コンピュータ装置を動作させるプログラムは、USBメモリやCD−ROM(Compact Disc Read Only Memory)等のコンピュータ読み取り可能な記録媒体によって提供したり、記録媒体によらず、インターネット等のネットワークを介してオンラインで提供したりすることも可能である。この場合、プログラムは、通常、コンピュータ装置のハードディスク等のランダムアクセス記憶装置に送信されて記憶される。また、プログラムは、単独のアプリケーションソフトウェアとして提供されてもよいし、コンピュータ装置の一機能としてそのコンピュータ装置のソフトウェアに組み込むことも可能である。
100 画像処理装置、
120 プリンタコントローラ、
122 CPU、
122A 第1コア、
122B 第2コア、
124 RAM、
126 HDD、
128 NIC、
130 エンジンインターフェース、
132 転送用バッファ、
134 バス、
140 プリントエンジン、
142 制御部、
144 原稿読み取り装置、
146 印刷装置、
148 記憶装置、
150 操作部、
152 エンジンインターフェース、
154 バス、
200,300 クライアント端末、
400 ネットワーク。

Claims (18)

  1. 並列に作動自在の複数の演算部を有する印刷データ生成装置であって、
    PDLデータに含まれるオブジェクトの色空間を出力用の色空間に変換する色変換処理を実行するための色変換部を有しており、
    前記色変換部は、前記オブジェクトの属性が画像であり、文字および図形でない場合、前記オブジェクトのデータを分割し、分割データの色変換処理を複数の演算部によって並列に実行するための並列処理部を有する
    ことを特徴とする印刷データ生成装置。
  2. 前記色変換部は、前記オブジェクトのデータ数を閾値と比較するための比較部をさらに有し、
    前記並列処理部においては、前記オブジェクトの属性が画像でありかつ前記データ数が閾値以上である場合、前記オブジェクトのデータが分割され、分割データの色変換処理が、複数の演算部によって並列に実行される
    ことを特徴とする請求項1に記載の印刷データ生成装置。
  3. 前記閾値は、前記分割データの色変換処理を並列に実行する前記演算部を、協調動作させるためのオーバーヘッドに基づいて設定されることを特徴とする請求項2に記載の印刷データ生成装置。
  4. 前記色変換部においては、担当した分割データの色変換処理を実行している途中である第1の演算部と、担当した分割データの色変換処理が完了した別の演算部が存在する場合、前記第1の演算部に係る色変換されていない分割データが再分割され、再分割データの色変換処理が、前記第1の演算部および前記別の演算部によって並列に実行される
    ことを特徴とする請求項1〜3のいずれか1項に記載の印刷データ生成装置。
  5. 前記色変換部による色変換処理に先立って、前記PDLデータに含まれるオブジェクトの言語解析処理を実行するための言語解析処理部と、
    前記色変換部による色変換処理の後において、色変換されたデータのレンダリング処理を実行するためのレンダリング処理部と、をさらに有しており、
    前記言語解析処理部における言語解析処理を実行する演算部と、前記言語解析処理の対象であるページの前ページを対象とする前記レンダリング処理部における前記レンダリング処理を実行する演算部とは、異なっており、前記言語解析処理の言語解析処理および前記レンダリング処理部のレンダリング処理は、並列に実行される
    ことを特徴とする請求項1〜のいずれか1項に記載の印刷データ生成装置。
  6. 前記色変換部による色変換処理の後において、色変換されたデータのレンダリング処理を実行するためのレンダリング処理部をさらに有しており、
    前記色変換部において分割データの色変換処理を並列に実行している演算部の1つは、時分割によって制御されており、
    前記色変換部における色変換処理の対象であるページの前ページを対象とする前記レンダリング処理部における前記レンダリング処理は、前記演算部の1つによって時分割で実行される
    ことを特徴とする請求項1〜のいずれか1項に記載の印刷データ生成装置。
  7. 並列に作動自在の複数の演算部を有する印刷データ生成装置に適用される印刷データ生成方法であって、
    PDLデータに含まれるオブジェクトの色空間を出力用の色空間に変換する色変換処理を実行するステップ(A)を有しており、
    前記ステップ(A)は、前記オブジェクトの属性が画像であり、文字および図形でない場合、前記オブジェクトのデータを分割し、分割データの色変換処理を複数の演算部によって並列に実行するステップ(A1)を有する
    ことを特徴とする印刷データ生成方法。
  8. 前記ステップ(A)は、前記オブジェクトのデータ数を閾値と比較するステップ(A2)をさらに有し、
    前記ステップ(A1)においては、前記オブジェクトの属性が画像でありかつ前記データ数が閾値以上である場合、前記オブジェクトのデータが分割され、分割データの色変換処理が、複数の演算部によって並列に実行される
    ことを特徴とする請求項7に記載の印刷データ生成方法。
  9. 前記閾値は、前記分割データの色変換処理を並列に実行する前記演算部を、協調動作させるためのオーバーヘッドに基づいて設定されることを特徴とする請求項8に記載の印刷データ生成方法。
  10. 前記ステップ(A)においては、担当した分割データの色変換処理を実行している途中である第1の演算部と、担当した分割データの色変換処理が完了した別の演算部が存在する場合、前記第1の演算部に係る色変換されていない分割データが再分割され、再分割データの色変換が、前記第1の演算部および前記別の演算部によって並列に実行される
    ことを特徴とする請求項7〜9のいずれか1項に記載の印刷データ生成方法。
  11. 前記ステップ(A)による色変換処理に先立って、前記PDLデータに含まれるオブジェクトの言語解析処理を実行するステップ(B)と、
    前記ステップ(A)による色変換処理の後において、色変換されたデータのレンダリング処理を実行するステップ(C)と、をさらに有しており、
    前記ステップ(B)における言語解析処理を実行する演算部と、前記言語解析処理の対象であるページの前ページを対象とする前記ステップ(C)における前記レンダリング処理を実行する演算部とは、異なっており、前記ステップ(B)の言語解析処理および前記ステップ(C)のレンダリング処理は、並列に実行される
    ことを特徴とする請求項7〜10のいずれか1項に記載の印刷データ生成方法。
  12. 前記ステップ(A)による色変換処理の後において、色変換されたデータのレンダリング処理を実行するステップ(C)をさらに有しており、
    前記ステップ(A)において分割データの色変換を並列に実行している演算部の1つは、時分割によって制御されており、
    前記ステップ(A)における色変換処理の対象であるページの前ページを対象とする前記ステップ(C)における前記レンダリング処理は、前記演算部の1つによって時分割で実行される
    ことを特徴とする請求項7〜11のいずれか1項に記載の印刷データ生成方法。
  13. 並列に作動自在の複数の演算部を有する印刷データ生成装置を制御する印刷データ生成プログラムであって、
    PDLデータに含まれるオブジェクトの色空間を出力用の色空間に変換する色変換処理を実行する手順(A)を有する処理を、前記印刷データ生成装置に実行させ、
    前記手順(A)は、前記オブジェクトの属性が画像であり、文字および図形でない場合、
    第1の演算部によって、前記オブジェクトのデータを分割し、1つの分割データの色変換処理を実行する一方、残りの分割データの色変換処理を実行する別の演算部を起動させることにより、前記オブジェクトのデータの色変換処理を複数の演算部によって並列に実行させる手順(A1)を有する
    ことを特徴とする印刷データ生成プログラム。
  14. 前記手順(A)は、前記オブジェクトのデータ数を閾値と比較する手順(A2)をさらに有し、
    前記手順(A1)においては、前記オブジェクトの属性が画像でありかつ前記データ数が閾値以上である場合、前記オブジェクトのデータが分割され、分割データの色変換処理が、複数の演算部によって並列に実行される
    ことを特徴とする請求項13に記載の印刷データ生成プログラム。
  15. 前記閾値は、前記分割データの色変換処理を並列に実行する前記演算部を協調動作させるためのオーバーヘッドに基づいて設定されることを特徴とする請求項14に記載の印刷データ生成プログラム。
  16. 前記手順(A)においては、担当した分割データの色変換処理を実行している途中である第1の演算部と、担当した分割データの色変換処理が完了した別の演算部が存在する場合、
    前記第1の演算部によって、前記第1の演算部に係る色変換されていない分割データを再分割し、1つの再分割データの色変換処理を実行する一方、前記別の演算部によって残りの再分割データの色変換処理を実行たせるために前記別の演算部を起動させることにより、再分割データの色変換が、前記第1の演算部および前記別の演算部によって並列に実行される
    ことを特徴とする請求項13〜15のいずれか1項に記載の印刷データ生成プログラム。
  17. 前記印刷データ生成装置に実行させる前記処理は、
    前記手順(A)による色変換処理に先立って、前記PDLデータに含まれるオブジェクトの言語解析処理を実行する手順(B)と、
    前記手順(A)による色変換処理の後において、色変換されたデータのレンダリング処理を実行する手順(C)と、をさらに有しており、
    前記手順(B)における言語解析処理を実行する第1の演算部によって、前記言語解析処理の対象であるページの前ページを対象とする前記手順(C)における前記レンダリング処理を実行するために別の演算部を起動させることにより、
    前記手順(B)の言語解析処理および前記手順(C)のレンダリング処理は、並列に実行される
    ことを特徴とする請求項13〜16のいずれか1項に記載の印刷データ生成プログラム。
  18. 前記印刷データ生成装置に実行させる前記処理は、前記手順(A)による色変換処理の後において、色変換されたデータのレンダリング処理を実行する手順(C)と、をさらに有しており、
    前記手順(A)において分割データの色変換を並列に実行している別の演算部の1つは、時分割によって制御されており、
    前記手順(A)における色変換処理の対象であるページの前ページを対象とする前記手順(C)における前記レンダリング処理は、前記別の演算部の1つによって時分割で実行される
    ことを特徴とする請求項13〜17のいずれか1項に記載の印刷データ生成プログラム。
JP2010139809A 2010-06-18 2010-06-18 印刷データ生成装置、印刷データ生成方法および印刷データ生成プログラム Expired - Fee Related JP5447219B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010139809A JP5447219B2 (ja) 2010-06-18 2010-06-18 印刷データ生成装置、印刷データ生成方法および印刷データ生成プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010139809A JP5447219B2 (ja) 2010-06-18 2010-06-18 印刷データ生成装置、印刷データ生成方法および印刷データ生成プログラム

Publications (2)

Publication Number Publication Date
JP2012000917A JP2012000917A (ja) 2012-01-05
JP5447219B2 true JP5447219B2 (ja) 2014-03-19

Family

ID=45533443

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010139809A Expired - Fee Related JP5447219B2 (ja) 2010-06-18 2010-06-18 印刷データ生成装置、印刷データ生成方法および印刷データ生成プログラム

Country Status (1)

Country Link
JP (1) JP5447219B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6063857B2 (ja) * 2013-12-11 2017-01-18 京セラドキュメントソリューションズ株式会社 画像形成システム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4442899B2 (ja) * 2004-06-22 2010-03-31 キヤノン株式会社 画像処理装置及び画像処理方法
JP4408836B2 (ja) * 2005-05-30 2010-02-03 キヤノン株式会社 画像処理装置及びその制御方法、プログラム
JP5141338B2 (ja) * 2008-03-31 2013-02-13 カシオ電子工業株式会社 印刷装置

Also Published As

Publication number Publication date
JP2012000917A (ja) 2012-01-05

Similar Documents

Publication Publication Date Title
JP4529148B2 (ja) 印刷制御プログラム、印刷制御装置及び画像形成装置並びに印刷制御方法
US8780408B2 (en) Image processing apparatus, image processing method and recording medium
JP2010033545A (ja) 複数のモードによる色の混合のシステム及び方法
JP2013256073A (ja) データ生成装置、画像形成装置およびデータ生成プログラム
JP2013052615A (ja) 画像形成装置、描画処理制御プログラム及び描画処理制御方法
EP3032498B1 (en) Image processing apparatus, image processing method, and a program
JP5447219B2 (ja) 印刷データ生成装置、印刷データ生成方法および印刷データ生成プログラム
JP6558888B2 (ja) 装置、印刷装置、印刷の制御方法及びプログラム
JP2014127923A (ja) 画像処理プログラム、画像処理装置、および画像処理装置の制御方法
US10841459B2 (en) Image forming with decompression processing for band data of first and second color components
JP5299253B2 (ja) 画像処理装置および画像処理方法
US8437046B2 (en) Image processing apparatus and method for outputting an image subjected to pseudo-halftone processing
JP5202265B2 (ja) 画像処理装置、プログラム及び画像処理装置の制御方法
JP5861689B2 (ja) 情報処理装置、情報処理方法、情報処理プログラムおよび記録媒体
US8995019B2 (en) Image processing apparatus, image processing method, and non-transitory computer readable medium
JP5471696B2 (ja) 画像処理装置、及び画像処理プログラム
US20210064304A1 (en) Information processing apparatus, print control method, and recording medium
JP2011228987A (ja) 画像処理装置及び画像処理プログラム
JP4421646B2 (ja) 画像処理装置、描画データ処理方法及び該方法を実行するためのプログラム
JP2006218819A (ja) 画像形成装置、画像処理装置、プログラムおよび画像処理方法
US9454719B2 (en) Print control apparatus, print control method, and non-transitory computer readable medium
JP6264757B2 (ja) 画像形成装置、画像形成システム、画像形成装置の制御方法、及び画像形成装置の制御プログラム
JP2010178012A (ja) 画像処理システムおよび画像処理方法
JP2017123041A (ja) 印刷制御装置及び印刷制御プログラム並びに印刷制御方法
JP2012018550A (ja) 画像処理装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121220

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20130415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131022

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131111

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131203

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131216

R150 Certificate of patent or registration of utility model

Ref document number: 5447219

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees