JP4402041B2 - 画像処理方法及び装置及び記憶媒体 - Google Patents

画像処理方法及び装置及び記憶媒体 Download PDF

Info

Publication number
JP4402041B2
JP4402041B2 JP2005373522A JP2005373522A JP4402041B2 JP 4402041 B2 JP4402041 B2 JP 4402041B2 JP 2005373522 A JP2005373522 A JP 2005373522A JP 2005373522 A JP2005373522 A JP 2005373522A JP 4402041 B2 JP4402041 B2 JP 4402041B2
Authority
JP
Japan
Prior art keywords
luminance
color
image
image data
axis
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005373522A
Other languages
English (en)
Other versions
JP2006187006A (ja
Inventor
学 山添
健太郎 矢野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2005373522A priority Critical patent/JP4402041B2/ja
Publication of JP2006187006A publication Critical patent/JP2006187006A/ja
Application granted granted Critical
Publication of JP4402041B2 publication Critical patent/JP4402041B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は、原画像に対して画像補正を行う画像処理方法及び装置及び記憶媒体に関するものである。
従来、写真画像の色バランスを調整する方法としては、(1):撮る前に色バランスを合わせる方法と、(2):撮った後の画像を修正する方法という2通りの方法がある。方法(1)の例としては、例えばビデオカメラのホワイトバランススイッチを用いた色バランスの調整がある。この方法では、本撮影を開始する前に白い紙などを予備的に撮影し、撮影された画像の白の色バランスを調整する。
方法(2)は印刷の分野などで広く行われているが、その多くは職人の勘と経験によるところが多い。
一方、近年とくにデジタルカメラやフォトスキャナが普及したことに伴って、フォト画像のデジタル化が一般の人にも手軽に行えるようになってきた。また、インクジェットプリンタを代表とする出力機器側も高画質化、低価格化が進み、一般のユーザが自宅で写真を手軽に出力することも可能となっている。
しかしながら、デジタル化したフォト画像を印刷出力する場合、出力される画像の画質にはまだ問題が多い。
例えば、いわゆるパーソナルコンピュータ等を介して、入力機器側のRGB信号を、インクジェットプリンタを代表する出力機器でプリントする場合を考えると、例えばアップル社のマッキントッシュ(登録商標)におけるカラーシンクや、マイクロソフト社のWindows(登録商標)におけるCMSなどによって、CIEのXYZ色空間を介した入力機器側と出力機器側とのカラーマッチングが試みられている。しかし、これらの調整を厳密に行うことは非常に困難である。というのも、入力機器側と出力機器側では当然色再現範囲が異なり、さらに入力機器側はR,G,Bの発光信号で、出力機器側はC,M,Y,Kの反射原稿であるという原理的な違いもあるためである。
このような困難を克服して入力機器と出力機器とのカラーマッチングがとれたとしても、そもそも入力機器側からの画像が満足のいくものでない場合には、その画像を厳密に印刷物として再現できたとしてもユーザが満足できる画像は得られない。これには、画像の露出のオーバーやアンダーという状態や、「色かぶり」という現象によって画像全体の色バランスがくるってしまうことが大きな原因と考えられる。
例えば、カメラでオート撮影するとAE(自動露出)がかかってしまうため、背景の大部分に青空が含まれているような場合、全体として暗くなってしまい、いわゆる露出アンダーの状態になり、逆に背景の大部分が暗い部分であれば露出オーバーの状態になって、肝心の被写体が必ずしもベストな状態で写らないことがある。
また、デジタルカメラを例に取ると、画像はCCDカメラで撮影されるため、人間の目では感じられない波長の色も画像信号として入ってしまう。その信号をRGB信号の一部として処理すると、本来見えないはずの色が顕在化して色バランスが狂ってしまう。もちろん赤外カットフィルタなどの処理がなされるが必ずしも完全ではなく、色バランス補正に関してもリアルタイム処理という制約もあって、結果的に処理しきれずに「色かぶり」という現象が生じ、全体の色バランスがおかしくなる場合がある。
フォトスキャナやフラットヘッドスキャナに関しても同様の現象が生じる可能性があるため、たとえネガやリバーサルフィルムでベストな状態であったとしても、これをデジタル化した際に色バランスが狂ってしまうこともあり得る。
このように、良好な出力結果を得るためには、入力画像データそのものを色バランスのとれた適正な露出の画像データに補正する必要があり、しかもそのためには、ユーザーの手を煩わせず、処理速度としても十分許容できる簡易的な方法が求められている。
本発明は上記従来例に鑑みてなされたもので、簡単な構成で高精度な画像データの色バランス補正を行うことができるようにすることを目的とする。
さらに非常に簡単な方法で画像状態を判断し、それに応じて自動的に最適な補正を行うことができるようにすることを目的とする。
上記目的を達成するために本発明は以下の構成を有する。すなわち本発明は、原画像データを変換することで得られた輝度信号から作成されたヒストグラムを用いて、ハイライトおよびシャドーを決定し、該決定されたハイライトとシャドーとを結ぶ、輝度および色度の色空間における色立体軸前記色空間における輝度軸とが最小距離となる点の輝度成分が、前記輝度および色度の色空間において高輝度よりにあれば前記原画像データが露出オーバな画像判定し、前記点の輝度成分が低輝度よりにあれば露出アンダーな画像判定し、前記判定結果に応じた画像補正条件を設定する。
本発明によれば、簡単な構成で高精度な画像データの色バランス補正を行うことができる。さらに、非常に簡単な方法で画像状態を判断し、それに応じて自動的に最適な補正を行うことができる。
以下、本発明の好適な実施形態について、添付図面を参照しながら詳細に説明する。
[第1の実施の形態]
本実施の形態における画像処理方法では、RGBの原画像データを、画素ごとに明るさを示す輝度と色みを示す色度のデータに変換する。この時、原画像データの彩度が既定値を越えている場合にはその画素を間引きながら画素を順次選択し、輝度ヒストグラムを作成していく。そして高輝度側、低輝度側それぞれからの累積度数値が夫々所定の度数に達する輝度位置(輝度値)を白位置(ハイライトポイント)、黒位置(シャドーポイント)として求める。またこの時、白位置、黒位置検出の精度を向上するために、高彩度画素を輝度ヒストグラム作成に含めない処理などを行っても良い。
こうして白位置と判断された輝度値を有する画素データの色度の平均値と、黒位置と判断された輝度値を有する画素データの色度の平均値とを計算し、色空間上でそれら2点を結んだ直線を原画像の色立体軸(グレーライン)と判断する。その色立体軸の輝度軸に対する傾きは、本来輝度のみの変化であるべき色立体軸が、色度の変化を伴っていること、即ち色かぶりが生じていることを示している。この色立体軸が前記色空間上で正規の位置になるように、全画素に変換処理(回転行列演算)を施すことで色かぶりを補正する。以下、図面を参照して本実施形態を詳細に説明する。
<画像処理システムの構成>
本実施形態におけるシステムの一例を図1に示す。ホストコンピュータ100には、例えばインクジェットプリンタなどのプリンタ105とモニタ106が接続されている。ホストコンピュータ100は、ワードプロセッサ、表計算、インターネットブラウザ等のアプリケーションソフトウエア101と、OS(Operating System)102、アプリケーション101によってOS102に発行される出力画像を示す各種描画命令群(イメージ描画命令、テキスト描画命令、グラフィックス描画命令)を処理して印刷データを作成するプリンタドライバ103、およびアプリケーション101が発行する各種描画命令群を処理してモニタ106に表示を行なうモニタドライバ104をソフトウエアとして持つ。
ホストコンピュータ100は、これらソフトウエアが動作可能な各種ハードウエアとして中央演算処理装置CPU108、ハードディスクドライバHD107、ランダムアクセスメモリRAM109、リードオンリーメモリROM110等を備える。
図1で示される画像処理システムの例として、例えば一般的に普及しているIBM社製のPC−AT互換のパーソナルコンピュータにMicrosoft社のWindows(登録商標)95をOSとして使用し、印刷を行える所望のアプリケーションをインストールし、モニタとプリンタとを接続した形態が考えられる。
ホストコンピュータ100では、モニタに表示された表示画像にもとづき、アプリケーション101で、文字などのテキストに分類されるテキストデータ、図形などのグラフィックスに分類されるグラフィックスデータ、自然画などに分類されるイメージ画像データなどを用いて出力画像データを作成する。そして、出力画像データを印刷出力するときには、アプリケーション101からOS102に印刷出力要求を行ない、グラフィックスデータ部分はグラフィックス描画命令、イメージ画像データ部分はイメージ描画命令で構成される出力画像を示す描画命令群をOS102に発行する。OS102はアプリケーションの出力要求を受け、出力プリンタに対応するプリンタドライバ103に描画命令群を発行する。プリンタドライバ103はOS102から入力した印刷要求と描画命令群を処理しプリンタ105で印刷可能な印刷データを作成してプリンタ105に転送する。プリンタ105がラスタープリンタである場合は、プリンタドライバ103では、OSからの描画命令に対して順次画像補正処理を行い、そして順次RGB24ビットページメモリにラスタライズし、全ての描画命令をラスタライズした後にRGB24ビットページメモリの内容をプリンタ105が印刷可能なデータ形式、例えばCMYKデータに変換を行ないプリンタに転送する。
プリンタドライバ103で行われる処理を図2に用いて説明する。
プリンタドライバ103は、OS102から入力した描画命令群に含まれるイメージ描画命令の色情報に対して、画像補正処理部120で後述する画像補正処理を行う。プリンタ用補正処理部121は、まず、画像補正処理された色情報によって描画命令をラスタライズし、RGB24ビットページメモリ上にドット画像データを生成する。そして、各画素に対してプリンタの色再現性に応じたマスキング処理、ガンマ補正処理および量子化処理などを行い、プリンタ特性に依存したCMYKデータを生成してプリンタ105に転送する。
<画像補正処理部>
次に、イメージ描画命令で示される原画像に対して画像補正処理部120で行われる処理を図3〜図7,図9を用いて説明する。グラフィクス描画命令あるいはテキスト描画命令で示される原画像に対しては以下の処理は行われない。
本実施形態の画像補正処理部120は、図3に示したように、ヒストグラム作成処理(図3−S20)とヒストグラムに応じた画像補正処理(図3−S30)を行う。ステップS20では、図4に示すような処理によりヒストグラムを作成する。そして、作成されたヒストグラムに基づき画像のハイライトポイントおよびシャドーポイントを決定する。
(輝度ヒストグラムの作成)
図4は本実施形態での輝度ヒストグラムを作成するフローチャートである。
図4において、S1で原画像の輝度ヒストグラム作成のルーチンに入ると、S2で原画像の画素から輝度ヒストグラムの作成に用いる画素の選択比率を決定する。本実施形態では、処理対象の画像データが35万画素の場合に全画素を対象(選択比率1(あるいは100%))に輝度ヒストグラムを作成することとする。35万画素以上の画素数の画像データが入力された場合には、その総画素数の35万画素に対する比率に応じて画素選択(サンプリング)を行う。例えば、350万画素の画像データが入力された場合には、選択比率は350万/35万=10であり、10画素に1画素の割合(選択比率10(あるいは10%))で輝度ヒストグラムを作成する。本実施形態では選択比率nは次式により求める。
n=int(対象画像データの総画素数/基準画素数35万)、(但し、n<1の時はn=1、nは正数)。
続いてS3でライン番号を管理するカウンタをリセットあるいは所定の初期値にセットし、S4でそのカウンタをインクリメントして注目ラインのライン番号とする。
本実施形態では画素の間引き(サンプリング)はライン単位で行うので、選択比率nの場合には、ライン番号をnで割ったときの余りが0の場合に、そのラインに属する画素を処理対象として選択する(S5−YES)。例えば選択比率10の場合であれば、ライン番号を10で割ったときの余りが0の場合に、そのラインに属する画素を処理対象として選択する注目ラインが間引かれるライン、すなわち処理対象とならないラインの場合にはS4に戻る。処理対象ラインの場合にはS6に進み、注目ラインに属する画素に順次注目し、その注目画素に対して輝度変換,色度変換を処理を行う。本実施形態における輝度変換、色度変換は以下の式により行う。なお、輝度、色度変換は以下の式に限らず様々な式を用いることが可能である。
Y(輝度)=int(0.30R+0.59G+0.11B)(Yは正数)、
C1(色度)=R−Y、C2(色度)=B−Y。
また本実施形態では白位置(ハイライトポイント)、黒位置(シャドーポイント)の検出精度を向上させるために次式により注目画素の彩度Sを計算し、予め定めた彩度値(Sconst)より大きいか否かを判断して(S7)、大きい場合には、その画素の情報は輝度ヒストグラムに反映させない。
彩度S=sqrt(C1^2+C2^2)。
ここでsqrt(x)はxの平方根を与える関数であり、x^yはxのy乗を表す。
即ち、(S>Sconst)の場合にはS6に戻り、注目画素のデータは以後の処理に反映させない。これは、後述する通り、白位置の彩度は高輝度の画素群の平均彩度により与えられ、その彩度の値は色かぶりにより生じた誤差となるため、本来高彩度であると考えられる画素はハイライトポイントの算出から除外したほうが良いためである。この処理の効果を具体例を上げて説明する。例えばイエローの画素(R=G=255、B=0)は、上式からその輝度Yは226となり、彩度Sは227となる。すなわち、この画素は極めて高輝度であるとともに、十分に彩度の高い色を有することが分かる。このような画素は、無彩色の画素がイエローに色かぶりした結果そのようになったと判断するよりも、本来イエローの画素であると判断した方が多くの場合間違えが少ない。このような高輝度・高彩度の画素を輝度ヒストグラムに含めると、検出される白位置に誤差が生じてしまう。よって、本実施形態では所定の彩度(Sconst)を定め、所定の彩度を越える彩度の画素は輝度ヒストグラムに含めない。こうすることで、高彩度の画素により検出される白位置に誤差が生じることを防ぎ、白位置の精度を向上させることができる。
このように、S7における判断の後、条件(S≦Sconst)を満たした画素について輝度ヒストグラムを作成していく(S8)。ここで本実施形態で扱う画素データRGBは各8ビット(256階調)データであるので、輝度Yも256の深さに変換される。よって輝度ヒストグラムは、0から255までの256段階の各輝度値の画素が夫々何度数あるかを計数することで得られる。
また色度C1,C2の計算値は、後の色かぶり補正時に、各輝度値を有する画素の平均色度を算出するためのデータとして用いるので、本実施形態では次のようにデータを保持する。すなわち、インデクスの範囲が0から255の構造体配列変数の形式で、度数,C1累積値,C2累積値の3メンバーを設定し、各画素ごとの演算結果をその画素の輝度値をインデクスとする各メンバーに反映していく。
注目画素について処理を終えたなら、注目ラインの全画素の処理が終了したかどうかを判断し(S9)、注目ラインに未処理画素が残っている場合にはS6に戻り、S6以降の処理を繰り返す。注目ライン内の全画素の処理が終了したら、S10で未処理のラインが残っているかを判断し、全ライン終了であればS11で終了し、未処理のラインが残っていればS4に戻り、注目ラインを次のラインに移して上記処理を繰り返す。
以上の様に原画像データの画素を選択しながら輝度ヒストグラムを作成することにより、必要最小限の画素数で、且つ後の白位置、黒位置検出時の精度の向上も考慮した輝度ヒストグラムを作成することができる。
(白位置(ハイライトポイント),黒位置(シャドーポイント)の決定)
輝度ヒストグラムが完成したら、そのヒストグラムから白位置(ホワイトポイント)、黒位置(シャドーポイント)を決定する。本実施形態では、輝度ヒストグラムにおける輝度値0及び輝度値255の両端から中心方向に累積輝度度数値が1750になる点をそれぞれ黒位置および白位置と定める。
すなわち、輝度値Yの画素の度数をPYとすると、P0+P1+……と累積度数を求めていき、累積度数が1750を越えた時の輝度値を黒位置の輝度値YSDとする。次いで輝度YSDの画素の平均色度を求める。前記の通り、輝度ヒストグラム作成時に各輝度値の色度の累積値が計算されている(輝度Nの画素の累積色度をC1Ntotal,C2Ntotalとする)ので、黒位置である輝度値YSDの画素の平均色度C1SD,C2SDを求める。
C1SD=C1YSDtotal/PYSD、
C2SD=C2YSDtotal/PYSD。
同様に白位置の決定を行う。P255+P254+……と累積度数を求めていき、該累積度数が1750を越えた時の輝度値を黒位置の輝度値YHLとする。次いで輝度YHLの画素の平均色度C1HL,C2HLを求める。
C1HL=C1YHLtotal/PYHL、
C2HL=C2YHLtotal/PYHL。
以上の演算を行うことにより、[C1,C2,Y]色空間において、白位置(C1HL,C2HL,YHL)と黒位置(C1SD,C2SD,YSD)を求めることができる。
尚、本実施形態では輝度値0と輝度値255の輝度位置から累積度数を求めたが、輝度値1と輝度値254から求めるなど、所定のオフセットを与えても良い。
以上のようにして、図3のステップS20において、白位置(ハイライトポイント)/黒位置(シャドーポイント)を決定する。
次に、図3のS30において、S20で決定された白位置および黒位置に基づいた画像補正処理を行う。本実施形態では画像補正処理として、原画像の色かぶりを補正する色かぶり補正、原画像の露出を最適化すべく輝度のコントラストを補正する露出補正、および出力画像の色のみえを良くするための彩度補正を行う。
図9は、画像補正処理部120により図3のステップS30で行われる補正処理の流れを示している。すなわち、まず色かぶり補正のための回転行列を求め、次にその回転行列を用いて色バランス(色かぶり)を補正し、最後に画像の露出の状態に応じて、輝度信号のガンマ変換を行う。これら各処理を、順を追って説明する。
(色かぶり補正)
上記の通り原画像の(C1,C2,Y)色空間における白位置、黒位置が求められたら、引き続いて色かぶりの補正を行う。
もし原画像に色かぶりが無く理想的な画像であるとすれば、無彩色はR=G=Bであり、白位置、黒位置の色度の演算値は「C1HL=C2HL=C1SD=C2SD=0」となる。しかし色かぶりがある場合には、かぶっている色相方向に、かぶっている程度に比例して、(C1HL,C2HL,YHL)と(C1SD,C2SD,YSD)を結ぶ直線(色立体軸)に傾きが生じる。色かぶり補正は色立体軸とY軸(輝度軸)が一致する様に変換することで達成できる。変換は色立体を回転、平行移動させることでも達成できるし、座標系を変換することでも達成できる。
本実施形態ではまず原画像の色立体において、色立体軸の最低輝度点(下端点)を回転中心として、色立体軸をY軸と平行となる様に回転させる。次いで前記最低輝度点の位置が(C1,C2,Y)空間の原点となるように座標系を変換する。図5(b)の色立体に対して色かぶり補正を行った結果を図5(c)に示す。以上の処理により、最低輝度点が原点で、色立体軸がY軸と一致する変換結果が得られる。なお、図5(a)は色かぶりのない理想的な画像データの色分布を示す色立体である。上述の変換により、変換後の色立体(図5(c))は、理想的な色立体(図5(a))に近づけられる。
なお、色立体軸をY軸と平行に回転させる回転変換にあたっては、シャドーポイント及びハイライトポイントの座標値から、回転変換の回転軸及び回転角は簡単に決めることができる。3次元空間上で、立体を所望の回転軸周りに所望の角度で回転させる回転行列を求める手法は公知の技術であるので、この詳細な説明は省略する。
以上の様に、原画像の各画素を、色度と輝度とを軸とする3次元色空間の画素データ(C1,C2,Y)に変換し、その画像データを、黒位置と白位置とを結ぶ色立体軸(グレーライン)がY軸と一致し、かつ最低輝度が座標原点となるような画素データ(C1’,C2’,Y’)に回転、平行移動変換することにより、色かぶりの補正を行うことが可能となる。
(コントラスト及び彩度の調整)
次にコントラスト及び彩度の調整による画像のさらなる高品質を実現するために、画像の露出オーバー/アンダーを簡易的に判定し、それに応じて輝度信号にガンマ補正をかける方法を説明する。
コントラストの調整は、黒位置(シャドーポイント)の輝度を“0”あるいはそれに近い値(例えば“10”)に調整し、白位置(ハイライトポイント)の輝度を“255”あるいはそれに近い値(例えば“245”)に調整することで行う。
次に、画像の露出のオーバー・アンダーを簡易的に判定し、画像データに対してそれに応じたガンマ補正を施す際の一実施例を示す。
まず、補正する色立体軸と輝度(Y)軸とが最小距離となる点、つまり図5(b)におけるT,T’を求める。これは幾何学的な関係から簡単に求めることができる。
そして、点T’の色かぶり補正後の輝度成分YT'が点Tの輝度成分YTとなるようにコントラストを調整する。つまり図6に示すように(YT,YT')を屈折点とし、色かぶり補正後の輝度Y’がYT'より小さい場合は、輝度を直線aとして与えられる関数によりY”に補正し、YT'より大きい場合は、直線bとして与えられる関数によってY”に補正する。
もちろん、このT,T’を使わずに、図6の直線l2で与えられるような補正をおこなってもよい。色立体軸が輝度軸と並行になる場合は、点T,T’は1対ではないし、また、T,T’が輝度の範囲[0,255]の外にある場合には、点(YT,YT')を屈折点とすることはできない。このような特殊なケースでは直線l2に従って補正すればよい。
この2直線の最近接点T,T’を用いた補正の効果は、とくに露出のオーバーあるいはアンダーの画像に作用する。露出がオーバーになるのは空などの明るいところに画像全体が引っ張られるためである。この際デジタルカメラを代表する入力機器では、高輝度色抑圧が行われ、高輝度部の彩度がおとされる。すなわち、高輝度色抑圧の行われた画像の色立体軸を、図7(a)に示すように彩度と輝度とを軸とする2次元平面で考えると、高輝度の部分でもっとも無彩色に近い画素があらわれる。逆に、露出アンダーの画像に対しては低輝度色抑圧がかかるため、図7(b)のように、低輝度の部分で彩度が低くなる。
実際の画像で色立体の輝度軸を輝度−彩度平面で考えると露出オーバーの画像に関しては例えば、図7(c)のようになる。逆にアンダーの画像に関しては例えば、図7(d)のようになる。そもそも本来あるべき(理想的な状態の)色立体から、なんらかの撮影状況や入力時(A/D変換時)の影響で実際の色立体がずれるのだと考えれば、T,T’の位置がもっともズレの小さい場所と考えられる。従って、本発明はこれを戻してやることで簡易的に適切なグレー、つまり全体の明るさ補正を行うものである。
もちろんこのTを単に画像の露出オーバー・アンダーを簡易的に判定する手段として用い、あらかじめアンダー用のLUT(ルックアップテーブル)、オーバー用のLUTを用意し、点TあるいはT’の輝度成分に応じて輝度信号のガンマ調整を行ってもよい。例えば、図6の点(YT,YT’)を変曲点とするような曲線によってコントラストの調整を行ってもよい。従って、このT,T’の値によって簡易的に画像が露出オーバーなのか、アンダーなのか判定できる。すなわち、色立体軸においてもっとも彩度の低い点である点T’の輝度成分が高輝度よりにあれば、その画像の輝度−彩度の関係は図7(a)のような傾向を示すし、逆に点T’の輝度成分が低輝度よりにあれば、その画像の輝度−彩度の関係は図7(b)のような傾向を示す。したがって、高輝度色抑制及び低輝度色抑制された画像において、点T’の輝度成分が高輝度よりにあれば、その画像は露出オーバー傾向にあり、点T’の輝度成分が低輝度よりにあれば、その画像は露出アンダー傾向にあると考えられる。
一方、彩度調整は、色差C1,C2に彩度補正係数を乗ずることで簡単に行うことができる。例えば、彩度を20%あげる場合は、補正後の彩度は補正前の120%となることから、彩度補正係数を1.2として計算する。すなわち、
C1”=1.2×C1’、
C2”=1.2×C2’
として彩度補正を行うことができる。これは、(彩度)=sqrt(C1^2+C2^2)
で定義されることによる。
(RGB空間への逆変換)
以上で本実施形態における各種補正が終了する。この時点で原画像の各画素は(R,G,B)の色信号データから(C1”,C2”,Y”)の色空間データに変換された状態にあるので、再度(R’,G’,B’)の色信号データに逆変換する。逆変換は以下の式により行う。
R’=Y”+C1”、
G’=Y”−(0.3/0.59)*C1”−(0.11/0.59)*C2”、
B’=Y”+C2”。
このようにして、原画像に対して、色かぶり,コントラスト、彩度が補正されたRGBデータを得ることができる。
以上のように、本実施形態によれば、少ない処理負荷で確実に色かぶり補正が可能となる。
また、本実施形態によれば、サンプリング条件を原画像の画像データサイズに応じて設定しているので、入力画像にかかわらずヒストグラム総度数と、白位置及び黒位置を決定するための累積度数との関係をほぼ一定にすることができる。したがって、良好な色かぶり補正を実現することができる。
さらに、補正対象画像の色立体軸と輝度軸との距離が最短となる点における輝度を維持するように画像全体を非線形にガンマ補正することで、もっとも原画像の値に近いと考えられる輝度を維持しつつ、コントラストを補正することができる。
さらに、画像が露出オーバーであるか露出アンダーであるかという露出状態を簡単に得ることができる。さらに、その露出状態に応じて異なるテーブルを選択し、ガンマ補正を施すこともできる。
なお、サンプリングをライン単位でなくカラム単位で行っても構わない。
[第2の実施の形態]
次に、上述した第1実施形態に対して、補正度合いを考慮した第2の実施形態について説明する。
第1実施形態で説明したように、画像の色立体軸を求める際に、この軸の傾きがあまりにも大きい場合、これを無理に補正すると画像に不具合が生じる場合がある。これには例えば色フィルタなどをもちいて故意に色かぶりを起こしているような場合や、夕焼けのシーンを撮影した場合などが考えられる。
このような場合、求めたハイライトポイントとシャドーポイントが間違っていたと判断して補正を行わないか、または、回転角を適当に調整して補正度合いを弱めることで不具合をなくすことができる。このようなハイライトポイントとシャドーポイントが間違っていたという判定は、色立体軸の方向によって可能である。色立体軸の傾きから、どの色がかぶっているのか容易に判定できるので、特殊効果を得るために例えば色フィルタを用いて撮影された画像については色かぶりを補正しないというような判定もできる。
このような場合、色立体軸の方向ベクトルと、輝度軸とのなす角度に着目し、色かぶり補正を行うことで逆に不都合が生じると判定して処理を行わないか、または、処理の度合をゆるめる。例えば、色立体軸が赤の色相方向に向いており、その角度が所定の角度、例えば40度以上の場合には、その画像は本来色かぶりした画像であると判断する。処理の度合をゆるめる場合には、色立体軸を所定角度、例えば20度だけ起こしたり、あるいは所定角度まで、例えばY軸に対する傾きが20度になるまで起こすことで色かぶりを補正する。この変換のための回転行列は、回転軸と回転角度とから容易に求めることができる。
なお上記補正の度合いはユーザーがマニュアルで指定してもいいし、あらかじめ角度の大きさ、該色立体軸の方向に応じて設定しておいてもよい。例えば40度の場合、該画像の色立体を20度だけ回転して起こすとしたが、その補正の度合いをユーザに指定させてもよい。以後の処理は第1実施形態と同様である。
また、色立体軸の方向によって、どの色がかぶっているのか容易に判定できるので、特殊効果を得るために例えば色フィルタを用いて撮影された画像については、フィルタの色方向に関しては補正しないというような判定もできる。すなわちこのような場合には、色かぶりを補正しない色を指定させ、C1−C2平面上において、補正を行わない色の方向に沿って回転変換の回転軸を設定し、その回転軸と色立体軸lとを含む平面が、Y軸と平行になるまで色立体を回転変換する。こうすることで、特定の色成分についてだけ色かぶりを補正できる。
図10は、色立体軸が所定角度以上傾いている場合には、別途指定された角度まで色立体を回転させるように、画像を補正するための処理手順である。まず、ステップS101でハイライト/シャドーポイントを決定し、ステップS102で色立体軸の傾きが所定角度以上であるか判定する。もし所定角度に達していなければ、ステップS104,S105で、第1の実施の形態と同様に、色立体軸が輝度軸と一致するように変換して色かぶりを補正する。
一方、色立体軸が所定角度以上傾いていれば、色立体軸を、輝度軸に向かって20度だけ回転させるような回転行列をステップS103で求め、ステップS105で、その回転行列を用いて色立体を回転させて色かぶりを補正する。この場合、ステップS103で用いた20度という角度は、いかように指定しても構わない。
なお、しきい値を2段階設け、第1のしきい値(例えば40度)より色立体軸の傾きが大きい場合には、色立体軸を完全なグレーラインにしない程度に色立体軸を起こす(例えば20度)ように回転変換し、第1のしきい値と第2のしきい値(例えば20度)との間の場合には、回転変換を行わず、第2のしきい値よりも傾きが小さい場合には、色立体軸を輝度軸と一致させるように回転変換を行うこともできる。このようにすることで、意図的に色かぶりが生じさせられた画像については、不都合な補正を行うことがない。
このように、画像データの画素により構成される色立体の軸の傾き、すなわち軸の方向と傾きの角度という2つの量から、補正するか否かのしきい値をすくなくとも2つ以上設定し画像を補正すべきか、すべきでない、補正度合いを調節すべきかの判定を行うことができ、非常に簡潔に特殊なケースの弊害だけをはじくことができる。
また、色立体軸の方向によって、どの色がかぶっているのか容易に判定できるので、かぶっている色方向に応じて色かぶりを補正しないようにすることもできる。
[第3の実施の形態]
前記第1〜第2実施形態では、画像のハイライトポイント・シャドーポイントに基づいた色バランス補正について説明したが、この他の基準点に基づく補正の実施例について以下説明する。
まず、ハイライトポイントおよびシャドーポイントにおける平均色差量△Eを求める。
△E=sqrt((C1HL−C1SD)^2+(C2HL−C2SD)^2)。
色立体軸が輝度軸と平行であればΔE=0となるはずであるが、傾いていれば、0より大きな値となる。つまり、E(彩度)−Y(輝度)平面で考えると図8のようになる。
次にハイライトとシャドーの間のサンプル輝度を数点用意する。そして、画像中で例えば輝度Ynの画素から、△Enより小さい彩度の画素を用いて、図8のように平均色差量を求める。ΔEnとしては、予め設定した一定彩度を用いてもよいし、また、色立体軸の傾き方向に限定した平均色差量を求めてもよい。
これらの数点の輝度について平均色差で最小二乗法的に直線を求め、これを色立体軸として第1実施形態に基づく処理を行う。
あるいは、求められた色差及び輝度を要素とする点をBシュプラインなどで近似曲線を求め、この曲線を輝度軸にする、すなわち色差を“0”とするように非線形の色バランス補正を行ってもよい。
以上本発明を好ましい実施例により説明したが、本発明は上述した実施例に限ることなく、クレームに示した範囲で種々の変形が可能である。
このようにすることで、輝度軸となるべき線を、ハイライト及びシャドーだけではなく、画像全体から一様にサンプリングした画素から得ることができる。得られた線を輝度軸に一致するように画像データを変換することで、画像全体の特性を反映した色かぶり補正を行うことができる。
[他の実施形態]
なお、本発明は、複数の機器(例えばホストコンピュータ,インタフェイス機器,リーダ,プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機,ファクシミリ装置など)に適用してもよい。
また、本発明の目的は、前述した実施形態の機能を実現するための、図3,4,9,10に示した手順のプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても達成される。
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
画像処理装置のブロック図である。 プリンタドライバのブロック図である。 画像補正処理部の処理手順のフローチャートである。 輝度ヒストグラム作成手順のフローチャートである。 輝度及び色度分布を示す色立体の模式図である。 非線形ガンマ変換関数を示すグラフである。 輝度−彩度平面でみた露出オーバー・アンダーの特徴を示す図で、(a)は露出オーバーの概念図(b)は露出アンダーの概念図(c)は露出オーバーの一例(d)は露出アンダーの一例を示す。 第3の実施の形態における色立体軸を決める様子を示す図である。 画像補正の制御手順のフローチャートである。 第2の実施形態における色かぶり補正の制御手順のフローチャートである。

Claims (9)

  1. 原画像データを変換することで得られた輝度信号から作成されたヒストグラムを用いて、ハイライトおよびシャドーを決定し、
    該決定されたハイライトとシャドーとを結ぶ、輝度および色度の色空間における色立体軸前記色空間における輝度軸とが最小距離となる点の輝度成分が、前記輝度および色度の色空間において高輝度よりにあれば前記原画像データが露出オーバな画像判定し、前記点の輝度成分が低輝度よりにあれば露出アンダーな画像判定し、
    前記判定結果に応じた画像補正条件を設定することを特徴とする画像処理方法。
  2. 前記画像補正条件は、前記原画像データの明るさを示す成分に対してコントラスト調整を行うための条件であることを特徴とする請求項1記載の画像処理方法。
  3. 前記原画像データに対して前記画像補正条件に従った補正を行い、更に彩度補正を行なうことを特徴とする請求項1記載の画像処理方法。
  4. 原画像データを変換することで得られた輝度信号から作成されたヒストグラムを用いて、ハイライトおよびシャドーを決定し、
    該決定されたハイライトとシャドーとを結ぶ、輝度および色度の色空間における色立体軸前記色空間における輝度軸とが最小距離となる点の輝度成分が、前記輝度および色度の色空間において高輝度よりにあれば前記原画像データが露出オーバな画像判定し、前記点の輝度成分が低輝度よりにあれば露出アンダーな画像判定する判定手段と、
    前記判定結果に応じた画像補正条件を設定する設定手段と
    を備えることを特徴とする画像処理装置。
  5. 前記画像補正条件は、前記原画像データの明るさを示す成分に対してコントラスト調整を行うための条件であることを特徴とする請求項4記載の画像処理装置。
  6. 前記原画像データに対して前記画像補正条件に従った補正を行い、更に彩度補正を行なうことを特徴とする請求項4記載の画像処理装置。
  7. コンピュータを、
    原画像データを変換することで得られた輝度信号から作成されたヒストグラムを用いて、ハイライトおよびシャドーを決定し、
    該決定されたハイライトとシャドーとを結ぶ、輝度および色度の色空間における色立体軸前記色空間における輝度軸とが最小距離となる点の輝度成分が、前記輝度および色度の色空間において高輝度よりにあれば前記原画像データが露出オーバな画像判定し、前記点の輝度成分が低輝度よりにあれば露出アンダーな画像判定する判定手段と、
    前記判定結果に応じた画像補正条件を設定する設定手段と
    して機能させるためのコンピュータプログラムを格納したことを特徴とするコンピュータ可読記憶媒体。
  8. 前記画像補正条件は、前記原画像データの明るさを示す成分に対してコントラスト調整を行うための条件であることを特徴とする請求項7記載のコンピュータ可読記憶媒体。
  9. 前記原画像データに対して前記画像補正条件に従った補正を行い、更に彩度補正を行なうことを特徴とする請求項7記載のコンピュータ可読記憶媒体。
JP2005373522A 2005-12-26 2005-12-26 画像処理方法及び装置及び記憶媒体 Expired - Fee Related JP4402041B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005373522A JP4402041B2 (ja) 2005-12-26 2005-12-26 画像処理方法及び装置及び記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005373522A JP4402041B2 (ja) 2005-12-26 2005-12-26 画像処理方法及び装置及び記憶媒体

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP17727298A Division JP4194133B2 (ja) 1998-06-24 1998-06-24 画像処理方法及び装置及び記憶媒体

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2008079195A Division JP4909308B2 (ja) 2008-03-25 2008-03-25 画像処理方法及び装置

Publications (2)

Publication Number Publication Date
JP2006187006A JP2006187006A (ja) 2006-07-13
JP4402041B2 true JP4402041B2 (ja) 2010-01-20

Family

ID=36739701

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005373522A Expired - Fee Related JP4402041B2 (ja) 2005-12-26 2005-12-26 画像処理方法及び装置及び記憶媒体

Country Status (1)

Country Link
JP (1) JP4402041B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102245835B1 (ko) * 2020-07-31 2021-04-28 주식회사 포바이포 입력영상 전처리를 이용한 화질보정방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5067852B2 (ja) * 2007-08-10 2012-11-07 キヤノン株式会社 画像処理方法及び画像処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102245835B1 (ko) * 2020-07-31 2021-04-28 주식회사 포바이포 입력영상 전처리를 이용한 화질보정방법

Also Published As

Publication number Publication date
JP2006187006A (ja) 2006-07-13

Similar Documents

Publication Publication Date Title
JP4194133B2 (ja) 画像処理方法及び装置及び記憶媒体
US7929761B2 (en) Image processing method and apparatus and storage medium
JP4006347B2 (ja) 画像処理装置、画像処理システム、画像処理方法、記憶媒体、及びプログラム
US6608926B1 (en) Image processing method, image processing apparatus and recording medium
US7242800B2 (en) Image processing apparatus, image processing system, image processing method, storage medium, and program
JP2005210370A (ja) 画像処理装置、撮影装置、画像処理方法及び画像処理プログラム
JP2005210495A (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP3950551B2 (ja) 画像処理方法、装置および記録媒体
JP4402041B2 (ja) 画像処理方法及び装置及び記憶媒体
JP2000013625A (ja) 画像処理方法、装置および記録媒体
JP4909308B2 (ja) 画像処理方法及び装置
JP4909428B2 (ja) 画像処理方法及び装置
JP4818459B2 (ja) 画像処理方法及び装置
JP3817371B2 (ja) 画像処理方法、装置および記録媒体
JP4208889B2 (ja) 画像処理方法、装置および記録媒体
JP4411357B2 (ja) 画像処理方法、装置および記録媒体
JP2000013595A (ja) 画像処理方法、装置および記録媒体

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070718

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080908

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081106

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090612

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091016

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091028

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121106

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131106

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees