Color image processor and its method
Abstract
[Task] The system performs a color conversion operation on the input image data by using the first tag and the second tag instead of a predetermined series of color conversion operations stored in the public tag of the profile format.
Solution.The system stores a color image data input step, a first tag that stores override information that invalidates a predetermined series of color conversion operations, and a second that stores color conversion operation data that is accessible via a hierarchical storage structure. It includes a storage step for storing the tag and a determination step for determining whether or not to access the second tag based on the override information of the first tag. Further, when it is determined that the second tag should be accessed, the reading step of reading the color conversion calculation data and the read color conversion calculation according to the pointer of the hierarchical storage structure for accessing the color conversion calculation data of the second tag. A processing step of performing a color conversion operation on the input image data based on the data is included.

Term
Term ended
Projected expiry passed 5 September 2016, 10.1 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
34 claims: 9 independent, 25 dependent
- 1【特許請求の範囲】 【請求項1】 プロファイルフォーマットのパブリックタグに格納された所定の一連の色変換演算の代わりに、第一のタグおよび第二のタグを使用して、入力画像データに色変換演算を施すカラー画像処理装置であって、 カラー画像データを入力する入力手段と、 前記所定の一連の色変換演算を無効にするオーバライド情報を格納する前記第一のタグと、階層記憶構造を介してアクセス可能な色変換演算データを格納する前記第二のタグとを格納するメモリと、 前記第一のタグのオーバライド情報に基づき、前記第二のタグにアクセスすべきか否かを判定する判定手段と、 前記判定手段により前記第二のタグにアクセスすべきであると判定された場合、前記第二のタグの色変換演算データにアクセスするための前記階層記憶構造のポインタに従い、前記色変換演算データを読取る読取手段と、 前記読取手段により読取られた色変換演算データに基づき、前記入力画像データに色変換演算を施す処理手段とを有することを特徴とするカラー画像処理装置。
- 2【請求項2】 前記第一のタグに格納されたオーバライド情報は、前記第二のタグ中の色変換シーケンスのアクセスに使用され、前記読取手段は、前記オーバライド情報に基づき、前記色変換シーケンスをアクセスすることを特徴とする請求項1に記載されたカラー画像処理装置。
- 3【請求項3】 前記色変換シーケンスは、前記色変換演算を指すポインタを格納し、前記読取手段は、前記色変換シーケンスに格納された前記ポインタに基づき、前記色変換演算にアクセスすることを特徴とする請求項2に記載されたカラー画像処理装置。
- 4【請求項4】 前記メモリは、前記色変換演算のリストを格納し、前記処理手段は、前記読取手段により読取られた色変換演算データに基づき、前記色変換演算のリスト中の一つにアクセスすることを特徴とする請求項1に記載されたカラー画像処理装置。
- 5【請求項5】 前記判定手段により前記第二のタグにアクセスすべきでないと判定された場合、前記入力画像データは、前記パブリックタグに格納された前記所定の一連の色変換演算に基づき処理されることを特徴とする請求項1に記載されたカラー画像処理装置。
- 6【請求項6】 プロファイルフォーマットのパブリックタグに格納された所定の一連の色変換演算の代わりに、第一のタグおよび第二のタグを使用して、入力画像データに色変換演算を施すカラー画像処理方法であって、 カラー画像データを入力する入力ステップと、 前記所定の一連の色変換演算を無効にするオーバライド情報を格納する前記第一のタグと、階層記憶構造を介してアクセス可能な色変換演算データを格納する前記第二のタグとを格納する格納ステップと、 前記第一のタグのオーバライド情報に基づき、前記第二のタグにアクセスすべきか否かを判定する判定ステップと、 前記判定ステップで前記第二のタグにアクセスすべきであると判定された場合、前記第二のタグの色変換演算データにアクセスするための前記階層記憶構造のポインタに従い、前記色変換演算データを読取る読取ステップと、 前記読取ステップで読取られた色変換演算データに基づき、前記入力画像データに色変換演算を施す処理ステップとを有することを特徴とするカラー画像処理方法。
- 7【請求項7】 前記第一のタグに格納されたオーバライド情報は、前記第二のタグ中の色変換シーケンスのアクセスに使用され、前記読取ステップは、前記オーバライド情報に基づき、前記色変換シーケンスをアクセスすることを特徴とする請求項6に記載されたカラー画像処理装置。
- 8【請求項8】 前記色変換シーケンスは、前記色変換演算を指すポインタを格納し、前記読取ステップは、前記色変換シーケンスに格納された前記ポインタに基づき、前記色変換演算にアクセスすることを特徴とする請求項7に記載されたカラー画像処理装置。
- 9【請求項9】 前記格納ステップは、前記色変換演算のリストを格納し、前記処理ステップは、前記読取ステップで読取られた色変換演算データに基づき、前記色変換演算のリスト中の一つにアクセスすることを特徴とする請求項6に記載されたカラー画像処理装置。
- 10【請求項10】 前記判定ステップで前記第二のタグにアクセスすべきでないと判定した場合、前記入力画像データは、前記パブリックタグに格納された前記所定の一連の色変換演算に基づき処理されることを特徴とする請求項6に記載されたカラー画像処理装置。
- 11【請求項11】 コンピュータが使用可能な記憶媒体に記憶され、プロファイルフォーマットのパブリックタグに格納された所定の一連の色変換演算の代わりに、第一のタグおよび第二のタグを使用して、入力画像データに色変換演算を施すコンピュータが実行可能な処理ステップであって、 カラー画像データを入力する入力ステップと、 前記所定の一連の色変換演算を無効にするオーバライド情報を格納する前記第一のタグと、階層記憶構造を介してアクセス可能な色変換演算データを格納する前記第二のタグとを格納する格納ステップと、 前記第一のタグのオーバライド情報に基づき、前記第二のタグにアクセスすべきか否かを判定する判定ステップと、 前記判定ステップで前記第二のタグにアクセスすべきであると判定された場合、前記第二のタグの色変換演算データにアクセスするための前記階層記憶構造のポインタに従い、前記色変換演算データを読取る読取ステップと、 前記読取ステップで読取られた色変換演算データに基づき、前記入力画像データに色変換演算を施す処理ステップとを有することを特徴とする処理ステップ。
- 12【請求項12】 前記第一のタグに格納されたオーバライド情報は、前記第二のタグ中の色変換シーケンスのアクセスに使用され、前記読取ステップは、前記オーバライド情報に基づき、前記色変換シーケンスをアクセスすることを特徴とする請求項11に記載された処理ステップ。
- 13【請求項13】 前記色変換シーケンスは、前記色変換演算を指すポインタを格納し、前記読取ステップは、前記色変換シーケンスに格納された前記ポインタに基づき、前記色変換演算にアクセスすることを特徴とする請求項12に記載された処理ステップ。
- 14【請求項14】 前記格納ステップは、前記色変換演算のリストを格納し、前記処理ステップは、前記読取ステップで読取られた色変換演算データに基づき、前記色変換演算のリスト中の一つにアクセスすることを特徴とする請求項11に記載された処理ステップ。
- 15【請求項15】 前記判定ステップで前記第二のタグにアクセスすべきでないと判定した場合、前記入力画像データは、前記パブリックタグに格納された前記所定の一連の色変換演算に基づき処理されることを特徴とする請求項6に記載された処理ステップ。
- 16【請求項16】 ある色空間から別の色空間への標準化された変換に使用される数値情報が格納され、タグが階層格納されているプロファイルフォーマットにおいて、前記タグを使用して前記標準化された変換を変更するカラー画像処理装置であって、 カラー画像データを入力する入力手段と、 (1)タグの階層の最高位にある第一のタグの所定の位置に、前記タグの階層の第二の高位にある第二のタグ中の色変換シーケンスを指す第一のポインタデータを格納し、(2)前記タグの階層の第三の高位にある第三のタグに格納された色変換演算を指す第二のポインタを含む前記色変換シーケンスを前記第二のタグに格納し、(3)前記色変換演算を実行するためのデータを第三のタグに格納するメモリと、 前記プロファイルフォーマットに格納されている情報に基づき、前記第一のタグにアクセスすべきか否かを判定する判定手段と、 (1)前記第一のタグにアクセスすべき場合、前記第一のタグの前記第一のポインタの情報を読取り、前記色変換シーケンスにアクセスすべきか否かを判定し、(2)前記色変換シーケンスにアクセスすべき場合は、前記色変換演算にアクセスすべきか否かを判定するために、前記色変換シーケンス中の前記第二のポインタを読取り、(3)前記色変換演算にアクセスすべき場合には、前記第三のタグから色変換演算を実行するためのデータを読取る読取手段と、 前記標準化された変換の代わりに、ある色空間から別の色空間へ前記入力画像データを変換するために、前記第三のタグからのデータにより読取ったデータに基づき、前記色変換演算を行う処理手段とを有することを特徴とするカラー画像処理装置。
- 17【請求項17】 前記色変換演算が所定の色変換演算を含む場合、前記色変換演算を実行するためのデータは、前記タグの階層の第四のレベルにある第四のタグを指す第三のポインタデータを含むことを特徴とする請求項16に記載されたカラー画像処理装置。
- 18【請求項18】 前記メモリは、前記第四のタグにテーブルデータを格納し、 前記処理手段は、前記標準化された変換の代わりに、ある色空間から別の色空間へ前記入力画像データを変換するために、前記第四のタグに格納されたテーブルデータに基づき、さらに、前記第三のタグにより定義される色変換演算を実行することを特徴とする請求項17に記載されたカラー画像処理装置。
- 19【請求項19】 前記判定手段は、前記プロファイルフォーマットに格納されたヘッダからCMMデータを読取り、そのCMMデータに対応するデータを前記第一のタグで探索することにより、前記第一のタグにアクセスすべきか否かを判定することを特徴とする請求項16に記載されたカラー画像処理装置。
- 20【請求項20】 前記処理手段は、カラーマッチングソフトウェアを含み、ユーザの入力に従い前記カラーマッチングソフトウェアを実行することを特徴とする請求項16に記載されたカラー画像処理装置。
- 21【請求項21】 前記処理手段は、前記読取手段により前記第三のタグから読取られたデータと、予め格納された色変換演算のリストとを整合することで、実行する色変換演算を判定することを特徴とする請求項16に記載されたカラー画像処理装置。
- 22【請求項22】 ある色空間から別の色空間への標準化された変換に使用される数値情報が格納され、タグが階層格納されているプロファイルフォーマットにおいて、前記タグを使用して前記標準化された変換を変更するカラー画像処理方法であって、 カラー画像データを入力する入力ステップと、 タグの階層の最高位にある第一のタグの所定の位置に、前記タグの階層の第二の高位にある第二のタグ中の色変換シーケンスを指す第一のポインタデータを格納する第一の格納ステップと、 前記タグの階層の第三の高位にある第三のタグに格納された色変換演算を指す第二のポインタを含む前記色変換シーケンスを前記第二のタグに格納する第二のステップと、 前記色変換演算を実行するためのデータを第三のタグに格納する第三の格納ステップと、前記プロファイルフォーマットに格納されている情報に基づき、前記第一のタグにアクセスすべきか否かを判定する判定ステップと、 前記第一のタグにアクセスすべき場合、前記第一のタグの前記第一のポインタの情報を読取り、前記色変換シーケンスにアクセスすべきか否かを判定する第一の読取ステップと、 前記色変換シーケンスにアクセスすべき場合は、前記色変換演算にアクセスすべきか否かを判定するために、前記色変換シーケンス中の前記第二のポインタを読取る第二の読取ステップと、 前記色変換演算にアクセスすべき場合には、前記第三のタグから色変換演算を実行するためのデータを読取る第三の読取ステップと、 前記標準化された変換の代わりに、ある色空間から別の色空間へ前記入力画像データを変換するために、前記第三のタグからのデータにより読取ったデータに基づき、前記色変換演算を行う実行ステップとを有することを特徴とするカラー画像処理方法。
- 23【請求項23】 前記色変換演算が所定の色変換演算を含む場合、前記色変換演算を実行するためのデータは、前記タグの階層の第四のレベルにある第四のタグを指す第三のポインタデータを含むことを特徴とする請求項22に記載されたカラー画像処理方法。
- 24【請求項24】 さらに、前記第四のタグにテーブルデータを格納する第四の格納ステップと、 前記標準化された変換の代わりに、ある色空間から別の色空間へ前記入力画像データを変換するために、前記第四のタグに格納されたテーブルデータに基づき、前記第三のタグにより定義される色変換演算を実行する第二の実行ステップとを有することを特徴とする請求項23に記載されたカラー画像処理方法。
- 25【請求項25】 前記判定ステップは、前記プロファイルフォーマットに格納されたヘッダからCMMデータを読取り、そのCMMデータに対応するデータを前記第一のタグで探索することにより、前記第一のタグにアクセスすべきか否かを判定することを特徴とする請求項22に記載されたカラー画像処理方法。
- 26【請求項26】 前記実行ステップは、前記第三の読取ステップで読取られたデータと、予め格納された色変換演算のリストとを整合することで、実行する色変換演算を判定することを特徴とする請求項22に記載されたカラー画像処理方法。
- 27【請求項27】 ある色空間から別の色空間への標準化された変換に使用される数値情報が格納され、タグが階層格納されているプロファイルフォーマットにおいて、コンピュータが使用可能な記憶媒体に記憶され、前記タグを使用して前記標準化された変換を変更するコンピュータが実行可能な処理ステップであって、 カラー画像データを入力する入力ステップと、 タグの階層の最高位にある第一のタグの所定の位置に、前記タグの階層の第二の高位にある第二のタグ中の色変換シーケンスを指す第一のポインタデータを格納する第一の格納ステップと、 前記タグの階層の第三の高位にある第三のタグに格納された色変換演算を指す第二のポインタを含む前記色変換シーケンスを前記第二のタグに格納する第二のステップと、 前記色変換演算を実行するためのデータを第三のタグに格納する第三の格納ステップと、前記プロファイルフォーマットに格納されている情報に基づき、前記第一のタグにアクセスすべきか否かを判定する判定ステップと、 前記第一のタグにアクセスすべき場合、前記第一のタグの前記第一のポインタの情報を読取り、前記色変換シーケンスにアクセスすべきか否かを判定する第一の読取ステップと、 前記色変換シーケンスにアクセスすべき場合は、前記色変換演算にアクセスすべきか否かを判定するために、前記色変換シーケンス中の前記第二のポインタを読取る第二の読取ステップと、 前記色変換演算にアクセスすべき場合には、前記第三のタグから色変換演算を実行するためのデータを読取る第三の読取ステップと、 前記標準化された変換の代わりに、ある色空間から別の色空間へ前記入力画像データを変換するために、前記第三のタグからのデータにより読取ったデータに基づき、前記色変換演算を行う実行ステップとを有することを特徴とする処理ステップ。
- 28【請求項28】 前記色変換演算が所定の色変換演算を含む場合、前記色変換演算を実行するためのデータは、前記タグの階層の第四のレベルにある第四のタグを指す第三のポインタデータを含むことを特徴とする請求項27に記載された処理ステップ。
- 29【請求項29】 さらに、前記第四のタグにテーブルデータを格納する第四の格納ステップと、 前記標準化された変換の代わりに、ある色空間から別の色空間へ前記入力画像データを変換するために、前記第四のタグに格納されたテーブルデータに基づき、前記第三のタグにより定義される色変換演算を実行する第二の実行ステップとを有することを特徴とする請求項28に記載された処理ステップ。
- 30【請求項30】 前記判定ステップは、前記プロファイルフォーマットに格納されたヘッダからCMMデータを読取り、そのCMMデータに対応するデータを前記第一のタグで探索することにより、前記第一のタグにアクセスすべきか否かを判定することを特徴とする請求項27に記載された処理ステップ。
- 31【請求項31】 前記実行ステップは、前記第三の読取ステップで読取られたデータと、予め格納された色変換演算のリストとを整合することで、実行する色変換演算を判定することを特徴とする請求項27に記載された処理ステップ。
- 32【請求項32】 変更可能なタグおよび複数の予め定義された色変換シーケンスを有する所定のプロファイルフォーマットを変更し、変更されたプロファイルフォーマットに基づき、カラー画像データに色変換演算を施すカラー画像処理装置であって、 前記カラー画像データ、オーバライド情報、並びに、複数の色変換演算を含む色変換シーケンスおよび色変換演算が組み込まれたタグデータを入力する入力手段と、 階層記憶構造の中で前記色変換シーケンスが前記色変換演算より高位にあり、各色変換シーケンスは色変換演算を指す少なくとも一つのポインタを含むように、前記階層記憶構造に従い、前記タグデータを前記プロファイルフォーマットの変更可能なタグに格納する格納手段と、 前記オーバライド情報が所定の値を有する場合、前記変更可能なタグに格納されたタグデータに基づき、前記入力カラー画像データを処理し、(1)前記オーバライド情報により定義される前記変更可能なタグの中の色変換シーケンスにアクセスし、(2)アクセスされた色変換シーケンス中のポインタにより定義される色変換演算にアクセスし、(3)アクセスされた色変換演算に基づき、前記カラー画像データを処理することにより、その処理を実行する処理手段とを有することを特徴とするカラー画像処理装置。
- 33【請求項33】 変更可能なタグおよび複数の予め定義された色変換シーケンスを有する所定のプロファイルフォーマットを変更し、変更されたプロファイルフォーマットに基づき、カラー画像データに色変換演算を施すカラー画像処理方法であって、 前記カラー画像データ、オーバライド情報、並びに、複数の色変換演算を含む色変換シーケンスおよび色変換演算が組み込まれたタグデータを入力する入力ステップと、 階層記憶構造の中で前記色変換シーケンスが前記色変換演算より高位にあり、各色変換シーケンスは色変換演算を指す少なくとも一つのポインタを含むように、前記階層記憶構造に従い、前記タグデータを前記プロファイルフォーマットの変更可能なタグに格納する格納ステップと、 前記オーバライド情報が所定の値を有する場合、前記変更可能なタグに格納されたタグデータに基づき、前記入力カラー画像データを処理し、(1)前記オーバライド情報により定義される前記変更可能なタグの中の色変換シーケンスにアクセスするステップ、(2)アクセスされた色変換シーケンス中のポインタにより定義される色変換演算にアクセスするステップ、および、(3)アクセスされた色変換演算に基づき、前記カラー画像データを処理するステップを含む処理ステップとを有することを特徴とするカラー画像処理方法。
- 34【請求項34】 コンピュータが読取可能な記憶媒体に格納され、変更可能なタグおよび複数の予め定義された色変換シーケンスを有する所定のプロファイルフォーマットを変更し、変更されたプロファイルフォーマットに基づき、カラー画像データに色変換演算を施すコンピュータが実行可能な処理ステップであって、 前記カラー画像データ、オーバライド情報、並びに、複数の色変換演算を含む色変換シーケンスおよび色変換演算が組み込まれたタグデータを入力する入力ステップと、 階層記憶構造の中で前記色変換シーケンスが前記色変換演算より高位にあり、各色変換シーケンスは色変換演算を指す少なくとも一つのポインタを含むように、前記階層記憶構造に従い、前記タグデータを前記プロファイルフォーマットの変更可能なタグに格納する格納ステップと、 前記オーバライド情報が所定の値を有する場合、前記変更可能なタグに格納されたタグデータに基づき、前記入力カラー画像データを処理し、(1)前記オーバライド情報により定義される前記変更可能なタグの中の色変換シーケンスにアクセスするステップ、(2)アクセスされた色変換シーケンス中のポインタにより定義される色変換演算にアクセスするステップ、および、(3)アクセスされた色変換演算に基づき、前記カラー画像データを処理するステップを含む処理ステップとを有することを特徴とする処理ステップ。
Independent claims34
335 paragraphs, as filed
Description: TECHNICAL FIELD [Detailed description of the invention]
【0001】
[Technical field to which the invention belongs]
The present invention is a color conversion operation defined in a profile format, and stores a color conversion operation in a certain order that takes precedence over other color conversion operations and a pointer instructing a color conversion operation in the profile format in a private tag. By doing so, it relates to systems that change profile formats, such as the International Color Consortium (ICC) profile format.
【0002】
[Conventional technology]
The profile format supports color image data formatted corresponding to the color space of one device to the color space of another device or a color space independent of the device (hereinafter referred to as "device independent color space"). It is used to convert to formatted color image data. For example, the ICC profile format converts color image data formatted for the RGB (red, green and blue) color space into a device-independent color space called the "profile coupled space" and then the CMY of the color printer. (Cyan, Magenta and Yellow) Defines a series of standard color conversion operations for converting to color image data formatted for the color space.
【0003】
Standardized ICC profiles sometimes establish color compatibility between different devices, but with regard to the number and types of color conversion operations performed by standardized ICC profiles and the order in which color conversions are performed. Lack of flexibility.
【0004】
That is, the ICC profile defines the color conversion operation in the public tag. Generally, a tag is a memory area that stores formatted data used to perform color conversion operations and / or pointers that point to other tags. A public tag defined by the ICC is composed of tags that contain standardized color conversion operations that perform a predetermined series of color conversions in a predetermined order. It is not possible to change the ICC public tag.
【0005】
In this regard, since ICC public tags are limited to ICC-defined color conversion operations, some color conversion operations, especially those required for color space-to-color space conversion that ICC cannot handle, are required. Cannot be executed.
【0006】
In addition, the ICC public tag cannot be changed, so once the public tag is accessed to perform color conversion, all of the preset color conversion operations stored in that public tag are specified. Must be executed in order. In some cases, the result may be an error in the color conversion. It may also simply reduce efficiency. For example, an unnecessary color conversion operation may be executed on the input image data regardless of whether or not the color conversion operation is required.
【0007】
Therefore, there is a need for a system that modifies the ICC profile format so that software developers can change the type, number, and order of color conversion operations stored in the ICC profile format.
【0008】
[Summary of Invention]
The present invention addresses the above requirements by providing a system that modifies standardized color conversion operations in ICC profiles using private tags. According to the present invention, in addition to the standardized color conversion operation, the color conversion operation is stored and accessed via an ICC profile. The present invention also has an advantage that the color conversion operation stored in the public tag can be randomly accessed by using the pointer in the private tag to access the color conversion operation.
【0009】
That is, according to one aspect, the present invention uses a first tag and a second tag to perform a color conversion operation instead of a predetermined series of color conversion operations stored in a public tag in profile format. A system (ie, a method, device, and computer-executable process step) that executes and performs color conversion operations on input image data. The system has an input step for inputting color image data, the first tag for storing the override information that invalidates the predetermined series of color conversion operations, and color conversion operation data accessible via a hierarchical storage structure. A storage step for storing the second tag, and a determination step for determining whether or not to access the second tag based on the override information of the first tag are included. When the system determines in the determination step that the second tag should be accessed, the color follows the pointer of the hierarchical storage structure for accessing the color conversion operation data of the second tag. A reading step for reading the conversion calculation data and a processing step for performing a color conversion calculation on the input image data based on the color conversion calculation data read in the reading step are also included.
【0010】
With the above configuration, customized color conversion from the first color space for devices such as RGB color image data for monitors to a device independent color space, while retaining the advantages of the features provided by the standard profile format. The process can be used to convert the color image data. If the above system is used on two different devices, the data will be converted from the first color space of the first device to the device independent color space, and then from the device independent color space to the second of the second device. It is possible to convert to a color space.
【0011】
Further, since the above system stores and calls the color conversion operation based on the hierarchical structure, it provides color matching software for easily accessing the customized color conversion operation.
【0012】
According to another aspect, the present invention modifies a standardized transformation using tags in a profile format in which the numerical information used by the standardized transformation is stored and the tags are hierarchically stored. It is a system. The system performs an input step of inputting color image data and color conversion in a second tag at the second higher level of the tag hierarchy to a predetermined position of the first tag at the highest level of the tag hierarchy. Includes a first storage step to store first pointer data pointing to the sequence. The system stores the color conversion sequence in the second tag, including a second pointer pointing to the color conversion operation stored in the third tag at the third higher level of the tag hierarchy. A step and a third storage step of storing data for executing the color conversion operation in the third tag are also included. The determination step determines whether or not the first tag should be accessed based on the information stored in the profile format, and the first reading step, if the first tag should be accessed, said. The information of the first pointer of the first tag is read, and it is determined whether or not the color conversion sequence should be accessed.
【0013】
The second reading step reads the second pointer in the color conversion sequence to determine if the color conversion operation should be accessed if the color conversion sequence should be accessed. When the reading step should access the color conversion operation, the reading step reads data for executing the color conversion operation from the third tag. The execution step is based on the data read from the data from the third tag in order to convert the input image data from one color space to another instead of the standardized conversion. Perform the calculation.
【0014】
According to the above aspects of the invention, the user selectively creates and modifies private tags that can be used to modify the overall color conversion operation performed by the profile format, and then the modified color conversion operation. Can be executed for color image data, which is advantageous. In addition, the hierarchical storage structure described above facilitates access to the data of the color conversion operations used to create and modify private tags.
【0015】
According to yet another aspect, the invention modifies a predetermined profile format having a plurality of modifiable tags and a plurality of predefined color conversion sequences, and is based on the modified profile format. This is a system that executes color conversion operations on color image data. The system includes input steps for inputting the color image data, override information, and a color conversion sequence including a plurality of color conversion operations and tag data incorporating the color conversion operations. The storage step follows the hierarchical storage structure so that the color conversion sequence is higher than the color conversion operation in the hierarchical storage structure and each color conversion sequence contains at least one pointer to the color conversion operation. The data is stored in the changeable tag of the profile format. When the override information has a predetermined value, the processing step processes the input color image data based on the tag data stored in the changeable tag.
【0016】
The processing steps include (1) a step of accessing the color conversion sequence in the changeable tag defined by the override information, and (2) a color conversion operation defined by a pointer in the accessed color conversion sequence. Includes a step of accessing the, and (3) a step of processing the color image data based on the accessed color conversion operation.
【0017】
The above summary is for a quick understanding of the essence of the present invention. A more complete understanding of the present invention can be made by reference to the detailed description of preferred embodiments in connection with the accompanying drawings.
【0018】
[Detailed Description of Preferred Embodiment]
FIG. 1 is a diagram showing the appearance of a typical embodiment of the present invention. The computer device 1 shown in FIG. 1 is a device such as an IBM PC compatible computer having a Windows environment such as Macintosh or Microsoft (R) Windows. The computer device 1 includes a display screen 2 such as a color monitor, a keyboard 4 for inputting text data and programmer's commands, and a pointing device such as a mouse for instructing and manipulating objects displayed on the display screen 2. It includes 6 and a printer 16 that outputs a color image generated by the computer device 1.
【0019】
The computer device 1 includes a large-capacity storage device such as the computer disk 7 shown in FIG. This computer disk 7 includes profile formats such as ICC profile 8 containing public and private tags, a DOS (R) operating system (hereinafter referred to as "OS"), and a Windows OS such as Microsoft Windows (R). Is stored. Similarly, the computer disk 7 contains Canon (R) color matching software (hereinafter referred to as "CCM") 9, an application program 10 that creates and modifies private tags, and a profile manager routine 12. All of these store the program instructions of the computer device 1 such as operating and storing the data files on the disk 7 and presenting the data in those files to the operator via the display screen 2. These programs will be described in more detail below.
【0020】
The computer device 1 further includes an interface 14 of a floppy disk drive (hereinafter referred to as "FDD") into which a floppy disk (hereinafter referred to as "FD") can be inserted. Information from such FDs can be downloaded to computer disk 7. Such information includes data files and application programs such as CMM (Color Management Module) 9, application programs 10 that create and modify private tags, and profile manager routine 12. The computer device 1 can further include a CD-ROM interface (not shown), and information from this interface can also be downloaded to disk 7.
【0021】
The color image data is input by a scanner 15 that scans a document or other image and provides those bitmap images to computer device 1. The color image data may be input to computer equipment 1 from various other sources such as the network interface 17 or from other external devices via the facsimile / MODEM interface 18.
【0022】
In addition, the ICC profile 8 of various other sources, such as the network interface 17, or of other external devices via the facsimile / MODEM interface 18, is accessed by the computer device 1.
【0023】
Although Figure 1 shows the configuration of a programmable general purpose computer, it should be understood that dedicated computers, stand-alone computers, or other types of data processing devices can be used when implementing the present invention. is there.
【0024】
FIG. 2 is a block diagram showing details of the internal configuration of the computer device 1. As shown in FIG. 2, the computer device 1 includes a central processing unit (hereinafter referred to as CPU) 20 that interfaces with the computer bus 21. Similarly, scanner interface 22, network interface 17, fax / MODEM interface 18, display interface 23, keyboard interface 25, mouse interface 29, main memory 30, disk 7, FDD interface 14 and printer interface. 24 also interfaces with computer bus 21.
【0025】
CPU 20 performs stored program instructions such as Microsoft Windows (R), CMM 9, application program 10, profile manager routine 12, and other application programs (not shown) that create and modify private tags. The main memory 30 interacts with the computer bus 21 to provide random access memory to use. That is, the CPU 20 loads those programs from either the disk 7 or the FD of the FDD interface 14 into the main memory 30, reads out the programs stored in the main memory 30, and executes them.
【0026】
The present invention will be described with respect to a color image processing system including CMM 9. Simply put, CMM 9 inputs color image data in a first color format such as RGB and converts that color image data into a second format such as CMY. To perform the above color conversion operation, CMM 9 uses the data stored in the ICC profile. This data is explained in the "International Color Consortium Profile Format", Edition 3.01 (revised May 8, 1995), and the content is incorporated into this application as a reference.
【0027】
In short, an ICC profile is a pair-by-pair device profile that transforms color data created on one device into a color space unique to another device. For example, as described above, ICC profiles can be used to convert RGB color image data for monitors to CMY image data for printers.
【0028】
The ICC profile provides CMM 9 with color conversion information about a particular device. More specifically, ICC profiles are provided on a device-by-device basis, converting color image data from a device-dependent color space (hereinafter referred to as "device-dependent color space") to a profile-coupled space, and further from the profile-bound space. Used by CMM 9 when converting to the device dependent color space of. This relationship is shown in Fig. 3.
【0029】
That is, FIG. 3 shows a monitor 31 having an ICC profile 32 used to convert the RGB image data of the monitor 31 into image data independent of the device in the profile coupling space 34. The printer 35 includes an ICC profile 37 that converts the color image data in the device-independent profile coupling space into the CMY image data available to the printer 35. Thus, CMM 9 uses ICC profiles to make the conversion between the two device-dependent color spaces. Note that FIG. 3 shows ICC profiles 32 and 37 for the monitor 31 and the printer 35, respectively, but these ICC profiles are not resident in the corresponding devices, respectively. The ICC profiles may be embedded in the data to be converted according to the ICC profiles, or may be stored in the memory of the connected personal computer. For example, an ICC profile could be stored in a single memory accessible by a single CPU.
【0030】
In addition, ICC profiles can be used for scanners, facsimile machines, and other devices, as well as printers and monitors.
【0031】
The profile coupling space is defined by a D50 standard illuminant, a 1931 CIE standard observer, and a 0/45 or 45/0 reflectance measurement geometry. The reference viewing condition is ANSI PH 2.30-1989, which is a D50 arts viewing environment.
【0032】
The ICC profile shown as an example in FIG. 4 contains two basic elements, a header 39 and a tag table 40. Header 39 contains information used by CMM 9 to process the input image data according to the ICC profile. The header data must be in big-endian notation. The tag table 40, described in more detail below with reference to FIG. 4, is used by CMM 9 to access color conversion operations and other information via public and private tags.
【0033】
The ICC profile contains a required public tag designed to provide the complete set of information that the CMM needs to convert color information between the profile binding space and the device-dependent color space. include. In addition, ICC profiles have optional public tags that can be used to perform additional conversions, and private tags that individual developers can customize to add their own values to the ICC profile. It may be included.
【0034】
In order to perform color conversion, CMM 9 requires an input device such as a scanner that the profile has the following tags. That is, a red colorant containing profile description tags, device maker tags, device model name tags, mediaXYZ white point tags, UCCMS private information tags, copyright tags, and relative XYZ tristimulus values for red channels. Tag (red colorant tag), blue colorant tag containing relative XYZ tristimulus values for blue channel (red colorant tag), green colorant tag containing relative XYZ tristimulus values for green channel (red colorant tag), red It is a channel gradation reproduction curve tag, a green channel gradation reproduction curve tag, and a blue channel gradation reproduction curve tag. Optionally, the profile can include an AtoBn tag that defines an 8-bit or 16-bit LUT.
【0035】
In order to perform color conversion, CMM 9 requires a display device such as a monitor to have the following tags in the profile. That is, a profile description tag, a device maker tag, a device model name tag, a media XYZ white dot tag, a copyright tag, a red colorant tag containing a relative value of a red phosphor, and a blue containing a relative value of a blue phosphor. A color agent tag, a blue color agent tag containing a relative value of a green phosphor, a red channel gradation reproduction curve tag, a green channel gradation reproduction curve tag, and a blue channel gradation reproduction curve tag. Optionally, the profile can include a UCCMS private information tag.
【0036】
In order to perform color conversion, CMM 9 requires the output device such as a printer to have the following tags in the profile. That is, profile description tag, device maker tag, device model name tag, AtoB0 tag, BtoA0 tag, gamut tag, AtoB1 tag, BtoA1 tag, AtoB2 tag, BtoA2 tag, UCCMS private information tag, XYZ media white point tag (XYZ media white point tag). XYZ media white point tag), measurement tag and copyright tag.
【0037】
The above AtoBn tag has either an ICC lut8Type or ICC lut16Type structure. The general-purpose model of the ICC lut8Type or ICC lut16Type structure is as follows. Matrix-> One-dimensional LUT-> Multi-dimensional LUT-> One-dimensional LUT [0038]
For the lut8Type tag, the input LUT, output LUT and color LUT are an array of 8-bit unsigned values. Each input table consists of 1-byte integers. Also, each entry in the input table is properly standardized in the range 0-255. When stored in tags, one-dimensional LUTs are assumed to be packed sequentially in ascending order based on the ICC specification.
【0039】
The AtoB0 tag is used for photo rendering. The AtoB0 tag defines a 3x3 matrix, the matrix elements are stored in bytes 12 to 45 of the AtoB0 tag, the input channels of the C, M, Y inputs are stored in bytes 8 and the L, a, b outputs. Output channels are stored in bytes 9, LUT grid points (eg 33x33x33) are stored in bytes 10, paddings are stored in bytes 11, and input tables (matches) are stored in bytes 46 and beyond. And the color LUT and output table are also stored for photo rendering. Bytes 0 to 3 define the tag.
【0040】
The BtoA0 tag has the same format as the AtoB0 tag, except that the input and output tables are swapped and the color LUT is the opposite of the AtoB0 tag.
【0041】
The gamut tag has the same format as the AtoB0 tag, except that the gamut tag uses L, a, b values for the input channel and outputs a bitmap to the output channel.
【0042】
The AtoB1 tag is used for relative colormetric rendering and has a format corresponding to the AtoB0 tag. On the other hand, the BtoA1 tag is used for the minimum color difference rendering and has a format corresponding to the BtoA0 tag. Both of these are either lut16Type or lut8Type.
【0043】
The AtoB2 tag is used for saturation rendering and has a format corresponding to the AtoB0 tag. On the other hand, the BtoA2 tag is used for saturation-priority rendering and has a format corresponding to the BtoA0 tag. Both of these are either lut16Type or lut8Type.
【0044】
CMM 9 also supports an optional preview profile public tag. This tag has the same format as the AtoB0 tag, except that L, a, b data is input to the input channel.
【0045】
As described in more detail below, the present invention uses customized private tags to modify and manipulate color conversion operations performed within a given ICC profile.
【0046】
In the present invention, CMM 9 accesses ICC profile 8 and / or various public tags and private tags stored in ICC profile 8 to create or modify private tags (and / or device profiles). Includes Profile Manager Routine 12 (eg ColorGear (R) manufactured by Canon Information Systems, Inc.).
【0047】
The creation or modification of the private tag is executed according to the flow chart shown in FIG. 5, which describes the operation of the application program 10 for creating and modifying the private tag for inputting information into the private tag. More specifically, when executing this application program 10, step S501 determines whether a private tag should be created or modified. If the private tag should be created, the process proceeds to step S502 and displays it on the display screen 2 to prompt the user for the information necessary to create the private tag. If the user fails to enter all the required information, no private tag will be created. Figures 6 and 7 show examples of screens that urge the user. Screens 43 and 44 shown in FIGS. 6 and 7, respectively, correspond to the private tags of FIG. 8, which will be described in more detail below.
【0048】
On the other hand, if the private tag should be changed in step S501, the process proceeds to step S506, and the user clicks the "Get" button 42 on the input screen 43 (or input screen 44). In response to this, the application program 10 requests the profile manager routine 12 for private tag information based on the information on the screen. The profile manager routine 12 accesses the memory area of the requested private tag data and supplies the requested data to the application program 10.
【0049】
Upon receiving the private tag data, in step S502, the application program 10 displays information to the user on screens 43 and 44. Therefore, the user can set the information in the private tag as desired by inputting the information on the screen 43 and / or 44 and clicking the "Set" button 46. The user can use the "Next" button 47 and the "Previous" button 48 to see through the private tag data shown in FIGS. 6 and 7.
【0050】
When the information is input in step S503, the process proceeds to step S504, and the user sets the private tag data by clicking the "Set" button 46. When the user sets the private tag data, the private tag data is sent from the application program 10 to the profile manager routine 12. Upon receiving the private tag data, in step S505, the profile manager routine 12 stores the private tag data according to the byte allocation specified in the private tag. For example, in the case of the ucmI private tag shown in Figure 8 and described in more detail below, bytes 4 to 7 store the "Canon Signature" and bytes 112 to 175 contain the "Creator Division". , Etc. are stored. In this way, the user can change the information stored in the private tag.
【0051】
As described above, FIG. 4 shows a printout of the screen display of an example of ICC profile 8 including header 39 and tag table 40.
【0052】
Header 39 provides a set of parameters specific to ICC profile 8 and is preferably stored in the first 128 bytes of the profile. The parameters included in header 39 are described below.
【0053】
(1) Size: Stored in bytes 0 to 3 of header 39, defines the size of the profile.
【0054】
(2) CMM Type: Defines the CMM stored in bytes 4 to 7 of header 39 and associated with the profile. For Canon (R) devices, this value is "UCCM".
【0055】
(3) Version: Stored in bytes 8 to 11 and defines the version number of the profile. This is defined by the ICC from 2000000H.
【0056】
(4) Profile Class: Stored in bytes 12 to 15 to define the profile class, "prtr" (printer), "mntr" (monitor), "scnr" (scanner), "link" (link) Any one of device), "spac" (color space conversion) and "abst" (abstract profile).
【0057】
(5) Data Color Space: Stored in bytes 16-19, the profile defines the color format when converting color image data, RGB, XYZ, GRAY (grayscale), CMY, Luv, HSV, Any one of CMYK, YCbr, HLS, Lab and Yxy may be used.
【0058】
(6) Interchange Space: Stored in bytes 20-23, defines a profile join space, which can be either Lab or XYZ.
【0059】
(7) Creation Date: Defines the date and time when the profile was created, stored in bytes 24-35.
【0060】
(8) CS2 Signature: Stored in bytes 36-39 and defines the profile file signature. The file signature is used by the operating system of the device that uses the profile to create the icon.
【0061】
(9) Primary Platform (Prim.platform): Defines the primary platform or OS that is stored and profiled in bytes 40-43 and its values are "Appl" (Apple OS), "MSFT" (Microsoft's). It may be any one of OS), "SGI" (Silicon Graphics), "SUNW" (Sun) and "TGNT" (Taligent).
【0062】
(10) Flags: Stored in bytes 44-47, it defines various hints about CMM such as distributed processing and caching options. This parameter is not used on Canon (R) devices and is set to 0H.
【0063】
(11) Device Manufacturer: The signature of the manufacturer of the device stored in bytes 48-51 and for which the profile should be used. For Canon (R) devices, this parameter has the value "CANO".
【0064】
(12) device Model: Defines the model number or name of the device stored in bytes 52-55 and for which the profile should be used. The "Device Model" value must comply with the standards imposed by ICC, Apple's ColorSync (R) and Microsoft's ICM (R) (Image Color Matching). In particular, the model number or first name must be a 4-byte ASCII string that uses the letters "A" to "Z" (uppercase letters only and the letters "0" to "9"). The format of the "device model" should be as follows. 1st byte: Division ID 2nd-4th bytes: Model number and extension [0065]
The "department ID" identifies the company or department that manufactured the product. Ideally, each company or department should have its own "department ID". In Canon, departments are defined as follows. "B" is a bubble jet, "C" is a copier, "D" is a digital camera, "F" is a facsimile, "L" is a laser beam printer, and "M" is a Canon (R) monitor. , "S" represents a scanner, "V" represents a video camera, and "Z" represents a third party, that is, a non-Canon product file. These values are randomly defined and can be set as desired. In a preferred embodiment, bytes 2-4 of the "device model" are encoded according to one of the following two formats.
【0066】
(a) Format 1 1 byte: Department byte 2 bytes: model name 1 byte: extension [0067]
As mentioned above, the department byte stores the department of the device that uses the profile. The model name byte stores the model of the device. The extension byte stores the extension of the device, for example, the BJ-600e would be considered an extension of the BJ-600 device. In order to avoid the situation where two devices have the same "device model", the following rules are adopted. AI is used as an extension indicator for nine extensions, JR is used as an extension indicator for the next nine extensions when there is a collision in the first 3 bytes, and SZ is an extension indicator for the next eight extensions. And 0-9 is used as an extension indicator to represent the next 10 extensions. An example of this system is shown below. BJC-4000 ---> B40A (first extension of BJC-4000), BJC-4000E ---> B40B (second extension of BJC-4000), BJC-400 ---> B40J (first extension of BJC-400), and BJC-400X ---> B40K (second extension of BJC-400) [0068]
(b) Format 2 1 byte: Department byte 3 bytes: model ID + extension [0069]
In this format, the department byte is the same as the department byte described above, and the model ID and extension number are defined to ensure that two different devices do not have the same "device model". In the second format, a mathematical algorithm is used to calculate a unique model ID + extension from the actual model number, eg "600" on the BJC-600. However, any method may be used as long as each device generates its own "device model" value.
【0070】
(13) Device Attributes: Stored in bytes 56-63 and unique to a particular device setup. In the present invention, the medium type, resolution, halftoning ink type and creator must be specified. The preferred format for "device attributes" is byte 56-57 as ICC reserved, byte 58 as medium type, byte 59 as resolution, byte 60 as screening, byte 61 as ink type, and byte. 62 to 63 are reserved for future use.
【0071】
In a preferred embodiment, the medium type, resolution, gradation processing and ink type have values defined as follows. (a) Medium type 0: Not applicable / Don't care 1: Plain paper 2: Coated paper 3: Glossy paper 4: OHP chart paper 5: High Glossy Film 6: Fine coated paper 7: BPF chart paper 8: Textile Paper (b) Resolution 0: Not applicable / Don't care 1: 180 x 180 dots per inch (180 x 180 dpi) 2: 200 × 200dpi 3: 300 × 300dpi 4: 360 x 360 dpi 5: 400 × 400dpi 6: 600 × 300dpi 7: 600 × 600dpi 8: 720 x 360 dpi 9: 720 x 720dpi 10: 1200 x 600dpi 11: 1200 x 1200 dpi (c) Gradation processing 0: Not applicable / Don't care 1: Pattern 1 2: Pattern 2 3: Pattern 3 4: Error diffusion 5: Continuous gradation pattern 1 6: Continuous gradation pattern 2 7: Continuous gradation pattern 3 (d) Ink type 0: Not applicable / Don't care 1: Normal ink 2: Ink type 1 [0072]
The above values can be changed as desired.
【0073】
(14) Rendering Intent: Stored in bytes 64 to 67, profile design intent (ie, perceptual, relative colormetric, saturation and absolute) Absolute)) is defined. In the present invention, this value is 0.
【0074】
(15) White XYZ: Stored in bytes 68-79, it defines the illuminance value of the profile coupling space. In the present invention, this value is set to D50.
【0075】
(16) Bytes 80-127 are reserved by the ICC for future use.
【0076】
Header 39 is not a complete list of all the information that can be stored in the profile header, but merely an example of the information that can be stored in the profile header.
【0077】
In addition to the information described above, other information may be added to the header as needed or as desired. For this purpose, the ICC reserves 48 bytes for future use, as shown above. However, in order to realize the present invention, all the information shown in the header 39 must be present.
【0078】
The tag table 40 contains a list of tags and information about those tags, both public and private. In the profile, tag table 40 starts at byte 128 (ie after header 39). More specifically, as shown in tag table 40, "Ind" indicates the tag number in tag table 40, and "Signat" is the tag signature, which is used by the CMM to locate a particular tag. , "Element Offset" indicates the location of the memory where the tag starts, both in decimal and hexadecimal, and "size" defines the size of the tag in bytes.
【0079】
For each tag in the tag table 40, bytes 0 to 3 define the tag signature, bytes 4 to 7 define the offset value that indicates the start of the tag data, and bytes 8 to 11 are the number of bytes in the tag. It is a structure as defined.
【0080】
As mentioned earlier, public tags define ordinary (stock) color conversion operations that can be used in all ICC profiles. An example of a public tag defined in the tag table 40 is A2B2, which includes a 3 × 3 color conversion matrix process, a 3D LUT, and 2 sets consisting of 3 1D LUTs. Other examples of public tags are described in more detail in the ICC profile format document.
【0081】
In the tag table 40, tags with "Ind" values from 0 to 16 constitute public tags, and tags with "Ind" values 17 and 18 constitute private tags. In this case, the private tag is a Canon (R) registered private tag.
【0082】
The present invention will be described in relation to the above two private tags, in relation to the public tags listed in the tag table 40. However, the present invention can be used in combination with any public tag described in an ICC profile format document, or a tag such as compatible with it.
【0083】
In short, the present invention is a system that performs a color conversion operation on input image data, and this system is a first system instead of performing a predetermined series of color conversion operations stored in one public tag in a profile format. Perform a color conversion operation using the tag and the second tag. The system includes the following steps: That is, an input step for inputting color image data, a first tag for storing a predetermined set of override information, and color conversion operation data accessible via a hierarchical storage structure. There is a storage step for storing the second tag, and a determination step for determining whether or not to access the second tag based on the override information of the first tag. The system also includes the following steps: That is, when it is determined in the determination step that the second tag is to be accessed, the color conversion operation data of the second tag is read according to the pointer for accessing the color conversion operation data in the hierarchical storage structure of the second tag. It is a step and a processing step of performing a color conversion calculation on the input image data according to the color conversion calculation data read in the reading step.
【0084】
The present invention stores color conversion operations and calls other public and private tags in the hierarchy. This hierarchical structure is shown in FIG. 9, and FIG. 9 will be discussed in detail below in relation to the detailed explanation of each element shown in the figure.
【0085】
Hereinafter, the private tag having the signature "ucmI" and the value 17 "Ind" indicated by the code 52 stores information on the interaction between the ICC profile 8 private tag and the ICC profile 8 public tag. In addition, ucmI 52 remembers the information required by CMM 9 for color matching using private tags. If ucmI 52 is missing, CMM 9 uses the default settings to interpret the profile. As shown in Figure 8, this information is stored in ucmI 52 in byte order.
【0086】
That is, column 53 of ucmI 52 defines a byte of ucmI 52 that stores data in column 56. Column 54 describes the data stored in the bytes of column 53, and column 57 defines the format of the data stored in the bytes of column 53. Here, "uInt32" represents a 32-bit unsigned integer, and the notation in which a number follows "0x" indicates that the number is in hexadecimal format.
【0087】
The following data is stored in ucmI 52. In other words, the "uccms Private Information Tag Signature", which is a tag-specific identifier that can be used by CMM9 when accessing ucmI 52, and the secondary identifier for identifying the private tag from the Canon (R) private tag. "Canon Signature" and "Size of parameters in bytes" that define the parameter data size of the parameters used in the color conversion operation (described in more detail below) and the profile. The "Engine version" that defines the minimum CMM version required to read, the "Profile Format Document version" that defines the version of the profile, and the profile version assigned by its creator. Define "Profile version (Profile) "Version", "Profile Build number" that defines the build number of the corresponding profile, "Interpolation flag" that defines the type of linear interpolation that should be used by the profile, and bytes 32. With an override element stored in to 71 (discussed in more detail below) and containing the Sequence Canon ID number required to override certain publicters such as A2B2. Create an optimization flag value that stores the CMM 9 optimization flag, stored in bytes 72-111 and indicates a printing mode type, such as draft mode, and the Canon (R) department that created the profile. The Creator Division, the Support Division that defines the Canon (R) department that supports the profile, and the Von Kries flag that determines whether to use Von Kries color conversion. And the reserved byte.
【0088】
Figures 10A and 10B are flow diagrams showing ICC profile 8 by CMM 9 and its associated navigation of public and private tags.
【0089】
More specifically, in step S1001, CMM 9 reads the CMM Type of profile 8 in header 39. The CMM type corresponds to a pointer to an area of memory where a value is stored.
【0090】
Then, in step S1002 of FIG. 10A, if CMM 9 determines that profile 8 is a "UCCM" profile based on the CMM type in header 39, the process proceeds to step S1003 and CMM 9 is not a public tag. Performs color conversion calculation according to ucmI 52. That is, as shown in FIG. 9, ucmI 52 is at the top of the storage hierarchy.
【0091】
That is, CMM 9 reads the signature of ucmI 52 based on bytes 0 to 3 of ucmI 52 and accesses the "element Offset" area of memory corresponding to ucmI 52, in this case byte 25667810 (Figure 4). See).
【0092】
Then, in step S1003 of Figure 10A, CMM 9 reads the data in bytes 32 to 71 of ucmI 52, and based on that, determines which of the operations defined by the public tag in profile 8 is overridden. judge. Here, if there is 0H in the override area of ucmI 52, CMM 9 will perform the color conversion according to the process stored in the corresponding public tag. If there is a nonzero value in the override region of ucmI 52, CMM 9 will perform the color conversion according to the process stored in ucmI 52 and defined by that nonzero value. For example, as shown in FIG. 8, the AtoB0Tag override 59 has a value of "0x0" or 0H. Based on this information, CMM 9 performs AtoB0Tag color conversion processing according to the color conversion process stored in the AtoB0Tag public tag. Therefore, the flow of the AtoB0Tag color conversion process proceeds toward the end of FIG. 10B.
【0093】
However, as also shown in FIG. 8, the BtoA2Tag override 60 has a value "0x33" or 33H that acts as a pointer to an area of memory. Therefore, for the BtoA2Tag color conversion operation, the processing proceeds according to the information stored in ucmI 52, not according to the BtoA2Tag public tag.
【0094】
More specifically, as shown in FIG. 10A, the process proceeds to step S1005, where the CMM automatically reads a private tag with its signature "ucmP" and an "Ind" value of 18 as indicated by reference numeral 62.
【0095】
FIG. 11 shows an example of ucmP 62. As shown in Figure 11, ucmP 62 stores information in byte order in the same format as ucmI 52. Therefore, for the sake of brevity, a detailed description of this storage format will be omitted.
【0096】
ucmP 62 stores the following information: In other words, the "uccms Private Sequences TagTable Signature", which is the tag identification identifier used by CMM 9 to access ucmP 62, and the "Canon Signature", which is the same as the "Canon Signature" mentioned above for ucmI 52 Defines a "signature" and a "number of Sequences" that defines the number of color conversion sequences that should be performed via ucmP 62, and a set of color conversion operations that should be performed on a particular color conversion sequence. "Sequences structures" and other relevant information required by CMM 9 that performs the color conversion sequence. Although FIG. 11 shows only four sequence structures, any number of sequence structures can be added to ucmP 62, and the number of sequence structures is limited only by the hardware that implements the present invention.
【0097】
The sequence structure of the color conversion sequence is shown in FIG. Note that the specific operation in the color conversion sequence may change with other parameters included in it, but the sequence structure is fixed.
【0098】
That is, all color conversion sequences include a "Canon ID", which is the sequence that CMM9 uses to access a particular sequence structure. In this case, the "Canon ID" is 33H, which corresponds to the BtoA2Tag override 60 of ucmI 52 in FIG. This correspondence allows CMM9 to determine which color matching sequence in ucmP 62 to access based on ucmI 52 .
【0099】
The color conversion sequence structure further includes: That is, "reserved bytes" that maintain the value of 00H, "numOpers" that define the number of operations in the color conversion sequence, and the corresponding profile transform the data, as discussed in more detail below. "SeqPCS" that defines the profile coupling space, "length" that defines the byte length of the parameters used in the operations that should be performed by the color conversion sequence, and the color conversion that should be performed by the color conversion sequence. It is an "offset" that defines the starting point in the memory of the operation.
【0100】
As shown in FIG. 12, the sequence structure also defines the format of the data stored in it. In this case, as shown in the figure, the format is "uInt32", which corresponds to a 32-bit unsigned integer as described above.
【0101】
The sequence structure contains a byte string stored in bytes 16-39 of column 65 of ucmP 62, as shown in FIG. That is, in the case of the examples shown in FIGS. 11 and 12, "CanonID" is 33, "reserved" is 00, "numOpers" is 04, "seqPCS" is LAB, "length" is 40, and "offset" is 5163. .. These values are stored as data in bytes 16 to 39 of sequence structure 1. Similarly, sequence structures 2 to 4 can also contain identifiable sequence structures. However, for the sake of brevity, the description of the present invention will proceed only with respect to the sequence structure described above. Thus, as shown in FIG. 9, ucmP 62 is next to ucmI 52 in the hierarchical storage structure, followed by various available sequence structures 66-68.
【0102】
To summarize the explanation so far, since 33H exists in the BtoA2Tag override 60 of ucmI 52 and the sequence structure 1 has a Canon ID of 33H, the CMM 9 reads the sequence structure 1.
【0103】
As described above, each sequence structure contains a "numOpers" value, a "length" value and an "offset" value. CMM 9 uses these values to access the color conversion operations stored in the sequence structure. More specifically, (1) each color conversion operation is a fixed length defined by "length", (2) the number of color conversion operations defined by "numOpers" is known, and (3) Since the memory area in which the color conversion operations are stored in order is also known, the CMM9 can analyze each color conversion operation (parse) and execute the operation based on the information stored in the sequence structure. This process is described in more detail below.
【0104】
FIG. 13 shows the structure of the color conversion operation. That is, the structure of the color conversion operation is defined as follows. The "oper" defines the type of color conversion operation to be performed, and the "subid" defines the sub-identification number for a particular color conversion operation, as described in more detail below. "length" defines the length of the parameter list in the color conversion operation, and "tagFlag" is a call to another public or private tag if "tagFlag" has a non-zero value. If "tagFlag" has a zero value, define a call for the color conversion operation stored in the parameter list, and "parm" defines the parameter list used in the color conversion operation. To do.
【0105】
There are seven types of color conversion operations that can currently be performed using the present invention. These seven color conversion operations include the following, each defined by the UCCMS operation number in parentheses. That is, (1) N × M matrix, (2) three one-dimensional LUTs, (3) three-dimensional LUTs, (4) color space conversion, (5) hue shift (Shift Hues) (color warping). , (6) Business graphics transformations, (7) Tri-linear or pyramidal three-dimensional LUTs. Color conversion operations can be added or removed from this list if desired.
【0106】
Each of the above color conversion operations performs different operations on the input color image data. For example, the NxM matrix could be a 3x3 matrix used to convert color image data from the XYZ color space to the RGB color space. Similar color conversions could be performed according to other operations accessed from the sequence structure.
【0107】
CMM9 stores a list of the above seven operations. When CMM9 determines that one of those operations should be performed on the color image data based on the "oper" value of the sequence structure, CMM9 performs the color conversion operation on the data related to the operation to be performed. Is read from the private tag that specifies, and the data is used to perform a color conversion operation on the color image. Next, access to data related to the operation to be executed from the specified private tag will be described.
【0108】
That is, according to FIG. 10B, each structure of the color conversion operation is read from the sequence structure, and based on this, it is determined which type of color conversion operation should be executed. For example, when CMM9 reads "1" representing a specific color conversion operation as an "oper" value that acts as a pointer indicating an area in memory, the color conversion operation corresponding to "1", in this case N × Access the M matrix. FIG. 9 further shows the relationship between the color conversion operation and the sequence structure 66, that is, the color conversion operation has a lower hierarchy than the sequence structure 66.
【0109】
FIG. 14 shows an example of UCCMS operation 1, i.e., an N × M tag 80 containing data used to perform an N × M matrix. As shown in FIG. 14, the format of the private tag used to implement the N × M matrix is similar to the format of the private tag used to implement ucmP62. Therefore, for the sake of brevity, a detailed description of the format is omitted here. The format and structure of each of the private tags used in the color conversion operation are the same as those of the N × M tag 80.
【0110】
The N × M tag 80 shown in FIG. 14 includes: That is, as described above, the "operation ID" that defines the type of color conversion operation performed by the private tag, and the "sub ID" that is not used in this case, will be described in more detail below. ) , And the Length of Parameter List in bytes that defines the length of the parameter list, which will be described later, and is used to access the parameter list, which will be described in more detail below. Are unused tag flags and "Parameter Data" that define the parameters that should be used in the color conversion operation. As shown in FIG. 14, in this case, the parameters used in the N × M matrix in which N and M are both 3 are the N dimension of the matrix, the M dimension of the matrix, and each matrix element.
【0111】
Therefore, when the CMM9 determines that the N × M color conversion operation should be executed based on step S1006 of the flow diagram shown in FIG. 10B, it reads the parameter data stored in the N × M tag 80 and steps. The S1007 executes the color conversion operation defined by the "operation ID" according to the read parameters.
【0112】
If the "oper" value of the color conversion operation defined in the sequence structure 1 is 2, the process proceeds to step S1008 and then to step S1009. Steps S1008 and S1009 define a color conversion operation that includes a one-dimensional LUT. Figures 15A and 15B show two examples of private tags that could be used to create a LUT for color conversion operation 2 with an "oper" value of 2.
【0113】
Figure 15A shows a one-dimensional LUT (1DLUT) tag 81 that defines a LUT for color conversion operation 2 and calls a public tag or another private tag from the one-dimensional LUT 81. More specifically, in FIG. 15A, the "Tag Flag" value is "A2B2". A "Tag Flag" defines a call to another tag, in this case the "AtoB2" public tag. That is, when the CMM9 reads the one-dimensional LUT81 and obtains "A2B2" as the value of the "Tag Flag", it accesses the "AtoB2" public tag and executes the color conversion operation accordingly. Therefore, in this case, since the color conversion operation is performed according to the data stored in the public tag, "Parameter Data" is unnecessary. Therefore, the "Length of Parameter List" also has a zero value.
【0114】
According to the present invention, it is advantageous that the user can set a "Sub ID" value to select a specific color conversion operation in the public tag specified by the "Tag Flag". .. That is, each public tag such as "AtoB2" may contain two or more color conversion operations. The present invention selects one color conversion operation from public tags. For example, the public tag "AtoB2" includes a 3x3 matrix and three LUTs, namely an input LUT from lut8Type / lut16Type, an output LUT from lut8Type / lut16Type, and a LUT from a curve-type. By setting the "Sub ID" value to 0, 1 or 2 in the one-dimensional LUT tag 81, the CMM9 performs only one of the color matching operations specified by the public tag "AtoB2". .. Furthermore, CMM9 is the "operation ID (Operation) of the one-dimensional LUT tag 81. Since we know that the LUT operation should be performed based on "ID)", we only select one LUT stored in the public tag "AtoB2", and do not select, for example, a 3x3 matrix.
【0115】
In a preferred embodiment of the invention, the value "0" of the "Sub ID" tells the CMM to use the input LUT from the lut8Type / lut16Type and of the "Sub ID". A value of "1" tells CMM9 to use the output LUT from lut8Type / lut16Type, and a value of "Sub ID" of "2" uses a LUT from the curve-type. It tells CMM9 to do this, but as shown earlier, they are all stored in the public tag "AtoB2". The same specification can be made for each public tag shown in FIG. 4 and other public tags that are considered to include a plurality of color conversion operations.
【0116】
Figure 15B shows a one-dimensional LUT tag 82 for color conversion operation 2 where the "Tag Flag" is zero, that is, the color conversion operation should be performed according to the information of the private tag, not according to the information of the public tag. An example is shown. That is, in the one-dimensional LUT tag 82, as described above, the length of the parameter list that indicates the byte length of the parameter data stored after the 16th byte of the one-dimensional LUT tag 82. (Length of Parameter List) is 77110. The "Parameter Data" defined by the one-dimensional LUT tag 82 includes the parameter data necessary to perform a color conversion operation such as gamma correction using the LUT. That is, as shown in FIG. 15B, "Parameter data (Parameter). "Data)" includes the dimension of the LUT, the number of input / output bits of the input / output data, and the value of the LUT. As mentioned above, the number of parameters, the size of the LUT, is not limited by private tags. These values are limited only by the ability of the computer device to realize the present invention.
【0117】
Returning to FIG. 10B, if the oper value of the color conversion operation defined in the sequence structure 1 is 3, the process proceeds to step S1010 and then to step S1011. Steps S1010 and S1011 define the color conversion operation of the 3D LUT. FIG. 16 shows an example of a private tag that realizes the color conversion operation 3 in which the oper value is 3. The description of FIG. 16 is similar to the previous description of FIG. 15, so the detailed description of FIG. 16 is omitted for brevity.
【0118】
Returning to FIG. 10B, if the oper value of the color conversion operation defined in the sequence structure 1 is 4, the process proceeds to step S1012 and then to step S1013. Steps S1012 and S1013 define the color space conversion operation.
【0119】
FIG. 17 shows an example of a private tag (color space tag 84) that realizes the color conversion operation 4 in which the oper value is 4. In FIG. 17, the Operation ID is 4, the Length of Parameter List is 0, and the Tag Flag is 0H. In this case, these values do not change. The "SubID" in this case defines the type of color space conversion operation to be performed via the color space tag 84. Through the color space tag 84, the following color space transformations defined by the "Sub ID" values from 1 to 9 can be performed. 0: RGB (red, green, blue)-> HLS (hue, lightness, saturation) 1: HLS-> RGB 2: CMY (cyan, magenta, yellow)-> HLS 3: HLS-> CMY 4: CIE XYZ-> CIE Lab 5: CIE Lab-> CIE XYZ 6: CIR xyY-> CIE XYZ 7: CIE XYZ-> CIE xyY 8: CIE XYZ-> CRGB (Canon RGB) 9: CRGB-> CIE XYZ [0120]
It should be noted that the list of color space conversions described above is not exhaustive, and another color space conversion operation may be added if desired.
【0121】
When the "oper" value of the color conversion operation defined in the sequence structure 1 is 5, the process of FIG. 10B proceeds to step S1014 and then to step S1015. Steps S1014 and S1015 define the color warping conversion operation. Simply put, the color warping conversion operation uses the hue angle of the input RGB to correct the CMYK error of the output color image data.
【0122】
FIG. 18 shows an example of a warping tag 88 that realizes the color conversion operation 5 in which the oper value is 5. In FIG. 18, the Operation ID is 5, the Sub ID is 0, and the Tag Flag is 0H. These values do not change. In this case, the "Parameter Data" includes the values required to execute the color warping conversion function, that is, the RGB hue angle.
【0123】
When the "oper" value of the color conversion operation defined in the sequence structure 1 is 6, the process of FIG. 10B proceeds to step S1016 and then to step S1017. Steps S1016 and S1017 are useful, for example, when performing color conversion operations as described in the currently pending U.S. Patent Application No. 08 / 496,100, named "Color Management System Having Business Graphics Rendering Mode." Define a business graphics LUT that is. The contents of this US application are incorporated into this application for reference. The business tags 89 and 90 shown in FIGS. 19A and 19B correspond to the one-dimensional LUT tags 81 and 82 shown in FIGS. 15A and 15B, respectively.
【0124】
Similar to the case of the private tag shown in FIG. 15 above, the private tag shown in FIG. 19 is accessed by CMM9 via sequence structure 1 of ucmP 62. However, when the input data to be processed according to the private tag shown in FIG. 11 has the same value, the CMM9 does not execute the color conversion operation according to any of the private tags shown in FIG. 19, and the color conversion operation is not executed at all. This is the only difference between the color conversion performed according to the private tag shown in FIG. 19 and that of FIG. 15, so for the sake of brevity, a detailed description of the color conversion operation defined by the private tag shown in FIG. Omit.
【0125】
When the "oper" value of the color conversion operation defined in the sequence structure 1 is 7, the process of FIG. 10B proceeds to step S1018 and then to step S1019. Steps S1018 and S1019 define a tri-linear or pyramidal interpolation process that performs three-dimensional linear interpolation.
【0126】
In a preferred embodiment of the invention, the private tag that performs trilinear or pyramidal interpolation has a configuration similar to the other private tags described above. FIG. 20 shows a preferred embodiment of the private tag 92 used to perform the color conversion operation 7. As shown in FIG. 12, in the private tag 92, the operation ID is 7, the sub ID is 0, and the Tag Flag is zero. These values do not change. In addition, the "Length of Parameter List" has a value corresponding to the number of bytes that make up the parameter, and defines "Parameter Data" that defines the data for performing trilinear or prismatic interpolation. ) Is also included.
【0127】
Another embodiment of the private tag used to perform trilinear or pyramidal interpolation according to the present invention is shown in FIG. That is, the private tag 39 shown in FIG. 21 includes a "Table ID" instead of including parameter data used to perform the required color conversion operation. The "Table ID" value refers to another private tag used to determine whether to perform trilinear interpolation or pyramidal interpolation. An example of this other private tag is shown in FIG.
【0128】
More specifically, FIG. 22 shows an example of a private tag 94 that is called from the private tag 93 shown in FIG. 21 and defines a table used to perform trilinear or pyramidal interpolation.
【0129】
That is, as shown in FIG. 22, the private tag 94 represented by ucmT 94 below is configured in the same manner as the other private tags in the present invention, and includes the following elements. That is, the tag-specific identifier that CMM9 can use to access this private tag: the uccms Private Interpolation Table Tag Signature, and the Canon Signature described earlier for Figure 8. "Number of Tables" that defines the number of LUTs in ucmT 94, and "Table" N (N = 1, N = 1, which is the LUT for CMM9 to perform trilinear or prismatic interpolation. 2, ...).
【0130】
The "Table" value has a table header structure, an example of which is shown in FIG. As shown in FIG. 23, the table header structure includes: In other words, the table-specific identifier "table", the "length" that defines the length of the specified table, and the "offset" that defines the memory location where the specified table starts. (Offset) ". You can use this information to access different tables in memory. As shown in FIG. 9, these tables are accessed only from color conversion operation 7.
【0131】
Figure 24 shows an example of a private tag that defines a LUT accessed by ucmT 94. The LUT private tag 96 shown in FIG. 24 has the same format as the other private tags used in the present invention.
【0132】
The LUT private tag 96 contains the following elements: That is, the type of operation performed by the LUT, that is, the "tableKind" that defines trilinear interpolation if its value is 1, and the square cone interpolation if its value is 0, and the "tableKind" that defines the parent tag of the LUT. The "parentTag", the "inChannels" that define the number of input channels, the "inBits" that define the number of input bits used to address the LUT, and the output. The "outChannels" that define the number of channels and the "outBits" that define the number of bits used in the output, usually this number and the "inBits" are both 8. ) , And the grid point of the LUT (grid) A "gridPoints3DTable" that defines the number of points) and a "gridPoints4DTable" that defines the number of gridpoints for the fourth channel and is used only during pyramid interpolation. ". As mentioned above, the above information is used by the color matching method to perform trilinear or pyramidal interpolation.
【0133】
If the "parent tag" is 0x00000000 and the "table type" is trilinear, ucmT 94 points to a fully interpolated color LUT. If the "parent tag" is 0x00000000 and the "table type" is a pyramid, the first dataset in the color LUT is defined as the main grid point data, followed by the sub-intersection data. If the "parent tag" is the signature of the profile 8 3D LUT and the "table type" is trilinear, then the 3D LUT is used as a grid point and the remaining fields like "input channel" are It will be ignored. The "parent tag" is the signature of the profile 8 3D LUT. If the "table type" is a pyramid, then the 3D LUT is used as the primary grid point and the color LUT contains only the secondary grid points.
【0134】
Returning to FIG. 10B, if none of the operations of steps S1006 to S1018 are executed, the process ends. In addition, the private data tag called "Private DataTable Tag" can be changed by the user to include the user's private data and stored at a certain point in the hierarchical storage structure.
【0135】
Next, with reference to FIG. 25, the conversion of color image data from the RGB color space of the color monitor 2 to the CMY color space of the color printer 16 will be briefly described according to the present invention. It should be noted that such a color conversion process could probably be performed using currently available public tags, but to illustrate the present invention, the following examples relate to user-created private tags. explain.
【0136】
Assuming that there are predefined ICC profiles for both color monitor 2 and color printer 16, in step S2501, the user runs the application program 10 described above for creating and modifying private tags. According to this program, the user can use the private tag information for converting the color image data from the RGB color space to the profile combination space for the color monitor 2, and the color image from the profile combination space to the CMY color space of the color printer 16. Enter the private tag information to convert the data.
【0137】
If the private tags were created for both the color monitor 2 and the color printer 16 in step S2501, the process proceeds to step S2502. In step S2502, CMM 9 inputs the RGB color image data of color monitor 2. Then, in step S2503, the CMM 9 accesses the ICC profile to convert the color image data from the RGB color space to the profile combination space.
【0138】
If the CMM 9 accesses the color profile for color monitor 2, it reads the profile to determine which of the tags listed in the profile to access. In this case, CMM 9 would read "UCCM" under CMM Type, which indicates that processing should proceed according to the ucmI private tag, rather than following standard ICC procedures.
【0139】
It should be noted that the ICC profile used in this example has the same structure as described above. Therefore, in step S2504, CMM 9 reads ucmI to determine whether public and / or private tags should act on the RGB data. In this case, assuming that the override region of ucmI has a nonzero value, CMM 9 finds where one of the sequence structure regions of ucmP has the same nonzero value.
【0140】
Therefore, by the above steps, the CMM 9 performs the sequence of color conversion operations to be performed on the RGB color image data, that is, the color conversion operations accessed via the sequence structure corresponding to the non-zero value of the override region of ucmI. To determine.
【0141】
When the CMM 9 determines the sequence of color conversion operations to be performed on the RGB color image data, it accesses the data of each color conversion operation and the storage position data in the sequence structure of each color conversion operation based on the "oper" value. .. In this way, CMM 9 accesses a private tag that stores color conversion operation data such as elements of the N × M matrix.
【0142】
Next, in step S2505, the CMM 9 performs a color conversion operation on the RGB color image data indicated by the "oper" value of the sequence structure, using the parameters from the private tag referenced by the sequence structure. In this case, the parameters and color conversion operations will be set to convert the color image data from the RGB color space space to the profile combination space.
【0143】
Following the conversion to the profile join space, the process proceeds to step S2506. In step S2506, CMM 9 accesses the ICC profile of color printer 16. The ICC profile of the color printer 16 and the ICC profile of the color monitor 2 can be stored in one memory such as disk 7 or in separate memories, but are stored in one memory. And easy access by CMM9.
【0144】
When the CMM 9 accesses the color profile of the color printer 16, it determines which of the tags listed in the profile, as described above for the ICC profile of the color monitor 2, to access. Read the profile. In this case, the CMM will read "UCCM" under the CMM Type, which indicates that it will proceed according to the ucmI private tag without following the standard ICC procedure.
【0145】
That is, as described above, in steps S2506 to S2508, the CMM 9 takes the ucmI and ucmP private ICC profiles for the color printer 16 to convert the color image data from the profile combined space to the CMY color space of the color printer 16. Will access the tag. The outline of this process is the same as the process described above for the ICC profile for color monitor 2, so for the sake of brevity, a detailed description of the process is omitted here.
【0146】
Following step S2508, the process proceeds to step S2509 to output the color-converted CMY color image data to the printer 16.
【0147】
Although the present invention has been described in relation to the ICC profile format, the present invention can be used in combination with any kind of cross-platform device format that can store and access color conversion operations.
【0148】
Similarly, although the present invention has been described in the context of color monitors and color printers, the invention can also be utilized in combination with other color image processing devices such as color scanners or color facsimile machines.
【0149】
The present invention has been described in the context of one particular embodiment. The present invention is not limited to the above-described embodiments, and various modifications and modifications can be made by those skilled in the art without departing from the spirit of the claims.
【0150】
[Other Embodiments]
Even if the present invention is applied to a system composed of a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), the present invention is a device composed of one device (for example, a copier, a facsimile machine, etc.). May be applied to.
【0151】
Another object of the present invention is to supply a storage medium in which a program code of software that realizes the functions of the above-described embodiment is recorded to a system or device, and a computer (or CPU or MPU) of the system or device is a storage medium. Needless to say, it can be achieved by reading and executing the program code stored in. In this case, the program code itself read from the storage medium realizes the function of the above-described embodiment, and the storage medium storing the program code constitutes the present invention. As a storage medium for supplying the program code, for example, a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a non-volatile memory card, a ROM, or the like can be used.
【0152】
Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also the OS (operating system) running on the computer is activated based on the instructions of the program code. Needless to say, there are cases where a part or all of the actual processing is performed and the processing realizes the functions of the above-described embodiment.
【0153】
Further, the program code read from the storage medium is written in the memory provided in the function expansion card inserted in the computer or the function expansion unit connected to the computer, and then the function is expanded based on the instruction of the program code. Needless to say, there are cases where a CPU provided in a card or a function expansion unit performs a part or all of the actual processing, and the processing realizes the functions of the above-described embodiment.
[Simple explanation of drawings]
[Figure 1]
A perspective view of computer hardware used in the operation of the present invention. [Figure 2]
Block diagram of the present invention, [Fig. 3]
Diagram showing the relationship between the device-dependent color space and the profile combination space, [Fig. 4]
Diagram showing ICC profile, [Fig. 5]
Flow chart showing the creation and modification of private tags, [Fig. 6]
Diagram showing a screen depicting private tag information, [Fig. 7]
Diagram showing a screen depicting private tag information, [Fig. 8]
Diagram showing ucmI private tag, [Fig. 9]
A diagram showing the hierarchical relationship of private tags created by the present invention, [Fig. 10A]
A flow chart showing the setup of the color conversion process according to the present invention, [Fig. 10B]
A flow chart showing the setup of the color conversion process according to the present invention, [Fig. 11]
Diagram showing ucmP private tag, [Fig. 12]
Diagram showing the sequence structure, [Fig. 13]
Diagram showing the structure of the color conversion operation, [Fig. 14]
Diagram showing the private tags of the N × M matrix, [Fig. 15A]
Diagram showing examples of private tags for three one-dimensional lookup tables, [Fig. 15B]
Diagram showing examples of private tags for three one-dimensional lookup tables, [Fig. 16]
Diagram showing the private tags of a 3D look-up table, [Fig. 17]
Diagram showing a private tag in a color space, [Fig. 18]
Diagram showing private tags for color warping, [Fig. 19A]
Diagram showing an example of a private tag in a business graphics lookup table, [Fig. 19B]
Diagram showing an example of a private tag in a business graphics lookup table, [Fig. 20]
The figure which shows the 1st embodiment of the private tag of trilinear interpolation or pyramid interpolation, [Fig. 21]
The figure which shows the second embodiment of the private tag of trilinear interpolation or pyramid interpolation, [Fig. 22]
Diagram showing ucmT private tag, [Fig. 23]
Diagram showing the table structure, [Fig. 24]
Diagram showing the private tags of the table, [Fig. 25]
It is a flow chart which shows the processing step which converts the input image data from one color space to another color space using this invention.
29 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22 Sheet 23 Sheet 24 Sheet 25 Sheet 26 Sheet 27 Sheet 28 Sheet 29
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| JP2007181251A | Cited by | Japan | Examiner |
| US7554694B2 | Cited by | United States of America | Applicant |
| US6485478B2 | Cited by | United States of America | Applicant |
| US7369271B2 | Cited by | United States of America | Applicant |
| US7880931B2 | Cited by | United States of America | Applicant |
| US8184334B2 | Cited by | United States of America | Applicant |
| JP2009232046A | Cited by | Japan | Search report |
| US8203758B2 | Cited by | United States of America | Applicant |
8 members in 4 offices
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 52911195 | United States of America | A | |
| 08529111 | United States of America | – | – |
Members8
| Document | Office | Kind | |
|---|---|---|---|
| EP0763801A2 | European Patent Office (EPO) | A2 | |
| EP0763801A3 | European Patent Office (EPO) | A3 | |
| US5646752A | United States of America | A | |
| JPH09181908AThis record | Japan | A | |
| EP0763801B1 | European Patent Office (EPO) | B1 | |
| DE69630747D1 | Germany | D1 | |
| DE69630747T2 | Germany | T2 | |
| JP3902816B2 | Japan | B2 |
11 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Cancellation because of no payment of annual feesLAPS | LAPS | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Certificate of patent or registration of utility modelJAPANESE INTERMEDIATE CODE: R150R150 | R150 | |
| First payment of annual fees (during grant procedure)JAPANESE INTERMEDIATE CODE: A61A61 | A61 | |
| Written decision to grant a patent or to grant a registration (utility model)JAPANESE INTERMEDIATE CODE: A01A01 | A01 | |
| Decision of grant or rejection writtenTRDD | TRDD | |
| Written amendmentJAPANESE INTERMEDIATE CODE: A523A521 | A521 | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 |
Numbers
- Publication
- 9-181908
- Application
- 8255499
Titles2
- Japanese
- カラー画像処理装置およびその方法
- English
- [Title of Invention] Color Image Processing Device and Method Therefor
Classification
- CPC, 1
- G06T11/10
- IPC, 7
- G06T1 00
- G06T11 00
- G09G5 06
- G09G5 36
- H04N1 46
- H04N1 60
- H04N1 387