JP6404865B2 - 乗算済みデータにおける色変換を支援する方法 - Google Patents

乗算済みデータにおける色変換を支援する方法 Download PDF

Info

Publication number
JP6404865B2
JP6404865B2 JP2016132139A JP2016132139A JP6404865B2 JP 6404865 B2 JP6404865 B2 JP 6404865B2 JP 2016132139 A JP2016132139 A JP 2016132139A JP 2016132139 A JP2016132139 A JP 2016132139A JP 6404865 B2 JP6404865 B2 JP 6404865B2
Authority
JP
Japan
Prior art keywords
color
color data
multiplied
data
unmultiplied
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.)
Active
Application number
JP2016132139A
Other languages
English (en)
Other versions
JP2017050851A (ja
Inventor
ダレル イー. ベラート,
ダレル イー. ベラート,
Original Assignee
コニカ ミノルタ ラボラトリー ユー.エス.エー.,インコーポレイテッド
コニカ ミノルタ ラボラトリー ユー.エス.エー.,インコーポレイテッド
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 コニカ ミノルタ ラボラトリー ユー.エス.エー.,インコーポレイテッド, コニカ ミノルタ ラボラトリー ユー.エス.エー.,インコーポレイテッド filed Critical コニカ ミノルタ ラボラトリー ユー.エス.エー.,インコーポレイテッド
Publication of JP2017050851A publication Critical patent/JP2017050851A/ja
Application granted granted Critical
Publication of JP6404865B2 publication Critical patent/JP6404865B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/6016Conversion to subtractive colour signals
    • H04N1/6022Generating a fourth subtractive colour signal, e.g. under colour removal, black masking
    • H04N1/6025Generating a fourth subtractive colour signal, e.g. under colour removal, black masking using look-up tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/603Colour correction or control controlled by characteristics of the picture signal generator or the picture reproducer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/74Circuits for processing colour signals for obtaining special effects
    • H04N9/76Circuits for processing colour signals for obtaining special effects for mixing of colour signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/6016Conversion to subtractive colour signals
    • H04N1/6022Generating a fourth subtractive colour signal, e.g. under colour removal, black masking

Description

本発明は乗算済みデータにおける色変換を支援する方法に関する。
パーソナルコンピューター(PC)やプリンターシステム等、異なるコンピューティングシステムにわたって電子文書や画像のカラーデータを扱う際に色空間変換が多くの場合必要とされる。一般に、コンピューティングシステムに応じた適切な色空間が選択される。例えば、PCのモニター上で電子文書や画像を表示する場合はRGB色空間が通常用いられ、紙に印刷データを出力するプリンターシステムにおいてはCMYK色空間が用いられる。よって、プリンターシステムは印刷前に印刷データをRGBからCMYKに変換する必要がある。
色データによっては色空間変換の前か後に追加の変換が必要となる。このような色データは色値(例えば、RGB色空間の赤、緑、及び青)に加えて通常不透明度チャンネルとして用いられるアルファチャンネル値(例えば、0−100%)を有しうる。透明度を表すために、各色値はアルファチャンネル値で乗算される。一般に、不透明度を有する同じ色を表すのに二つの表現が知られている、そのままのものと乗算済みのものである。
そのままの表現においては、色値(つまり、赤、緑、及び青)はアルファチャンネルで乗算されない。一方、乗算済みの表現においては、色値はアルファ値で予め乗算される。例えば、電子文書のRGB色空間(RGB=255,0,0)における50%透明(アルファ=127)の赤ピクセルが指定された場合、乗算済み色データは実際にはRGBa=(127,0,0,127)となる。
しかし、従来の色管理モジュールは厳密には各色を一つの色空間から別の色空間へ変換することを中心に実行する。よって、乗算済みの色を色管理モジュールに入力した結果、誤った出力が得られる可能性がある。上述の例をさらに説明すると、半透明の乗算済み赤ピクセルの色を変換するには色管理モジュールにRGB=(127,0,0)を入力することを必要とする。意図した色は純赤色だが、色変換の結果得られる色データは新しい色空間において実際は暗い赤色である。よって、色変換を必要とする乗算済み入力データはまず「未乗算済み」にする必要がある。また、色データが乗算済みであることが必要となるアプリケーションにおいて、変換済み色データは「再乗算済み」にする必要がある。
従来、乗算済み色データをRGBa(RGB+アルファチャンネル)からCMYKa(CMYK+アルファチャンネル)への色空間変換を実行する際に、以下の工程が実行された。
−ステップ1:すべての色ピクセル(RGBa)を未乗算済みの状態にして従来の色変換モジュールが求める色データの表現を再現する。
−ステップ2:すべての色ピクセルを従来の色変換モジュールへ送り、色をRGBaからCMYKaへ変換する。
−ステップ3:データに実行する追加の処理において乗算済みの状態が求められている場合、すべての色ピクセルを再乗算済みの状態にして乗算済み(CMYKa)の色データを再現する。
「未乗算済み」ステップ(ステップ1)及び「再乗算済み」ステップ(ステップ3)にはCPUに大きな負担がかからないが、メモリーを大幅に使用する。まず、コンピューティングシステムは4つのチャンネル(RGBa)のスキャンライン全体を3つのチャンネル(RGB)の異なるバッファにして、「未乗算済み」状態にする必要がある。これにはメモリーに一度アクセスし、スキャンラインの各ピクセルに読み書きをする必要がある。次に、色管理モジュールは3つのチャンネル(RGB)のスキャンライン全体を4つのチャンネル(CMYK)の異なるバッファに変換し、再びメモリーに一度アクセスし、各ピクセルに読み書きする。続いて、3つ目のパスが必要となる可能性があり、4つのチャンネル(CMYK)のスキャンライン全体を5つのチャンネル(CMYKa)の異なるバッファにして「再乗算済み」状態にし、これには3度目のメモリーへのアクセスを実行し、スキャンラインの各ピクセルに読み書きする。
計算は高価ではないが、3つのステップを実行する変換には過度のメモリーへのアクセスが必要となり、これは色変換を実行するシステムのパフォーマンスに悪影響を及ぼす。
一般に、本発明は色データを一の色空間から別の色空間へ変換する方法に関する。
本発明の一側面は、文書データに関する色データを変換する方法であって、第1色空間によって表現される前記色データをメモリーから読み出すステップと、前記文書データのフォーマットがXPS又はOOXMLの場合、前記色データが乗算済みと判断するステップと、を備え、前記判断するステップにおいて、前記色データが乗算済みと判断された場合、前記色データを未乗算済み色データへ変換するステップと、前記未乗算済み色データを前記第1色空間から第2色空間へ変換するステップと、前記第2色空間の前記未乗算済み色データを第1乗算済み色データへ変換するステップと、前記第1乗算済み色データをメモリーへ書き込むステップと、をさらに備え、前記判断するステップにおいて、前記色データが乗算済みではないと判断された場合、前記色データを前記第1色空間から前記第2色空間へ変換するステップと、前記第2色空間へ変換された前記色データを前記メモリーへ書き込むステップと、をさらに備える。
本発明の一側面は、文書データに関する色データを変換する色変換システムであって、第1色空間によって表現される前記色データを記憶するメモリーと、処理装置と、を備え、前記処理装置は、前記色データを前記メモリーから読み出し、前記文書データのフォーマットがXPS又はOOXMLの場合、前記色データが乗算済みと判断し、前記色データが乗算済みと判断した場合、前記色データを未乗算済み色データへ変換し、前記未乗算済み色データを前記第1色空間から第2色空間へ変換し、前記第2色空間の前記未乗算済み色データを第1乗算済み色データへ変換し、前記第1乗算済み色データを前記メモリーへ書き込み、前記色データが乗算済みではないと判断した場合、前記色データを前記第1色空間から前記第2色空間へ変換し、前記第2色空間へ変換された前記色データを前記メモリーへ書き込む。
本発明のその他の要素は後述の説明及び添付されたクレームによって明らかとなる。
図1は本発明の一以上の実施形態におけるシステムのブロック図を示す。 図2は本発明の一以上の実施形態におけるフローチャートを示す。 図3は本発明の一以上の実施形態におけるフローチャートを示す。 図4は本発明の一以上の実施形態におけるフローチャートを示す。 図5は本発明の一以上の実施形態における色データを未乗算済み状態又は乗算済み状態にする例示的なコードを示す。 図6は本発明の一以上の実施形態における色データを未乗算済み状態又は乗算済み状態にする例示的なコードを示す。 図7は本発明の一以上の実施形態におけるコンピューターシステムを図示する。
以下に、添付の図面を参照して、本発明の具体的な実施形態について、詳細に説明する。整合性を図るため、各図面における類似の要素には同様の参照符号が付加される。
以下に記載される本発明の実施形態に関する詳細な説明においては、本発明のより深い理解を提供するためいくつかの詳細な説明が記載される。しかし、これらの詳細な説明がなくとも本発明が実施可能であることは当業者にとって明らかであろう。また、不必要な混乱を避けるために、周知の特徴については詳細な説明が省略されている。
一般に、本発明の実施形態において、色データを一の色空間(例えば、RGB、GRAY、CMY、HSL、等)から別の色空間へ変換する方法、システム及び非一時的コンピューター読取可能記録媒体(CRM)が提供される。システムの例として、印刷システム、デジタルビデオシステム、グラフィック編集システム、及びPC、タブレット、スマートフォン等のその他の色データを扱うコンピューティングシステムが挙げられるが、これらに限定されない。説明の便宜上、以下の実施形態の説明においては主に印刷システムを取り上げる。
クライアントPCからの要求に応じてページ記述言語(PDL)で表現される電子文書を印刷する場合、印刷システムは一の色空間から別のものへの色変換を支援するために色変換モジュールを実行する。色変換モジュールはハードウェア、ソフトウェア、又はこれらの組み合わせによって実行しうる。例えば、PDLはRGB色空間におけるページの色データを記述する場合もあるが、印刷システムによる印刷の前に、色データを一般に物理的なプリンターで用いられるCMYK色空間に変換する必要がある。
上述のように、従来、乗算済み色ピクセルのスキャンラインをRGBaからCMYKaへ変換するには上述の3つのステップ(ステップ1〜3)を実行する必要があった。
パフォーマンスを向上するために、本発明の一以上の実施形態において、乗算済み色チャンネルを色空間モジュールに直接入力する。一の色空間から別の色空間へ実際に変換する際に色空間モジュールはすべてのピクセルにアクセスする必要がある(上述のステップ2)。すると、色変換処理に「未乗算済み」にする処理と「再乗算済み」にする処理とを追加することは難しくなる。上述の3つのステップを実行する処理の代わりに、本発明の一以上の実施形態における処理によれば、以下の2つのステップを実行する。
−新ステップ1:入力データが乗算済みであり、出力も乗算済みである必要があるかどうかを色変換モジュールに通知する。
−新ステップ2:すべての色ピクセルとアルファピクセルとを色空間モジュールに転送し、色をRGBaからCMYKaへ変換する。変換の一部としてまずピクセルを「未乗算済み」状態にし、ピクセルを新しい色空間へ変換し、そして必要であればピクセルを「再乗算済み」状態にする。各変換処理において中間色データはCPUレジスター等のキャッシュメモリーに一時的に記憶される。
一以上の実施形態におけるこの2つのステップを実行する処理においては、乗算済みの色をまず「未乗算済み」状態にする事前のパスと変換された色を「再乗算済み」状態にする事後のパスとを実行するために色変換モジュールを呼び出す他のシステム又はアプリケーションが必要なくなり、これによりこれら2つのメモリーへのアクセスを抑えることができる。その結果、本発明の実施形態によれば、色変換のパフォーマンスを向上させることができ、データ量が増えるほど、向上の度合いがより顕著になる。色変換モジュール以外について、上述の2つのステップを実行する処理を採用する、本発明の一以上の実施形態に基づく方法によれば、ユーザーは色変換後も乗算済みの色フォーマットで引き続き作業することができる。
本発明の実施形態におけるその他の特徴について図面を参照して説明する。図1は本発明の一以上の実施形態におけるシステム(100)を図示する。図1に示すように当該システム(100)は色変換モジュール(102)を備え、色変換モジュール(102)はインターフェイス(104)と、色変換処理部(106)と、未乗算済み処理部(108)と、乗算済み処理部(110)と、データキャッシュ(112)とを有する。
色変換モジュール(102)は他のシステム又はアプリケーションから提供された非乗算済み色データ(150)及び乗算済み色データ(160)の両者を読み込み、色データを一つの色空間から別の色空間へ変換する。色変換モジュール(102)は非乗算済み(つまりそのままの)色データ(155)又は乗算済み色データ(165)を色変換して出力しうる。非乗算済み色データ(150、155)及び乗算済み色データ(160、165)として、文書データ、画像データ、動画データ等が挙げられるが、これらに限定されない。
色変換モジュール(102)は色空間変換に必要な一以上の色プロファイル(170)を読み込みうる。各色プロファイルは一つの色空間と別の色空間との間の色値を対応させた表である。色プロファイルの詳細は当該技術分野において周知の内容であるので、詳細は省略される。色プロファイルは内部メモリー又はシステム(100)上の記憶装置に記憶される。
これらの各コンポーネント(104)−(112)は同じコンピューティングデバイス(例えば、プリンター、デスクトップコンピューター、サーバーコンピューター、ラップトップコンピューター、タブレット、スマートフォン、ウェアラブル装置、等)に設けられ、又は有線及び/又は無線のセグメントを有するネットワークによって接続される異なるコンピューティングデバイスに設けられる。さらに、一以上の各コンポーネント(104)−(112)は一以上のプロセッサー、グラフィックプロセッサー、又はその他の色変換を実行するために最適化された専用のハードウェアによって実行しうる。図示は省略されているが、システム(100)は記憶装置を有することができ、上述のコンポーネントのうちの一つによって処理済み及び/又は今後処理するデータを記憶することができる。
本発明の一以上の実施形態において、インターフェイス(104)はRGB等の一つの色空間において表現される非乗算済み色データ(150)又は乗算済み色データ(160)をメモリー(例えば、RAM又はメインメモリー)又は記憶装置(例えば、ハードディスクドライブ(HDD)又は半導体ドライブ(SSD))から読み出しうる。本発明の一以上の実施形態において、インターフェイス(104)は他のシステム又はアプリケーションから非乗算済み色データ(150)又は乗算済み色データ(160)を受信しうる。例えば、インターフェイス(104)は他のシステム又はアプリケーションから色データを受信するためにプログラムされたハードウェア又はソフトウェアでありうる。
読み出されたり受信されたりした入力色データ(150、160)はデータキャッシュ(112)に記憶されうる。データキャッシュ(112)はCPUデータキャッシュによって実現され、これはメインメモリーよりも速いメモリーである。データキャッシュ(112)は入力色データ(150、160)とともに出力色データ(155、165)を一時的に記憶しうる。中間色データ(例えば、非乗算済み色データ、再乗算済み状態にする前の色変換済み色データ)はCPUレジスターに記憶されうる。本発明の一以上の実施形態において、色変換モジュール(102)が専用のハードウェアモジュール又はチップとして実現される場合、データキャッシュ(112)は専用のキャッシュメモリーによって実現されうる。
さらに、インターフェイス(104)は色データとともに追加の情報を読み出したり受信したりしうる。例えば、インターフェイス(104)は入力色データが乗算済みであるかを表現するフラグ(例えば、0又は偽が非乗算済みデータを示し、1又は真が乗算済みデータを示す)及び、出力色データがこれから乗算済みとするべきかを表現する別のフラグ(例えば、0又は偽が非乗算済みデータを示し、1又は真が乗算済みデータを示す)を読み出したり受信したりしうる。追加して又は代わりに他の情報も提供されうる、例えば、入力文書フォーマットを示すフォーマット情報(例えば、XPS、OOXML等)や入力/出力色データの色空間を示す変換情報が挙げられる。このような追加の情報を受信することによって、色変換モジュールは入力データが乗算済みかどうか、出力データを乗算済みとすべきかどうかを知ることができる。一以上の実施形態において、このステップは上述の新ステップ1に対応しうる。
本発明の一以上の実施形態において、色変換処理部(106)はインターフェイス(104)を介して読み出されたり受信されたりした色データを色プロファイル(170)を用いて元の色空間から他の色空間へ変換しうる。色データを変換する前に色変換処理部(106)は色データが乗算済みか否かを判断する。例えば、色変換処理部(106)は色データが乗算済みのものであることを示すフラグを読み出しうる。色変換処理部(106)はこのような判断を実行するためのあらゆる方法を採用しうる。また、色変換処理部(106)は上述のフォーマット情報に基づいて入力文書データのフォーマットを知ることによって、当該フォーマットの色データが乗算済みの状態にする必要があると判断しうる。例えば、色変換処理部(106)は文書フォーマットがXPS又はOOXMLである場合、色データが乗算済みであると判断しうる。
色変換処理部(106)により入力データが乗算済みのものであると判断された場合、色変換処理部(106)は未乗算済み処理部(108)に色データに対して未乗算済みの状態にする処理をさせ、色プロファイル(170)を用いて色変換を実行する。変換が完了すると、色変換処理部(106)によって、出力データを乗算済みの状態にすべきと判断された場合、色変換処理部(106)は乗算処理部(110)に変換された色データを乗算済みの状態にする処理をさせ、乗算済みの色データ(165)をインターフェイス(104)経由で出力する。一以上の実施形態において、これらのステップは上述の新ステップ2に対応しうる。
一方、色変換処理部(106)によって入力データが乗算済みではないと判断された場合、色変換処理部(106)は未乗算済みの状態にせずに色データを変換し、色変換処理部(106)によって出力データを乗算済みの状態にすべきではないと判断された場合、色変換処理部(106)は変換された色データを再乗算済みの状態にせずに、出力しうる。
本発明の一以上の実施形態において、色変換処理部(106)は、追加情報としてインターフェイス(104)に入力される、出力色データを乗算済みの状態とすべきかを示す他のフラグを参照しうる。色変換処理部(106)は、入力色データが乗算済みであると判断しても、色変換処理部(106)は、他のフラグに基づいて、変換済み色データを再乗算済みの状態にせずに出力しうる。この場合、色変換処理部(106)は、変換済み未乗算済み色データとともに元のアルファチャンネル値を出力しうる。
本発明の一以上の実施形態において、未乗算済み処理部(108)は入力色データを未乗算済み色データに変換しうる(つまり、未乗算済み状態にする)。未乗算済み処理部(108)は未乗算済みの状態にする処理として、あらゆる処理を実行しうる。
例えば、未乗算済み処理部(108)は図5に示すアルゴリズムに基づいて未乗算済みの状態にする処理を実行しうる。このアルゴリズムにおいて「orig_color_pixel」は各乗算済み色コンポーネント(例えばRGB色空間の赤、緑、青コンポーネント)を示し、「alpha_pixel」はアルファチャンネルコンポーネントを示す。この例において、各コンポーネントを表す最大値は255である。alpha_pixelが0ではない場合、未乗算済み色データ「color_new」の各コンポーネントは下記の数式によって計算しうる。

color_new=(orig_color_pixel_*255)/alpha_pixel

そしてalpha_pixelが0である場合、未乗算済み色データ「color_new」の各コンポーネントは下記の数式によって計算しうる。

color_new=0
本発明の一以上の実施形態において、乗算済み処理部(110)は、未乗算済み色変換済みデータを乗算済み色データに変換しうる(つまり、再乗算済み状態にする)。乗算済み処理部(110)は乗算済みの状態にする処理として、あらゆる方法を実行しうる。例えば、乗算済み処理部(110)は図6に示すアルゴリズムに応じて乗算済みの状態にする処理を実行しうる。このアルゴリズムにおいて、「converted_color_pixel」は各変換済み色コンポーネント(例えば、CMYK色空間におけるシアン、マジェンタ、イエロー、ブラックコンポーネント)を示し、「alpha_pixel」は元のアルファチャンネルコンポーネントを示す。再乗算済み色データ「color_new」の各コンポーネントは下記数式によって計算しうる。

color_new=(converted_color_pixel_*alpha_pixel)/255
図1は、説明の便宜上コンポーネントの一つの特定の構成を示すが、本発明のクレームの範囲を逸脱することなくその他の構成を用いうる。例えば、様々なコンポーネントを組み合わせて一つのコンポーネントを作成しうる。他の例として、一つのコンポーネントによって実行する機能を二以上のコンポーネントによって実行しうる。
図2は本発明の一以上の実施形態におけるフローチャートを示す。図2において図示される処理は未乗算済みの状態にする処理や再乗算済みの状態にする処理の際に一つの色空間から別の色空間へ色データを変換するのに用いられる。図2に示す一以上のステップは、図1を参照して上述したシステム(100)のコンポーネントによって実行されうる。本発明の一以上の実施形態において、図2に示す一以上のステップは、省略し、繰り返し、及び/又は図2に示される順番と異なる順番で実行しうる。よって、本発明の範囲は図2に示された特定の構成に基づく工程に限定されない。
まず、インターフェイス(104)は、メモリーからある色空間における入力色データ及び追加情報としてフラグを読み出しうる(ステップ202)。メモリーから読み出された入力色データはデータキャッシュに記憶されうる(112)。次に、色変換処理部(106)はフラグに基づいて入力色データが乗算済みか否かを判断する(ステップ204)。例えば、フラグによって入力色データが乗算済みであると示される場合、色変換処理部(106)は入力色データが乗算済みであると判断する。また、フラグによって入力色データが乗算済みであると示されていない場合、色変換処理部(106)はデータが乗算済みではないと判断する。
色変換処理部(106)は、入力色データが乗算済みではないと判断した場合、以下の変換処理を実行する。つまり、色変換処理部(106)は、入力色データが乗算済みではないと判断した場合(ステップ204でNo)、色変換処理部(106)は入力色データを一つの色空間(例えばRGB)から他の色空間(例えばCMYK)へ変換し(ステップ212)、変換された色データをメモリーに書き込みうる(ステップ214)。
色変換処理部(106)は、入力色データが乗算済みであると判断した場合、以下の変換処理を実行する。つまり、色変換処理部(106)は入力色データが乗算済みであると判断すると(ステップ204でYes)、色変換処理部(106)は未乗算済み処理部(108)に乗算済み入力色データから未乗算済み色データ(ステップ206)へ変換させうる(ステップ206)。未乗算済み処理部(108)は例えば図5に示すようにアルゴリズムに基づいて未乗算済み処理を実行しうる。未乗算済み処理の後に、色変換処理部(106)は未乗算済み入力色データをある色空間(例えばRGB)から別の色空間(例えばCMYK)へ変換しうる(ステップ208)。次に、色変換処理部(106)は乗算済み処理部(110)に変換済み色データを乗算済み色データに変換させうる(ステップ210)。例えば、乗算済み処理部(110)は、図6に示すようにアルゴリズムに基づいて乗算済み処理を実行しうる。乗算済み処理後、インターフェイス(104)は乗算済み色データをメモリーに書き込みうる(ステップ214)。
本発明の一以上の実施形態において、色変換モジュール(102)はステップ210を省略し、第2色空間の未乗算済み色データを再乗算済みの状態にする処理を実行せずにメモリーに出力しうる。
本発明の一以上の実施形態において、インターフェイスは入力色データ及び他のシステム又はアプリケーションからのフラグを受信しうる。さらに、インターフェイスは色変換後に色データ(乗算済み又は未乗算済み)を他のシステム又はアプリケーションに出力しうる。
本発明の一以上の実施形態において、色変換モジュール(102)は中央処理装置(CPU)、グラフィックス処理装置(GPU)、又はその他のシステム(100)上の専用ハードウェアによって実行されるプログラムであり、インターフェイス(104)はシステム(100)にインストールされるその他のプログラムと通信するためのプログラムインターフェイスである。また、システム(100)はネットワークに接続され、色変換モジュール(102)は色データ及びフラグをネットワーク上の他のシステム又はアプリケーションから受信しうる。システム(100)は変換された色データをネットワークを介して他のシステムに出力しうる。
本発明の一以上の実施形態において、インターフェイス(104)は色データとともに追加の情報を受信しうる。例えば、インターフェイス(104)は入力/出力色データの色空間を示す変換情報、及び/又は出力データを乗算済みの状態にすべきか否かを示す他のフラグを受信しうる。色変換処理部(106)は、指定された入力及び出力色空間の間での色変換に必要な色プロファイルを読み出し、色空間変換を実行しうる。さらに、色変換処理部(106)は入力色データが乗算済みではない場合であっても出力前に色変換入力データを乗算済みの状態にし、その逆の処理も実行しうる。
図3は本発明の一以上の実施形態におけるフローチャートを図示する。図3に示される処理は特定のフォーマットを採用する文書の色データについて、必要に応じて未乗算済みの状態にする処理及び再乗算済みの状態にする処理を実行して、一つの色空間から別の色空間へ変換するのに用いうる。図3に示される一以上のステップは図1を参照して上述したシステム(100)のコンポーネントによって実行しうる。本発明の一以上の実施形態において、図3に示す一以上のステップは、省略し、繰り返し、及び/又は図3に示される順番と異なる順番で実行しうる。よって、本発明の範囲は図3に示された特定の構成によるステップに限定されない。
本発明の一以上の実施形態における図3に示される処理において、インターフェイス(104)はPCL、XL、PostScript、PPML、PDF、XPS又はOOXML等の特定のフォーマットを有するメモリー文書データから読み出されうる(ステップ302)。次に、パーシングモジュール(図示せず)は文書データをパースし、色変換処理部(106)のためにそのフォーマットを識別する(ステップ304)。例えば、パーシングモジュールは文書データにおいてフォーマットを示すタグを検索することによりフォーマットを識別しうる(例えばPostScriptを示す「%ps」)。また、パーシングモジュールは発見的な方法を用いて文書フォーマットを判断しうる。パーシングモジュールによって識別された文書フォーマットに基づいて、色変換処理部(106)は文書の色データが乗算済みかを判断しうる(ステップ306)。フォーマットによっては色データが乗算済みであることが必要であると知られているからである。例えば、フォーマットがXPS又はOOXMLである場合、色変換処理部(106)は色データが乗算済みであると判断しうる。
色変換処理部(106)によって色データが乗算済みではないと判断された場合(ステップ306でNo)、色変換処理部(106)は入力文書データを当該色空間(例えば、RGB)から別の色空間(例えば、CMYK)へ変換し(ステップ314)、変換された色データをメモリーに書き込みうる(ステップ316)。
色変換処理部(106)によって色データが乗算済みであると判断された場合(ステップ306でYes)、色変換処理部(106)は、未乗算済み処理部(108)に文書の乗算済み色データを未乗算済み色データに変換させうる(ステップ308)。続くステップ310〜316は上述のステップ208〜214と同様のものである。
本発明の一以上の実施形態において、色変換モジュール(102)はステップ312を省略し、第2色空間における未乗算済み色データを再乗算済みの状態にする処理をせずにメモリーへ出力しうる。
本発明の一以上の実施形態において、インターフェイス(104)は入力データフォーマット(例えば、PCL、XL、PostScript、PPML、PDF、XPS、OOXML、等)を示すフォーマット情報をパーシングモジュールから受信しうる。色変換処理部(106)は色変換の前に文書データをパースする代わりにフォーマット情報を読み出すことによって、入力文書データのデータフォーマットを識別しうる。しかし、一以上の実施形態においては、色変換処理部(106)は文書データをパースし、独立したパーシングモジュールによらずにフォーマットを識別しうる。
図4は本発明の一以上の実施形態におけるフローチャートを示す。図4に示される処理は色変換を実行し、外部のシステム又はアプリケーションによって提供された追加情報に基づいて乗算済み又は未乗算済み色データを出力するのに用いうる。図4に示される一以上のステップは図1を参照して上述したシステム(100)のコンポーネントによって実行しうる。本発明の一以上の実施形態において、図4に示す一以上のステップは、省略し、繰り返し、及び/又は図4に示される順番と異なる順番で実行しうる。よって、本発明の範囲は図4に示されるような特定の構成によるステップに限定されない。
まず、インターフェイス(104)はある色空間における入力色データと追加情報を読み出しうる。追加情報には以下が含まれる(1)入力色データが乗算済みの状態か否かを示す第1フラグ(2)出力データを乗算済みの状態にすべきか否かを示す第2フラグ(ステップ402)。メモリーから読み出された入力色データはデータキャッシュに記憶されうる(112)。次に、色変換処理部(106)は受信した第1フラグに基づいて入力色データが乗算済みか否かを判断しうる(ステップ404)。
色変換処理部(106)によって入力色データが乗算済みであると判断された場合(ステップ404でYes)、色変換処理部(106)は未乗算済み処理部(108)に乗算済み入力色データを未乗算済み色データに変換させうる(ステップ406)。次に、色変換処理部(106)は入力色データを当該色空間(例えば、RGB)から別の色空間(例えば、CMYK)へ変換しうる(ステップ408)。
一方、色変換処理部(106)によって入力色データが乗算済みではない(ステップ404でNo)と判断された場合、色変換処理部(106)は入力色データを当該色空間(例えば、RGB)から別の色空間(例えば、CMYK)へ変換しうる(ステップ408)。
次に、色変換処理部(106)は、受信した第2フラグに基づいて出力色データを乗算済みの状態にすべきかを判断する(ステップ410)。色変換処理部(106)によって出力色データが乗算済みの状態にすべきと判断された場合(ステップ410でYes)、色変換処理部(106)は乗算済み処理部(110)に色変換済み色データを乗算済み色データへ変換させうる(ステップ412)。乗算済みにする処理の後、インターフェイス(104)はメモリーに乗算済み色データを書き込みうる(ステップ414)。
一方、色変換処理部(106)によって出力色データを乗算済みにすべきではないと判断された場合(ステップ410でNo)、インターフェイス(104)は乗算済みにする処理をせずにメモリーに色変換済み色データを書き込みうる(ステップ414)。
本発明の一以上の実施形態においては、システム(100)は乗算済み及び未乗算済み色データの両方を直接扱い、よって、色変換モジュール以外のプログラムによって必要とされるメモリーアクセスを減らすことができる。その結果、特に変換すべきピクセルの個数が大きい場合、より効率的なスループットを実現しうる。
本発明の実施形態については用いられるプラットホームに関わらず、あらゆる種類のコンピューティングシステムにおいて実現することができる。例えば、コンピューティングシステムとして一以上のモバイル装置(例えば、ラップトップコンピューター、スマートフォン、パーソナルデジタルアシスタント、タブレット、もしくはその他のモバイル装置)、デスクトップコンピューター、サーバー、サーバーシャーシに含まれるブレード、もしくはその他のあらゆる種類のコンピューティングデバイス又は本発明の一以上の実施形態を実行する最低限の処理能力、メモリー、及び入出力装置を少なくとも有するデバイスが挙げられる。
例えば、図7に示されるように、コンピューティングシステム(700)は、一以上のCPU(722)を有し、それぞれのCPU(722)は一以上のキャッシュ(732)、関連付けられたメモリー(724)(例えば、ランダムアクセスメモリー(RAM)、キャッシュメモリー、フラッシュメモリー等)、一以上の記憶装置(726)(例えば、ハードディスク、コンパクトディスクドライブ(CD)又はデジタルバーサタイルディスク(DVD)ドライブ等の光学ドライブ、フラッシュメモリーディスク等)、ネットワークデバイス(728)、(例えば、ネットワークインターフェイスカード、無線LANモジュ−ル、広域ネットワークモジュール、ブルートゥース(登録商標)モジュール、ジグビーモジュール、赤外線通信モジュール等)、一以上のGPU(730)、並びにその他の複数の要素及び機能を有する。
CPU(722)は命令を処理する集積回路でありうる。例えば、コンピュータープロセッサーはプロセッサーの一以上のコア又はマイクロコアでありうる。CPU(722)は(メイン)メモリー(724)よりも速いメモリーである一以上のキャッシュ(732)を有しうる。コンピューティングシステム(700)は、一以上の入力装置(740)を備え、タッチスクリーン、キーボード、マウス、マイクロフォン、タッチパッド、電子ペン、又はその他の種類の入力装置等が挙げられる。さらにコンピューティングシステム(700)は一以上の出力装置(760)を有し、例えばスクリーン(例えば、液晶ディスプレイ(LCD)、プラズマディスプレイ、タッチスクリーン、ブラウン管(CRT)モニター、プロジェクター又はその他のディスプレイ装置)、プリンター又はプロッター、外部記憶装置、又はその他の出力装置が挙げられる。一以上の出力装置は入力装置と同じか異なりうる。コンピューティングシステム(700)はネットワークインターフェイス接続(図示せず)を介してネットワーク(780)(例えばローカルエリアネットワーク(LAN)、インターネット等のワイドエリアネットワーク(WAN)、モバイルネットワーク又はその他の種類のネットワーク)に接続されうる。入出力装置はローカル又はリモート(例えば、ネットワーク(780)を介して)CPU(722)、メモリー(724)、記憶装置(726)、ネットワークデバイス(728)、及びGPU(730)に接続されうる。様々な種類のコンピューティングシステムが存在し、上述の入出力装置はその他の形式のものも採用しうる。
本発明の実施形態を実行するためのコンピューターに読取可能なプログラムコードの形式のソフトウェア命令は、その一部又は全部が、一時的に又は永続的にCD、DVD、記憶装置、ディスケット、テープ、フラッシュメモリー、物理的メモリー、又はその他のコンピューター読取可能な媒体等の非一時的コンピューター読取可能な媒体に記憶されうる。具体的に、ソフトウェア命令は、プロセッサーによって実行されることによって、本発明の実施形態を実行するように構成されたコンピューターに読取可能なプログラムコードに対応しうる。
さらに、上述のコンピューティングシステム(700)の一以上の要素は遠隔地に位置し、ネットワーク(780)上で他の要素と接続されうる。さらに、本発明の一以上の実施形態は複数のノードを有する分散システム上で実施することができ、本発明の各部分は分散システム内の異なるノードに位置しうる。本発明の実施形態において、ノードは独立したコンピューティングデバイスに対応する。また、ノードは関連付けられた物理的メモリーを有するコンピュータープロセッサーに対応しうる。また、ノードは共通するメモリー及び/又はリソースを有するコンピュータープロセッサー又はコンピュータープロセッサーのマイクロコアでありうる。
本発明の限られた実施形態を用いて説明したが、本発明の上述の説明により本発明の範囲から逸脱することなく、本発明のその他の実施形態を実行しうることを当業者は理解しうるであろう。よって、本発明の範囲は添付されたクレームのみによって限定される。

Claims (16)

  1. 文書データに関する色データを変換する方法であって、
    第1色空間によって表現される前記色データをメモリーから読み出すステップと、
    前記文書データのフォーマットがXPS又はOOXMLの場合、前記色データが乗算済みと判断するステップと、
    を備え、
    前記判断するステップにおいて、前記色データが乗算済みと判断された場合、
    前記色データを未乗算済み色データへ変換するステップと、
    前記未乗算済み色データを前記第1色空間から第2色空間へ変換するステップと、
    前記第2色空間の前記未乗算済み色データを第1乗算済み色データへ変換するステップと、
    前記第1乗算済み色データをメモリーへ書き込むステップと、
    をさらに備え、
    前記判断するステップにおいて、前記色データが乗算済みではないと判断された場合、
    前記色データを前記第1色空間から前記第2色空間へ変換するステップと、
    前記第2色空間へ変換された前記色データを前記メモリーへ書き込むステップと、
    をさらに備える方法。
  2. 前記色データを前記未乗算済み色データへ変換するステップと、前記未乗算済み色データを前記第2色空間へ変換するステップと、前記未乗算済み色データを前記第1乗算済み色データへ変換するステップは、さらに前記色データをキャッシュに記憶するステップを含む、請求項1に記載の方法。
  3. 記色データに関する追加情報を受信するステップをさらに備え、
    前記判断するステップでは、前記追加情報に基づいて、前記色データが乗算済みかを判断する、
    請求項1又は2に記載の方法。
  4. 前記追加情報は、前記文書データのフォーマットを示すフォーマット情報によって構成される、請求項に記載の方法。
  5. 前記追加情報には、前記メモリーに書き込まれる前記第2色空間に変換された前記色データを乗算済みの状態にすべきか否かを示すフラグが含まれ、
    記フラグにより、書き込まれる前記色データを乗算済みの状態にすべきであることが示される場合、
    前記第2色空間へ変換された前記色データを前記メモリーへ書き込むステップは、
    前記第2色空間の前記色データを第2乗算済み色データへ変換するステップと、
    前記第2乗算済み色データを前記メモリーへ書き込むステップと、
    をさらに備える請求項3又は4に記載の方法。
  6. 記フラグにより、書き込まれる前記色データを乗算済みの状態にすべきではないことが示される場合、前記方法は前記第2色空間の前記未乗算済み色データを前記メモリーへ書き込むステップをさらに備える請求項に記載の方法。
  7. 前記色データは赤、緑、青、及びアルファコンポーネントによって示され、
    前記色データを前記未乗算済み色データへ変換するステップは、
    前記赤、緑、及び青コンポーネントのそれぞれをそれぞれのコンポーネントの最大値で乗算するステップと
    前記乗算された赤、緑、及び青コンポーネントのそれぞれを前記アルファコンポーネントで除算するステップと、
    をさらに備える請求項1から6のいずれか一項に記載の方法。
  8. 前記第2色空間の前記未乗算済み色データを前記第1乗算済み色データへ変換するステップは、
    前記未乗算済み色データの前記赤、緑、及び青コンポーネントのそれぞれを前記アルファコンポーネントで乗算するステップと、
    前記アルファコンポーネントで乗算された前記赤、緑、及び青コンポーネントのそれぞれを前記最大値で除算するステップと、
    をさらに備える請求項に記載の方法。
  9. 文書データに関する色データを変換する色変換システムであって、
    第1色空間によって表現される前記色データを記憶するメモリーと、
    処理装置と、
    を備え、
    前記処理装置は、
    前記色データを前記メモリーから読み出し、
    前記文書データのフォーマットがXPS又はOOXMLの場合、前記色データが乗算済みと判断し、
    前記色データが乗算済みと判断した場合、
    前記色データを未乗算済み色データへ変換し、
    前記未乗算済み色データを前記第1色空間から第2色空間へ変換し、
    前記第2色空間の前記未乗算済み色データを第1乗算済み色データへ変換し、
    前記第1乗算済み色データを前記メモリーへ書き込み、
    前記色データが乗算済みではないと判断した場合、
    前記色データを前記第1色空間から前記第2色空間へ変換し、
    前記第2色空間へ変換された前記色データを前記メモリーへ書き込む色変換システム。
  10. 前記処理装置は、前記処理装置のキャッシュによって、前記色データを前記未乗算済み色データへ変換し、前記未乗算済み色データを前記第2色空間へ変換し、前記未乗算済み色データを前記第1乗算済み色データへ変換する、請求項に記載の色変換システム。
  11. 前記処理装置は
    記色データに関する追加情報を受信し、
    前記追加情報に基づいて、前記色データが乗算済みかを判断する、
    請求項9又は10に記載の色変換システム。
  12. 前記追加情報は、前記文書データのフォーマットを示すフォーマット情報によって構成される、請求項11に記載の色変換システム。
  13. 前記追加情報には、前記メモリーに書き込まれる前記第2色空間に変換された前記色データを乗算済みの状態にすべきか否かを示すフラグが含まれ、
    記フラグにより、書き込まれる前記色データを乗算済みの状態にすべきであることが示される場合、
    前記処理装置は、
    前記第2色空間へ変換された前記色データを第2乗算済み色データへ変換し、
    前記第2乗算済み色データを前記メモリーへ書き込む、
    請求項11又は12に記載の色変換システム。
  14. 記フラグにより、書き込まれる前記色データを乗算済みの状態にすべきではないことが示される場合、前記処理装置は前記第2色空間の前記未乗算済み色データを前記メモリーへ書き込む、請求項13に記載の色変換システム。
  15. 前記色データは赤、緑、青、及びアルファコンポーネントによって示され、
    前記色データを前記未乗算済み色データへ変換する処理において、前記処理装置は、
    前記赤、緑、及び青コンポーネントのそれぞれをそれぞれのコンポーネントの最大値で乗算し
    前記乗算された赤、緑、及び青コンポーネントのそれぞれを前記アルファコンポーネントで除算し、
    前記除算された赤、緑、及び青コンポーネントを前記第1色空間から前記第2色空間へ変換する、
    請求項9から14のいずれか一項に記載の色変換システム。
  16. 前記第2色空間の前記未乗算済み色データを前記第1乗算済み色データへ変換する処理において、前記処理装置は、
    前記変換された赤、緑、及び青コンポーネントのそれぞれを前記色データの前記アルファコンポーネントで乗算し、
    前記アルファコンポーネントで乗算された前記赤、緑、及び青コンポーネントのそれぞれを前記最大値で除算し、
    前記除算された赤、緑、及び青コンポーネント並びに前記アルファコンポーネントを前記第1乗算済み色データとして前記メモリーへ書き込む、
    請求項15に記載の色変換システム。
JP2016132139A 2015-07-06 2016-07-04 乗算済みデータにおける色変換を支援する方法 Active JP6404865B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/792,274 US9621765B2 (en) 2015-07-06 2015-07-06 Method for supporting color conversion on premultiplied data
US14/792,274 2015-07-06

Publications (2)

Publication Number Publication Date
JP2017050851A JP2017050851A (ja) 2017-03-09
JP6404865B2 true JP6404865B2 (ja) 2018-10-17

Family

ID=56101350

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016132139A Active JP6404865B2 (ja) 2015-07-06 2016-07-04 乗算済みデータにおける色変換を支援する方法

Country Status (4)

Country Link
US (1) US9621765B2 (ja)
EP (1) EP3116225B1 (ja)
JP (1) JP6404865B2 (ja)
CN (1) CN106341572B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9865038B2 (en) * 2015-11-25 2018-01-09 Konica Minolta Laboratory U.S.A., Inc. Offsetting rotated tables in images

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8189908B2 (en) * 2005-09-02 2012-05-29 Adobe Systems, Inc. System and method for compressing video data and alpha channel data using a single stream
US8203564B2 (en) 2007-02-16 2012-06-19 Qualcomm Incorporated Efficient 2-D and 3-D graphics processing
JP5732935B2 (ja) * 2011-03-15 2015-06-10 株式会社リコー 情報処理装置と印刷制御プログラムとコンピュータ読み取り可能な記録媒体
US20150054843A1 (en) 2013-08-20 2015-02-26 Nvidia Corporation Color-correct alpha blending texture filter and method of use thereof
CN103533352B (zh) * 2013-09-27 2017-01-25 桂林力港网络科技有限公司 带透明度的图像的压缩方法及装置、解压缩方法及装置

Also Published As

Publication number Publication date
CN106341572A (zh) 2017-01-18
EP3116225B1 (en) 2019-01-09
EP3116225A1 (en) 2017-01-11
CN106341572B (zh) 2019-05-21
JP2017050851A (ja) 2017-03-09
US20170013173A1 (en) 2017-01-12
US9621765B2 (en) 2017-04-11

Similar Documents

Publication Publication Date Title
US9659387B2 (en) Graphics primitive and color channels
JP5046801B2 (ja) 画像処理装置及びプログラム
US7573596B2 (en) Systems and methods for facilitating user adjustment of print settings
US20130107289A1 (en) Rasterization of printing data
JP6210319B2 (ja) 印刷方法及び印刷システム
JP4886043B2 (ja) 高速フィルタ型のyuvからrgbへの変換
WO2017163441A1 (ja) 画像処理装置、画像処理方法、及び画像処理プログラム
US20150169508A1 (en) Obfuscating page-description language output to thwart conversion to an editable format
JP6632424B2 (ja) 情報処理装置、プログラム及び制御方法
TWI467470B (zh) 用於無驅動程式列印之印表機篩選
JP6404865B2 (ja) 乗算済みデータにおける色変換を支援する方法
US10169688B2 (en) Method of enhancing quality of image object included in compound document and apparatus for performing the method
US20180189004A1 (en) Print job ticket management
US10783604B2 (en) Image processing apparatus, image processing method, and image processing program
US9483443B2 (en) Tiled display list
US9053409B2 (en) Image forming apparatus, method, and program product determining periodic drawing pattern and thinning an image
US10884684B1 (en) Image forming apparatus, image forming method, and non-transitory computer readable recording medium
JP5033746B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP2012109897A (ja) ドライバープログラム、および、印刷装置
US9619865B2 (en) Resolution-independent display list
US20150356758A1 (en) Image processing apparatus, image processing method, and non-transitory computer readable medium
US9507551B2 (en) Changing the name of a print job when a print instruction is for a pass-through mode
US10057458B2 (en) Method and apparatus for printing in grayscale
JP2015018337A (ja) 印刷実行制御装置、印刷システム、およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170510

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180703

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180828

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: 20180911

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180913

R150 Certificate of patent or registration of utility model

Ref document number: 6404865

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150