(57)【特許請求の範囲】
【請求項１】
画像を分割した各部分領域に対して色の調整または修正処理を行う画像処理装置において、
画像データを入力する入力手段と、
前記入力手段により入力された前記画像データをＸＹ平面における複数の部分領域に分割する領域分割手段と、
前記領域分割手段により分割された部分領域ごとに色変換を行うための部分領域ごとのパラメータを作成するパラメータ作成手段と、
前記パラメータ作成手段により作成された第１の部分領域における境界部分のパラメータが前記第１の部分領域と隣接する第２の部分領域における境界部分のパラメータと近似する場合に、前記第１の部分領域のパラメータを、前記第２の部分領域のパラメータと等しくなるように調整または修正するパラメータ調整または修正手段とを具備することを特徴とする画像処理装置。
【請求項２】
色空間を分割することであらかじめ定められた複数の単位部分空間ごとに共通の単位部分空間に属する画素を持ち、かつ、ＸＹ平面上で隣接している前記部分領域の組が同一の領域グループに含まれるような１または複数の領域グループを作成する領域グループ作成手段を具備することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記領域分割手段は、入力された前記画像データを一定の形状に分割することを特徴とする請求項１記載の画像処理装置。
【請求項４】
前記領域分割手段は、入力された前記画像データの色分布およびＸＹ位置情報に基づいて前記画像データを分割することを特徴とする請求項１記載の画像処理装置。
【請求項５】
前記パラメータ作成手段は、画像出力装置の色再現範囲に基づいた色再現範囲圧縮処理用のパラメータを作成することを特徴とする請求項１記載の画像処理装置。
【請求項６】
画像を分割した各部分領域に対して色の調整または修正処理を行う画像処理方法において、
入力された画像データをＸＹ平面で複数の部分領域に分割する工程と、
前記部分領域に分割する工程で分割された部分領域ごとに色変換を行うための部分領域ごとのパラメータを作成する工程と、
前記パラメータを作成する工程により作成された第１の部分領域における境界部分のパラメータが前記第１の部分領域と隣接する第２の部分領域における境界部分のパラメータと近似する場合に、前記第１の部分領域のパラメータを、前記第２の部分領域のパラメータと等しくなるように調整または修正するパラメータ調整または修正工程と、
を有することを特徴とする画像処理方法。
【請求項７】
前記パラメータを作成する工程は、画像出力装置の色再現範囲に基づいた色再現範囲圧縮処理用のパラメータを作成することを特徴とする請求項６記載の画像処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は画像処理装置および画像処理方法に関し、特に画像を分割した各部分領域ごとに色の調整または修正処理を行う画像処理装置および画像処理方法に関する。
【０００２】
【従来の技術】
画像を領域に分割して、領域ごとに、あるいは必要な領域に対して色調整または色修正するという処理は、印刷製版工程におけるカタログやチラシなど作成の際の処理や、ＤＴＰ（Desk Top Publishing ）といった、主にディザイナーによって行われる、画像レタッチソフトを用いての画像調整などで頻繁に行われる処理である。
【０００３】
しかし、画像を分割して類似色が同一領域になるようにし、その後、各領域に対して色調整するという処理では、背景色に背景色と区別がつく文字が書かれているといったような、領域分割しやすい画像ならば問題ない場合が多いが、自然画などに見られる、色の変化がなだらかな画像に対して領域分割して色調整しようとしても、領域分割した結果が人間の感覚と一致しない場合など、分割領域に対して行った色調整または色修正処理が不具合を生じる場合がある。
【０００４】
その不具合の代表的なものは、分割領域ごとに処理を行った結果、領域を分割している分割線が目立ってしまい、原画像にはなかった境界線が現れるいわゆる擬似輪郭が発生することであり、原画像と比較しても不自然な画像になってしまうという場合がある。
【０００５】
このような問題に対しては、領域分割の精度を上げ、人間の感覚に近いような分割をできるような処理を狙いとしたものもある。たとえば、特開平６−２３７３７２号公報では、クラスタリングを行う空間を工夫し、分割結果が人間の感覚に近くなるような分割をしている。しかし、領域分割処理をどのように工夫しても、人間の感覚に近い分割を行うことはかなり困難であると思われる。
【０００６】
同様の問題は、本発明人が先に出願した特願平９−８９６５５号明細書に記載の処理でも生じる可能性がある。この特願平９−８９６５５号明細書では、主に色再現範囲の圧縮処理に対して、色と位置が近いものをグループという単位で捉え、それぞれのグループの特性に応じた処理を行うというものであった。
【０００７】
【発明が解決しようとする課題】
しかしながら、この場合も、先の例と同様に、グループごと、つまり領域ごとに色再現範囲圧縮処理用のパラメータを切り替えることが可能であるため、グループの境界線が擬似輪郭として現れてしまうという問題点があった。
【０００８】
本発明はこのような点に鑑みてなされたものであり、領域分割された後に各領域ごとに色調整または色修正処理を行う場合に、境界部分の色差が小さい場合、つまり境界としてはっきりしない部分で領域が分割された場合などであっても、色調整または色修正後に境界性部分が擬似輪郭とならないように処理する画像処理装置および画像処理方法を提供することを目的とする。
【０００９】
【課題を解決するための手段】
本発明によれば、画像を分割した各部分領域に対して色の調整または修正処理を行う画像処理装置において、画像データを入力する入力手段と、前記入力手段により入力された前記画像データをＸＹ平面における複数の部分領域に分割する領域分割手段と、前記領域分割手段により分割された部分領域ごとに色変換を行うための部分領域ごとのパラメータを作成するパラメータ作成手段と、前記パラメータ作成手段により作成された第１の部分領域における境界部分のパラメータが前記第１の部分領域と隣接する第２の部分領域における境界部分のパラメータと近似する場合に、前記第１の部分領域のパラメータを、前記第２の部分領域のパラメータと等しくなるように調整または修正するパラメータ調整または修正手段とを具備することを特徴とする画像処理装置が提供される。
【００１０】
この画像処理装置によれば、入力手段に入力された画像データは、領域分割手段において、ＸＹ平面で複数の部分領域に分割される。パラメータ作成手段では、領域分割手段により分割された部分領域ごとに、それぞれの部分領域内の画素を色変換するためのパラメータを作成する。パラメータ調整または修正手段は、パラメータ作成手段により作成された部分領域ごとのパラメータのうちで、隣接する第１および第２の部分領域における境界部分のパラメータが等しくなるように調整または修正する。このようにして作成された部分領域ごとのパラメータを部分領域内の画素に適用することにより、入力された画像データには存在しなかった領域の境界に生じる疑似輪郭が発生してしまうようなことはなくなる。
【００１５】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
図１は本発明による画像処理装置の第１の原理的な構成を示す図である。この図１において、本発明による画像処理装置は、画像入力手段１と、分布認識手段２と、領域分割手段３と、曖昧境界領域選定手段４と、パラメータ作成手段５と、パラメータ調整手段６とから構成されている。
【００１６】
画像入力手段１に入力された画像データは、分布認識手段２において、色分布およびＸＹ位置情報が認識され、認識された分布をもとに領域分割手段３が領域分割を行う。曖昧境界領域選定手段４はその領域分割手段３で分割された分割領域に対し、隣り合った分割領域間の境界部分における色変化を調べ、色変化が小さい境界である曖昧境界で分けられている分割領域を選定する。パラメータ作成手段５では、領域分割手段３により分割された１または複数の分割領域に対して、色変換パラメータを作成する。そして、パラメータ調整手段６が曖昧境界領域選定手段４にて選定された分割領域に対し、パラメータ作成手段５による作成結果に基づいて、曖昧境界で分割された両領域の色変化の小さい色については同じような色に変換されるようパラメータ調整を行う。このようにして色調整または色修正処理された画像データはディスプレイあるいはプリンタなどの画像出力装置７に出力される。これにより、曖昧境界で分割された領域を色調整または色修正することによって、入力された画像データにはなかった擬似輪郭が発生してしまうようなことはなくなる。
【００１７】
次に、本発明を画像処理システムに適用した実施の形態について詳細に説明する。
図２は本発明の第１の実施の形態における画像処理システムの構成例を示すブロック図である。図２において、画像処理システムは、画像入力装置１１と、入力側色変換部１２と、セレクタ１３と、Ｎ個のダイレクトルックアップテーブル１４1 〜１４N と、補間器１５と、画像出力装置１６と、ユーザ指示部１７と、保持部１８と、領域分割部１９と、色変換パラメータ作成部２０とから構成されている。領域分割部１９は、クラスタ作成部１９１、クラスタ解析部１９２、領域決定部１９３、および領域判定部１９４から構成され、色変換パラメータ作成部２０は、プロファイル作成部２０１、プロファイル調整部２０２、およびプロファイルリンク部２０３から構成されている。
【００１８】
画像入力装置１１は、画像を読み取って入力画像データとして出力する。ここでは、画像データはＲＧＢデータとして取り込まれるものとする。なお、この画像データは、あらかじめ読み込まれて記憶装置などに記憶している画像データや、ネットワークなどを介して送られてくる画像データを入力画像データとしてもよい。また、たとえばグラフィックシステムなどで作成された画像を入力画像としてもよい。
【００１９】
入力側色変換部１２は、入力画像データの表色系と内部の処理において用いる表色系との間での色変換を行う。この例では、内部処理において明度および色度で表現されるＣＩＥ（Commission Internationale de l'Eclairage）のＬ* ａ* ｂ* 表色系を用いるので、ＲＧＢ空間からＬ* ａ* ｂ* 空間への変換処理を行う。なお、以下の説明ではＬ* ａ* ｂ* を単にＬａｂとして表記する。
【００２０】
セレクタ１３は、入力側色変換部１２で色空間の変換が行われた画像を保持するとともに、保持している画像の各画素のＸＹ位置座標ごとにダイレクトルックアップテーブルを切り替える。
【００２１】
ダイレクトルックアップテーブル１４1 〜１４N は、色変換パラメータ作成部２０で設定される内容を保持するメモリであり、ユーザ指示部１７でのユーザの指示による色調整と、画像出力装置１６の色空間への変換を同時に行う。セレクタ１３で保持されている入力画像データの各画素のＸＹ座標をもとに、ダイレクトルックアップテーブル１４1 〜１４N をセレクタで切り替えて複数のテーブル値を出力する。たとえば、Ｌａｂ各軸を１６個に分割する場合、各軸に１７個の格子点ができる。この各軸の格子点の組は、１７3 ＝４９１３個である。ダイレクトルックアップテーブル１４1 〜１４N は、この４９１３個の格子点について変換後の値が保持される。もちろん、各軸の分割数などは任意であり、分割数に応じた格子点の値を保持する。
【００２２】
また、このようなテーブルを用いるほか、関数式を与えて演算を行うなど、種々の構成が可能である。この例では、内部の処理をＬａｂ空間において行っており、画像出力装置１６がＣＭＹＫ表色系を用いているため、Ｌａｂ→ＣＭＹＫへの変換を行っている。これに限らず、ダイレクトルックアップテーブル１４1 〜１４N は、セレクタ１３に保持される入力画像データの表色系に合わせた変換処理を行えばよく、たとえば、セレクタ１３にＬ* ｕ* ｖ* 表色系の入力データが保持されている場合には、Ｌ* ｕ* ｖ* →ＣＭＹＫへの変換を行えばよい。また、色変換処理を分割し、たとえば、ユーザ指示部１７からの指示による色調整を行うＬａｂ→Ｌａｂの変換を行った後に、色空間の変換であるＬａｂ→ＣＭＹＫの変換を行うように構成してもよい。
【００２３】
ダイレクトルックアップテーブル１４1 〜１４N には、領域分割部１９で決定された領域と色変換パラメータ作成部２０で作成されたプロファイルから、処理画像のＸＹ座標値に応じて必要なプロファイルがセットされる。使用するプロファイルの種類がダイレクトルックアップテーブルの数より大きい場合には、プロファイルの読み替えなどの処理を行って選択する。画素の値に応じて、選択されたダイレクトルックアップテーブル１４1 〜１４N のいずれかから複数のテーブル値を読み取り、補間器１５により補間を行ない、ＣＭＹＫ信号を画像出力装置１６へ送信する。これにより画像出力装置１６から画像が出力される。
【００２４】
画像出力装置１６は、たとえばプリンタやＣＲＴ（cathode ray tube）など、カラー画像を出力可能な機器であり、補間器１５からの出力画像データをもとに画像を出力する。また、実際に出力しなくても、たとえば記憶装置などに保管したり、ネットワークやバスなどを介して他の装置へ転送、入力するような構成であってもよい。
【００２５】
保持部１8 は、領域分割部１９や色変換パラメータ作成部２０で必要とする各種の設定値やパラメータを保持するとともに、ユーザ指示部１７でユーザから与えられた指示内容、領域分割部１９で作成された位置マスク情報、色変換パラメータ作成部２０で作成されたダイレクトルックアップテーブル１４1 〜１４N などの色変換パラメータなど、各部からの出力データを保持する。
【００２６】
領域分割部１９のクラスタ作成部１９１は、入力画像から、類似する特徴を持つ画素で構成される画像空間上のクラスタを抽出する。クラスタ解析部１９２は、クラスタ作成部１９１で抽出されたクラスタごとにＸＹ位置空間での連続性を調べ、ＸＹ位置空間で分離しているクラスタを別々に扱う処理を行う。領域決定部１９３は、クラスタ解析部１９２での結果をもとに分割領域を決定し、ＸＹ位置座標と領域番号との対応関係や、各領域の範囲を示すデータを作成し、保持部１８に保持する。領域判定部１９４では、領域決定部１９３で作成された領域間の隣接関係を調べる。具体的には、境界部分に存在する各領域の画素間の色差を算出し、算出した色差から、両領域間の境界部における色差が大きいのか小さいのかを判断する。色差が大きい場合は、境界部分が視覚的にもはっきり境界であると判断されると考え、色差が小さい場合は、クラスタリングの処理で境界と判断されたが、視覚的に見て境界として扱ってよいのかどうかがわからないと判断する。この、視覚的に見て境界として扱ってよいのかどうかがわからない境界を以下では曖昧境界と記す。領域判定部１９４では、曖昧境界で分離された領域、つまり視覚的に分離のされ方が小さいと考えられる領域の領域番号や色差などの値を保持部１８に保持する。また、曖昧境界で分離された領域を以下では曖昧境界領域と記す。
【００２７】
ユーザ指示部１７では、ディスプレイなどに表示された、領域分割画像と入力画像から、どの領域をどのくらい色調整するかがユーザによって指示される。また、指示内容は保持部１８に保持される。
【００２８】
色変換パラメータ作成部２０のプロファイル作成部２０１では、ユーザ指示部１７でのユーザからの指示内容に応じて、指定された領域に対するプロファイルを作成する。ここで作成するプロファイルは多次元テーブル型のＬａｂ→Ｌａｂプロファイルであり、領域ごとに独立したＬａｂ→Ｌａｂプロファイルが作成されるものとする。プロファイル調整部２０２は、領域判定部１９４で求めらた曖昧境界に隣接する領域がユーザ指示部１７で色調整の対象となった場合であって、プロファイル作成部２０１で作成されたプロファイルを適用したことによって曖昧境界部分で擬似輪郭が発生すると判断される場合に、プロファイルの調整を行う。
【００２９】
プロファイルリンク部２０３は、色調整の対象となった領域に対して、色調整用のプロファイルと、出力装置への表色系への変換を行うプロファイルとを合成し、保持部１８に合成後のプロファイルを保持する。
【００３０】
色変換パラメータ作成部２０にて色変換パラメータが作成されると、セレクタに保持された入力画像の１画素ごとにＸＹ位置座標を読み取り、必要な色変換パラメータをダイレクトルックアップテーブル１４1 〜１４N にセットし、色変換処理を行う。
【００３１】
図３は画像処理システムの領域分割部の構成例を示す図である。図３では、領域分割部１９での各処理部とともに、各処理部で使用される、あるいは各処理部から出力される主なデータについても書かれている。以下では、領域分割部１９における各部の処理について説明する。
【００３２】
画像入力装置１１から入力された画像データは、入力側色変換部１２において、ＲＧＢ色空間からＬａｂ色空間への変換処理が行われ、領域分割部１９に入力される。ここでは、ＲＧＢ色空間からＬａｂ色空間へ変換したため、以下で用いる画像データおよび画素値はＬ，ａ，ｂの三つの要素から構成される。
【００３３】
クラスタ作成部１９１は、類似する特徴を持つ画素の集合をクラスタとして抽出する。ここで用いる特徴とは、色空間における各座標値（Ｌ，ａ，ｂ）と、位置空間における各座標値（Ｘ，Ｙ）の五つである。本発明では使用する特徴をこれらの五つ（Ｌ，ａ，ｂ，Ｘ，Ｙ）に限定するものではなく、これらの特徴は色に関する特徴を含んでいればどのような特徴をいくつ用いてもよい。
【００３４】
この類似する特徴を持つ画素集合を抽出する処理は、クラスタリングにより実現できる。たとえば、画像解析ハンドブック（東京大学出版会）ｐ. ６４８−６５１に示されている非階層的クラスタリング、いわゆるＫ−ｍｅａｎ法を用いることができる。ここでは、Ｋ−ｍｅａｎ法を用いた例について説明するが、本発明はこれに限定するものではなく、画像平面上において類似する特徴を持つ画素の集合を抽出できる方法であれば、どんな方法を用いてもよい。
【００３５】
図４は領域分割部のクラスタ作成部におけるクラスタ作成処理の流れを示すフローチャートである。以下では、各ステップごとに処理内容を述べる。まず、ステップＳ１では、初期クラスタを生成する。ここでは、あらかじめ保持部１８に登録されている初期分割情報を用いて、初期クラスタを生成する。たとえば、１辺が１０画素の正方形の初期クラスタを生成することができる。初期クラスタを生成した際に、画素の再配置に用いるクラスタ中心を算出しておく。クラスタ中心を算出する方法もメディアン法や重心法など種々の方法が存在し、いずれを採用してもよいが、ここでは一例として、各クラスタに属する画素の色空間における各座標値（Ｌ，ａ，ｂ）と位置空間における各座標値（Ｘ，Ｙ）の平均値をクラスタ中心とした。
【００３６】
ステップＳ２では、すべての画素について、どのクラスタに属するかを調べて、クラスタを再構成する。ここでは、各画素がどのクラスタに属するかを調べるために、Ｌ，ａ，ｂ，Ｘ，Ｙの５次元からなる特徴空間において注目画素とすべてのクラスタ中心との重み付き距離を算出する。ここで、処理の効率化のため、すべてのクラスタではなく、対象画素の近傍に存在するクラスタ中心についてのみ調べて重み付き距離を算出してもよい。
【００３７】
対象画素Ｔとクラスタ中心Ｍi （１≦ｉ≦クラスタの総数）との重み付き距離Ｄi は、
【００３８】
【数１】
Ｄi＝√(p(LT-LMi)2+q(aT-aMi)2+r(bT-bMi)2+s(XT-XMi)2+t(YT-YMi)2) ・・（１）
で算出できる。ここで、（ＬT ，ａT ，ｂT ，ＸT ，ＹT ）は対象画素ＴのＬ，ａ，ｂ，Ｘ，Ｙ５次元からなる特徴空間上の座標であり、（ＬMi，ａMi，ｂMi，ＸMi，ＹMi）はクラスタ中心ＭｉのＬ，ａ，ｂ，Ｘ，Ｙ５次元からなる特徴空間の座標である。また、ｐ，ｑ，ｒ，ｓ，ｔはそれぞれ、Ｌ，ａ，ｂ，Ｘ，Ｙに対する重み係数である。この重み係数を適当に定めることで、生成されるクラスタを調節することができる。
【００３９】
ステップＳ２におけるクラスタの再構成は、この重み付き距離が最も小さいクラスタに対象画素が属するように行う。さらに、ある画素とクラスタ中心との最も小さい重み付き距離があらかじめ設定された閾値よりも大きい場合には、より適切なクラスタを作成するために、その画素一つからなるクラスタを新たに生成してもよい。
【００４０】
ステップＳ３では、前のステップＳ２で再構成されたクラスタのクラスタ中心を算出する。このクラスタ中心の算出方法は、ステップＳ１で用いた方法と同様である。
【００４１】
ステップＳ４では、ステップＳ２で行われたクラスタの再構成でクラスタが変更されたか否かを調べて、変更されていなければ、再構成は収束したものとみなして、ステップＳ５の処理へ進む。変更されている場合には、ステップＳ２に戻って、処理を繰り返す。
【００４２】
ステップＳ５では、隣接しているクラスタ同士のクラスタ中心が、あらかじめ設定された閾値よりも小さい場合に、これらのクラスタを統合する。
ステップＳ６では、このようにして得られたクラスタに対してユニークなクラスタ番号を付け、またＸＹ位置座標とクラスタとの対応関係がわかるテーブルを作成し、ＸＹ位置座標がわかればクラスタ番号がわかるようにし、そのテーブルを保持部１８に保持する。このテーブルは次のクラスタ解析部１９２で使用される。
【００４３】
次に、クラスタ解析部１９２は、クラスタ作成部１９１で作成されたクラスタがＸＹ位置空間において連続した領域であるかどうかを調べ、一つのクラスタであってもＸＹ位置空間で複数の領域に分かれるような場合には、ＸＹ位置空間上で連続した領域ごとに複数の領域を作成する。
【００４４】
図５は作成されたクラスタの例を示す図である。図５において、画像がいくつかのクラスタの領域に分割されている状態を示しており、ここで、ＸＹ空間で見れば分離している領域が同一のクラスタであるという場合を考える。たとえば、図５に斜線で示す二つの領域が同一のクラスタであるとした場合、分割領域ごとに色調整するという立場からは扱いづらいため、同一のクラスタであっても位置が離れている場合は別々に扱うことにする。
【００４５】
図６は同一クラスタを複数の領域に分割する手法を説明するための図であって、（Ａ）は同一クラスタが離れた分割領域にある画像の例を示し、（Ｂ）は走査行における画素の配置例を示している。図５の場合を例に、同一クラスタを複数の領域に分割する手法を説明する。まず、図６（Ａ）に示したように、Ｘ方向およびＹ方向を定め、図６（Ｂ）に示したように、画素単位でＸＹ位置座標をとり、個々の画素がどのクラスタに属しているかを調べる処理を行う。図６（Ｂ）において、黒丸はクラスタ１、白丸はクラスタ２であるとし、画素のＸＹ座標を表すため左上の画素を（Ｘ，Ｙ）＝（１，１）と設定し、右方向にＸ値が増し、下方向にＹ値が増すものとする。各画素がどのクラスタに属しているかを調べる順番は、（Ｘ，Ｙ）＝（１，１）の画素から、Ｘ方向に走査し、Ｘ方向の全画素のチェックが終了したらＹ値を１増やし、そのＹ値における全Ｘ画素を走査するという順番で画像内の全画素を走査する。このような順番で画素を走査しながら、次に示す方法を用いることにより、同一クラスタを複数の領域に分割する。
【００４６】
図７は画像を２行走査したときのクラスタ分割を説明する図であって、（Ａ）は走査行における画素の配置例を示し、（Ｂ）は１行目を走査したときに作成されるテーブルを示し、（Ｃ）は２行目を走査したときに作成されるテーブルを示し、（Ｄ）は合成したテーブルを示している。図６のような設定のもと、Ｙ方向に３画素分の領域をとった場合をもとにクラスタ分割を説明する。Ｘ方向は２０画素であるとし、画素配列が（Ａ）のような状況にある場合を考える。図７（Ｂ）に示す三つのテーブルは、Ｙ＝１に対するＸの全画素を走査した場合に作成されるテーブルである。テーブルの作成方法は、画素を順に走査し、画素のＸＹ座標値からその画素が属するクラスタ番号を調べ、クラスタ番号が連続している部分ごとにテーブルを作成する。ＸＹ座標値とクラスタ番号との対応はクラスタ作成部１９１で求めたＸＹ位置座標からクラスタ番号への変換テーブルを使用すればよい。以下では、図７（Ｂ）に示す三つのテーブルの作成方法を説明する。
【００４７】
（Ｘ，Ｙ）＝（１，１）の画素を調べた場合に、この画素はクラスタ１であるため、図７（Ｂ）の上段に示すテーブルを作成する（ただし、この場合、後述するようにＸmax の値は１となる）。この場合、「クラスタメイン番号」欄にはクラスタ番号が入り、「クラスタサブ番号」欄は同一のクラスタメイン番号でありながらＸＹ空間で分離している場合に違った値に設定する。クラスタサブ番号は、クラスタメイン番号が最初に出てきた場合は１に設定し、それ以降はクラスタサブ番号を１ずつ増やせばよい。また、クラスタメイン番号それぞれにつき、使用されているクラスタサブ番号を保持するものとし、クラスタサブ番号が重ならないようにする。「Ｘmin 」，「Ｘmax 」，「Ｙmin 」，「Ｙmax 」欄は、クラスタメイン番号、クラスタサブ番号で表されるクラスタが存在しているＸ，Ｙ値の最小値と最大値であり、（Ｘ，Ｙ）＝（１，１）の画素を調べた段階では、４つの欄とも１が代入されている。
【００４８】
次に（Ｘ，Ｙ）＝（２，１）の画素を調べ、クラスタ番号が１だとわかると、クラスタメイン番号が１である、すでに作成している図７（Ｂ）上段のテーブルにこの画素の情報が追加できるかどうかを判断する。この場合、処理している画素のＸ値と、テーブルのＸmax の値が１違いの場合、この画素も同一のクラスタサブ番号であると判断してＸmax の値を１増やし２とする。
【００４９】
（Ｘ，Ｙ）＝（９，１）ではクラスタ番号が２の画素が現れるので、図７（Ｂ）中の段のテーブルを作成する。そして、（Ｘ，Ｙ）＝（１３，１）では再びクラスタ番号１の画素が現れるが、すでに作成してある図７（Ｂ）上段のＸmax の値８に対し、この画素のＸの値が１３であるため、この画素はクラスタメイン番号が１、クラスタサブ番号が１の領域と分離されていると考えて、クラスタメイン番号が１、クラスタサブ番号が２のテーブルを新たに作成する。このようにして、図７（Ｂ）の三つのテーブルを作成する。
【００５０】
次に、Ｙ値が２に対する全画素を走査して、図７（Ｃ）に示すテーブルを同様に作成する。この場合は、クラスタサブ番号が大きくなっていることに注意する。ここで、Ｙ値が２以上の場合は、新しく作成したテーブルを作成済みのテーブルと比較して、作成済みのテーブルに新たに作成したテーブルの情報を入れ込めることが可能ならば入れ込めてテーブルを合成する。たとえば図７（Ｃ）上段のテーブルの場合はクラスタメイン番号が１であり、作成済みのテーブルのうちクラスタメイン番号が同じ１である二つのテーブル（図７（Ｂ）の上段と下段のテーブル）のものと比較し、テーブルの合成が可能かどうかを判断する。判断方法は、Ｘmin 〜Ｘmax の範囲で共通する部分があり、かつＹの値が連続していることである。具体的には、（クラスタメイン番号，クラスタサブ番号）＝（１，１）の場合は（Ｘmin ，Ｘmax ）＝（１，８）であり、（クラスタメイン番号，クラスタサブ番号）＝（１，３）の場合は（Ｘmin ，Ｘmax ）＝（１，９）であるため、Ｘ座標が１〜８の範囲は両方の場合で共通であり、また（クラスタメイン番号，クラスタサブ番号）＝（１，１）の場合は（Ｙmin ，Ｙmax ）＝（１，１）であり、（クラスタメイン番号，クラスタサブ番号）＝（１，３）の場合は（Ｙmin ，Ｙmax ）＝（２，２）であるため、Ｙの値が連続している。Ｙが連続しているかどうかは、作成済みのテーブルのＹmax の値と、新たに作成したテーブルのＹmin の値が１違いかどうかで判断すればよい。
【００５１】
このような判断を行えば、図７（Ｃ）三つのテーブルはすべて合成可能となり、図７（Ｄ）に示すようなテーブルを作成することができる。図７（Ｄ）のテーブルは、図７（Ｂ）と比較してＹmax の値が１増し、新たに加えられたＹ値に対する（Ｘmin ，Ｘmax ）の値が保持される。図７（Ｄ）のテーブルを作成したため、図７（Ｃ）の三つのテーブルは不要となり、消去される。また、図７（Ｃ）で使用したクラスタサブ番号は後処理で使用できるよう消去しておく。
【００５２】
図８は画像を４行まで走査したときのクラスタ分割を説明する図であって、（Ａ）は各走査行における画素の配置例を示し、（Ｂ）は３行目までに作成されるテーブルを示し、（Ｃ）は４行目を走査したときに作成されるテーブルを示し、（Ｄ）は合成したテーブルを示している。図８（Ａ）のように、Ｙの値が小さい場合は分離されたクラスタであったが、Ｙの値が大きくなれば分離されていないという場合がある。このような場合に対し、図８（Ｂ）はＹ値が３までの処理が終了した後のテーブルであり、図８（Ｃ）はＹ値が４の場合のテーブルである。この場合、（クラスタメイン番号，クラスタサブ番号）＝（１，３）に対するテーブルである図８（Ｃ）は、（クラスタメイン番号，クラスタサブ番号）＝（１，１）と（クラスタメイン番号，クラスタサブ番号）＝（１，２）の両方に属していると判断される。このような場合は、クラスタサブ番号が小さいテーブルにすべてをまとめ、図８（Ｄ）のようにする。この場合は、Ｘmin ，Ｘmax の欄が複数になる。また、クラスタメイン番号１に対するクラスタサブ番号２，３は不要となったため、消去し、後処理で使用できるようにする。
【００５３】
このような処理を画像のすべての画素について行ない、クラスタメイン番号に対するクラスタサブ番号の個数を調べれば、一つのクラスタがＸＹ空間で何個の領域に分割されているかがわかり、すべてのクラスタについて同様の判断をすれは、結果的に画像が何個の領域に分割されているかがわかる。領域決定部１９３では、以上の処理を行いクラスタからＸＹ空間における分離した領域の個数を求め、個々の領域にシリアルな領域番号を付けるとする。また、ＸＹ座標値がわかれば領域番号がわかるようなテーブルなどのデータを作成し、保持部１８に保持するとする。
【００５４】
図９は領域分割部の領域判定部における処理の流れを示すフローチャートである。領域判定部１９４における処理では、領域決定部１９３で決定された領域間の境界部分における色差を調べ、境界部分の色差が小さい領域を求める。
【００５５】
まず、ステップＳ１１では、分割領域から一つの領域を選択する。
ステップＳ１２では、ステップＳ１１で選択された領域の境界部分をなす画素（以下では境界画素と記す）を選択し、その選択された画素に対して、隣接しかつ選択された画素とは違った領域番号である画素との色差を算出し、画素数と色差の和から平均色差を算出する。ここで、色差とはＬａｂ空間での距離であり、画素１が（Ｌ1 ，ａ1 ，ｂ1 ）、画素２が（Ｌ2 ，ａ2 ，ｂ2 ）の場合、画素１と画素２間の色差Ｅは次式で算出される。
【００５６】
【数２】
E ＝√(（L1-L2）2＋（a1-a2）2＋（b1-b2）2)  ・・（２）
また、境界画素とは、その分割領域の外郭部または外郭部近傍に位置する画素であり、境界画素のＸＹ座標値は、クラスタ解析部１９２で作成され各分割領域ごとに設定された図８（Ｄ）に示すテーブルにより求めることができる。具体的には、Ｙ値がＹmin またはＹmax の場合には、Ｘ値がＸmin 〜Ｘmax の範囲にあるすべての画素であり、Ｙ値がＹmin とＹmax 以外の場合は、Ｘmin とＸmax とで示される画素である。Ｘmin とＸmax が複数存在する場合は、そのＹ値に対する境界画素が複数存在することになる。また、曖昧境界に隣接する１画素のみではなく、境界部分から幅を持たせた範囲内に存在する複数の画素を調べてもよい。
【００５７】
ステップＳ１３では、その色差が閾値より小さいかどうかを判断し、色差が閾値より小さい場合、その境界部分は色差が小さい境界部分であると判断する。たとえば、ステップＳ１１で領域１が選択され、ステップＳ１２で領域２との色差が計算されたとし、領域１と領域２との境界部分の平均色差が２．５３、そのときの閾値が４であった場合、領域１と領域２の境界部分は色の変化が小さい境界であると判断する。その場合、ステップＳ１４において、領域番号と平均色差とそれぞれの領域の境界画素のＸＹ座標値を保持する。
【００５８】
図１０は領域判定部で算出し保持される値の例を示す図である。ステップＳ１４の処理にて保持される値は、図１０に示したように、隣接する二つの領域の領域番号、それぞれの領域の境界画素のＸＹ座標値、および平均色差である。
【００５９】
ステップＳ１５では、ステップＳ１４で算出した座標値をもとに、各画素が属する格子ブロック番号を記憶する。格子ブロックとは、Ｌａｂ空間の各軸を所望の大きさに分割する分割平面で分割された最小の単位である。
【００６０】
図１１は格子ブロックを説明する図である。Ｌａｂ空間の各軸をそれぞれ分割平面で単位距離ごとに分割することによって作られる最小単位の正立方体を格子ブロックといい、その頂点を格子点と呼んでいる。各格子ブロックは格子ブロック番号を有しており、この番号によりＬａｂ空間上での格子ブロックの位置、すなわち、画素の明度および色度を表している。
【００６１】
ステップＳ１４で各クラスタに対する境界画素のＸＹ座標値を保持しているため、ＸＹ座標値からその画素のＬａｂ値を求め、またＬａｂ各軸をどのように分割しているかの情報がわかれば、その画素がどの格子ブロックに属しているかがわかる。格子ブロックに対してもシリアルな番号が振られているとする。したがって、領域判定部１９４では、図１０に示した値に加え、格子ブロック番号も保持する。
【００６２】
図１２は領域判定部で保持される格子ブロック番号を含めた値の例を示す図である。ステップＳ１５の処理にて保持される値は、図１２に示したように、クラスタ番号、ＸＹ座標値、格子ブロック番号、および平均色差である。
【００６３】
最後に、ステップＳ１６では、各領域に対して上記の処理が終了したかどうかを判断し、終了していない場合はステップＳ１１に戻り、未処理の領域を選択して同様の処理を繰り返す。終了している場合は、処理を終える。この場合、各領域に対し、図１２の様な情報がセットされることになる。
【００６４】
領域分割部１９での処理が終了したら、入力画像と分割結果とをディスプレイなどに表示して、ユーザからの色調整要求を受け付ける。ディスプレイにおけるその表示例を図１３に示す。
【００６５】
図１３はユーザ指示部におけるユーザインタフェース部の一例を示す図である。ユーザ指示部１７の一部であるディスプレイ１７１には、たとえば入力画像のウインドウ１７２と、領域分割された画像を表示するウインドウ１７３と、ユーザからの色調整に対する指示を受け付けるためのウインドウ１７４とが表示されている。ウインドウ１７２には、入力された実際の画像が表示され、ウインドウ１７３には、領域ごとに番号を付した領域分割画像が表示され、ウインドウ１７４には、この例では、色調整の対象となる領域や色調整の大きさを入力する部分が表示されている。ここでは、色調整を簡便に行うため、Ｌａｂ空間の円筒座標表現となるＬＣＨ空間も利用できるようになっており、明度Ｌ、彩度Ｃ、色相Ｈの変化を指定できるようにしている。
【００６６】
色調整の指示は、領域分割部１９で分割された領域ごとにどのくらい色を変化させるかを指示できるものとし、ユーザは、実際の画像と領域分割部１９で領域分割した結果を見ながら、色調整する領域の番号と、色変化の大きさを指示することができる。たとえば、分割領域１に対して明度を１０上げたい場合は、図中「 領域番号」 欄を１とし、「ΔＬ」欄を１０、「Δａ」「Δｂ」欄を０にし、設定ボタン１７４ａを押す。また、分割領域５に対して明度を３上げ彩度を５減らしたい場合は、図中「 領域番号」 欄を５とし、「ΔＬ」欄を３、「ΔＣ」欄を−５、「ΔＨ」欄を０にして設定ボタン１７４ａを押す。このように、領域番号と、その領域に対する色調整の増減値を必要なだけ指示し、その指示内容を保持部１８に保持する。ここで指定した色調整を行うためには、実行ボタン１７４ｂを押す。
【００６７】
ユーザ指示部１７でのユーザ色調整の要求を受けた後、色変換パラメータ作成部２０では、それぞれの領域に対するパラメータを作成する。本実施の形態で作成する色調整用のプロファイルは、各格子点ごとに、変換後のテーブル値を持つようなＬａｂ→Ｌａｂの変換を行う多次元テーブル型のプロファイルであるとする。具体的には、Ｌａｂ空間の各格子点のＬａｂ値（アドレス値）に対し、変換後の値がテーブル値に書かれているものとする。格子点ではないＬａｂ値に対する出力値を求めるためには、補間処理を行うこととする。たとえば、あるＬP ａP ｂP に対する出力値ＬP ' ａP ' ｂP ' を求めるためには、ＬP ａP ｂP 値を包含する格子ブロックを求め、その格子ブロックに属する８点の格子点を使用し補間処理を行いＬP ' ａP ' ｂP ' を求めればよい。
【００６８】
図１４は補間処理を説明するための図であって、（Ａ）はＬａｂ３次元空間を示し、（Ｂ）はその中の格子ブロックを示し、（Ｃ）は格子点に対するテーブル値を示している。あるＬP ａP ｂP に対する出力値ＬP ’ａP ’ｂP ’を求めるための補間処理において、ＬP ａP ｂP はＬａｂ３次元空間では１点になるため、その点をＰとすれば、Ｐを包含するような格子ブロックが存在し、格子ブロックの端点となる格子点が求まる。図１４（Ｂ）には点Ｐを包含する格子ブロックと、その格子ブロックの頂点に存在する８点の格子点を記してある。格子点には便宜上、１〜８の数字を付している。また、プロファイルのうち、これら８点の格子点に対するテーブル値を図１４（Ｃ）に記してある。図１４（Ｃ）では、ｉ（ｉは１〜８）番目の格子点に対するＬａｂ空間の値（アドレス値）をＬi ａi ｂi 、そのアドレス値に対するテーブル値をＬi ’ａi ' ｂi ' で表している。このとき、Ｐ点における出力値は、Ｐ点を通り、Ｌ，ａ，ｂ各軸に平行な線を引いたときにできる格子ブロック内の８つの直方体の体積比を用いた補間計算で求めることができる。ＬP ' ａP ' ｂP ' は次式によって表される。
【００６９】
【数３】
0003873477.tif 000002
ただし、Ｖｉ（ｉは１〜８）とは、８つの直方体のうち、ｉ番目の格子点を含む直方体の体積であるとし、ＶとはＶｉ（ｉは１〜８）の総和である。
【００７０】
図１５は色調整後の多次元テーブルの例を示す図である。各格子点のＬａｂ値が「アドレス値」欄に、その色をどのような色で再現するかを「テーブル値」欄に記しており、「アドレス値」を入力すれば「テーブル値」を出力する。ある分割領域に対する色調整は、その分割領域に含まれる画素を包含する格子ブロックに属する（格子ブロックの頂点に存在する）格子点に対するテーブル値を書き換えることで実現するとする。たとえば、ある領域に対してＬの値を１０上げたい場合は、その領域を包含する格子ブロックに属するすべての格子点に対するテーブル値のＬの値を１０上げてやればよい。このようにすれば、式３で示した補間処理を行っても、計算上Ｌの値を１０上げることができる。たとえば、Ｌの値を１０上げるために操作する格子点の一部として、図１５の格子点番号Ｘ，Ｙの２格子点を例として、テーブル値としてアドレス値のＬの値をそれぞれ１０上げた例を書いてある。また、ｐ，ｑという２格子点に対しては、ａの値を１０減らすような色調整の例が書いてある。このように、ある領域に対して色調整を行う場合は、その領域を包含する格子ブロックの格子点に対するテーブル値をすべて同じ値だけ変化させてやれば、指定した領域に対する色調整が可能である。
【００７１】
このようにして、プロファイル作成部２０１ではユーザから指示があった分割領域ごとにプロファイルを作成する。
図１６はプロファイル調整部での処理の流れを示すフローチャートである。このプロファイル調整部２０２での処理は、ユーザからの指示に応じた処理を行うようなプロファイルを適用すれば境界部分の段差が擬似輪郭と見えてしまうと判断された場合に、擬似輪郭を起こさないようなプロファイルを設定するための処理フローである。
【００７２】
まず、ステップＳ２１では、ユーザからの指示で色調整の対象となった領域番号の中から、一つを選択する。ステップＳ２２では、その対象領域が、曖昧境界領域かどうかを調べる。曖昧境界領域でない場合は、何も処理せずにステップＳ２４の処理を行う。曖昧対象領域の場合は、次のステップＳ２３で必要な処理を行い、境界部分の差が大きくなりすぎた場合に、その差を小さくするような処理を行う。ステップＳ２４では、ユーザからの指示で色調整したクラスタを全部調べたかどうかを判断する。全部調べた場合には処理は終了するが、全部調べていない場合には、ステップＳ２１に戻って同様の処理を行う。
【００７３】
図１７は図１６のステップＳ２３での処理の詳細な流れを示すフローチャートである。ステップＳ３１では、着目している領域に隣接し、かつ曖昧境界をなす領域を一つ取り出す。ステップＳ３２では、ステップＳ３１で選択された領域が、ユーザ指定で色調整の対象となっている領域かどうかを判断しフラグを設定する。もし、選択された領域のみがユーザの色調整の対象となっている場合は、後述するステップＳ３６の処理は現在着目している領域に対してのみ行うようにし、ステップＳ３１，Ｓ３２で選択された領域の二つとも色調整の対象となっている場合には、現在着目しているクラスタと、ステップＳ３２で選択したクラスタ両方のクラスタを処理対象とすることができる。
【００７４】
ステップＳ３３では、ユーザの要求により作成したプロファイルを境界画素に適用してみて、境界画素間の平均色差を算出する。この場合、ステップＳ３２の結果に基づき、選択されている領域もプロファイルの変更を受けた領域ならば、新しいプロファイルを適用する。
【００７５】
ステップＳ３４では、ステップＳ３３で算出した色差と、入力画像が持っていた色差を比較する。入力画像が持っていた色差は図１２のテーブルから読み取ればよい。ステップＳ３５では、ステップＳ３４での数値の比較に基づき、擬似輪郭が発生しそうかどうかを判断する。具体的には、入力画像が持っていた色差をＥ1 、色調整用プロファイルを適用した場合の色差をＥ2 とした場合、Ｅ1 と比較してＥ2 がかなり大きくなった場合は、領域間の境界部分での色変化が大きいため、擬似輪郭が発生したと判断し、ステップＳ３６の処理を行う。それ以外の場合は、ステップＳ３７の処理を行う。
【００７６】
ステップＳ３６は、ステップＳ３５にて二つの領域間で擬似輪郭が発生したと判断された場合であり、この場合は、境界画素を含む格子ブロックに属する格子点に対するテーブル値を変化させる。その具体例を、図１８に示す。
【００７７】
図１８は境界画素を含む格子ブロックの例を示す図であって、（Ａ）は分割画像を示し、（Ｂ）は境界部分を拡大して示し、（Ｃ）は境界画素の色が含まれる格子ブロックを示している。たとえば、図１８（Ａ）に示すように分割された領域のうち、斜線部で示す１番目の領域のみがユーザによって色調整されたとし、領域１と領域２間の境界が曖昧境界であったとする。図１８（Ｂ）は、領域１と領域２のみを拡大した図であり、領域１と領域２の境界に位置している画素（境界画素）を模式的に小丸で示しており、領域１は黒小丸、領域２は白小丸で示している。また、図１８（Ｃ）は、領域１、領域２に含まれる画素の色が含まれる格子ブロックを示しており、領域１、領域２それぞれについては、破線で囲っている格子ブロック内の色で構成されるとする。このような状態で、仮に領域１の境界画素（図１８（Ｂ）にて黒小丸で示す画素）が図１８（Ｃ）の太線で書かれた格子ブロックにすべて含まれるとする。このとき、境界部分で擬似輪郭が発生したと判断された場合は、図１８（Ｃ）の太線で書かれた格子ブロック（以下、曖昧境界格子ブロックと記す）に属する８個の格子点に対するテーブル値を、たとえばユーザ調整する前のテーブル値に置き換える（つまり、アドレス値とテーブル値を同じにする）。このようにすれば、曖昧境界に属する格子点はユーザの色調整の範囲を受けないため、擬似輪郭が起こらないようにできる。この場合、クラスタ１に属する他の格子ブロックに属する格子点は、ユーザの調整を反映したテーブル値を持つと考えられるため、境界画素に影響のあるテーブル値のみを変更することによって擬似輪郭を防ぐことが可能である。ここで、図１８（Ｃ）の太線部の曖昧境界格子ブロックのみを変更させれば、曖昧境界格子ブロックとそれに隣接する格子ブロック間での色差が大きくなるという場合も出てくる。そのような場合は、曖昧境界格子ブロックに隣接する格子ブロックに属する格子点も調整対象にし、格子ブロック間の差を吸収することも可能である。
【００７８】
その他の方法としては、処理前の平均色差をＥ1 、処理後の平均色差をＥ2 とし、曖昧境界格子ブロックに属する格子点のテーブル値をＥ1 、Ｅ2 をもとに内分し、新たなテーブル値としてもよい。その例を図１９に示す。
図１９は曖昧境界格子ブロックに属する格子点のテーブル値の例を示す図である。たとえば、曖昧境界格子ブロックに属する８つの格子点に対するテーブル値を、初期段階における色差がＥ1 の場合の（ＬiE1 ，ａiE1 ，ｂiE1 ）（１≦ｉ≦８）、ユーザの指定に応じて作成したプロファイルで色差がＥ2 になった場合を（ＬiE2 ，ａiE2 ，ｂiE2 ）（１≦ｉ≦８）とし、Ｅ1 とＥ2 の値に応じて各格子点のテーブル値を内分計算で求めるという方法も考えられる。たとえば、Ｅ1 とＥ2 を内分する大きさの色差をαＥ1 ＋（１−α）Ｅ2 （０≦α≦１）で表した、擬似輪郭を生じないであろうと考えられる色差を算出するαを求めると、擬似輪郭を防止するための格子点として各格子点も同様の内分計算をして新たなテーブル値を算出すれば、擬似輪郭を小さくする方向にもっていくことができる。図１９では、格子点番号が１についてのみ、４列目に擬似輪郭防止用のテーブル値を算出する例が書いてある。
【００７９】
この例では、領域１についてのみテーブル値の更新を行ったが、仮にこの例で領域１と領域２ともユーザの色調整が行われている場合は、同様に前記αを求め、二つの領域にαの値を割り振って処理を行うことも可能である。
【００８０】
プロファイルリンク部２０３では、画像にプロファイルを適用する処理を効率よく行うために、画像に適用する複数のプロファイルをあらかじめ合成して一つにしておき、一度の変換で目的の画像を得るために行われ、ここでは、Ｌａｂ→Ｌａｂプロファイルと、出力装置への変換を行うＬａｂ→ＣＭＹＫプロファイルの合成を行う。この例では、分割領域ごとに、色調整のためのＬａｂ→Ｌａｂプロファイルと、出力装置への変換を行うＬａｂ→ＣＭＹＫプロファイルの合成を行う。
【００８１】
ある格子点に対するＬａｂ値をＬj ａj ｂj とし、Ｌj ａj ｂj に対するＬａｂ→ＬａｂプロファイルとＬａｂ→ＣＭＹＫプロファイルとの合成後の出力値Ｃj Ｍj Ｙj Ｋj を求めるためには、Ｌj ａj ｂj に対するテーブル値Ｌj ’ａj ’ｂj ’をＬａｂ→Ｌａｂプロファイルから読み取り、Ｌj ’ａj ’ｂj ’に対しては図１４、図１５に示したのと同様の補間処理をＬａｂ→ＣＭＹＫプロファイルを用いて行えばよい。ただし、このような合成処理は、ユーザによって色調整が行われた領域に対してだけ行えばよく、色調整が行われない領域に対しては、Ｌａｂ→ＣＭＹＫプロファイルをそのまま用いればよい。
【００８２】
この第１の実施の形態では、出力装置としてＣＭＹＫ信号からなるプリンタを想定していたため、ユーザ指示部１７でユーザが指示した色調整結果がプリンタに出力するまで見ることができなかったが、出力装置をディスプレイにすれば、出力結果をディスプレイに表示でき、さらにその画像を見ながら引き続き色調整を行うこともできる。
【００８３】
次に、本発明の第２の実施の形態について説明する。
図２０は本発明の第２の実施の形態における画像処理システムの構成例を示すブロック図である。図２０において、図２に示した構成要素と同様の要素には同じ符号を付して説明を省略する。この第２の実施の形態では、色再現範囲圧縮処理に本発明を適用した例を示す。
【００８４】
第１の実施の形態での画像処理システムと第２の実施の形態での画像処理システムとの大きな違いは、この第２の実施の形態では、ユーザ設定部がなく、自動的にプロファイルを作成し、色再現範囲圧縮処理を含めた色変換処理をする点、領域分割部に色分布算出部１９５が加わった点、色変換パラメータ作成部２１が第１の実施の形態での色変換パラメータ作成部２０と内容が変わっている点である。色変換パラメータ作成部２１内の各部で第１の実施の形態での場合と同じ名前のものが存在するが、処理内容が変わっている。また、この第２の実施の形態では、色再現範囲圧縮処理を行うため、画像出力装置１６の色再現範囲内外データなど、新たに保持するデータが存在する。
【００８５】
まず、第２の実施の形態では、新たに必要となるデータが二つある。一つは、色再現内外データであり、各格子点に対して、画像出力装置１６で色再現可能な色ならば色再現範囲内フラグ、色再現不可能な色ならば色再現範囲外フラグが設定されている。テーブル値にないＬａｂ値に対しては、式３で説明したような補間処理を行い、適当な閾値をもとに色再現範囲内か外かを判断すればよい。もう一つは基本的な色再現範囲圧縮処理を行うＬａｂ→Ｌａｂ変換を行うプロファイルであり、以下では、初期設定プロファイルと記す。この初期設定プロファイルは、色再現範囲内フラグを持つ格子点に対しては、アドレス値とテーブル値が同じであり、色再現範囲外フラグを持つ格子点に対しては、適当な色再現範囲外郭部の色がテーブル値に設定してある。この初期設定プロファイルをＬａｂ画像に適用すれば、色再現範囲内の色は変化せず、色再現範囲外の色に対しては、初期設定プロファイルで設定されたマッピングに基づき色再現範囲圧縮される。
【００８６】
以下では、第１の実施の形態との違いがある、領域分割部１９の色分布算出部１９５の処理と色変換パラメータ作成部２１との処理内容のみを説明する。
色分布算出部１９５は、領域決定部１９３で決定された領域ごとにその領域内の全画素のＬａｂ値と色再現範囲内外判定を行う。全画素のＬａｂ値を求めた後、Ｌ，ａ，ｂそれぞれの分散を算出し、分散の値があらかじめ与えられた閾値より小さい場合は、その領域がほぼ同じような色で構成されているフラットカラーであると判断し、その分割領域にフラットカラーのフラグを与える。分散の値が閾値より大きい場合はその領域内での色変化が大きいと考え、グラデーションやテクスチャーを持つ領域であると考えて、この領域にはグラデーションのフラグを与える。また、全画素が色再現範囲内ならば、その領域に色再現範囲内フラグを与え、色再現範囲外の画素が存在するならば色再現範囲外フラグを与える。このように、各分割領域に対して、色再現範囲内外フラグと色の分散に基づくフラグ（フラットカラーかグラデーションのフラグ）が与えられる。
【００８７】
図２１は色分布算出部での処理の流れを示すフローチャートである。まず、ステップＳ４１では、分割領域のうち一つの分割領域を選択する。ステップＳ４２では、その分割領域内の画素に対して、Ｌａｂを求めるとともに各画素に対して色再現範囲内外判定を行う。ステップＳ４３では、ステップＳ４２で求めた値をもとに、Ｌ，ａ，ｂそれぞれの分散を算出するとともに、各画素に対して色再現内外判定する。ステップＳ４４では、その領域を色再現範囲外として扱うか色再現範囲内領域として扱うかを決定する。色再現範囲外の画素が存在するが、その頻度または領域内全画素に占める割合が小さい場合などは、色再現範囲内の領域として扱ってもよい。その領域を色再現範囲内の領域として扱う場合は、ステップＳ４６でその領域に色再現範囲内フラグを設定し、色再現範囲外領域として扱う場合は、ステップＳ４５で色再現範囲外フラグを設定する。ステップＳ４７では、ステップＳ４３で求めたＬ，ａ，ｂの分散をあらかじめ設定してある設定値と比較して、その領域が分散の小さい、つまりほぼ同一色で構成される領域なのか、分散の大きい、つまりその領域内の色変化が大きい領域なのかを判断する。分散が小さい場合は、ステップＳ４８でその領域にフラットカラーフラグを与え、分散が大きい場合には、その領域にグラデーションフラグを与える。なお、ステップＳ４７での判断は、Ｌ，ａ，ｂ個々の値の分散値を判断するほか、Ｌ，ａ，ｂ個々の値を組み合わせて新たな数を作成し、それらに対して判断を行ってもよい。ステップＳ５０では、これらの処理がすべての分割領域に対して終了したかどうかを判断し、終了していない場合は、ステップＳ４１に戻り、同様の判断を行い、終了している場合はこの処理を終了する。
【００８８】
プロファイル作成部２１１は、色分布算出部１９５で作成された、各分割領域に対して設定されたフラグを用いて、各領域ごとに色再現範囲圧縮プロファイルを作成する。プロファイルは、色再現範囲内領域フラグが設定されている領域に対しては、色再現範囲圧縮プロファイルを設定せず、色再現範囲外領域フラグかつフラットカラーと判断された領域に対しては、初期設定プロファイルをそのまま用いて、色再現範囲内については忠実再現し、色再現範囲外については色再現範囲外郭にマッピングする色再現範囲圧縮を行う。色再現範囲外領域フラグかつグラデーションフラグと判断された領域に対しては、階調性を重視するような色再現圧縮プロファイルを各領域ごとに作成する。
【００８９】
図２２はプロファイル作成部での処理の流れを示すフローチャートである。ステップＳ５１では、分割領域を一つ選択し、ステップＳ５２では、その領域が色再現範囲内領域かどうか判断する。その領域が色再現範囲内ならば、色再現範囲内の色であると判断して、ステップＳ５３に進み、色再現範囲圧縮プロファイルを特別用意しない。あるいは、色再現範囲外の画素が少数含まれることも考えて、初期設定プロファイルを用いてもよい。色再現範囲外領域に対しては、ステップＳ５４でその領域がフラットカラーかどうか判断し、フラットカラーの場合は、ステップＳ５６に進み、色再現範囲内の色は変化させず、色再現範囲外の色が色再現範囲外郭にマッピングするプロファイルを行う初期設定プロファイルをそのまま色再現空間圧縮用プロファイルとして適用する。フラットカラーではない、つまりグラデーションフラグが設定されている領域に対しては、ステップＳ５５にてその領域に対しては階調性を重視するプロファイルを作成する。ステップＳ５７では、すべての分割領域に対して色再現範囲圧縮処理が終了したかどうかを判断し、終了していない場合はステップＳ５１に戻り、同様の処理を行い、終了している場合はこの処理を終了する。
【００９０】
図２３は図２２のステップＳ５５での処理の詳細な流れを示すフローチャートである。グラデーションフラグが設定された分割領域に対する色再現範囲圧縮用プロファイルを作成するため、まず、ステップＳ６１では、その分割領域に属する全画素を包含する格子ブロック番号から、その格子ブロックに属する全格子点に対して初期設定プロファイルを適用した場合のアドレス値とテーブル値の色差を求める。これは、初期設定プロファイルを適用した色再現範囲圧縮を行った場合の、各格子点の圧縮前と圧縮後の色差で示し、色再現範囲内格子点は色差０（ゼロ）であり、色再現範囲外の格子点に対しては、式差は０より大きくなる。ステップＳ６２では、ステップＳ６１で求めた最大色差をもとに、すべての格子点に対して、階調性を保持するようなプロファイルを作成する。作成手法は色々考えられるが、たとえば、最大色差を出した格子点に対するアドレス値からテーブル値へのベクトル（Ｌａｂ→Ｌ' ａ' ｂ' ）方向に、すべての格子点を最大色差分移動させた点をテーブル値とする方法や、色再現範囲外の格子点から色再現範囲外郭までの距離は初期設定プロファイルを用い、色再現範囲内になった場合は色再現範囲内に目標点を設けて、その目標点の方向にマッピングを行い、目標点からテーブル値までの距離と、目標点からアドレス値までの距離の比率が等しくなるようにすればよい。後者の方法を図２４を用いて説明する。
【００９１】
図２４は色再現範囲圧縮処理を説明するための図であって、（Ａ）は格子点が色再現範囲外にある例を示し、（Ｂ）は圧縮方法の一例を示している。図２４（Ａ）は、Ｌ軸を通る断面で、ある分割領域内の全格子点を包含する格子ブロックの頂点に存在する格子点と、その格子点に対する色再現範囲圧縮処理を説明するための図であり、格子点のアドレス値は黒小丸で、色再現範囲圧縮時のアドレス値は白小丸で書いてある。このとき、黒小丸から出ている黒線が、色再現範囲外の格子点に対するマッピングのされかたを表し、色再現範囲外郭までのマッピング方向は初期設定プロファイルから各格子点に対して求まる方向とし、さらに内部にマッピングする場合には、適当な目標点を定めて、その目標点に向かってマッピングを行うようにる。このとき、図２４（Ｂ）の様に、ｄ１を目標点からテーブル値の場所（白小丸部）、ｄ２をアドレス値（黒小丸部）からテーブル値へのトータル距離とした場合、ｄ１／（ｄ１＋ｄ２）の距離が最大色差を出す格子点と同じになるように圧縮するなどの方法である。ここに示した、ステップＳ６１，Ｓ６２の色再現範囲圧縮処理以外に、どのような色再現圧縮手法を用いてもよい。
【００９２】
プロファイル調整部２１２では、第１の実施の形態の場合と同様に、分割領域間の境界部で色差が小さい部分が色差が大きくなったと判断された場合は、境界部分の色を含む格子ブロックに属する格子点のパラメータを初期設定プロファイルに置き換えるなり、あるいは、第１の実施の形態の様に新しいプロファイル作成前後における色差の変化から補間作業によりプロファイルを求めてもよい。
【００９３】
プロファイルリンク部２１３では、色再現範囲圧縮処理用のプロファイルと、画像出力装置１６の色空間に変換するプロファイルの合成を行う。この実施の形態では、色再現範囲内領域に対しては色再現空間圧縮用プロファイルを作成しなかったが、その場合は、合成後のプロファイルとして出力用のプロファイルを用いればよい。
【００９４】
次に、画像を分割した領域に対して色の調整または修正処理を行う場合に擬似輪郭が発生しない画像処理装置の別の構成例について説明する。
図２５は本発明による画像処理装置の第２の原理的な構成を示す図である。なお、この図２５において、図１に示した構成要素と同じ要素については同じ符号を付してある。本発明の画像処理装置は、画像入力手段１と、領域分割手段３’と、パラメータ作成手段５と、領域グループ作成手段８と、パラメータ修正手段９とから構成され、パラメータ適用手段１０を通じて画像出力装置７に接続される。
【００９５】
画像入力手段１に入力された画像データは、領域分割手段３’において、複数の部分領域（以降、単に領域と記す）に分割される。この領域分割手段３’は、図１における分布認識手段２と領域分割手段３とにより構成してもよいし、あらかじめ定められた形状の領域に分割するように構成してもよい。パラメータ作成手段５では、領域分割手段３’により分割された領域ごとに、それそれの領域内の画素を色変換するためのパラメータを作成する。領域グループ作成手段８は、色空間を分割して定められた単位部分空間により、各領域内の画素が占める色空間における部分空間を算出して、部分空間がある単位部分空間を共有し、かつ、隣接する領域から構成される領域グループを作成する。パラメータ修正手段９は、領域グループ作成手段８で作成された同一の領域グループに属する各領域に対応するパラメータの中の対象となる単位色空間に対応するパラメータが等しくなるように修正する。
【００９６】
このようにして作成された領域ごとのパラメータをパラメータ適用手段１０が領域内の画素に適用することで色変換された画像データは、ディスプレイあるいはプリンタなどの画像出力装置７に出力される。このような構成にすることにより、領域ごとに色調整または色変換することによって入力された画像データには存在しなかった領域の境界に生じる疑似輪郭が発生してしまうようなことはなくなる。
【００９７】
次に、本発明を画像処理システムに適用した第３の実施の形態について詳細に説明する。
図２６は本発明の第３の実施の形態における画像処理システムの構成例を示すブロック図である。図２６において、画像処理システムは、画像入力装置３１と、領域分割部３２と、隣接情報作成部３３と、色変換パラメータ作成部３４と、領域グループ作成部３５と、色変換パラメータ修正部３６と、色変換パラメータ適用部３７と、画像出力装置１６と、保持部１８とから構成されている。
【００９８】
保持部１８は、画像データや処理の過程で生成された各種のデータを保持するメモリやハードディスクなどの記憶装置である。
画像入力装置３１は、画像を読み取って入力画像データとして出力する。この例では、画像はＲＧＢデータとして読み込まれ、以降の処理で使用するＬ* ａ* ｂ* 表色系によるＬ* ａ* ｂ* データに変換したものを入力画像データとする。この入力画像データは、保持部１８に記憶される。なお、画像を読み取るのではなく、あらかじめ読み込まれて記憶装置などに記憶している画像データやネットワークなどを介して得られる画像データを入力画像データとしてもよいし、また、たとえば、グラフィックシステムなどで作成された画像を入力画像データとしてもよい。また、本発明は、使用する色空間を限定するものではないので、色変換処理に応じた色空間における入力画像データを使用してかまわない。
【００９９】
領域分割部３２では、入力画像データ（以降、単に画像データと記す）を画像のＸＹ平面で複数の領域に分割する。この例では、適当な大きさの四角形に分割する処理を行う。その画像データの分割例を図２７に示す。
【０１００】
図２７は分割した各領域が四角形になるように画像を分割した例を示す図である。図２７において、全体が画像データを示しており、その画像データが、四角形の２８個の領域に分割されている。各領域内に記述した数字は、各領域に割り当てられた領域番号である。そして、画素から領域番号を引くために、画像データの各画素のＸＹ座標に対応する領域番号を持つ領域番号マップを作成し、これを保持部１８に記憶する。この領域番号マップの例を図２８に示す。
【０１０１】
図２８は領域番号マップの一例を示す図である。領域番号マップは、画像データのある特定の画素がどの領域に分布されているかを示すもので、画像の各画素に対し、領域分割により分割された領域の領域番号がその画素の位置する座標にそれぞれマッピングされている。なお、この例では、分割された一つの領域は、６×６画素の大きさを有する場合を示している。ここで、画像の画素の左上の座標を（Ｘ，Ｙ）＝（１，１）と設定し、右方向にＸ値が増し、下方向にＹ値が増すものとして、たとえば（Ｘ，Ｙ）＝（３，８）の位置座標にある、太枠で示した画素が属する領域番号は、この領域番号マップから、「７」であることがわかる。
【０１０２】
また、領域分割部３２では、画像を単純な四角形に分割したため、この領域番号マップの代わりに、画素のＸＹ位置座標から対象の画素が属する領域番号を返すような関数を作成し、この関数により領域番号マップを代用することもできる。つまり、画素のＸＹ位置座標から属する領域を特定するための情報を作成できればどんな方法を用いてもよい。さらに、ここでは、単純な四角形の領域に分割したが、図２における領域分割部１９のように画像データの色分布やＸＹ位置座標に基づいた領域に分割するように構成してもよい。
【０１０３】
隣接情報作成部３３では、どの領域がお互いに隣接しているかという情報を作成する。この例では、単純な四角形に画像データを分割したので、Ｘ方向およびＹ方向の分割数から領域間の隣接情報を作成することができる。作成した領域間の隣接情報は、保持部１８に記憶される。この隣接情報作成部３３で作成される領域間の隣接情報の例を図２９に示す。
【０１０４】
図２９は領域間の隣接情報の一例を示す図である。図２９に示したように、隣接情報は、基準領域の領域番号があり、各領域番号にその領域に隣接する領域の領域番号が登録される構成になっている。この例では、隣接情報の重複を防止するために、基準となる領域に隣接する領域のうち、基準となる領域の領域番号よりも大きな領域番号のみを登録している。
【０１０５】
また、この例のように、画像を単純な四角形の領域に分割した場合には、基準となる領域の右側および下側に存在する隣接領域が登録されるという規則性を利用して、右側に隣接する領域の番号を返す関数および下側に隣接する領域の番号を返す関数を隣接情報とすることもできる。なお、画像データの色分布やＸＹ位置座標に基づいた領域分割処理を用いた場合でも、領域番号マップをＸ方向およびＹ方向に走査して、異なる領域番号が連続している部分を抽出することで、同様の領域間の隣接情報を作成することができる。
【０１０６】
色変換パラメータ作成部３４は、図２の色変換パラメータ作成部２０または図２０の色変換パラメータ作成部２１と同様の構成することができる。この例では、図２０の色変換パラメータ作成部２１と同様の構成を用いるものとし、この結果、対応する領域内の画素を色変換するためのダイレクトルックアップテーブルが各領域ごとに作成され、これらを保持部１８に記憶する。
【０１０７】
図３０は各領域に対応するダイレクトルックアップテーブルの例を示す図である。図３０において、各領域に対して作成されたダイレクトルックアップテーブルは、領域内の画素を色変換するために必要となる格子点についてのアドレス値のみを保持している。図示の例では、一例として、領域番号０および７の領域に対応したダイレクトルックアップテーブルのみを示している。
【０１０８】
なお、第１の実施の形態において、ダイレクトルックアップテーブルは、各軸の分割数に応じたすべての格子点に対応するアドレス値を保持すると説明しているが、この例のように、各領域に対して作成されたダイレクトルックアップテーブルが領域内の画素を色変換するために必要となる格子点についてのパラメータのみを保持するように構成することもできる。
【０１０９】
領域グループ作成部３５は、色空間を分割することであらかじめ定められた複数の単位部分空間ごとに対象の単位部分空間に属する画素を持ち、かつ、ＸＹ平面上で隣接する領域の組が同一の領域グループに含まれるような１または複数の領域グループを作成する。この例では、領域内の画素を色変換するために必要となる色変換パラメータ作成部３４で作成されたダイレクトルックアップテーブルの格子点に部分色空間を代表させて、格子点ごとに対応するダイレクトルックアップテーブルに対象の格子点がともに存在して、かつ、ＸＹ平面上で隣接する領域の組が同一の領域グループに属するような領域グループを作成する。
【０１１０】
なお、ここでは、各領域に対応するダイレクトルックアップテーブルは、領域内の画素を色変換するために最低限必要とする格子点に対するパラメータのみを保持しているものとして、このダイレクトルックアップテーブルが保持する格子点を使用したが、各領域内の画素が属する単位部分空間や単位部分空間を代表するような代表色を別途算出しておいて、これを参照しながら領域グループを作成するように構成してもよい。
【０１１１】
図３１は領域グループ作成処理の一例を示すフローチャートである。以下では、各ステップごとに処理内容を述べる。まず、ステップＳ７１では、領域分割部３２で作成されたすべての領域の中からまだ選択されていない領域を主領域として一つ選択する。
【０１１２】
ステップＳ７２では、隣接情報作成部３３で作成された領域間の隣接情報を使用して、ステップＳ７１で選択された主領域に隣接する領域の中からまだ選択されていない領域を副領域として一つ選択する。
【０１１３】
ステップＳ７３では、主領域と副領域とのそれぞれに対応するダイレクトルックアップテーブルの格子点番号から、共通する格子点番号を抽出する。
ステップＳ７４では、ステップＳ７３で抽出したすべての格子点番号に対応する領域グループとして主領域と副領域との組を登録する。ここで、対象としている格子点番号に対応する登録済みの領域グループに主領域と副領域とが存在するか否かにより、その登録方法が異なる。まず、二つの領域がともに未登録の場合はこの二つの領域からなる新たな領域グループを作成して登録する。片方の領域のみが未登録の場合は、未登録の領域を登録済みの領域が含まれる領域グループに対して追加する。二つの領域が異なる領域グループにそれぞれ登録されている場合はその二つの領域グループを統合して一つの領域グループとする。
【０１１４】
ステップＳ７５では、主領域に隣接するすべての副領域に対して処理が完了したか否かを調べて、完了している場合はステップＳ７６へ行き、完了していない場合はステップＳ７２に戻って処理を繰り返す。
【０１１５】
ステップＳ７６では、すべての主領域に対して処理が完了したか否かを調べて、完了している場合は、領域グループ作成処理３５を終了する。完了していない場合はステップＳ７１に戻って処理を繰り返す。
【０１１６】
このような処理を行うことによって、色空間を分割してできる単位部分空間ごとに、画像がＸＹ平面上でどのように分布しているかを調査することができ、その結果、単位部分空間を代替する格子点ごとに１または複数の連続して広がっている領域の集合、すなわち、領域グループを得ることができる。
【０１１７】
図３２は各格子点に対応する領域グループの一例を示す図である。図３２において、格子点番号のリストがあり、各格子点番号のところに、領域グループが登録される。各領域グループは、同一の格子ブロックに属する画素を持っている領域で、かつ隣接している領域の領域番号の集合からなっており、図示の例では、たとえば格子点番号「２０５９」には、領域番号「０，７，８」からなる領域グループと領域番号「１８，２５，２６」からなる領域グループとのデータが登録されている。
【０１１８】
色変換パラメータ修正部３６は、領域グループ作成部３５で作成された単位部分空間ごとの領域グループに基づいて、同一の領域グループに属するすべての領域に対応するダイレクトルックアップテーブルの対象格子点に対して設定されている色変換のためのアドレス値が等しくなるように修正する。
【０１１９】
図３３は色変換パラメータ修正処理の一例を示すフローチャートである。以下では、各ステップごとに処理内容を述べる。まず、ステップＳ８１では、領域グループ作成部３５で作成された格子点番号ごとに対応する領域グループを持つデータの格子点番号リストから以降の処理の対象となる対象格子点番号を一つ選択する。
【０１２０】
ステップＳ８２では、対象格子点番号に対応する領域グループの中から以降の処理の対象となる対象領域グループを一つ選択する。
ステップＳ８３では、ステップＳ８２で選択された対象領域グループに属するすべての領域に対応するダイレクトルックアップテーブルの中のステップＳ８１で選択された対象格子点番号のアドレス値が等しくなるようにこのアドレス値を修正する。ここでは、単純平均を用いて算出したアドレス値で置き換えることにより、修正を行う。
【０１２１】
ステップＳ８４では、対象格子点番号に対応するすべての領域グループに対して処理が完了したか否かを調べて、完了している場合は、ステップＳ８５へ行き、完了していない場合は、ステップＳ８２に戻って処理を繰り返す。
【０１２２】
ステップＳ８５では、すべての格子点番号に対して処理が完了したか否かを調べて、完了している場合は、色変換パラメータ修正部３６を終了する。完了していない場合は、ステップＳ８１に戻って処理を繰り返す。
【０１２３】
このような処理を行うことにより、ＸＹ平面において隣接する領域が持つ類似する色に対する色変換パラメータを同一にすることができ、色変換パラメータを適用した際に類似した色は類似した色に変換することができるような色変換パラメータに修正することができる。
【０１２４】
この例では、ステップＳ８３において、格子点に対応するアドレス値を単純な平均により算出したが、本発明は、これに限定するものではなく、これらのアドレス値を等しく修正できる方法であればどんな方法を用いてもよい。たとえば、領域内の画素の色空間における頻度を別途算出しておき、その頻度を重みとした重み付き平均を用いてこれらのアドレス値を等しく修正してもよい。
【０１２５】
色変換パラメータ適用部３７は、画像データ中の画素を順に走査して、対象の画素が属する領域に対応するダイレクトルックアップテーブルを使用して、図１４で説明した方法で補間することにより、各画素ごとに色変換を行う。また、必要に応じて、目的の色変換を行った後で、Ｌａｂデータをディスプレイなどに出力するためのＲＧＢデータやプリンタなどに出力するためのＹＭＣＫデータに変換してもよい。
【０１２６】
画像出力装置１６は、色変換パラメータ適用部３７により作成された画像データを出力するディスプレイやプリンタなどの出力デバイスである。また、これらの出力デバイスではなく、ハードディスクやメモリ、リムーバブルメディア、およびネットワークなどに対して出力するようにしてもよい。
【０１２７】
【発明の効果】
以上説明したように、本発明では、領域分割を行って領域単位で色調整処理を行うような場合であっても、領域分割の不備で本来領域分割されないような領域に対して色調整を行うように構成した。これにより、その領域の境界部での色差の違いが大きく擬似輪郭に見えてしまうと、いうことを防ぐことができる。
【０１２８】
また、画像をＸＹ平面で領域に分割して、その領域ごとに色調整処理を行うような場合であっても、隣接する領域が類似する色を持っている場合には、その類似する色に対する変換パラメータを等しく修正するように構成した。これにより、任意に分割された領域ごとに色調整を行っても、その境界部で疑似輪郭などの不整合が生じることを防ぐことができる。
【図面の簡単な説明】
【図１】  本発明による画像処理装置の原理的な構成を示す図である。
【図２】  本発明の第１の実施の形態における画像処理システムの構成例を示すブロック図である。
【図３】  画像処理システムの領域分割部の構成例を示す図である。
【図４】  領域分割部のクラスタ作成部におけるクラスタ作成処理の流れを示すフローチャートである。
【図５】  作成されたクラスタの例を示す図である。
【図６】  同一クラスタを複数の領域に分割する手法を説明するための図であって、（Ａ）は同一クラスタが離れた分割領域にある画像の例を示し、（Ｂ）は走査行における画素の配置例を示している。
【図７】  画像を２行走査したときのクラスタ分割を説明する図であって、（Ａ）は走査行における画素の配置例を示し、（Ｂ）は１行目を走査したときに作成されるテーブルを示し、（Ｃ）は２行目を走査したときに作成されるテーブルを示し、（Ｄ）は合成したテーブルを示している。
【図８】  画像を４行まで走査したときのクラスタ分割を説明する図であって、（Ａ）は各走査行における画素の配置例を示し、（Ｂ）は３行目までに作成されるテーブルを示し、（Ｃ）は４行目を走査したときに作成されるテーブルを示し、（Ｄ）は合成したテーブルを示している。
【図９】  領域分割部の領域判定部における処理の流れを示すフローチャートである。
【図１０】  領域判定部で算出し保持される値の例を示す図である。
【図１１】  格子ブロックを説明する図である。
【図１２】  領域判定部で保持される格子ブロック番号を含めた値の例を示す図である。
【図１３】  ユーザ指示部におけるユーザインタフェース部の一例を示す図である。
【図１４】  補間処理を説明するための図であって、（Ａ）はＬａｂ３次元空間を示し、（Ｂ）はその中の格子ブロックを示し、（Ｃ）は格子点に対するテーブル値を示している。
【図１５】  色調整後の多次元テーブルの例を示す図である。
【図１６】  プロファイル調整部での処理の流れを示すフローチャートである。
【図１７】  図１６のステップＳ２３での処理の詳細な流れを示すフローチャートである。
【図１８】  境界画素を含む格子ブロックの例を示す図であって、（Ａ）は分割画像を示し、（Ｂ）は境界部分を拡大して示し、（Ｃ）は境界画素の色が含まれる格子ブロックを示している。
【図１９】  曖昧境界格子ブロックに属する格子点のテーブル値の例を示す図である。
【図２０】  本発明の第２の実施の形態における画像処理システムの構成例を示すブロック図である。
【図２１】  色分布算出部での処理の流れを示すフローチャートである。
【図２２】  プロファイル作成部での処理の流れを示すフローチャートである。
【図２３】  図２２のステップＳ５５での処理の詳細な流れを示すフローチャートである。
【図２４】  色再現範囲圧縮処理を説明するための図であって、（Ａ）は格子点が色再現範囲外にある例を示し、（Ｂ）は圧縮方法の一例を示している。
【図２５】  本発明による画像処理装置の第２の原理的な構成を示す図である。
【図２６】  本発明の第３の実施の形態における画像処理システムの構成例を示すブロック図である。
【図２７】  分割した各領域が四角形になるように画像を分割した例を示す図である。
【図２８】  領域番号マップの一例を示す図である。
【図２９】  領域間の隣接情報の一例を示す図である。
【図３０】  各領域に対応するダイレクトルックアップテーブルの例を示す図である。
【図３１】  領域グループ作成処理の一例を示すフローチャートである。
【図３２】  各格子点に対応する領域グループの一例を示す図である。
【図３３】  色変換パラメータ修正処理の一例を示すフローチャートである。
【符号の説明】
１  画像入力手段
２  分布認識手段
３  領域分割手段
４  曖昧境界領域選定手段
５  パラメータ作成手段
６  パラメータ調整手段
７  画像出力装置
１１  画像入力装置
１２  入力側色変換部
１３  セレクタ
１４1 〜１４N   ダイレクトルックアップテーブル
１５  補間器
１６  画像出力装置
１７  ユーザ指示部
１８  保持部
１９  領域分割部
２０  色変換パラメータ作成部
１９１  クラスタ作成部
１９２  クラスタ解析部
１９３  領域決定部
１９４  領域判定部
２０１  プロファイル作成部
２０２  プロファイル調整部
２０３  プロファイルリンク部
【図１】
0003873477.tif 000003
【図２】
0003873477.tif 000004
【図３】
0003873477.tif 000005
【図４】
0003873477.tif 000006
【図５】
0003873477.tif 000007
【図６】
0003873477.tif 000008
【図７】
0003873477.tif 000009
【図８】
0003873477.tif 000010
【図９】
0003873477.tif 000011
【図１０】
0003873477.tif 000012
【図１１】
0003873477.tif 000013
【図１２】
0003873477.tif 000014
【図１３】
0003873477.tif 000015
【図１４】
0003873477.tif 000016
【図１５】
0003873477.tif 000017
【図１６】
0003873477.tif 000018
【図１７】
0003873477.tif 000019
【図１８】
0003873477.tif 000020
【図１９】
0003873477.tif 000021
【図２０】
0003873477.tif 000022
【図２１】
0003873477.tif 000023
【図２２】
0003873477.tif 000024
【図２３】
0003873477.tif 000025
【図２４】
0003873477.tif 000026
【図２５】
0003873477.tif 000027
【図２６】
0003873477.tif 000028
【図２７】
0003873477.tif 000029
【図２８】
0003873477.tif 000030
【図２９】
0003873477.tif 000031
【図３０】
0003873477.tif 000032
【図３１】
0003873477.tif 000033
【図３２】
0003873477.tif 000034
【図３３】
0003873477.tif 000035