(57)【特許請求の範囲】
【請求項１】
原画像の画素データの彩度成分の値が所定値より大きいか否かを判断し、
前記画素データの彩度成分の値が所定値より大きいと判断された場合は該画素データを除外して、前記原画像のヒストグラムを作成し、
前記作成されたヒストグラムからハイライトポイントおよびシャドーポイントを算出し、
前記算出されたハイライトポイントおよび前記シャドーポイントに基づき、前記ハイライトポイントと前記シャドーポイントを結ぶ前記原画像の色立体軸を回転させ、明るさと色みの空間における明るさを示す軸に合わせることで前記原画像の色かぶりを補正することを特徴とする画像処理方法。
【請求項２】
前記原画像の画像データサイズに応じてサンプリング条件を設定し、
前記設定されたサンプリング条件に基づき原画像をサンプリングし、
前記サンプリングされた画素データに基づきヒストグラムを作成することを特徴とする請求項１記載の画像処理方法。
【請求項３】
前記サンプリングは、ラスター方向かカラム方向の少なくとも一方向に規則的もしくはランダムに画素を間引くことを特徴とする請求項２記載の画像処理方法。
【請求項４】
原画像の画素データの彩度成分の値が所定値より大きいか否かを判断する判断手段と、
前記画素データの彩度成分の値が所定値より大きいと判断された場合は該画素データを除外して、前記原画像のヒストグラムを作成する作成手段と、
前記作成されたヒストグラムからハイライトポイントおよびシャドーポイントを算出する算出手段と、
前記算出されたハイライトポイントおよび前記シャドーポイントに基づき、前記ハイライトポイントと前記シャドーポイントを結ぶ前記原画像の色立体軸を回転させ、明るさと色みの空間における明るさを示す軸に合わせることで前記原画像の色かぶりを補正する色かぶり補正手段とを有することを特徴とする画像処理装置。
【請求項５】
コンピュータが読み出し可能なプログラムを記録する記録媒体であって、
原画像の画素データの彩度成分の値が所定値より大きいか否かを判断し、
前記画素データの彩度成分の値が所定値より大きいと判断された場合は該画素データを除外して、前記原画像のヒストグラムを作成し、
前記作成されたヒストグラムからハイライトポイントおよびシャドーポイントを算出し、
前記算出されたハイライトポイントおよび前記シャドーポイントに基づき、前記ハイライトポイントと前記シャドーポイントを結ぶ前記原画像の色立体軸を回転させ、明るさと色みの空間における明るさを示す軸に合わせることで前記原画像の色かぶり補正を行うプログラムを格納することを特徴とする記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、原画像に基づきヒストグラムを作成し、色かぶり補正を行う画像処理方法、装置および記録媒体に関する。
【０００２】
【従来の技術】
近年パソコンの高速化、高メモリー容量化の加速と、デジタルカメラやフィルムスキャナーなどの普及に伴いパソコン上でデジタルデータとして写真調の画像を扱う機会が増えてきた。しかし上記写真調の入力画像は以下の理由に依り色かぶりなどの画像の劣化要因を付帯している場合が少なくない。
【０００３】
例えばデジタルカメラを例に取ると、ＣＣＤカメラで撮影された画像は人間の目には感じられない赤外光などの波長も取り込んでしまう場合がある。勿論赤外カットフィルタなどの処理もなされているが必ずしも完全ではなく色バランスを崩してしまう場合がある。
【０００４】
また、光源色の違いを人は補正（順応）し画像を見ることが知られているが、カメラは光源の違いをそのままフィルムに記録するのでカメラが正確に測色再現していても色かぶりしてしまっているように見えてしまう場合もある。
【０００５】
銀塩カメラで撮影したフィルムをラボでプリントする際には、一般に印画紙にプリントする段において撮影画像の画像解析によりシーンの解析を行い自動補正する機能が盛り込まれている。本出願人はデジタルカメラ等パソコン上に取り込まれたデジタルデータに対して自動補正を行う画像処理方法を提案している。
【０００６】
この画像処理方法は以下の様な処理を行う。
【０００７】
まずパソコン上に取り込まれた各ピクセル毎のＲＧＢデジタルデータを輝度と色度データに変換する。該変換は、例えばＮＴＣＳ方式の信号伝送形式の、
Ｙ（輝度）＝０．３０Ｒ＋０．５９Ｇ＋０．１１Ｂ
Ｉ（色度）＝０．７４（Ｒ−Ｙ）−０．２７（Ｂ−Ｙ）
Ｑ（色度）＝０．４８（Ｒ−Ｙ）＋０．４１（Ｂ−Ｙ）
の計算で「ＲＧＢ」→「輝度、色度」に変換し導く方法がある。またＲＧＢ空間を既存の色空間（例えばｓ＿ＲＧＢ空間）に当てはめて均等色空間（例えばＣＩＥのＬ＊ａ＊ｂ＊空間）に変換し求める方式など多様な方法がある。
【０００８】
入力ＲＧＢデジタルデータを上記輝度、色度データに変換した後、輝度情報を基に輝度ヒストグラムを作成する。ここで入力ＲＧＢデータが各８ビット情報（０〜２５５情報）で、上記ＮＴＳＣ方式により輝度変換を行う場合、輝度信号も同じく８ビット情報（０〜２５５情報）となる。即ちヒストグラムは０から２５５までの２５６通りの輝度信号に対してそれぞれの度数を求める事となる。
【０００９】
そしてハイライト部（この場合２５５輝度側）と、ダーク部（この場合０輝度側）から度数の累積値が既定の比率となる輝度値を求め、この輝度値の情報を白位置（ホワイトポイント）、黒位置（ダークポイント）と判断する。そして、白位置及び黒位置に基づき色バランス補正を行う。
【００１０】
一般に上記「補正精度」と白位置、黒位置を決める上記「既定比率」とは密接な関係があることが知られている。該累積度数を少なく設定すると外乱の影響を受け易く、大きく設定すると有彩色の画素まで無彩色となるよう補正する事となるのでやはり精度が落ちる。設定値の最適値はデバイスに依存するので一概には言えないが一般的にハイライト部から、ダーク部からそれぞれ０．５％程度の比率に設定されている場合が多い。
【００１１】
【発明が解決しようとする課題】
しかし、上記従来の色バランス補正方法にあっては次のような改善の余地があった。
【００１２】
前記白位置を求める際、輝度情報を基に高輝度の画素が白となるよう補正するが、例えば菜の花畑の様な明るいイエローを多く含んだ画像において弊害を起こす場合がある事が知られている。イエローは有彩色の中で最も輝度の高い色であり、前記の様に輝度情報だけに頼って白位置を検出する場合にイエロー画素を白画素として誤認識してしまう。イエローを多く含んだ画像は前記菜の花畑に限らず、イエローバックでスタジオ撮影した場合や、画像にひまわりなどイエロー系の画像が入っただけで誤認識してしまう場合も少なくない。
【００１３】
この対策として、イエロー系の色相の画素の場合には輝度ヒストグラム作成画素から排除したり、或いは一定以上の彩度の画素は同様に輝度ヒストグラム作成画素から排除したりなどの対策が考えられる。
【００１４】
しかし以上の様に輝度ヒストグラムの作成に際して画素選択を行うと次のような二次弊害が起こりえる。
【００１５】
前記の通り白位置、黒位置を決めている「既定比率」の値は検出精度と極めて密接な関係にある。例えば３５万画素の画像に対して該比率が０．５％と設定されている場合、輝度０から累積で１７５０画素目を黒とし、輝度２５５から累積で１７５０画素目を白として設定する。しかし輝度ヒストグラム作成時に多くの画素が排除されてしまった場合、例えば３５万画素の画像から半分の１７．５万画素が排除されてしまった場合、ヒストグラムの０．５％累積画素位置は８７５画素目と判断されてしまい実質的に０．２５％の比率で補正処理を行う事に等しくなってしまう。勿論輝度ヒストグラムの全度数の比率から求めるのではなく、原画像の全画素数の比率で求めればこの様な弊害は生じない。しかし例えば３５０万画素の画像など、極めて高精細な原画像を処理する場合、処理負荷を低減するために規則的に或いはランダムに画素を間引いて輝度ヒストグラムを作成する場合も多い。原画像の画素数が多い、即ち原画像の解像度が十分に高い場合、全画素を解析する必要はなくある程度画素を間引いて輝度ヒストグラムを作成して解析しても多くの場合同程度の結果が導かれる。しかしこの時には設定する累積度数の位置はヒストグラムの全度数に対する比率で取らねばならず、前記の場合の様に原画像の総画素数から０．５％比率の点を導くのは正しくない事は明らかである。
【００１６】
即ち、原画像から輝度ヒストグラムを求め、輝度値０、輝度値２５５夫々の輝度値からの累積度数比率度数で白位置、黒位置を求める場合、様々な要因によりヒストグラム作成から画素が排除され且つ該各要因毎に該累積度数の最適位置が「原画像の総画素数から求める比率」でなければならなかったり「作成されたヒストグラムの総画素数から求める比率」でなければならなかったりなど処理が非常に複雑になってしまう。
【００１７】
本発明は上述の点に鑑みてなされたものであり、少ない処理負荷で高品質の出力画像を得ることができるようにすることを目的とする。
【００１８】
本願第１の発明によれば、少ない処理負荷で良好な画像処理の基準となる画素データを検出できるようにすることを目的とする。
【００１９】
本願第２の発明によれば、少ない処理負荷で原画像の色かぶりを良好に補正することを目的とする。
【００２０】
【課題を解決するための手段】
上記目的を達成するために本願発明は、原画像の画素データの彩度成分の値が所定値より大きいか否かを判断し、前記画素データの彩度成分の値が所定値より大きいと判断された場合は該画素データを除外して、前記原画像のヒストグラムを作成し、前記作成されたヒストグラムからハイライトポイントおよびシャドーポイントを算出し、前記算出されたハイライトポイントおよび前記シャドーポイントに基づき、前記ハイライトポイントと前記シャドーポイントを結ぶ前記原画像の色立体軸を回転させ、明るさと色みの空間における明るさを示す軸に合わせることで前記原画像の色かぶりを補正することを特徴とする。
【００２２】
【発明の実施の形態】
（第１の実施形態）
本実施の形態における画像処理方法では、ＲＧＢの原画像データを画素ごとに明るさを示す輝度と色みを示す色度のデータに変換する。この時、原画像データのサイズが既定値を超えている場合には画素を間引きしながら選択し、輝度ヒストグラムを作成していく。そして高輝度側、低輝度側からの累積度数値が夫々既定の度数に達する輝度位置（輝度値）を白位置（ハイライトポイント）、黒位置（シャドーポイント）として求める。またこの時、白位置、黒位置検出の精度を向上するために高彩度画素を輝度ヒストグラム作成に含めない処理などを行っても良い。
【００２３】
上記白位置と判断された輝度値をとる画素データの色度の平均値と、上記黒位置と判断された輝度値をとる画素データの色度の平均値を計算し、該色空間上で該２点を結んだ直線を原画像の色立体軸（グレーライン）と判断する。該色立体軸の傾き、即ち色かぶりを該色空間上で正規の位置に起こす処理（回転行列演算）を全画素に施す事で色かぶりを補正する。
【００２４】
以上のように、比率ではなく原画像の総画素数に右派依存しない既定の累積度数で判断を行うので、輝度ヒストグラムを求める際に様々な理由により画素が間引かれて処理されても、精度に大きな影響を与えられる事無く白位置、黒位置の検出を行う事が可能となる。
【００２５】
以下、図面を参照して本実施形態を詳細な説明する。
【００２６】
本実施形態におけるシステムの概略の１例を図１に示す。ホストコンピュータ１００には、例えば、インクジェットプリンタなどのプリンタ１０５とモニタ１０６が接続されている。ホストコンピュータ１００は、ワープロ、表計算、インターネットブラウザなどのアプリケーションソフトウエア１０と、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）１０２、該アプリケーションによってＯＳ１０２に発行される出力画像を示す各種描画命令群（イメージ描画命令、テキスト描画命令、グラフィックス描画命令）を処理して印刷データを作成するプリンタドライバ１０３、及びアプリケーションが発行する各種描画命令群を処理してモニタ１０６に表示を行うモニタドライバ１０４をソフトウエアとして持つ。
【００２７】
ホストコンピュータ１００は、これらソフトウエアが動作可能な各種ハードウエアとして中央演算処理装置ＣＰＵ１０８、ハードディスクドライバＨＤ１０７、ランダムアクセスメモリＲＡＭ１０９、リードオンリーメモリＲＯＭ１１０などを備える。
【００２８】
図１で示される実施形態として、例えば一般的に普及しているＩＢＭ  ＡＴコンパチのパーソナルコンピュータにＭｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ９５をＯＳとして使用し、任意の印刷可能なアプリケーションをインストールし、モニタとプリンタを接続した形態が１実施形態として考えられる。
【００２９】
ホストコンピュータ１００では、モニタに表示された表示画像にもとづき、アプリケーション１０１で、文字などのテキストに分類されるテキストデータ、図形などのグラフィックスに分類されるグラフィックスデータ、自然画などに分類されるイメージ画像データなどを用いて出力画像データを作成する。そして、出力画像データを印刷出力するときには、アプリケーション１０１からＯＳ１０２に印刷出力要求を行い、グラフィックスデータ部分はグラフィックス描画命令、イメージ画像データ部分はイメージ描画命令で構成される出力画像を示す描画命令群をＯＳ１０２に発行する。ＯＳ１０２はアプリケーションの出力要求を受け、出力プリンタに対応するプリンタドライバ１０３に描画命令群を発行する。プリンタドライバ１０３はＯＳ１０２から入力した印刷要求と描画命令群を処理しプリンタ１０５で印刷可能な印刷データを作成してプリンタ１０５に転送する。プリンタ１０５がラスタープリンタである場合は、プリンタドライバ１０３では、ＯＳからの描画命令に対して順次画像補正処理を行い、そして順次ＲＧＢ２４ビットページメモリにラスタライズし、全ての描画命令をラスタライズした後にＲＧＢ２４ビットページメモリの内容をプリンタ１０５が印刷可能なデータ形式、例えばＣＭＹＫデータに変換を行いプリンタに転送する。
【００３０】
プリンタドライバ１０３で行われる処理を図２を用いて説明する。
【００３１】
プリンタドライバ１０３は、ＯＳ１０２から入力した描画命令群に含まれるイメージ描画命の色情報に対して、画像補正処理１２０で後述する画像補正処理を行う。グラフィックス描画命令、テキスト描画命令に対しては画像補正処理は行わない。プリンタ用補正処理部１２１は、まず、画像補正処理された色情報によって描画命令をラスタライズし、ＲＧＢ２４ビットページメモリ上にラスター画像を生成する。そして、各画素に対してプリンタの色再現性に応じたマスキング処理、ガンマ補正処理および量子化処理などを行いプリンタ特性に依存したＣＭＹＫデータを生成し、プリンタ１０５に転送する。
【００３２】
次に、画像補正処理部１２０で行われる処理を図３〜６を用いて説明する。
【００３３】
本実施形態の画像補正処理は、ヒストグラム作成処理（図３−Ｓ２０）とヒストグラムに応じた画像補正処理（図３−Ｓ３０）を行う。
【００３４】
Ｓ２０では、図４に示すような処理によりヒストグラムを作成する。そして、作成されたヒストグラムに基づき画像のハイライトポイントおよびシャドーポイントを決定する。
【００３５】
（輝度ヒストグラムの作成）
図４は本実施形態での輝度ヒストグラムを作成するフローチャートである。
【００３６】
図４において、Ｓ１で原画像の輝度ヒストグラム作成のルーチンに入ると、Ｓ２で原画像の画素から輝度ヒストグラムの作成に用いる画素の選択比率を決定する。本実施形態では３５万画素のデータの場合に全画素を対象（選択比率１００％）に輝度ヒストグラムを作成する事とし、３５万画素以上の画素数の原画像が入力された場合には総画素数の比率に応じて画素選択（サンプリング）を行う。即ち３５０万画素の原画像が入力された場合には１０画素に１画素（選択比率１０％）の割合で輝度ヒストグラムを作成する。本実施形態ではｎは次式により求める。
ｎ＝ｉｎｔ（原画像の総画素数／基準画素数３５万）
（但し、ｎ＜１の時はｎ＝１、ｎは整数）
続いてＳ３でラスター番号を管理するカウンターをリセット／セットし、Ｓ４で該カウンターをインクリメントする。
【００３７】
本実施形態では画素の間引き（サンプリング）はラスター単位で行うので、前記の選択比率１０％の場合には、ラスター番号を１０で割ったときの余りが０の場合にそのラスターに属する画素を対象に処理を行う（Ｓ５）。
【００３８】
〔ｉｆ（ラスター番号Ｍｏｄ  ｎ）＝０対象ラスター  ｅｌｓｅ非対称ラスター〕
処理ラスターが前記非対象ラスターの場合にはＳ４に戻る。対象ラスターの場合にはＳ６に進み該ラスターに属する夫々の画素に対して輝度変換、色度変換を処理を行う。本実施形態における輝度変換、色度変換は以下の式により行う。なお、輝度、色度変換は以下の式に限らず、従来の技術で示したように様々な式を用いることが可能である。
【００３９】
Ｙ（輝度）＝ｉｎｔ（０．３０Ｒ＋０．５９Ｇ＋０．１１Ｂ）、（Ｙは整数）
Ｃ１（色度）＝Ｒ−Ｙ
Ｃ２（色度）＝Ｂ−Ｙ
【００４０】
また本実施形態では白位置（ハイライトポイント）、黒位置（シャドーポイント）の検出精度を向上させるために次式により彩度の計算を行い、予め定めた彩度値（Ｓｃｏｎｓｔ）より大きいか否かを判断する（Ｓ７）。高彩度の画素の情報は輝度ヒストグラムに反映させない。
彩度Ｓ＝ｓｑｒｔ（Ｃ１＾２＋Ｃ２＾２）
【００４１】
即ち、（Ｓ＞Ｓｃｏｎｓｔ）の場合にはＳ６に戻り該画素のデータは以後の処理に反映させない。この処理の効果を具体例を上げて説明する。例えばイエローの画素（Ｒ＝Ｇ＝２５５、Ｂ＝０）は無彩色の画素がイエローに色かぶりしたと判断するよりも元々イエローの色相の色であると判断した方が多くの場合間違えが少ない。しかし上記計算式で該画素の輝度を求めると輝度値は「２２６」であり、極めて高輝度の画素であることがわかる。よって該画素を輝度ヒストグラムの作成に含めてしまうと白位置検出時に誤差を生じてしまう場合がある。
【００４２】
該画素の彩度は上記計算式に依れば「２２７」を示し十分に彩度の高い色である事が分かる。よって本実施形態では既定の彩度（Ｓｃｏｎｓｔ）を定め、該既定の彩度以上の画素は輝度ヒストグラムに含めない。よって、該画素に依り白位置検出に誤差が生じることを防ぐことができ、白位置検出の精度を向上させることができる。
【００４３】
上記Ｓ７の判断の後、条件を満たした画素（Ｓ＜Ｓｃｏｎｓｔ）について輝度ヒストグラムを作成していく（Ｓ８）。ここで本実施形態で扱う画素データＲＧＢは各８ビット（２５６階調）データであるので輝度Ｙも２５６の深さに変換される。よって輝度ヒストグラムは０から２５５までの２５６の輝度値の画素が夫々何度数あるかを計数する事となる。
【００４４】
またＣ１、Ｃ２の計算値は後の色かぶり補正時に各輝度値に属する画素の平均色度を算出するデータとして用いるので本実施形態では次のようにデータ保持を行う。０から２５５の構造体配列変数の形式で、度数、Ｃ１累積値、Ｃ２累積値の３メンバーを設定し、各画素ごとの演算結果を各メンバーに反映していく。
【００４５】
対象ラスターの全画素の処理が終了したかどうかを判断し（Ｓ９）、ラスター内に未処理画素が残っている場合にはＳ６に戻りＳ６以降の処理を繰り返す。ラスター内の全画素の処理が終了したらＳ１０で未処理のラスターが残っているかを判断し、全ラスター終了であればＳ１１で終了し、未処理のラスターが残っていればＳ４に戻り上記処理を繰り返す。
【００４６】
以上の様に原画像の画素を選択しながら輝度ヒストグラムを作成する事により、必要最小限の画素数で、且つ後の白位置、黒位置検出時の精度の向上も考慮した輝度ヒストグラムの作成を行う事が出来る。
【００４７】
（ハイライトポイント、シャドーポイントの決定）
輝度ヒストグラムが完成したら、該ヒストグラムから白位置（ホワイトポイント）、黒位置（シャドーポイント）の決定を行う。本実施形態では輝度値０、輝度値２５５の各端から中心方向に累積輝度度数値が１７５０になる点を白位置、黒位置と定める。
【００４８】
輝度ｎの画素の度数をＹｎと置くとき、Ｙ０＋Ｙ１＋……と累積度数を求めていき、該累積度数が１７５０を越えた時の輝度値（Ｙｋ）を黒位置の輝度値（ｋ）とする。次いで該Ｙｋの輝度の画素の平均色度を求める。前記の通り、輝度ヒストグラム作成時に各輝度値の色度の累積値が計算されている（輝度ｎの画素の累積色度をＣ１ｎ  ｔｏｔａｌ，Ｃ２ｎ  ｔｏｔａｌとする）ので、黒位置の輝度値ｋの画素の平均色度Ｃ１ｋ，Ｃ２ｋを求める。
Ｃ１ｋ＝Ｃ１ｋ  ｔｏｔａｌ／Ｙｋ
Ｃ２ｋ＝Ｃ２ｋ  ｔｏｔａｌ／Ｙｋ
【００４９】
同様に白位置の決定を行う。Ｙ２５５＋Ｙ２５４＋……と累積度数を求めていき、該累積度数が１７５０を越えた時の輝度値（Ｙｗ）を黒位置の輝度値（ｗ）とする。次いで該Ｙｗの輝度の画素の平均色度を求める。白位置の輝度値ｗの画素の平均色度Ｃ１ｗ，Ｃ２ｗを求める。
Ｃ１ｗ＝Ｃ１ｗ  ｔｏｔａｌ／Ｙｗ
Ｃ２ｗ＝Ｃ２ｗ  ｔｏｔａｌ／Ｙｗ
以上の演算を行う事により「Ｙ，Ｃ１，Ｃ２」色空間において、白位置（Ｙｗ，Ｃ１ｗ，Ｃ２ｗ）と黒位置（Ｙｋ，Ｃ１ｋ，Ｃ２ｋ）を求めることができる。
【００５０】
尚、本実施形態では輝度値０と輝度値２５５の輝度位置から累積度数を求めたが、輝度値１と輝度値２５４から求めるなど所定のオフセットを有していても良い。
【００５１】
次に、Ｓ３０において、Ｓ２０で決定されたハイライトポイントおよびシャドーポイントに基づいた画像補正処理を行う。本実施形態では画像補正処理として、原画像の色かぶりを補正する色かぶり補正、原画像の露出を最適化すべく輝度のコントラストを補正する露出補正、および出力画像の色のみえを良くするための彩度補正を行う。
【００５２】
（色かぶり補正）
上記の通り原画像の「Ｙ，Ｃ１，Ｃ２」色空間における白位置、黒位置が求められたら、引き続いて色かぶりの補正を行う。
【００５３】
もし原画像に色かぶりが無く理想的な画像であるとすれば、無彩色はＲ＝Ｇ＝Ｂであり、白位置、黒位置の色度の演算値は「Ｃ１ｗ＝Ｃ２ｗ＝Ｃ１ｋ＝Ｃ２ｋ＝０」となる。しかし色かぶりがある場合には、かぶっている色相方向に、かぶっている程度に比例して、（Ｙｗ，Ｃ１ｗ，Ｃ２ｗ）と（Ｙｋ，Ｃ１ｋ，Ｃ２ｋ）を結ぶ直線（色立体軸）に傾きが生じる。色かぶり補正は該色立体軸とＹ軸が一致する様に変換する事で達成できる。方法は色立体を回転、平行移動させることでも達成できるし、座標系を変換する事でも達成できる。
【００５４】
本実施形態ではまず原画像の色立体において、色立体軸の最低輝度点（下端点）を回転中心、色立体軸を回転軸としてＹ軸と平行となる様に回転させる。次いで前記最低輝度点の位置が（Ｙ′，Ｃ１′，Ｃ２′）空間の原点となるように座標系を変換する。図５（ａ）の色立体に対して色かぶり補正を行った結果を図５（ｂ）に示す。以上の処理により、該最低輝度点が原点で、色立体軸がＹ軸と一致する変換処理が実現する。
【００５５】
３次元空間上で回転軸と回転角度が決まっている系で、立体を所望の角度で回転させる回転行列を求める手法は公知の技術であるので詳細な説明は省略する。
【００５６】
以上のように、原画像の各画素を輝度、色度データ（Ｙ，Ｃ１，Ｃ２）に変換し、３次元色空間上で回転、平行移動変換する（Ｙ′，Ｃ１′，Ｃ２′）事により、色かぶりの補正を行う事が可能となる。
【００５７】
（露出、彩度補正）
上記の色かぶり補正を行う事で原画像の色相のずれを補正する事は可能であるが、更に画像レベルを向上する手段として露出補正、彩度補正を行う。
【００５８】
本実施形態では露出のオーバー、アンダーを簡易的に判断し、それに応じて輝度信号にγ補正を施し露出補正を行う。
【００５９】
露出補正は入力輝度値０〜２５５を出力輝度値０〜２５５に変換する１次元ＬＵＴにより行う。本実施形態における該ＬＵＴは、黒位置（シャドーポイント）の輝度値「Ｙｋ」と白位置（ホワイトポイント）の輝度値「Ｙｗ」とその間に存在する変曲点の輝度値「Ｔ′」の３点を結ぶ２直線として表現できる（図６参照）。
【００６０】
本実施形態では該黒位置の輝度値「Ｙｋ」を輝度値「１０」へ、該白位置の入力輝度値「Ｙｗ」を輝度値「２４５」に変換する。更に該変曲点の輝度値「Ｔ′」は次の通り定義し変換する。前記色かぶり補正前の色立体軸とＹ軸（輝度軸）の最小距離をなす輝度値をＴとした時、該輝度値Ｔと原画像の色立体の最低輝度値との差を変曲点の輝度値「Ｔ′」とする。該変曲点の輝度値Ｔ′を前記輝度値「Ｔ」に変換する。
【００６１】
即ち、図３の様に黒位置「Ｙｋ」は輝度値「１０」に（ａ点）、変曲点「Ｔ′」は輝度値「Ｔ」に（ｂ点）、白位置「Ｙｗ」は輝度値「２４５」に（ｃ点）に、夫々変換される。その他の原画像の輝度値は図３の太線に記すように該「ａ」と「ｂ」、「ｂ」と「ｃ」を結んだ直線に沿って夫々変換する。
【００６２】
更に、彩度補正は例えば以下のように行う事が出来る。各原画素の色度Ｃ１，Ｃ２に対して、
Ｃ１″＝ｎ＊Ｃ１′
Ｃ２″＝ｎ＊Ｃ２′（但し、ｎは彩度係数）
該彩度係数「ｎ」を調整する事によって彩度補正を容易に行う事が可能である。
【００６３】
以上で本実施形態における各種補正が終了する。この時点で原画像の各画素は（Ｒ、Ｇ、Ｂ）の色信号データから（Ｙ″，Ｃ１″，Ｃ２″）の色空間データに変換された状態にあるので、彩度（Ｒ′，Ｇ′，Ｂ′）の色信号データに逆変換する。該逆変換は以下の式により行う。
Ｒ′＝Ｙ″＋Ｃ１″
Ｇ′＝Ｙ″−（０．３／０．５９）＊Ｃ１″−（０．１１／０．５９）＊Ｃ２″
Ｂ′＝Ｙ″＋Ｃ２″
【００６４】
前記の如き、本実施形態によれば、原画像の画素データを選択する手段と、該選択された原画像の画素データを輝度データに変換する変換手段と、該選択データから輝度ヒストグラムを作成する手段と、低輝度側から各輝度値の度数を累積し原画像の総画素数や輝度ヒストグラム総度数には依存しない既定値の累積度数になる輝度値を検出する手段と、高輝度側から各輝度値の度数を累積し原画像の総画素数や輝度ヒストグラム総度数には依存しない既定値の累積度数になる輝度値を検出する手段とを有することにより、少ない処理負荷で確実に色かぶり検出を実現することを可能とした画像処理方法を提供できる。
【００６５】
また、本実施形態によれば、サンプリング条件で原画像の画像データサイズに応じて設定しているので、入力画像にかかわらず、ヒストグラム総度数と限定値の累積度数の関係をほぼ一定にすることができる。したがって、良好な色かぶり補正を実現することができる。
【００６６】
なお、サンプリングをラスター単位でなく、カラム単位で行っても構わない。
【００６７】
（第２の実施形態）
第２の実施形態として、輝度ヒストグラムから白位置Ｙｗ、黒位置Ｙｋを求める他の方法を説明する。
【００６８】
第１の実施形態ではＹｗの輝度の画素の色度Ｃ１，Ｃ２の平均値から本来無彩色であるはずの画素がかぶっている色の方向と大きさを求めて処理したが、本実施例では輝度Ｙｗから輝度２５５の輝度値を有する画素の中で最も度数の多い輝度値の色度情報から色かぶりを判断する。輝度値がＹｗから２５５の間にある画素はどの画素も高輝度画素でありどの画素も無彩色である可能性は高い。しかし該範囲の輝度の画素全てが同じ色度を有している訳ではないので、どこの輝度の画素情報を無彩色と判断するかによって色かぶりの補正結果は変わってくる。一概に何処が最適であるかを判断する事は容易ではないが、同じ輝度を有している画素の色度は比較的似かよっている場合が多い。また人の光源に対する色順応機能を加味して考察した場合、十分に高輝度で且つ比較的画像中の存在比率が多い色相の画素を白と判断する光源補正（色順応）している場合も多い。よって、前記実施形態の様に累積度数が既定度数となる輝度値を有する画素の平均色差から色かぶりを判断するよりも、累積度数が既定度数以上である輝度範囲の中で（すなわち、輝度値がＹｗから２５５の中で）最大の度数を有する画素の平均色差から色かぶりを判断することで、処理負荷の増大は伴うが更に補正精度を向上させる事が期待できる。
【００６９】
また、色かぶりの方向や大きさを大きく誤らない方法として、上記累積度数が既定度数以上である輝度範囲に属する全ての画素の平均色差から色かぶりを判断する形式であっても良い。
【００７０】
上記説明は白位置での色かぶりの検出方法について説明したが、黒位置での色かぶりの検出方法も同様に実施できるので詳細な説明は省略する。
【００７１】
白位置、黒位置での色かぶりを検出する検出手段以外の他の構成及び作用効果は第１の実施形態と同様であるので詳細な説明は省略する。
【００７２】
（第３の実施形態）
前記実施形態では既定の累積度数を定め累積度数が該度数以上となる輝度値を無彩色をなす画素として補正処理を進めたが、累積度数を求める輝度値に既定の制限を用いても良い。即ち輝度値０、或いは輝度値２５５から十分に離れた輝度まで累積度数を求めても未だ既定の度数に達しない場合に、該既定の輝度まで度数を累積した時点で累積度数が既定の度数に達したものと判断し処理を行う。
【００７３】
これによる効果は以下の通り考えられる。
【００７４】
原画像そのものに無彩色の色が極めて少なく、無理に既定の累積度数まで引っ張る事でかえって精度を落としてしまうことを抑制する。勿論該既定の累積度数は確率的に最も精度の高い値に設定するが、原画像は多種多様で必ずしも全ての場合に最適な値を設定できるとは限らないので本実施例の様に制限を設ける事で効果が期待できる。
【００７５】
また、予め白位置、黒位置検出に用いる輝度値の範囲が決められるので全ての輝度値の範囲に渡って輝度ヒストグラムを作成しておく必要が無く、メモリー的にも速度的にも効果が期待できる。
【００７６】
本実施形態では既定の累積輝度値が既定の輝度範囲で求められなかった場合にその時点の情報で色かぶりを判断する例をあげたが、累積輝度値が既定の輝度範囲で求められなかった場合に色かぶり補正を行わないとする系であっても勿論良い。
【００７７】
累積輝度値を求める際の輝度範囲制御手段以外の他の構成及び作用効果は前記実施形態と同様であるので詳細な説明は省略する。
【００７８】
（他の実施形態）
上記実施形態では、画像補正処理において最初に色かぶり補正を行い、その後に露出のアンダーやオーバーを補正するいわゆるコントラスト調整を行ったが、その順序は問われない。また、ハイライト／シャドーポイントの決定方法やヒストグラム作成方法や画像補正に関するアルゴリズムは上記方法にかぎられず他の多種多様の方法を用いることができる。
【００７９】
例えば、ヒストグラムを輝度ではなく明度などの他の明るさを示す成分に基づき作成しても構わない。また、ＲＧＢ各色成分独立にヒストグラムを作成しても構わない。
【００８０】
画像補正に関するアルゴリズムもヒストグラム作成方法に応じたアルゴリズムを用いれば良い。例えば、ＲＧＢ各色成分独立にヒストグラムを作成するのであれば、ＲＧＢ独立にハイライト／シャドーポイントを検出し、画像補正処理を行えば良い。
【００８１】
また、上記複数の実施形態を組み合わせても構わない。
【００８２】
また前述した実施形態の機能を実現する様に各種のデバイスを動作させる様に該各種デバイスと接続された装置或いはシステム内のコンピュータに、前記実施形態機能を実現するためのソフトウエアのプログラムコードを供給し、そのシステム或いは装置のコンピュータ（ＣＰＵ或いはＭＰＵ）を格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも本発明の範疇に含まれる。
【００８３】
またこの場合、前記ソフトウエアのプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記憶媒体は本発明を構成する。
【００８４】
かかるプログラムコードを格納する記憶媒体としては例えばフロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることが出来る。
【００８５】
またコンピュータが供給されたプログラムコードを実行することにより、前述の実施形態の機能が実現されるだけではなく、そのプログラムコードがコンピュータにおいて稼働しているＯＳ（オペレーティングシステム）、或いは他のアプリケーションソフトなどと共同して前述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
【００８６】
更に供給されたプログラムコードが、コンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後そのプログラムコードの指示に基づいてその機能拡張ボードや機能格納ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も本発明に含まれることは言うまでもない。
【００８７】
【発明の効果】
以上説明したように、本発明は上述の点に鑑みてなされたものであり、少ない処理負荷で高品質の出力画像を得ることができる。
【００８８】
本願発明によれば、原画像に含まれる高彩度の色味を有する高輝度色が含まれていても良好な色かぶり補正を行うことができる。
【図面の簡単な説明】
【図１】色かぶり補正処理を行うシステムの構成を示すブロック図。
【図２】プリンタドライバで行う画像処理の流れを示す図。
【図３】画像補正処理処理部で行われる画像処理処理の流れを説明する図。
【図４】輝度ヒストグラム作成処理の流れを示す図。
【図５】色かぶり補正を説明する図。
【図６】露出補正を行うＬＵＴを説明する図。
【図１】
0003950551.tif 000002
【図２】
0003950551.tif 000003
【図３】
0003950551.tif 000004
【図４】
0003950551.tif 000005
【図５】
0003950551.tif 000006
【図６】
0003950551.tif 000007