(57)【要約】【課題】入力画像に応じた適切な色再現性を保つこと。【解決手段】入力画像に階調性がある場合、画像処理装置のアウトプットプロファイルにおける色変換テーブルを入力画像に基づいて補正した補正色変換テーブルを生成する。そして、生成した補正色変換テーブルを用いて入力画像の色変換を行う。【選択図】図２
2015204601.tif 000002
【特許請求の範囲】
【請求項１】
入力画像に階調性があるか否かを判定する判定手段と、
前記判定手段で入力画像に階調性があると判定された場合、画像処理装置のアウトプットプロファイルにおける色変換テーブルを前記入力画像に基づいて補正した補正色変換テーブルを生成する生成手段と、
前記生成した補正色変換テーブルを用いて前記入力画像の色変換を行う色変換手段と
を有することを特徴とする画像処理装置。
【請求項２】
前記生成手段は、前記入力画像の色再現範囲を規定したソースプロファイルと、前記画像処理装置の色再現範囲を規定した前記アウトプットプロファイルとを用いて前記補正色変換テーブルを生成することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記生成手段は、前記入力画像の色再現範囲における最低明度値が前記画像処理装置の色再現範囲における最低明度値よりも低い場合、前記補正色変換テーブルを生成することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記生成手段は、前記画像処理装置の色再現範囲における最低明度値が前記入力画像の色再現範囲における最低明度値に対応するように、前記アウトプットプロファイルにおける前記色変換テーブルの各格子点における出力値を補正した補正色変換テーブルを生成することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記生成手段は、前記入力画像の色再現範囲における最低明度値が前記画像処理装置の色再現範囲における最低明度値よりも低くない場合、前記補正色変換テーブルを生成せず、
前記色変換手段は、前記アウトプットプロファイルにおける前記色変換テーブルを用いて前記入力画像の色変換を行うことを特徴とする請求項３または４に記載の画像処理装置。
【請求項６】
前記生成手段は、前記入力画像の色再現範囲における最高明度値が前記画像処理装置の色再現範囲における最高明度値よりも高い場合、前記補正色変換テーブルを生成することを特徴とする請求項１または２に記載の画像処理装置。
【請求項７】
前記生成手段は、前記画像処理装置の色再現範囲における最高明度値が前記入力画像の色再現範囲における最高明度値に対応するように、前記アウトプットプロファイルにおける前記色変換テーブルの各格子点における出力値を補正した補正色変換テーブルを生成することを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記生成手段は、前記入力画像の色再現範囲における最高明度値が前記画像処理装置の色再現範囲における最高明度値よりも高くない場合、前記補正色変換テーブルを生成せず、
前記色変換手段は、前記アウトプットプロファイルにおける前記色変換テーブルを用いて前記入力画像の色変換を行うことを特徴とする請求項６または７に記載の画像処理装置。
【請求項９】
前記生成手段は、前記入力画像の色再現範囲における最低明度値が前記画像処理装置の色再現範囲における最低明度値よりも低く、かつ前記入力画像の色再現範囲における最高明度値が前記画像処理装置の色再現範囲における最高明度値よりも高い場合、前記補正色変換テーブルを生成することを特徴とする請求項１または２に記載の画像処理装置。
【請求項１０】
前記生成手段は、前記画像処理装置の色再現範囲における最低明度値及び最高明度値が前記入力画像の色再現範囲における最低明度値及び最高明度値にそれぞれ対応するように、前記アウトプットプロファイルにおける前記色変換テーブルの各格子点における出力値を補正した補正色変換テーブルを生成することを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記生成手段は、前記画像処理装置のアウトプットプロファイルにおける色変換テーブルの各格子点の入力値を、
（各格子点の入力値  ―  前記入力画像における最低明度値）  ／  （前記画像処理装置の色再現範囲における最高明度値  ―  前記入力画像における最低明度値）  ＊  （前記画像処理装置の色再現範囲における最高明度値  ―  前記画像処理装置の色再現範囲における最低明度値）  ＋  前記画像処理装置の色再現範囲における最低明度値
によって変換した値を用いて前記補正色変換テーブルを生成することを特徴とする請求項３から５のいずれか一項に記載の画像処理装置。
【請求項１２】
前記生成手段は、前記画像処理装置のアウトプットプロファイルにおける色変換テーブルの各格子点の入力値を、
（各格子点の入力値  ―  前記画像処理装置の色再現範囲における最低明度値）  ／  （前記入力画像における最高明度値  ―  前記画像処理装置の色再現範囲における最低明度値）  ＊  （前記画像処理装置の色再現範囲における最高明度値  ―  前記画像処理装置における色再現範囲における最低明度値）  ＋  前記画像処理装置の色再現範囲における最低明度値
によって変換した値を用いて前記補正色変換テーブルを生成することを特徴とする請求項６から８のいずれか一項に記載の画像処理装置。
【請求項１３】
前記生成手段は、前記画像処理装置のアウトプットプロファイルにおける色変換テーブルの各格子点の入力値を、
（各格子点の入力値  ―  前記入力画像における最低明度値）  ／  （前記入力画像における最高明度値  ―  前記入力画像における最低明度値）  ＊  （前記画像処理装置の色再現範囲における最高明度値  ―  前記画像処理装置における色再現範囲における最低明度値）  ＋  前記画像処理装置の色再現範囲における最低明度値
によって変換した値を用いて前記色変換テーブルを生成することを特徴とする請求項９または１０に記載の画像処理装置。
【請求項１４】
前記生成手段は、前記変換後の各格子点の入力値を画像処理装置のアウトプットプロファイルにおける色変換テーブルを用いて出力した各出力値と、前記各格子点の入力値と、を対応付けた前記補正色変換テーブルを生成することを特徴とする請求項１１から１３のいずれか一項に記載の画像処理装置。
【請求項１５】
前記判定手段は、前記入力画像のヒストグラムを参照して前記判定を行うことを特徴とする請求項１から１４のいずれか一項に記載の画像処理装置。
【請求項１６】
前記判定手段は、画素数が第１の閾値以上の場合、階調性があると判定することを特徴とする請求項１５に記載の画像処理装置。
【請求項１７】
前記判定手段は、前記入力画像の周波数特性を参照して前記判定を行うことを特徴とする請求項１から１４のいずれか一項に記載の画像処理装置。
【請求項１８】
前記判定手段は、低周波成分の値が第３の閾値未満の場合、階調性があると判定することを特徴とする請求項１７に記載の画像処理装置。
【請求項１９】
前記判定手段は、前記入力画像を複数の領域に分割した分割画像ごとに前記判定を行うことを特徴とする請求項１から１８のいずれか一項に記載の画像処理装置。
【請求項２０】
入力画像に階調性があるか否かを判定する判定手段と、
前記判定手段で入力画像に階調性があると判定された場合、画像処理装置の色再現範囲における最低明度値または最高明度値の少なくとも一方が前記入力画像の色再現範囲における最低明度値または最高明度値の少なくとも一方にそれぞれ対応するように、画像処理装置のアウトプットプロファイルにおける色変換テーブルの各格子点における入力値と出力値とを補正した補正色変換テーブルを用いて色変換を行い、
前記判定手段で入力画像に階調性がないと判定された場合、前記入力画像の色再現範囲における値と前記画像処理装置の色再現範囲における値との差を最小とする色変換テーブルを用いて色変換を行なう、制御手段と
を有する画像処理装置。
【請求項２１】
入力画像に階調性があるか否かを判定する判定ステップと、
前記判定ステップで入力画像に階調性があると判定された場合、画像処理装置のアウトプットプロファイルにおける色変換テーブルを前記入力画像に基づいて補正した補正色変換テーブルを生成する生成ステップと、
前記生成した補正色変換テーブルを用いて前記入力画像の色変換を行う色変換ステップと
を有することを特徴とする画像処理方法。
【請求項２２】
入力画像に階調性があるか否かを判定する判定ステップと、
前記判定ステップで入力画像に階調性があると判定された場合、画像処理装置の色再現範囲における最低明度値または最高明度値の少なくとも一方が前記入力画像の色再現範囲における最低明度値または最高明度値の少なくとも一方にそれぞれ対応するように、画像処理装置のアウトプットプロファイルにおける色変換テーブルの各格子点における入力値と出力値とを補正した補正色変換テーブルを用いて色変換を行うステップと、
前記判定ステップで入力画像に階調性がないと判定された場合、前記入力画像の色再現範囲における値と前記画像処理装置の色再現範囲における値との差を最小とする色変換テーブルを用いて色変換を行なうステップと、
を有する画像処理方法。
【請求項２３】
コンピュータを請求項１から２０のいずれか一項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置と画像処理方法、及びプログラムに関するものである。
【背景技術】
【０００２】
特定の画像処理装置におけるシミュレーションを目的としたカラーマッチングが行なわれている。以下、シミュレーション対象となる特定の画像処理装置のことを出力機と称する。一般に、シミュレーションを目的としたカラーマッチングでは、出力機の色再現特性を記述したソースプロファイルを用いて、入力画像データをソースプロファイルの色域にプロットする。その後、プロットした色を「絶対的な色再現範囲を維持」する色変換を行えるよう設計されたアウトプットプロファイルを用いて、画像処理装置の色再現範囲へプロットする。こうすることでソースプロファイルの色再現範囲と画像処理装置の色再現範囲において共通の色再現範囲内にある色は、画像処理装置において出力機と同じ色を出力することが可能となる。
【０００３】
しかしながら、ある出力機のシミュレーションを目的としたカラーマッチングにおいて、ソースプロファイルの色再現範囲と画像処理装置の色再現範囲とが大幅に異なる場合がある。このような場合、「絶対的な色再現範囲を維持」する色変換を行なうと、両者の最低明度間に階調がある画像の印刷では階調がつぶれてしまう。例えば、画像処理装置の色再現範囲よりもソースプロファイルの色再現範囲の方が最低明度が低い場合を考える。この場合、画像処理装置の色再現範囲の最低明度（以下、黒点という）以下となる色度点を全て画像処理装置の黒点の色で出力することになるので、階調がつぶれてしまう。
【０００４】
特許文献１には、入力画像をソースプロファイルにより色変換した際に、画像処理装置の色再現範囲外の色を多くもつ場合、画像処理装置の色再現範囲外の階調性を維持する色変換を行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表２０１０−５４１３５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１の手法では入力画像における画像処理装置の色再現範囲外となる色の画素数に基づいて階調性を維持する色変換を行なう。このため、画像処理装置の色再現範囲外の色が階調性があるか一様な画像であるかの情報は得られない。従って、画像処理装置の色再現範囲外の色において階調性がない一様な画像であっても階調性を重視した色変換が行われる可能性があり、かえって色再現性を低下させる可能性がある。
【課題を解決するための手段】
【０００７】
本発明にかかる画像処理装置は、入力画像に階調性があるか否かを判定する判定手段と、前記判定手段で入力画像に階調性があると判定された場合、画像処理装置のアウトプットプロファイルにおける色変換テーブルを前記入力画像に基づいて補正した補正色変換テーブルを生成する生成手段と、前記生成した補正色変換テーブルを用いて前記入力画像の色変換を行う色変換手段とを有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、入力画像に応じた適切な色再現性を保つことが可能となる。
【図面の簡単な説明】
【０００９】
【図１】実施形態のカラー画像処理装置のモジュール構成を示すブロックである。
【図２】実施形態１における画像処理装置の処理フロー例である。
【図３】実施形態１における画像処理装置の黒点補正処理における処理フロー例である。
【図４】実施形態１における画像処理装置におけるピーク値のイメージを示す図である。
【図５】実施形態１における色域外判定処理のイメージを示す図である。
【図６】実施形態１における仮想黒点の補正のイメージを示す図である
【図７】実施形態１における画像処理装置の色変換テーブルの補正処理における処理フロー例である。
【図８】実施形態１における仮想黒点の補正と補正後の画像処理装置の色再現範囲のイメージを示す図である。
【図９】実施形態２における画像処理装置の黒点補正処理における処理フロー例を示す図である。
【図１０】実施形態３における画像処理装置の黒点補正処理における処理フロー例を示す図である。
【図１１】実施形態３におけるパワースペクトル算出処理のイメージを示す図である。
【図１２】実施形態４における画像処理装置の黒点補正処理における処理フロー例を示す図である。
【図１３】実施形態５における画像処理装置の処理フロー例である。
【図１４】実施形態５における画像処理装置の白点補正処理における処理フロー例である。
【図１５】実施形態５における色域外判定処理のイメージを示す図である。
【図１６】実施形態５における仮想白点の補正のイメージを示す図である。
【図１７】実施形態５における画像処理装置の色変換テーブルの補正処理における処理フロー例である。
【図１８】実施形態５における仮想白点の補正と補正後の画像処理装置の色再現範囲のイメージを示す図である。
【図１９】実施形態６における画像処理装置の処理フロー例である。
【図２０】実施形態６における画像処理装置の第一の色変換テーブル補正処理における処理フロー例である。
【図２１】実施形態６における仮想黒点と仮想白点の補正と補正後の画像処理装置の色再現範囲のイメージを示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための形態について図面を用いて説明する。以下の実施形態では電子写真方式の画像処理装置を例として説明する。
【００１１】
（実施形態１）
以下、実施形態１を図面を参照しながら詳細に説明する。
【００１２】
＜コントローラ部のモジュール構成＞
図１は、本実施形態における画像処理装置１０１のモジュール構成を示すブロック図である。画像処理装置例としては、デジタル電子写真複写機、レーザープリンタ、ファクシミリといったトナーを用いて画像形成を行う電子写真式のカラーまたはモノクロの画像処理装置に対応する。
【００１３】
画像処理装置１０１は、操作部１、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）部２、ＲＩＰ部（Ｒａｓｔｅｒ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｏｒ）３、制御部４、出力画像処理部５、プリンタ部６、及びメモリ部７を含む。
【００１４】
ＮＩＣ部２は、ネットワークを利用して入力された画像データをＲＩＰ部３に渡したり、画像処理装置１０１内部の画像データや装置情報をネットワーク経由で外部に送信したりする。ここで入力される画像データは、主に、ＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）データである。
【００１５】
ＲＩＰ部３は、ＮＩＣ部２から渡された画像データを解釈し、ラスター画像データへ展開する。ラスター画像データへの展開において適宜メモリ部７への格納と取り出しを繰り返す。以下、本実施形態においてはＣＭＹＫの画像データに展開されるものとして説明する。
【００１６】
制御部４は、画像処理装置１０１に入力されるデータや画像処理装置１０１から出力するデータを制御する役割を果たす。また、制御部４に入力された画像データは、一旦メモリ部７に格納される。また、制御部４は、後述する色変換テーブルを補正する処理や色変換処理を行なう。
【００１７】
出力画像処理部５は、画像処理装置１０１で出力するための画像処理を行うモジュールであり、出力画像処理部５で処理された画像データはプリンタ部６に送られる。
【００１８】
プリンタ部６は、シートを給紙し、出力画像処理部５で作られた画像データをそのシート上に順次印字していく。印字が完了すると図示しないシートの排紙口からシートが排紙される。なお、排紙後にシートの仕上げ処理を行う図示しない仕上げ部にシートが渡されるような形態も実施可能である。
【００１９】
メモリ部７は、制御部４を介して、操作部１、ＮＩＣ部２、ＲＩＰ部３、出力画像処理部５、プリンタ部６の各モジュールから参照可能な記憶媒体である。メモリ部７に格納されたデータは、各モジュールから一時的に格納されたり必要に応じて呼び出されたりする。また、本実施形態における処理を記述したプログラムや、ＩＣＣプロファイル等のカラープロファイルもメモリ部７に格納される。ＩＣＣプロファイルとは、ＩＣＣ（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｌｏｒ  Ｃｏｎｓｏｒｔｉｕｍ）で規格化されているカラープロファイルである。
【００２０】
ここでＩＣＣプロファイルに記載の色変換テーブルのうち、ソースプロファイル上に記載の色変換テーブルをソース用色変換テーブルとし、アウトプットプロファイル上に記載の色変換テーブルをアウト用色変換テーブルとして以降を説明する。
【００２１】
操作部１は、上記の様々なフローや機能をユーザが選択し実行指示を出すことが可能なユーザインタフェースである。操作部１において、印刷時にカラーマッチングに用いるソースプロファイルやアウトプットプロファイルを設定することが可能となる。
【００２２】
＜動作説明＞
以上に述べた構成において次にその動作について説明する。図２は、本実施形態の画像処理装置１０１により実行される色変換処理を説明するメインのフローチャートである。図２で示す処理手順は、図１の画像処理装置１０１における制御部４の図示しないＣＰＵがメモリ部７にロードされているカラープロファイル作成プログラムを読み出して実行することにより行われる。
【００２３】
ネットワーク上につながっている図示しないクライアントＰＣにより画像処理装置１０１へ印刷命令が送られると、制御部４はステップＳ２０１を開始する。
【００２４】
ステップＳ２０１において、制御部４は入力画像データを取得する。この入力画像データはＣＭＹＫ値の画像データである。入力画像データは、ＮＩＣ部２で入力したＰＤＬデータをＲＩＰ部３がＣＭＹＫ値の画像データに展開し、メモリ部７に格納したものである。
【００２５】
ステップＳ２０２において、制御部４は、ソースプロファイルの色再現特性を色差最小で再現する印刷であるか否かを印刷命令に基づいて判定する。ここでは、制御部４がＲＩＰ部３に送られたＰＤＬデータに含まれる印刷設定値の中で色差最小のカラーマッチングが設定されていた場合、色差最小の印刷であると判定する。色差最小の印刷であると判定した場合、後述するように黒点補正が行われる場合があるのでステップＳ２０３に進み、そうでない場合ステップＳ２０８に進む。なお、色差最小のカラーマッチングの設定は、画像処理装置１０１とネットワーク上で接続されている図示しないクライアントＰＣ上にあるドライバＵＩや画像処理装置１０１の操作部１で行われる。
【００２６】
ステップＳ２０３において、制御部４は画像処理装置１０１の黒点をメモリ部７から取得する。画像処理装置１０１の黒点とは、画像処理装置１０１の色再現範囲における最低明度を示す値である。本実施形態では算出した黒点があらかじめメモリ部７に格納されていることを前提として説明するが、操作部１からユーザが任意のチャートの出力画像を測色して得た画像処理装置１０１の黒点を設定することも本実施形態では可能である。
【００２７】
ステップＳ２０４において、制御部４は仮想黒点の補正を行う。仮想黒点は、画像処理装置１０１の黒点を出力するための信号値であるものとして説明する。仮想黒点は、メモリ部７に格納されており、ステップＳ２０４に入る時点では画像処理装置１０１の黒点と同じ値を持つものとする。ステップＳ２０４における詳細な処理については、後述する。
【００２８】
ステップＳ２０５において、制御部４は仮想黒点が補正されたか否かを判定する。制御部４はメモリ部７に格納されている画像処理装置１０１の黒点と仮想黒点との値を取得し、比較する。制御部４は、比較した結果が同値である場合は、仮想黒点の補正がないと判定し、画像処理装置１０１の黒点よりも仮想黒点の値が低ければ仮想黒点の補正があると判定する。制御部４は、仮想黒点が補正されたと判定すると、ステップＳ２０６の処理を開始し、アウト用色変換テーブルを補正する。一方、制御部４は、仮想黒点が補正されていないと判定すると、ステップＳ２０８の処理を開始する。
【００２９】
ステップＳ２０６において、制御部４はアウト用色変換テーブルを補正し、補正色変換テーブルを生成する。アウト用色変換テーブルの補正における詳細な処理については後述する。
【００３０】
ステップＳ２０７において、制御部４はステップＳ２０６で生成した補正色変換テーブルを用いて、ソースプロファイルの色再現範囲におけるＬ＊ａ＊ｂ＊画像データの色変換を行い、ＣＭＹＫ値で構成される画像データを生成する。なお、このソースプロファイルの色再現範囲におけるＬ＊ａ＊ｂ＊画像データは、後述するようにステップＳ２０４における仮想黒点の補正処理において、ＣＭＹＫ値で構成される入力画像データから変換された画像データである。
【００３１】
色差最小の印刷でない場合、または仮想黒点の補正がない場合、ステップＳ２０８において、制御部４は、ＣＭＹＫ値で構成される入力画像データをソース用色変換テーブルによりＬ＊ａ＊ｂ＊値に変換する。そしてそのＬ＊ａ＊ｂ＊画像データをアウトプットプロファイルに記載のアウト用色変換テーブルを用いてＣＭＹＫ画像データに色変換する。ここで、Ｌ＊ａ＊ｂ＊値とは国際照明委員会が策定したＣＩＥ  Ｌ＊ａ＊ｂ＊色空間で規定の値であり、一つの明度軸と二つの色相軸をもつ色空間上の座標を指す。ステップＳ２０８では、前述の「絶対的な色再現範囲を維持」する色変換を行なう。
【００３２】
ステップＳ２０９において、制御部４は、ステップＳ２０７またはステップＳ２０８で生成されたＣＭＹＫ画像データを出力画像処理部５を制御して印刷用画像データに変換し、プリンタ部６を制御し用紙上に出力する。
【００３３】
制御部４は、図２に示すフローチャートの一連の処理をステップＳ２０９の処理の終了をもって、完了する。
【００３４】
図３は、上述した図２の処理手順におけるステップＳ２０４の仮想黒点の補正処理の詳細手順を説明するフローチャートである。図３が示す処理手順は、図１の画像処理装置１０１における制御部４の図示しないＣＰＵがメモリ部７にロードされているカラープロファイル作成プログラムを読み出して実行することにより行われる。
【００３５】
ステップＳ３０１において、制御部４は、入力画像データの色変換処理を行なう。まず、制御部４は、メモリ部７に格納された入力画像データと、ソースプロファイルとを取得する。制御部４は、ソースプロファイルに記載されるソース用色変換テーブルを用いて、入力画像データの色変換を行う。ここで使用するソース用色変換テーブルは、Ｃ、Ｍ、Ｙ、Ｋの信号値を入力値とする。また、ソース用色変換テーブルの出力値はＬ＊、ａ＊、ｂ＊値を出力値とする。従って、制御部４はＣ、Ｍ、Ｙ、Ｋの信号値をソース用色変換テーブルを用いて、Ｌ＊、ａ＊、ｂ＊値に変換し、変換したＬ＊、ａ＊、ｂ＊画像データをメモリ部７に格納する。この変換したＬ＊、ａ＊、ｂ＊画像データは、ソースプロファイルの色再現範囲における画像データである。
【００３６】
なお、ここではＬ＊、ａ＊、ｂ＊値を出力値として持つテーブルを用いる例を説明した。しかしながら、Ｌ＊、ａ＊、ｂ＊値を出力値としてもたないソース用色変換テーブルであっても、画像処理装置に依存しない色空間上の値を出力値とすれば、本実施形態の効果を得ることは可能である。
【００３７】
ステップＳ３０２において、制御部４は、Ｌ＊ａ＊ｂ＊画像から明度を示すＬ＊値のヒストグラムを算出する。制御部４は、メモリ部７からＬ＊ａ＊ｂ＊画像を取得すると、Ｌ＊値毎に入力画像の画素数を算出し、ヒストグラムとしてメモリ部７に格納する。
【００３８】
ステップＳ３０３において、制御部４は、ステップＳ３０２で算出したヒストグラムからピーク値を検出する。ピーク値とはヒストグラムの中で最も多いＬ＊値の画素数である。制御部４は、検出したピーク値をメモリ部７に格納する。
【００３９】
図４において、ピーク値検出のイメージを示す。図４は、各Ｌ＊値（横軸）に対する画素数（縦軸）を表すものであり、各Ｌ＊値がもつ画素数の中で最も多い画素数をピーク値とする。図４上の点線で表わす画素数が検出したピーク値の例である。
【００４０】
ステップＳ３０４において、制御部４は、入力画像内に階調性があるか否かを判定する。まず、制御部４はメモリ部７からステップＳ３０３で検出したピーク値を取得する。次に制御部４は、画像の全画素数におけるピーク値の割合を算出する。次に制御部４は算出した割合をメモリ部７に予め格納している第一の階調性閾値と比較する。第一の階調性閾値とは、あらかじめ値が設定されており、メモリ部７に格納されている閾値であるとする。本実施形態においては第一の階調性閾値の値は、入力画像の画素数のうち９割の画素数を示す値であるとする。ただし、第一の階調性閾値の値はこれに限られるものではない。また、第一の階調性閾値の値は、入力画像の画素数や解像度や属性に応じて可変であってもよい。制御部４は、ピーク値の割合が第一の階調性閾値以上の場合は、階調性なしと判定し、図３におけるフローチャートの処理を終了する。制御部４は、ピーク値の割合が第一の階調性閾値未満の場合は階調性ありと判定し、ステップＳ３０５を開始する。階調性がない画像の場合、画像処理装置の色再現範囲外の色においても階調性がないといえる。このような場合には、後述するように仮想黒点の更新をして色変換テーブルを補正してしまうと逆に全体的な色差が生じてしまう場合がある。また、階調性がない画像の場合には、画像処理装置の色再現範囲外の色があったとしても画像処理装置の色再現範囲の境界部分の色に変換する処理で問題は生じない。そこで、本実施形態では、階調性があると判定した場合にステップＳ３０５に進む。
【００４１】
ステップＳ３０５において、制御部４は入力画像内に画像処理装置１０１の色域外のデータがあるかを判定する。制御部４は、ステップＳ３０２で得たヒストグラムを用いて画像処理装置１０１の黒点未満のＬ＊値となる画素数を算出し、第一の色域閾値と比較する。第一の色域閾値とは、あらかじめ値が設定されており、メモリ部７に格納されている閾値であるとする。第一の色域閾値の値は、入力画像の画素数の中で１割を占める画素数であるとする。ただし、第一の色域閾値の値はこれに限られるものではない。また、第一の色域閾値の値は、入力画像画素数や属性や解像度などに応じて可変の閾値であってもよい。
【００４２】
制御部４は、画像処理装置１０１の黒点未満のＬ＊値の画素数が第一の色域閾値以上であった場合、色域外のデータありとし、ステップＳ３０６を開始する。一方、画像処理装置１０１の黒点未満のＬ＊値の画素数が第一の色域閾値未満であった場合は、色域外のデータなしとして、図３に示すフローチャートの処理を終了する。色域外のデータがない場合には、「絶対的な色再現範囲を維持」する色変換を行なうことができるので、仮想黒点を補正する必要はない。従って、本実施形態では色域外のデータがあると判定した場合にステップＳ３０６に進む。
【００４３】
図５は、ヒストグラムから色域外のデータの有無を判定するステップＳ３０５のイメージ図である。画像処理装置１０１の黒点よりＬ＊値が低い領域（グラフの左領域）の画素数の総和を算出する。算出した総和を、制御部４は第一の色域閾値と比較する。
【００４４】
ステップＳ３０６において、制御部４は仮想黒点を更新する。制御部４は、入力画像内において最も低いＬ＊値を算出する。制御部４は、算出したＬ＊値と画像処理装置１０１の黒点の値とを比較し、画像処理装置１０１の黒点未満である場合、仮想黒点の値を算出したＬ＊値に更新する。一方、算出したＬ＊値画像処理装置１０１の黒点以上であるとき制御部４は、仮想黒点の値を更新しない。図６は、仮想黒点の補正イメージである。画像処理装置１０１の黒点より低いＬ＊値の中で最も低いＬ＊値が仮想黒点となる。
【００４５】
ステップＳ３０６の処理を完了すると、制御部４は、図３に示すフローチャートの処理を終了する。
【００４６】
尚、上述の実施形態ではＳ３０４、Ｓ３０５における処理は、Ｓ３０３からＳ３０４、Ｓ３０４からＳ３０５の順番で説明しているが、Ｓ３０３からＳ３０５、Ｓ３０５からＳ３０４として処理を行うことも可能である。すなわち、まず色域外のデータがあるかを判定し、その後に階調性の有無を判定する処理であってもよい。
【００４７】
図７は、上述した図２の処理手順におけるステップＳ２０６のアウト用色変換テーブルの補正処理の詳細手順を説明するフローチャートである。図７が示す処理手順は、図１の画像処理装置１０１における制御部４の図示しないＣＰＵがメモリ部７にロードされているカラープロファイル作成プログラムを読み出して実行することにより行われる。
【００４８】
ステップＳ７０１において、制御部４はメモリ部７に格納されるアウトプットプロファイルに記載のアウト用色変換テーブルを取得する。ここでアウトプットプロファイルに記載のアウト用色変換テーブルとは、Ｌ＊軸、ａ＊軸、ｂ＊軸で構成される３Ｄルックアップテーブルであるとして説明する。３Ｄルックアップテーブルを構成する格子点の入力値は、各軸において０から２５５の値を持つとする。また、それぞれの格子点には、入力値Ｌ＊、ａ＊、ｂ＊に対するＣ、Ｍ、Ｙ、Ｋの４つの値で構成される出力値が設定されているとする。
【００４９】
アウト用色変換テーブルの各格子点には予め格子点番号が設定されている。格子点番号は、入力値の昇順方向に対し昇順で番号が振られており、Ｌ＊軸、ａ＊軸、ｂ＊軸の最小の入力値を持つ格子点について最小の番号０が設定されている。格子点番号０の格子点からａ＊軸の入力値の昇順方向に昇順で番号が設定されている。ａ軸の最大の入力値を持つ格子点の次は、ｂ＊軸の入力値が一段階大きい格子点群について上述の順番で番号がふられている。ａ＊軸、ｂ＊軸ともに、最大の格子点番号を持つ点の次は、Ｌ軸の入力値を一段階増やした位置にある格子点群において上述のように番号が設定される。ａ＊軸、ｂ＊軸、Ｌ＊軸の全ての軸において最大の入力値を持つ格子点には、最大の格子点番号が設定される。最大の格子点番号は全格子点数−１で設定される。ここでは、全格子点をＮとする。本実施形態においては、変換対象の格子点を注目格子点とし、格子点毎に変換を行なう。
【００５０】
ステップＳ７０２において、制御部４はメモリ部７から画像処理装置１０１の黒点と仮想黒点を取得する。
【００５１】
ステップＳ７０３において、制御部４は、全ての格子点を注目格子点として処理したかを判定する。例えば、注目格子点が最後の格子点かどうかを格子点番号によって判定する。ここで最後の格子点とは、全格子点数−１の格子点番号をもつ格子点である。最後の格子点番号であれば、制御部４は図７に示すフローチャートの処理を完了する。一方、最後の格子点番号でなければ、制御部４はステップＳ７０４の処理を開始する。
【００５２】
ステップＳ７０４において、制御部４は、注目格子点の入力値（Ｌ＊、ａ＊、ｂ＊値）を変換して、変換後入力値（Ｌ＊、ａ＊、ｂ＊値）を生成する。ここでは、特にＬ＊が変換されることになる。現在の格子点番号をｉ−１とするとき、注目格子点の格子点番号は一つ値を増やしたｉとする。制御部４は、注目格子点における色変換テーブルの入力値Ｌ＿ｉｎ（ｉ）を取得する。以下、説明簡略化のため、「格子点番号ｉの注目格子点における入力値のＬ＊値」をＬ＿ｉｎ（ｉ）として説明する。制御部４は、あらかじめメモリ部７に格納している画像処理装置の色再現範囲における最高明度値Ｗｐを取得する。そして、制御部４は、Ｌ＿ｉｎ（ｉ）と、最高明度値Ｗｐと、画像処理装置１０１の黒点Ｂｐと、仮想黒点Ｂｐ＿ｉｍｇとの値を用いて、式（１）のように入力信号値のＬ＊値を変換する。
Ｌ＿ｉｎ’（ｉ）＝（（Ｌ＿ｉｎ（ｉ）−Ｂｐ＿ｉｍｇ）／（Ｗｐ−Ｂｐ＿ｉｍｇ））
＊（Ｗｐ−Ｂｐ）＋Ｂｐ                ・・・式（１）
ここでＬ＿ｉｎ’（ｉ）は、Ｌ＿ｉｎ（ｉ）を変換した後の値である。制御部４は、各格子点のＬ＊値のみを変換した入力値を、変換後入力値として一時的にメモリ部７に格納する。
【００５３】
ステップＳ７０５において、制御部４はステップＳ７０１で取得したアウト用色変換テーブルを用いて、ステップＳ７０４で生成した変換後入力値の色変換を行う。すなわち、制御部４は、変換後入力値をステップ７０１で取得したアウト用色変換テーブルの入力値とした場合の色変換後の値を、補正用出力値としてメモリ部７に格納する。
【００５４】
ステップＳ７０６において、制御部４は、注目格子点の値を、補正用出力値に書きかえる。すなわち、制御部４はメモリ部７に格納されている補正色変換テーブルの注目格子点の出力値を、補正用出力値の値に書き換える。制御部４はステップＳ７０６の処理を完了すると、ステップＳ７０３の処理を開始する。以上の処理を繰り返すことにより、補正色変換テーブルが生成される。このようにして生成された補正色変換テーブルは、アウト用色変換テーブルの各格子点の入力値と、変換後の各補正用出力値とが対応付けられたテーブルとなる。
【００５５】
以上のような構成・処理を行うことで、画像処理装置１０１の色再現範囲外における入力画像の階調性の有無を判定し、階調性の維持や色再現性のバランスを考慮した最適な補正を行うことが可能となる。なお、ここではＣＭＹＫ値を持つ画像データを例に挙げて説明したが、ソース用色変換テーブルの入力値がＲＧＢの場合や、入力画像データがＲＧＢ画像データであっても同様の効果を得られる。
【００５６】
図８は、上述の効果を説明する図である。ソースプロファイルの色再現範囲８０１は、縦軸をＬ＊で表す明度軸、横軸をａ＊やｂ＊で表す色度軸とするグラフ上のひし形の領域である。入力画像データ８０２は、ソースプロファイルの色再現範囲８０１内に存在する。画像処理装置１０１の色再現範囲８０３は、縦軸をＬ＊で表す明度軸、横軸をａ＊やｂ＊で表す色度軸とするグラフで表す。図に示すように、ソースプロファイルの色再現範囲８０１よりも画像処理装置１０１の色再現範囲８０３の方が色域が小さい。仮想黒点を補正した画像処理装置１０１の色再現範囲である仮想色再現範囲８０４は、点線で表わされるひし形の領域である。画像処理装置１０１の仮想色再現範囲８０４は、仮想黒点が位置８０５の際の画像処理装置１０１の色再現範囲である。仮想黒点の位置８０５は図２のステップＳ２０４における仮想黒点補正処理において決定した仮想黒点に対応する。
【００５７】
入力画像データ８０２のように画像処理装置１０１の黒点８０６以下に連続したＬ＊値をもつデータを印刷しようとすると、ステップＳ２０８のようにアウトプットプロファイルをそのまま用いた色変換では階調つぶれが発生する。一方、ステップＳ２０７の補正色変換テーブルを用いた色変換では、仮想黒点を入力画像データ８０２の最低明度の位置８０５に設けた補正色変換テーブルを用いるため、入力画像データ８０２は階調を保つことが可能となる。
【００５８】
以上の通り、本実施形態においては、画像処理装置の色再現範囲外における入力画像の階調性の有無を判定し、階調性がある場合は、階調性を維持する色変換を可能にし、階調性がない場合は色再現性を優先した色変換が可能となる。さらに、画像処理装置の黒点を仮想的に補正し、色変換することで、階調性の維持と共に色再現性とのバランスも考慮した最適な補正を行うことが可能になる。特に、本実施形態においては、実際の入力画像データに基づいて画像処理装置の黒点を仮想的に補正するので、相対的にマッピングする色差の程度を抑えることができる。
【００５９】
（実施形態２）
本実施形態では、上述の実施形態１のように入力画像全体のヒストグラムから階調性の有無を判定するのではなく、画像を領域分割した分割領域に対して作成するヒストグラムから、階調性の有無を判定する方法について説明する。実施形態１との違いは、図２に示すステップＳ２０４における仮想黒点の補正処理手順であり、その他の処理については実施形態１と同様である。
【００６０】
＜動作説明＞
図９は、本実施形態の画像処理装置１０１において、仮想黒点の補正処理を説明するフローチャートである。図９が示す処理手順は、図１の画像処理装置１０１における制御部４の図示しないＣＰＵがメモリ部７にロードされているカラープロファイル作成プログラムを読み出して実行することにより行われる。
【００６１】
ここで、図９に示す仮想黒点の補正処理手順は、入力画像変換処理ステップＳ９０１は、図３に示すステップＳ３０１と同様の処理であるので説明は省略する。
【００６２】
ステップＳ９０２において、制御部４はＬ＊ａ＊ｂ＊画像を所定の分割幅で分割する。分割幅は予めメモリ部７に格納されており、制御部４は、メモリ部７から分割幅とＬ＊ａ＊ｂ＊画像データとを取得し、分割幅に応じてＬ＊ａ＊ｂ＊画像を分割する。制御部４は、分割画像を順番にメモリ部７に格納する。
【００６３】
ここで分割画像の格納順について説明する。Ｌ＊ａ＊ｂ＊画像における主走査方向に並ぶ分割画像を主走査方向の左から右の順で格納し、端まで格納し終えると、副走査方向に隣接する分割領域に対し、主走査方向の左から右の順に格納する。本実施形態では、処理対象の領域を注目領域とし、注目領域毎にステップＳ９０４からＳ９０９を行なう。
【００６４】
ステップＳ９０３において、制御部４は、全ての領域を注目領域として処理したかを判定する。例えば、制御部４は、現在の分割画像に対して、最後の分割領域以外かを判定する。最後の分割領域であった場合は、図９で図示するフローチャートの処理を完了する。
【００６５】
ステップＳ９０４において、制御部４は、ステップＳ９０３で判定した分割画像の次に格納された分割画像を選択し、注目領域とする。なお、最初の処理の場合、最初の分割画像を注目領域として決定する。
【００６６】
ステップＳ９０５において、制御部４は、注目領域におけるＬ＊値のヒストグラムを算出する。制御部４は、メモリ部７から注目領域の分割画像を取得すると、Ｌ＊値毎に分割画像の画素数を算出し、注目領域のヒストグラムとしてメモリ部７に格納する。
【００６７】
ステップＳ９０６において、制御部４はステップＳ９０５で算出したヒストグラムからピーク値を検出する。ピーク値とは、注目領域のヒストグラムの中で最も多い画素数である。制御部４は、注目領域のピーク値をメモリ部７に格納する。
【００６８】
ステップＳ９０７において、制御部４は注目領域のＬ＊値において階調性があるかを判定する。まず、制御部４はメモリ部７から注目領域のピーク値を取得する。次に制御部４は、注目領域内の全画素数におけるピーク値の割合を算出する。次に制御部４は算出した割合をメモリ部７に予め格納している第二の階調性閾値と比較する。ここで第二の階調性閾値とは、あらかじめ値が設定されており、メモリ部７に格納されているとする。第二の階調性閾値の値は、ステップＳ９０２において分割された分割領域の画素数の９割の画素数を示す値であるとする。ただし、分割領域の画素数や属性により可変であってもよい。制御部４は、ピーク値の割合が第二の階調制閾値以上の場合は、階調性なしと判定し、ステップＳ９０３の処理を開始する。一方、ピーク値の割合が第二の階調性閾値未満の場合は、階調性ありと判定し、ステップＳ９０８を開始する。
【００６９】
ステップＳ９０８において、制御部４は注目領域のＬ＊値において、色域外のデータがあるかを判定する。制御部４は、画像処理装置１０１の黒点未満のＬ＊値となる画素数を算出し、第二の色域閾値と比較する。第二の色域閾値とは、あらかじめ値が設定されており、メモリ部７に格納されている閾値であるとする。第二の色域閾値の値は、ステップＳ９０２において分割した分割画像の画素数の中で１割を占める画素数であるとする。ただし、第二の色域閾値の値は、分割画像画素数や属性や解像度などに応じて可変の閾値であってもよい。画像処理装置１０１の黒点未満のＬ＊値の画素数が色域閾値以上であった場合は、制御部４は、色域外のデータがあると判定し、ステップＳ９０９の仮想黒点更新処理を開始する。一方、画像処理装置１０１の黒点未満のＬ＊値の画素数が色域閾値未満であった場合は、色域外のデータがないと判定し、ステップＳ９０３の処理を開始する。
【００７０】
ステップＳ９０９において、制御部４は仮想黒点の更新を行う。まず、制御部４は注目領域において最もＬ＊値が低い値を抽出し、メモリ部７に格納される仮想黒点の値と比較する。注目領域において最も低いＬ＊値が、メモリ部７に格納される仮想黒点よりも低い場合、メモリ部７にある仮想黒点の値を更新する。一方、注目領域内において最も低いＬ＊値が、仮想黒点の値以上である場合は、仮想黒点の値を更新しない。本実施形態では、各分割領域毎にステップＳ９０４からステップＳ９０９が行なわれるので、仮想黒点の値は、階調性がありかつ色域外のデータのうちの一番明度が低い値が設定されることになる。
【００７１】
尚、上述ではステップＳ９０７の次にステップＳ９０８を行う順序で説明しているが、ステップＳ９０８を先に行い、次にステップＳ９０７を行う形態でも同様の効果を得られる。
【００７２】
上述のように、入力画像を分割し、分割領域毎にヒストグラムを算出することで、入力画像上の局所における階調性の有無を判定することができるため、階調性の有無をより正確に判定することが可能となる。例えば、画像中の離れた場所に階調性の無い領域が複数存在し、その複数の領域間では階調があるような画像の場合、実施形態１では仮想黒点が補正される場合がある。しかしながら、このような画像は、局所的には階調を有していないので仮想黒点の補正は必要ない。本実施形態では、このように分割領域毎に処理を行なうことで、仮想黒点の補正が必要か否かを正確に判定することが可能となる。従って、階調性のある画像における仮想黒点をより正確に設定できるため、最低限の階調性を維持しつつ、色再現性を高める色変換が可能となる。
【００７３】
（実施形態３）
本実施形態では、上述の実施形態１や実施形態２のようにヒストグラム算出によって階調性の有無を判定しない。代わりに、高速フーリエ変換(Fast Fourier Transform)による画像周波数解析によって得られた周波数特性により階調性の有無を判定する方法について説明する。実施形態１や実施形態２との違いは、図２に示すステップＳ２０４における仮想黒点の補正処理手順であり、その他の処理については実施形態１と同様である。後述では、高速フーリエ変換のことをＦＦＴと略し、説明する。
【００７４】
＜動作説明＞
図１０は、本実施形態の画像処理装置１０１において、仮想黒点の補正処理を説明するフローチャートである。図１０が示す処理手順は、図１の画像処理装置１０１における制御部４の図示しないＣＰＵがメモリ部７にロードされているカラープロファイル作成プログラムを読み出して実行することにより行われる。
【００７５】
ここで、図１０に示す仮想黒点の補正処理手順は、ステップＳ１００１、ステップＳ１００４、ステップＳ１００５については、図３に示すステップＳ３０１、ステップＳ３０５、ステップＳ３０６と同様の処理であるので説明は省略する。
【００７６】
ステップＳ１００２において、制御部４は入力画像をＦＦＴで周波数解析を行い、パワースペクトルを求める。算出したパワースペクトルは、メモリ部７に格納する。
【００７７】
図１１は、算出したパワースペクトル１１０１のイメージである。横軸が画像の主走査における周波数成分であり、縦軸が画像の副走査の周波数成分である。中央に示す領域１１０２は、低周波を表す領域である。
【００７８】
ステップＳ１００３において、制御部４は算出したパワースペクトルを用いて階調性があるかを判定する。まず、制御部４はメモリ部７からパワースペクトルの低周波成分１１０２の平均値と、第三の階調性閾値とを取得し両者を比較する。ここで、第三の階調性閾値とは、あらかじめ値が設定され、メモリ部７に格納されているとする。第三の階調性閾値の値は、任意の一様な信号値をもつ画像の低周波成分の平均値と一致する値であるとする。制御部４は、算出したパワースペクトルの低周波成分の値より第三の階調性閾値の値が大きい場合は、階調性がないと判定し、図１０に示すフローチャートの処理を終了する。一方、制御部４は、パワースペクトルの低周波成分が第三の階調性閾値未満である場合は、階調性ありとしステップＳ１００４の処理を開始する。
【００７９】
上述のように、ＦＦＴによる画像周波数解析により階調性の有無を判定することで、入力画像の解像度やノイズ等の影響も考慮して階調性を判定することが可能となる。従って、最低限の階調性を維持しつつ、色再現性を高める色変換が可能となる。
【００８０】
（実施形態４）
本実施形態では、上述の実施形態３のように入力画像全体に対してＦＦＴを行い、階調性の有無を判定するのではなく、入力画像を分割した領域に対してＦＦＴを行い、階調性の有無を判定する方法について説明する。実施形態３との違いは、図２に示すステップＳ２０４における仮想黒点の補正処理手順であり、その他の処理については実施形態３と同様である。
【００８１】
＜動作説明＞
図１２は、本実施形態の画像処理装置１０１において、仮想黒点の補正処理を説明するフローチャートである。図１２が示す処理手順は、図１の画像処理装置１０１における制御部４の図示しないＣＰＵがメモリ部７にロードされているカラープロファイル作成プログラムを読み出して実行することにより行われる。
【００８２】
ここで図１２におけるに示す仮想黒点の補正処理手順は、図９におけるステップＳ９０１、ステップＳ９０２、ステップＳ９０３、ステップＳ９０４、ステップＳ９０８、ステップＳ９０９と同様の処理が含まれる。よって図１２におけるステップＳ１２０１、ステップＳ１２０２、ステップＳ１２０３、ステップＳ１２０４、ステップＳ１２０７、ステップＳ１２０８における説明を省略する。
【００８３】
ステップＳ１２０５において、制御部４は注目領域のパワースペクトルを算出する。制御部４は、算出した注目領域のパワースペクトルをメモリ部７に格納する。
【００８４】
ステップＳ１２０６において、制御部４は、ステップＳ１２０５で算出したパワースペクトルを用いて、注目領域に階調性があるかを判定する。まず、制御部４は、メモリ部７に格納される注目領域のパワースペクトルと第四の階調性閾値を取得する。ここで、第四の階調性閾値とは、あらかじめ値が設定され、メモリ部７に格納されているとする。第四の階調性閾値は、任意の一様な信号値をもつ画像の低周波成分の平均値と一致する値であるとする。制御部４は、取得したパワースペクトルから低周波成分の平均値と第四の階調性閾値を取得し比較する。低周波成分の数値が第四の階調性閾値未満である場合は、制御部４は階調性があると判定し、ステップＳ１２０７を開始する。一方、低周波成分の数値が第四の階調性閾値以上である場合は、制御部４は階調性がないと判定しステップＳ１２０３の処理を開始する。
【００８５】
以上の処理を行うことにより、画像の局所において、低周波成分が支配的かどうかを確認することで、正確かつ柔軟に画像の階調性の有無を判定することが可能となる。なぜなら第四の階調性閾値の設定によって、階調性ありとしたい階調性のレベルを変えることが可能となるからである。階調性の有無の判定が正確になることにより、階調性を必要最低限維持し、最大限に色再現性を高めた色変換が可能となる。
【００８６】
上述のように、入力画像を分割した領域に対してＦＦＴを行い、階調性の有無を判定することで、入力画像の局所において階調性があるかをより正確に判定することができる。従って、最低限の階調性を維持しつつ、色再現性を高める色変換が可能となる。
【００８７】
（実施形態５）
実施形態１から４では入力画像の低明度部の階調性の再現と色再現のバランスを保つ色変換を行なう例を説明した。本実施形態では、入力画像の高明度部の階調性の再現と色再現のバランスをとった最適な色変換を行うことを目的とする。このため、入力画像上の高明度部の階調性に応じて仮想白点を補正し、色変換テーブルの補正を行う。本実施形態は上述の実施形態１と同様の構成である画像処理装置１０１により実行される。
【００８８】
＜動作説明＞
図１３は、実施形態１の画像処理装置１０１により仮想白点の補正が実行される色変換処理を説明するメインのフローチャートである。図１３で示す処理手順は、図１の画像処理装置１０１における制御部４の図示しないＣＰＵがメモリ部７にロードされているカラープロファイル作成プログラムを読み出して実行することにより行われる。
【００８９】
ここで図１３に示す仮想白点の補正処理手順は、図２におけるステップＳ２０１、ステップＳ２０２、ステップＳ２０７、ステップＳ２０８、ステップＳ２０９と同様の処理が含まれる。よって図１３におけるステップＳ１３０１、ステップＳ１３０２、ステップＳ１３０７、ステップＳ１３０８、ステップＳ１３０９における処理については説明を省略する。
【００９０】
ステップＳ１３０３において、制御部４は画像処理装置１０１の白点をメモリ部７から取得する。画像処理装置１０１の白点とは、画像処理装置１０１の色再現範囲における最高明度を示す値である。本実施形態では算出した白点があらかじめメモリ部７に格納されていることを前提として説明するが、操作部１からユーザが任意のチャートの出力画像を測色して得た画像処理装置１０１の白点を設定することも本実施形態では可能である。
【００９１】
ステップＳ１３０４において、制御部４は仮想白点の補正を行う。仮想白点は、画像処理装置１０１の白点を出力するための信号値であるものとして説明する。仮想白点は、メモリ部７に格納されてり、予め、画像処理装置１０１の白点と同じ値を持つ。ステップＳ１３０４における詳細な処理については、後述する。
【００９２】
ステップＳ１３０５において、制御部４は仮想白点が補正されたか否かを判定する。制御部４はメモリ部７に格納されている画像処理装置１０１の白点と仮想白点との値を取得し、比較する。制御部４は、比較した結果が同値である場合は、仮想白点の補正がないと判定し、画像処理装置１０１の白点よりも仮想白点の値が高ければ仮想白点の補正があると判定する。制御部４は、仮想白点が補正されたと判定すると、ステップＳ１３０６の処理を開始し、アウト用色変換テーブルを補正する。一方、制御部４は、仮想白点が補正されていないと判定すると、ステップＳ１３０８の処理を開始する。
【００９３】
ステップＳ１３０６において、制御部４はアウト用色変換テーブルを補正し、補正色変換テーブルを生成する。アウト用色変換テーブルの補正における詳細な処理については後述する。
【００９４】
図１４は、上述した図１３の処理手順におけるステップＳ１３０４の仮想白点の補正処理の詳細手順を説明するフローチャートである。図１４が示す処理手順は、図１の画像処理装置１０１における制御部４の図示しないＣＰＵがメモリ部７にロードされているカラープロファイル作成プログラムを読み出して実行することにより行われる。
【００９５】
ここで、図１４の仮想白点の補正手順には、図３のステップＳ３０１、ステップＳ３０２、ステップＳ３０３、ステップＳ３０４と同様の処理が含まれる。そこで、図１４のステップＳ１４０１、ステップＳ１４０２、ステップＳ１４０３、ステップＳ１４０４の処理の説明を省略する。
【００９６】
ステップＳ１４０５において、制御部４は入力画像内に画像処理装置１０１の色域外のデータがあるかを判定する。制御部４は、ステップＳ１４０２で得たヒストグラムを用いて画像処理装置１０１の白点より高いＬ＊値となる画素数を算出し、第五の色域閾値と比較する。第五の色域閾値とは、あらかじめ値が設定されており、メモリ部７に格納されている閾値であるとする。第五の色域閾値の値は、入力画像の画素数の中で１割を占める画素数であるとする。ただし、第五の色域閾値の値は、入力画像画素数や属性や解像度などに応じて可変の閾値であってもよい。
【００９７】
制御部４は、画像処理装置１０１の白点より高いＬ＊値の画素数が第一の色域閾値以上であった場合、色域外のデータありとし、ステップＳ１４０６を開始する。一方、画像処理装置１０１の白点より高いＬ＊値の画素数が第一の色域閾値未満であった場合は、色域外のデータなしとして、図１４に示すフローチャートの処理を終了する。色域外のデータがない場合には、「絶対的な色再現範囲を維持」する色変換を行なうことができるので、仮想白点を補正する必要はない。従って、本実施形態では色域外のデータがると判定した場合にステップＳ１４０６に進む。
【００９８】
図１５は、ヒストグラムから色域外のデータの有無を判定するステップＳ１４０５のイメージ図である。画像処理装置１０１の白点よりＬ＊値が高い領域（グラフの右領域）の画素数の総和を算出する。算出した総和を、制御部４は第五の色域閾値と比較する。
【００９９】
ステップＳ１４０６において、制御部４は仮想白点を更新する。制御部４は、入力画像内において最も高いＬ＊値を算出する。制御部４は、算出したＬ＊値と画像処理装置１０１の白点の値とを比較し、算出したＬ＊値が画像処理装置１０１の白点のＬ＊値より高い場合、仮想白点の値を算出したＬ＊値に更新する。一方、算出したＬ＊値が画像処理装置１０１の白点以下であるとき制御部４は、仮想白点の値を更新しない。図１６は、仮想白点の補正イメージである。画像処理装置１０１の白点より高いＬ＊値の中で最も高いＬ＊値が仮想白点となる。
【０１００】
ステップＳ１４０６の処理を完了すると、制御部４は、図１４に示すフローチャートの処理を終了する。
【０１０１】
尚、上述の実施形態ではＳ１４０４、Ｓ１４０５における処理は、Ｓ１４０３からＳ１４０４、Ｓ１４０４からＳ１４０５の順番で説明しているが、Ｓ１４０３からＳ１４０５、Ｓ１４０５からＳ１４０４として処理を行うことも可能である。すなわち、まず色域外のデータがあるかを判定し、その後に階調性の有無を判定する処理であってもよい。
【０１０２】
図１７は、上述した図１３の処理手順におけるステップＳ１３０６のアウト用色変換テーブルの補正処理の詳細手順を説明するフローチャートである。図１７が示す処理手順は、図１の画像処理装置１０１における制御部４の図示しないＣＰＵがメモリ部７にロードされているカラープロファイル作成プログラムを読み出して実行することにより行われる。
【０１０３】
ここで、図１７のアウト用色変換テーブル補正手順には、図７のステップＳ７０１、ステップＳ７０３、ステップＳ７０５、ステップＳ７０６と同様の処理が含まれる。そこで、図１７のステップＳ１７０１、ステップＳ１７０３、ステップＳ１７０５、ステップＳ１７０６の処理の説明を省略する。
【０１０４】
ステップＳ１７０２において、制御部４はメモリ部７から画像処理装置１０１の白点と仮想白点を取得する。
【０１０５】
ステップＳ１７０４において、制御部４は、注目格子点の入力値（Ｌ＊、ａ＊、ｂ＊値）を変換して、変換後入力値（Ｌ＊、ａ＊、ｂ＊値）を生成する。ここでは、特にＬ＊が変換されることになる。現在の格子点番号をｉ−１とするとき、注目格子点の格子点番号は一つ値を増やしたｉとする。制御部４は、注目格子点における色変換テーブルの入力値Ｌ＿ｉｎ（ｉ）を取得する。以下、説明簡略化のため、「格子点番号ｉの注目格子点における入力値のＬ＊値」をＬ＿ｉｎ（ｉ）として説明する。制御部４は、あらかじめメモリ部７に格納している画像処理装置の色再現範囲における最低明度値Ｂｐを取得する。そして、制御部４は、Ｌ＿ｉｎ（ｉ）と、最低明度値Ｂｐと、画像処理装置１０１の白点Ｗｐと仮想白点Ｗｐ＿ｉｍｇとの値を用いて、式（２）のように入力信号値のＬ＊値を補正する。
Ｌ＿ｉｎ’（ｉ）＝（（Ｌ＿ｉｎ（ｉ）−Ｂｐ）／（Ｗｐ＿ｉｍｇ−Ｂｐ））
＊（Ｗｐ−Ｂｐ）＋Ｂｐ            ・・・式（２）
ここでＬ＿ｉｎ’（ｉ）は、Ｌ＿ｉｎ（ｉ）を変換した後の値である。制御部４は、各格子点のＬ＊値のみを変換した入力値を、変換後入力値として一時的にメモリ部７に格納する。
【０１０６】
以上のような構成・処理を行うことで、画像処理装置１０１の色再現範囲外における入力画像の階調性の有無を判定し、階調性の維持や色再現性のバランスを考慮した最適な補正を行うことが可能となる。なお、ソース用色変換テーブルの入力値がＲＧＢの場合や入力画像データがＲＧＢ画像データであっても同様の効果を得られる。
【０１０７】
図１８は、上述の効果を説明する図である。ソースプロファイルの色再現範囲１８０１は、縦軸をＬ＊で表す明度軸、横軸をａ＊やｂ＊で表す色度軸とするグラフ上のひし形の領域である。入力画像データ１８０２は、ソースプロファイルの色再現範囲１８０１内に存在する。画像処理装置１０１の色再現範囲１８０３は、縦軸をＬ＊で表す明度軸、横軸をａ＊やｂ＊で表す色度軸とするグラフで表す。図に示すように、ソースプロファイルの色再現範囲１８０１よりも画像処理装置１０１の色再現範囲１８０３の方が色域が小さい。仮想白点を補正した画像処理装置１０１の色再現範囲である仮想色再現範囲１８０４は、点線で表わされるひし形の領域である。画像処理装置１０１の仮想色再現範囲１８０４は、仮想白点が図１８で示す位置１８０５にある場合の画像処理装置１０１の色再現範囲である。仮想白点の位置１８０５は図１３のステップＳ１３０４における仮想白点補正処理において決定した仮想白点に対応する。
【０１０８】
入力画像のデータ１８０２のように画像処理装置１０１の白点１８０６のＬ＊値より高いＬ＊値の値において連続したデータを印刷しようとすると、ステップＳ１３０７のようにアウトプットプロファイルをそのまま用いた色変換では階調つぶれが発生する。一方、ステップＳ１３０７の補正色変換テーブルを用いての色変換では、仮想白点を入力画像データ１８０２の最高明度の位置１８０５に設けた補正色変換テーブルを用いるため、入力画像データ１８０２は階調を保つことが可能となる。
【０１０９】
（実施形態６）
本実施形態では、入力画像の高明度部と低明度部との両方の階調性及び色再現性のバランスをとった最適な色変換を行うことを目的とする。このため、入力画像上の高明度部の階調性と低明度部との階調性に応じて仮想黒点と仮想白点との補正を行い、色変換テーブルを補正する。本実施形態は上述の実施形態１と同様の構成である画像処理装置１０１により実行される。
【０１１０】
＜動作説明＞
図１９は、実施形態１の画像処理装置１０１により仮想黒点と仮想白点の両方の補正が実行される色変換処理を説明するメインのフローチャートである。図１９で示す処理手順は、図１の画像処理装置１０１における制御部４の図示しないＣＰＵがメモリ部７にロードされているカラープロファイル作成プログラムを読み出して実行することにより行われる。
【０１１１】
図１９を参照して、ネットワーク上につながっている、図示しないクライアントＰＣにより画像処理装置１０１へ印刷命令が送られると、制御部４はステップＳ１９０２を開始する。
【０１１２】
ここで図１９におけるステップＳ１９０１，ステップＳ１９０２、ステップＳ１９０３、ステップＳ１９０４は、図２におけるステップＳ２０１、ステップＳ２０２、ステップＳ２０３、ステップＳ２０４と同様の処理であるため説明を省略する。また、図１９におけるステップＳ１９０５、ステップＳ１９０６は、図１３におけるステップＳ１３０３、ステップＳ１３０４と同様の処理であるため説明を省略する。また、図１９におけるステップＳ１９０８の処理は、図２におけるステップＳ２０７と同様の処理であるため説明を省略する。また、図１９におけるステップＳ１９１１、Ｓ１９１２の処理は、図２におけるステップＳ２０５、ステップＳ２０６と同様の処理であるため説明を省略する。また、図１９におけるステップＳ１９１３の処理は、図１３におけるステップＳ１３０６と同様の処理であるため説明を省略する。また、図１９におけるステップＳ１９１４、ステップＳ１９１５の処理は、図２におけるステップＳ２０５、ステップＳ２０７と同様の処理であるため説明を省略する。
【０１１３】
ステップＳ１９０７において、制御部４は仮想黒点または仮想白点が補正されたか否かを判定する。制御部４はメモリ部７に格納されている画像処理装置１０１の黒点と仮想黒点の値を取得し、比較する。制御部４は、比較した結果が同値である場合は、仮想黒点の補正がないと判定し、画像処理装置１０１の黒点よりも仮想黒点の値が低ければ仮想黒点の補正があると判定する。また、制御部４はメモリ部７に格納されている画像処理装置１０１の白点と仮想白点の値を取得し、比較する。制御部４は、比較した結果が同値である場合は、仮想白点の補正がないと判定し、画像処理装置１０１の白点よりも仮想白点の値が高ければ仮想白点の補正があると判定する。制御部４は、仮想黒点または、仮想白点のどちらかが補正されたと判定すると、ステップＳ１９０９の処理を開始する。一方、制御部４は、仮想黒点と仮想白点のどちらも補正されていないと判定すると、ステップＳ１９０８の処理を開始する。
【０１１４】
ステップＳ１９０９において、制御部４は仮想黒点と仮想白点の両方の補正があったかを判定する。制御部４は、ステップＳ１９０７の結果から、仮想黒点と仮想白点の両方の補正があったと判定すると、ステップＳ１９１０の処理を開始する。一方、制御部４は、仮想黒点と仮想白点の両方について補正がないと判定するとステップＳ１９１１の処理を開始する。
【０１１５】
ステップＳ１９１０において、制御部４は第一の色変換テーブルの補正処理を行なう。すなわち、制御部４はアウト用色変換テーブルを補正し、第一の補正色変換テーブルを生成する。詳細な処理については後述する。
【０１１６】
ステップＳ１９０９において制御部４は仮想黒点と仮想白点との両方の補正がないと判定した場合、ステップＳ１９１１で仮想黒点の補正があるかを判定する。ステップＳ１９１１で仮想黒点の補正がないと判定した場合、つまり、仮想白点の補正のみがあると判定した場合、ステップＳ１９１３に処理を進める。ステップＳ１９１３の処理は、図１３のステップＳ１３０７と同様であるので説明を省略する。
【０１１７】
図２０は、上述した図１９の処理手順におけるステップＳ１９１０のアウト用色変換テーブルの補正処理の詳細手順を説明するフローチャートである。図２０が示す処理手順は、図１の画像処理装置１０１における制御部４の図示しないＣＰＵがメモリ部７にロードされているカラープロファイル作成プログラムを読み出して実行することにより行われる。
【０１１８】
ここで図２０に示すアウト用色変換テーブルの補正処理手順は、図７におけるステップＳ７０１、ステップＳ７０３、ステップＳ７０５、ステップＳ７０６と同様の処理が含まれる。よって図２０におけるステップＳ２００１、ステップＳ２００３、ステップＳ２００５、ステップＳ２００６における処理の説明を省略する。
【０１１９】
ステップＳ２００２において、制御部４はメモリ部７から画像処理装置１０１の黒点と白点と仮想黒点と仮想白点とを取得する。
【０１２０】
ステップＳ２００４において、制御部４は、注目格子点の入力値（Ｌ＊、ａ＊、ｂ＊値）を変換して、変換後入力値（Ｌ＊、ａ＊、ｂ＊値）を生成する。ここでは、特にＬ＊が変換されることになる。現在の格子点番号をｉ−１とするとき、注目格子点の格子点番号は一つ値を増やしたｉとする。制御部４は、注目格子点における色変換テーブルの入力値Ｌ＿ｉｎ（ｉ）を取得する。以下、説明簡略化のため、「格子点番号ｉの注目格子点における入力値のＬ＊値」をＬ＿ｉｎ（ｉ）として説明する。制御部４は、画像処理装置１０１の黒点Ｂｐと仮想黒点Ｂｐ＿ｉｍｇと画像処理装置１０１の白点Ｗｐと仮想白点Ｗｐ＿ｉｍｇとの値を用いて式（３）のように入力信号値のＬ＊値を補正する。  
Ｌ＿ｉｎ’（ｉ）＝（（Ｌ＿ｉｎ（ｉ）−Ｂｐ＿ｉｍｇ）／（Ｗｐ＿ｉｍｇ−Ｂｐ＿ｉｍｇ））
＊（Ｗｐ−Ｂｐ）＋Ｂｐ              ・・・式（３）
ここでＬ＿ｉｎ’（ｉ）は、Ｌ＿ｉｎ（ｉ）を変換した後の値である。制御部４は、各格子点のＬ＊値のみを変換した入力値を、変換後入力値として一時的にメモリ部７に格納する。
【０１２１】
以上のような構成・処理を行うことで、画像処理装置１０１の色再現範囲外における入力画像の階調性の有無を判定し、階調性の維持や色再現性のバランスを考慮した最適な補正を行うことが可能となる。
【０１２２】
図２１は、上述の効果を説明する図である。ソースプロファイルの色再現範囲２１０１は、縦軸をＬ＊で表す明度軸、横軸をａ＊やｂ＊で表す色度軸とするグラフ上のひし形の領域である。入力画像データ２１０２及び２１０７は、ソースプロファイルの色再現範囲２１０１内に存在する。画像処理装置１０１の色再現範囲２１０３は、縦軸をＬ＊で表す明度軸、横軸をａ＊やｂ＊で表す色度軸とするグラフで表す。仮想黒点と仮想白点を補正した画像処理装置１０１の色再現範囲である仮想色再現範囲２１０４は、点線で表わされるひし形の領域である。画像処理装置１０１の仮想色再現範囲２１０４は、仮想黒点が位置２１０５、仮想白点が位置２１０６にある際の画像処理装置１０１の色再現範囲である。仮想黒点の位置２１０５は図１９のステップＳ１９０４の仮想黒点補正処理において決定した仮想黒点に対応し、仮想白点の位置２１０６は、ステップＳ１９０６の仮想白点補正処理において決定した仮想白点に対応する。
【０１２３】
入力画像データ２１０２のように画像処理装置１０１の黒点２１０８より下に連続したＬ＊値をもつデータを通常の色変換テーブルで印刷すると、階調つぶれが発生する。また、入力画像データ２１０７のように、画像処理装置１０１の白点２１０９より上に連続したＬ＊値をもつデータを通常の色変換テーブルで印刷すると階調つぶれが発生する。そこで、この入力画像データ２１０２及び２１０７を含むデータを印刷する場合、画像の仮想白点と仮想黒点とを補正した上で第一の色変換テーブルの補正処理を行い、ステップＳ１９１４の補正色変換テーブルを使用して色変換を行う。これにより、入力画像のデータ２１０２やデータ２１０７などを含む画像の印刷時に階調を保つことが可能となる。
【０１２４】
＜その他の実施形態＞
実施形態５及び６については、入力画像データの高明度部の階調性の再現と色再現のバランスを考慮した最適な色変換を行う例を説明した。この実施形態５及び６を実施形態２から４のいずれかと組み合わせる形態としてもよい。すなわち、階調性の有無の判定を行なう場合に、画像を領域に分割した分割領域単位で階調性の有無を判定してもよいし、ヒストグラムやＦＦＴによる周波数解析を用いても良い。
【０１２５】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【０１２６】
また、本実施形態の機能を実現するためのプログラムコードを、１つのコンピュータ（ＣＰＵ、ＭＰＵ）で実行する場合であってもよいし、複数のコンピュータが協働することによって実行する場合であってもよい。さらに、プログラムコードをコンピュータが実行する場合であってもよいし、プログラムコードの機能を実現するための回路等のハードウェアを設けてもよい。またはプログラムコードの一部をハードウェアで実現し、残りの部分をコンピュータが実行する場合であってもよい。
【図１】
2015204601.tif 000003
【図２】
2015204601.tif 000004
【図３】
2015204601.tif 000005
【図４】
2015204601.tif 000006
【図５】
2015204601.tif 000007
【図６】
2015204601.tif 000008
【図７】
2015204601.tif 000009
【図８】
2015204601.tif 000010
【図９】
2015204601.tif 000011
【図１０】
2015204601.tif 000012
【図１２】
2015204601.tif 000013
【図１３】
2015204601.tif 000014
【図１４】
2015204601.tif 000015
【図１５】
2015204601.tif 000016
【図１６】
2015204601.tif 000017
【図１７】
2015204601.tif 000018
【図１８】
2015204601.tif 000019
【図１９】
2015204601.tif 000020
【図２０】
2015204601.tif 000021
【図２１】
2015204601.tif 000022
【図１１】
2015204601.tif 000023