説明

画像処理装置及び方法

【課題】 補正によって色曲がりがしやすいような高彩度シーンに適した階調補正を行うこと。
【解決手段】 画像における輝度の階調補正を行う画像処理装置であって、前記画像を複数のブロックに分割するブロック分割手段と、前記ブロックごとに輝度値を含む複数の特徴量を算出し、該算出した複数の特徴量に基づいて、前記画像を基準の階調補正特性を用いて階調補正した場合の色曲がりの生じやすさを示す飽和特徴量を算出する算出手段と、前記算出された飽和特徴量に応じて、前記基準の階調補正特性を変更する変更手段と、前記変更手段により変更された階調補正特性により階調補正を行う補正手段とを備え、前記変更手段は、前記飽和特徴量がより色曲がりが生じやすいことを示す場合に、前記基準の階調補正特性の階調補正の強さをより弱く変更する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置及び方法に関し、更に詳しくは、入力された画像の階調補正を行う画像処理装置及び方法に関する。
【背景技術】
【0002】
従来、画像の階調補正を行う技術として、画像中に含まれる暗部の輝度を補正する暗部補正や、画像のコントラストを高めるコントラスト補正といったようなものが行われている。例えば図10(a)に示したような輝度ヒストグラムを持つ画像においては画像中に暗部を多く含んでいるため、図10(b)のような補正曲線により暗部の輝度を高めることで、より適した明るさの画像を得ることが可能となる。このような階調補正により、多くの撮影シーンにおいては撮影された画像をより好ましい画像になるように補正することが可能である。
【0003】
しかしながら、画像中に高彩度な領域が多く含まれているようなシーンに対してこのような補正を行った場合、高彩度部の画素を構成する色成分のバランスが崩れてしまう、色曲がりが発生してしまう場合がある。例えば、図10(a)が、画像中央に鮮やかな赤い花が映っているシーンの輝度ヒストグラムを示したものである場合に、花の表面のある一部分のRGB値が8bitにおいてRGB=(255,56,94)を示しているものとする。ここから、以下の式(1)に示すsRGBで定義される変換式により得られる輝度は、Y=約120となる。
Y = 0.299R + 0.587G + 0.114B …(1)
【0004】
この算出された輝度120を図10(a)の輝度ヒストグラム上で表すと、xで示したような位置となり、輝度としてはそれほど高くないことが窺える。このような輝度は図10(b)中のxにおける補正量から分かるように、補正が大きくかかってしまう。しかしながら、R,G,Bの色バランスを保ちながらこのような領域に暗部補正をかけるためにはRが255を超える必要がある。しかし、R,G,B値を8bitで表そうとするとR成分は255でクロップされてしまうため、結果としてR成分は元と変わらず、G,B成分のみが持ち上がってしまう。そのため、R,G,Bの色バランスが元の比率と変わってしまうため、色曲がりが発生してしまう。
【0005】
このような問題に対し、特許文献1では、彩度補正を行う際に画像中央部の彩度を算出し、その領域内で高彩度画素が占める比率等から補正量を決定している。
【0006】
また、特許文献2では、画素ごとにその画素の輝度における補正量を算出した後、その画素が高彩度であればあるほど、実際の補正量を小さくする処理を行っている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2007−243542号公報
【特許文献2】特開2002−335536号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、特許文献1のように、ある領域内に高彩度画素がどの程度の割合で含まれているかのみを判断基準とする手法を階調補正にも適用する場合、本来ならば階調補正を行っても問題がないようなシーンに対しても補正量を抑制してしまう場合がある。例えば、暗部を補正する場合においては、より自然な見た目にするためにも、図10(b)に示したように、低輝度すぎる領域、または高輝度すぎる領域は補正量を小さくするのが一般的であるためである。このような階調補正を行う場合、高彩度な領域を多く含むようなシーンであっても、その領域の輝度が高い、もしくは低いものであれば、図10(b)のような補正を行ったとしても色曲がりが起こりにくい。そして、図10(b)のような補正を行うことで全体として適切な明るさに補正された好ましい画が得られる場合がある。しかしながら、同じシーンに対して高彩度画素を多く含むという理由のみで階調補正を弱めてしまうと、行っても問題のない階調補正まで抑制してしまうのである。
【0009】
また、特許文献2のように、画素単位で彩度を調べ、補正量を決定するような手法においては、画素ごとに色相、彩度等の高彩度判定用の情報を算出し、その上で対象の画素の彩度における適正な補正量を算出する必要がある。そのため、画素数が増せば増すほど計算時間が必要となる。さらに、例えば花のような、彩度が一律ではなく、陰影によって彩度にばらつきが存在するようなシーンに対して画素ごとに階調補正を行った場合、彩度飽和する領域は補正量が抑制されるが、その周辺の彩度飽和しない領域は補正が行われる。これにより、彩度飽和を発生させないように補正することが可能となるが、元の画像で存在した彩度のディテールが失われてしまうことがある。図10(c)は一例として、鮮やかな赤い花が映っているシーンにおいて、ある線分領域における彩度の変動を示したものであるが、画素ごとに補正することにより彩度の変動は図10(d)のようになる。図10の(c)と(d)を比較すると、補正後の(d)のほうが彩度の細かい変動が失われてしまっている。特に高彩度領域においてこのような彩度のディテールが低下してしまうと、色曲がりは発生していなくても、色曲がりが起こっているように感じられてしまう場合がある。
【0010】
本発明は上記問題点を鑑みてなされたものであり、補正によって色曲がりがしやすいような高彩度シーンに適した階調補正を行うことを目的とする。
【課題を解決するための手段】
【0011】
上記目的を達成するために、画像における輝度の階調補正を行う本発明の画像処理装置は、前記画像を複数のブロックに分割するブロック分割手段と、前記ブロックごとに輝度値を含む複数の特徴量を算出し、該算出した複数の特徴量に基づいて、前記画像を基準の階調補正特性を用いて階調補正した場合の色曲がりの生じやすさを示す飽和特徴量を算出する算出手段と、前記算出された飽和特徴量に応じて、前記基準の階調補正特性を変更する変更手段と、前記変更手段により変更された階調補正特性により階調補正を行う補正手段とを備え、前記変更手段は、前記飽和特徴量がより色曲がりが生じやすいことを示す場合に、前記基準の階調補正特性の階調補正の強さをより弱く変更する。
【発明の効果】
【0012】
本発明によれば、補正によって色曲がりがしやすいような高彩度シーンに適した階調補正を行うことが可能となる。
【図面の簡単な説明】
【0013】
【図1】本発明の実施形態における撮像装置の概略構成を示すブロック図。
【図2】第1、3、4の実施形態における階調補正処理を示すフローチャート。
【図3】第1の実施形態における飽和特徴量算出時の重みの例を示す図。
【図4】第1の実施形態による補正量の弱め方の例を示す図。
【図5】第2の実施形態における、顔あり時、顔なし時の弱め方の例を示す図。
【図6】第2の実施形態における階調補正処理を示すフローチャート。
【図7】第3の実施形態における、極端に低輝度な領域を持つシーンの例を示す図。
【図8】第4の実施形態における、ブロックの選択方法の例を示す図。
【図9】実施形態おける情報処理装置のブロック構成図。
【図10】高彩度シーンにおける従来の課題を説明する図。
【発明を実施するための形態】
【0014】
以下、添付図面を参照して本発明を実施するための最良の形態を詳細に説明する。
【0015】
<第1の実施形態>
第1の実施形態においては、ある撮影画像に対し、そのシーンの色曲がりのしやすさに相当する飽和特徴量を算出し、飽和特徴量に応じて実際の補正量を決定する方法を示す。
【0016】
図1は、第1の実施形態における画像処理装置の一例として、撮像装置100の構成を示すブロック図である。撮像装置100はデジタルカメラ、デジタルビデオカメラなど、被写体を撮像して画像データを得る装置を含む。図1において、光学系101は、レンズ、シャッター、絞りから構成され、被写体からの光を適切な量とタイミングで撮像素子102に結像させる。撮像素子102は、光学系101を通って結像した光を画像データに変換する。CPU103は、入力された信号やプログラムに従って、各種の演算や、撮像装置100を構成する各部分の制御を行う。
【0017】
一次記憶装置104は、一時的なデータを記憶し、CPU103の作業用に使われる。二次記憶装置105は、撮像装置100を制御するためのプログラム(ファームウェア)や各種の設定情報を記憶する。記憶媒体106は、撮影した画像データなどを記憶する。なお、撮影後に記憶媒体106は取り外すことが可能であり、パーソナルコンピュータなどに装着してデータを読み出すことが可能である。つまり、撮像装置100は記憶媒体106へのアクセス機能を有し、記憶媒体106へのデータの読み書きが行えればよい。表示部107は、撮影時のビューファインダー画像の表示、撮影した画像の表示、対話的な操作のための文字表示などを行う。操作部108は、使用者の操作を受け付けるためのものである。操作部108は例えばボタンやレバー、タッチパネルなどを用いることが可能である。
【0018】
通信装置109は、外部装置と接続し制御コマンドやデータの送受信を行う。接続を確立し、データ通信するためのプロトコルとしては、例えばPTP(Picture Transfer Protocol)が用いられる。なお、通信装置109は、例えばUSB(Universal Serial Bus)ケーブルなどの有線接続により通信を行ってもよい。また、無線LANなどの無線接続により通信を行ってもよい。また、外部装置と直接接続してもよいし、サーバを経由したりインターネットなどのネットワークを介して外部装置と接続してもよい。
【0019】
図2は第1の実施形態に係る画像の輝度階調を補正する流れを示した図である。以下に図2を用いて、撮影画像の色曲がりのしやすさに相当する飽和特徴量を算出し、飽和特徴量に応じて実際の補正量を弱める例を示す。
【0020】
まず、光学系101及び撮像素子102を通して画像の撮影が行われると(S201)、CPU103は、得られた画像に対して画像を複数のブロックに分割する(S202)。なお、本第1の実施形態においては、ブロック分割数は予め定めておいた規定数とするが、撮影シーンや被写体に応じて分割数を変更することも可能である。また、記憶媒体106に記憶された画像を読み出して、当該処理の対象としても良い。
【0021】
次に、CPU103は、S202で分割されたブロックそれぞれに対して、輝度特徴量を算出する(S203)。第1の実施形態においては各ブロック内に含まれる画素の8ビットのRGB信号の平均値をブロックごとに取得し、前述した式(1)によって得られる8ビットの輝度信号Yを計算し、それをブロックの輝度特徴量とする。なお、輝度特徴量算出においては必ずしもRGB信号の平均値から算出される必要はない。例えば、ブロック内に含まれる画素のRGB信号それぞれについて、信号値(境界値)M以上となる画素の数がブロック内の全画素数に対してN%となるような信号値MをRGB信号それぞれに対して算出してMr、Mg、Mbとする。その上で、算出されたMr、Mg、Mbの値から式(1)によって輝度信号Yを算出することも可能である。また、第1の実施形態においては式(1)により得られる輝度信号Yを算出しているが、この限りではなく、簡易的にG信号を直接使用したり、さらに他の情報を追加して輝度特徴量としたりすることも可能である。
【0022】
S203でブロックごとの輝度特徴量が得られると、CPU103はさらにブロックごとの色特徴量の算出を行う(S204)。第1の実施形態においてはS203において得られた各ブロックのRGB信号の平均値R、G、Bから、以下の式(2)によって得られる8ビットの彩度信号S、明度信号Vを計算し、それらをブロックの色特徴量とする。
【0023】

【0024】
ここで、max(R, G, B)はR,G,Bのうちの最大値を示し、min(R, G, B)はR,G,Bのうちの最小値を示す。
色特徴量の算出においても、輝度特徴量の算出時と同様に必ずしもRGB信号の平均値から算出される必要はない。例えば、ブロック内に含まれる画素のRGB信号それぞれについて、信号値M以上となる画素の数がブロック内の全画素数に対してN%となるような信号値MをRGB信号それぞれに対して算出してMr、Mg、Mbとする。その上で、算出されたMr、Mg、Mbの値から式(2)によって彩度信号S、明度信号Vを算出することも可能である。なお、本第1の実施形態においては、式(2)により彩度信号Sと明度信号Vとを算出しているが、どちらか一つ、もしくはさらに他の情報を追加して色特徴量とすることも可能である。
【0025】
S203及びS204においてブロックごとの輝度特徴量及び色特徴量が算出されると、CPU103は飽和特徴量を算出する(S205)。この飽和特徴量とは階調補正による色曲がりのしやすさの度合いを示したものであるため、各ブロックが以下のような条件を満たすほど、飽和特徴量が高くなるようにする。
(1)輝度が高すぎず、かつ低すぎない。
(2)ある画素を構成する信号成分(例えばRGB)のうち、最大値と最小値の差が大きい。
(3)ある画素を構成する信号成分のどれかが最大値(8bitの場合は255)に近い。
【0026】
まず、(1)はS203で算出された輝度Yから判定が可能な条件である。前述したように階調補正においては低輝度すぎる領域、または高輝度すぎる領域に関しては補正量を小さくするのが一般的である。そのため、(1)の条件を満たす場合にはそのブロックが補正による影響を受けやすく、補正を行うとそのブロック内の信号成分の変化が大きいことを表している。
【0027】
次に、(2)はS204で算出された彩度Sから判定が可能な条件である。階調補正の手法によっては画素を構成する信号成分の差が小さくなる場合がある。そのため、(2)の条件を満たす場合には、そのブロックの信号成分が、補正前は最大のものと最小のものの差が大きいが、補正を行うとその差が小さくなってしまい得ることを表している。
【0028】
また、(3)はS204で算出されたた明度Vから判定が可能な条件である。階調補正では明るくするような補正をかける場合においては補正を受ける画素の信号成分は増加する。しかし、(3)の条件を満たす場合には、信号成分が増加することで信号成分が取り得る最大値を超えてしまい、結果として色曲がりが発生してしまい得ることを表している。
【0029】
本第1の実施形態においては、条件(1)〜(3)の判定のため、S203及びS204で得られた輝度特徴量と色特徴量に応じて輝度重み、彩度重み、明度重みを算出し、それら全てを組み合わせたものをブロックごとの飽和特徴量としている。この重みの算出においては、例えば、図3(a)〜(c)のようなあらかじめ与えられた直線をもとに算出する。
【0030】
図3(a)は条件(1)に対応し、輝度特徴量に対応した輝度重みの算出曲線を示す。所定の輝度値Y0を折り返し点として山型に直線をなしている。所定の輝度値Y0は、基準の補正曲線(補正特性)に依ってその値を変更することで、補正によって色曲がりが発生してしまうかどうかの検出をより正確なものにする。例えば、暗部をより大きく、明るく補正する基準の補正曲線の場合はY0の値を対応する暗部よりに、明部をより大きく、明るく補正する基準の補正曲線の場合は、Y0の値は明部よりの値にする。
【0031】
図3(b)は条件(2)に対応し、色特徴量である彩度Sの値に対応した彩度重みの算出曲線を示す。所定の彩度値S0より大きい場合、飽和特徴量がより色曲がりが生じやすいことを示す値をとるように重みを大きくしている。
【0032】
図3(c)は色特徴量である明度Vの値に対応した彩度重みの算出曲線を示す。所定の明度値V0より大きい場合、飽和特徴量がより色曲がりが生じやすいことを示す値をとるように重みを大きくしている。
【0033】
そして、それら全てを組み合わせたものをブロックごとの飽和特徴量としている。なお、第1の実施形態においては図3(a)〜(c)に示したように、それぞれの重みの最大値を全て同じ値にしているが、これは必ずしも同じ値である必要はない。例えば輝度重みの最大値を他の重みの最大値よりも低くすることにより、輝度の影響を弱めるといったことも可能である。
【0034】
ステップS205では、式(3)のようにしてブロックごとに飽和特徴量を算出し、さらにそのシーンにおける画像全体の飽和特徴量の算出を行う。第1の実施形態においては以下の式(3)のようにしてブロックごとに算出された飽和特徴量ciから画像全体の飽和特徴量Cを算出している。
【0035】

【0036】
ここで、Yi、Si、Viはそれぞれi番目のブロックから算出された輝度値、彩度値、明度値を表し、Nは全ブロック数を表している。また、wY(Yi)、wS(Si)、wV(Vi)はそれぞれある入力値Yi、Si、Viに対して、図3(a)〜(c)により得られる出力重みを表している。
式(3)においては全ブロックを等価に扱って飽和特徴量を算出しているが、例えば図3(d)に示したような、中央に近いブロックほど大きな値を持つ重みW(i)を規定し、以下の式(4)のような計算を行うことでエリアごとに重みを付けることも可能である。
【0037】

【0038】
S205においてシーンの飽和特徴量が算出されると、CPU103は当該シーンに適用する階調補正の為の補正曲線の生成にあたり、まず、基準となる補正の特性(階調補正特性)を決定するための補正特徴量を算出する(S206)。この補正特徴量の算出においては、例えば図4(a)のようなカーブを設定することにより、補正特徴量として得られたヒストグラムの平均値がAinであったときには、その補正量はAvolとなる。図4(a)のように、ヒストグラムの平均値が所定値を超えると、平均値が大きいほど補正量を小さくしていく。そして、算出した補正特徴量に基づいて、CPU103はそのシーンに適した基準階調補正量を算出する(S207)。S206で得られたヒストグラムの平均値を入力とし、図4(a)に示す関係に基づいて基準階調補正量を算出することが可能である。その後は通常であれば、まずS206で得られた補正特徴量を入力輝度Ainとし、S207で得られた基準階調補正量を基に出力輝度Aout(=Ain+Avol)を算出する。その上で、図4(c)に示したようなAin、Aoutの交差点に制御点を設け、図4(c)中に破線で示したような階調補正の補正曲線を取得する。このような補正曲線は、このシーンが高彩度な領域を含まないようなシーンであれば、好ましい補正を行うに当たり有効なものとなっている。しかし、このシーンが高彩度な領域を含む場合は図4(c)の破線のような補正曲線を適用してしまうと高彩度な領域において色曲がりが発生してしまう場合がある。そこで、S205で得られた飽和特徴量を基に補正曲線を変化させる。
【0039】
補正曲線を変化させるために、まず、S208において、S207で算出された補正量に対して飽和特徴量に応じて基準階調補正量を弱める処理を行う。例えば、図4(b)のような飽和特徴量と弱め割合Lとの関係を定義することで、算出された飽和特徴量からそのシーンの補正量にかけるべき弱め割合Lを算出することができる。この弱め割合Lを用いて、以下の式(5)のようにして入力輝度Ainに対する出力輝度Aoutを変化させる。
Aout' = Ain + (Aout - Ain) × (1 - L) …(5)
【0040】
これにより、図4(c)のように、Ain、Aout’の点に制御点を設けることにより色曲がりしそうなシーンに対応した補正曲線を算出することが可能となる(S209)。なお、この際暗部の黒浮き、明部の白飛びを防ぐために、暗部、明部に制御点を追加することも可能である。
また、先に補正曲線を求めてから飽和特徴量による制限をかけることも可能である。その場合、図2(b)に示すように、S208、S209の代わりに、S210、S211の処理を行う。この場合は先に図4(d)中に示したような制御点から破線で示したような補正曲線を算出し、この補正曲線全体に対し補正量を弱めることによって色曲がりがしやすいシーンに適した補正曲線を算出することが可能となる。例えば、S310でYout=f(Yin)という補正曲線が得られた際には、弱め割合Lを基にして、式(6)のようにして色曲がりがしやすいシーンに適した補正曲線Yout‘=f(Yin)を求めることが可能となる。
Yout' = Yin + (Yout - Yin) × (1 - L) …(6)
【0041】
そして、変更した補正曲線により、輝度階調補正を行う。
【0042】
上記の通り第1の実施形態によれば、シーンの飽和特徴量の算出において、輝度を判定条件に用いる。これにより、彩度が高く、補正を行うと色曲がりが発生するようなシーンにおける色曲がりを軽減することができると共に、彩度が高くても、補正を行っても色曲がりが発生しづらいようなシーンに対しては適切な補正を行うことが可能である。
【0043】
さらに、画像をブロックに分割してブロック処理を行うことにより、局所的な画素が色曲がりしそうかどうかではなく、領域として色曲がりしそうなまとまりがあるかどうかを調べることが可能となる。これにより、彩度にばらつきが存在するようなシーンに対してもより好ましい補正を行うことが可能となる。
【0044】
<第2の実施形態>
第1の実施形態では、色曲がりしそうな領域が画面内に多く存在している場合に補正量を弱める処理の例を示したが、弱め割合は撮影シーンによって好ましい弱め方が異なる。そこで本実施形態では、撮影シーンによって補正量の弱め方を異ならせる。
【0045】
撮影シーンの違いとして、例えば顔の有無が挙げられる。図5(b)に破線で示したような、輝度Ainを輝度Aoutに補正するための補正曲線が算出された場合について考える。なお、図5(b)は、図4(c)に示す補正曲線において、Ain付近を拡大した図である。この時、画面内に顔が存在せず、高彩度な領域が広く存在している場合、人の目は高彩度な領域に注目しやすい。そのため、このようなシーンにおいては高彩度な領域が補正により色曲がりしてしまうのであれば、色曲がりを軽減することを重視した補正をかけることで好ましい補正にできる可能性が高い。そのため、このような場合には色曲がりしそうな度合が高ければ高いほど、階調補正の強さをより弱めて、制御点を図5(b)中のC点に近づけていくことで、補正がかかりにくくする。
【0046】
しかし、色曲がりしそうな領域が広く存在するが、それと同時に顔が存在するような場合、人の目は高彩度な領域とともに顔に関しても注目しやすい。そのため、顔の領域がもともと暗いような場合に、色曲がりしそうな領域が広く存在するからと言って階調補正の強さを弱めすぎてしまうと、顔に関しては好ましくない画像となってしまう。つまり、似たようなシーンであっても、顔がある場合に、顔がない場合と同様に制御点を図5(b)中のC点に近づけてしまうと、暗い顔を補正することができなくなってしまう。
【0047】
そこで、顔があるシーンにおいてはC点とは異なる制御点Bを定めておき、シーンの色曲がりしそうな度合が高ければ高いほど制御点をB点に近づけていくことで、色曲がりは軽減しつつも必要な補正もある程度かけるという補正を行うことが可能となる。そこで、本第2の実施形態においては図6のように、第1の実施形態で説明した図2のフローチャートに被写体を認識する処理(S301)を追加するとともに、第1の実施形態と異なる補正特徴量算出処理(S306)と補正量算出処理(S307)を行う。その他の処理は上述した第1の実施形態と同様であるので、図2と同じ参照番号を付して、適宜説明を省略する。
【0048】
本第2の実施形態においては、S201で得られた画像から、CPU103は被写体の検出を行う(S301)。次に、S202〜S205で、CPU103は第1の実施形態で説明したようにして飽和特徴量の算出を行う。
【0049】
次に、CPU103は、補正特徴量の算出を行う(S306)。本第2の実施形態では、S301で例えば被写体として顔が検出されている場合には、補正特徴量として顔の輝度を算出する。顔が検出されなかった場合には、図2のS206と同様にして補正特徴量を求める。例えばある補正特徴量として得られたヒストグラムの平均値がAinであったときには、その補正量はAvolとなる。そのため、例えば図5(a)のようなカーブを設定することにより、ヒストグラムの平均値が一定量より大きくなるほど補正量を小さくしていくことが可能である。補正特徴量が算出されると、CPU103は顔の輝度に応じて図5(a)に示す関係に基づいて基準階調補正量を算出する(S307)。
【0050】
S307で基準階調補正量が算出されると、S208及びS209、または、S210及びS211の処理により、弱め割合Lの決定と、補正曲線の生成を行う。なお、S209またはS211における弱め割合Lを、S301で特定の被写体が検出されたかによって異ならせる。
【0051】
例えば、第1の実施形態においては式(5)に示すようにして入力輝度Ainに対する出力輝度Aoutを変化させたが、本第2の実施形態においては以下の式(7)のようにして入力輝度Ainに対する出力輝度Aoutを変化させる。
Aout' = Aout, Aout ≦ Alim
Aout' = Alim + (Aout - Alim) × (1 - L), Aout>Alim …(7)
【0052】
ここで、Alimは最低限保証する階調補正量であり、Ainよりも高い値を設定する。
これにより、あるシーンにおいて、色曲がりしそうな度合が非常に高かった場合であって、且つ、顔がない場合は、図5(b)のように制御点をAからCに移すことにより、補正量を制限することが可能となる。また、同様なシーンでも顔がある場合は、図5(b)のように制御点をAからBに移すことにより、ある程度顔への補正は行いつつ、全体的な補正量を制限することが可能となる。
【0053】
上記の通り本第2の実施形態によれば、顔などのユーザが着目し得る特定の被写体を含むシーンに対して、より好ましい補正量を算出することが可能となる。
【0054】
なお、上述した第2の実施形態では、特定の被写体として人の顔を検出したが、本発明はこれに限るものではなく、予め決められた被写体であれば、どのようなものであっても良い。
【0055】
<第3の実施形態>
第1の実施形態では、色曲がりしそうな領域が画面全体に対してどの程度の割合で存在するかを調べていたが、例えば画面内に極端に暗い/明るい領域を含んでいるような場合、人の目はその領域を除いた適切な明るさの領域に注目しやすい。例えば図7(a)では高彩度領域以外の領域が極端に暗いシーンを表している。仮に高彩度領域以外の領域が図7(a)のような極端に低輝度な領域ではなく、通常の風景等、ある程度適切な輝度を持つ領域であれば、画面全体に対する高彩度領域の割合が小さければそこには人の目は注目しづらい。そのような場合、むしろ高彩度領域以外の輝度がやや暗い程度であれば、そのような領域を明るく補正した方が好ましい画像になりやすい。しかし、図7(a)は高彩度領域以外は極端に低輝度な領域になっており、図7(b)のようなヒストグラムを有している。このような場合は人の目は図中の高彩度領域に注目しやすい。このようなシーンにおいても通常シーンと同様に、画面全体に対する高彩度領域の割合が小さいからと言って補正量の弱め割合を低くしてしまうと、注目されやすい高彩度領域に色曲がりが発生してしまう場合がある。
【0056】
そこで、本第3の実施形態においては、輝度特徴量、色特徴量の算出の際に図7(b)中に破線で示したような輝度値の閾値を設け、閾値範囲内の画素を有効画素としてブロックの特徴量を算出することによりこのようなシーンにより適した補正量の算出を行う。
【0057】
本第3の実施形態における基本的な処理の流れは、第1の実施形態で図2を参照して説明したものと同様であるが、S203における輝度特徴量算出処理、及びS204の色特徴量算出処理において動作が異なる。第1の実施形態においては、ブロック内のすべての画素のR,G,Bの平均から輝度特徴量、色特徴量を算出していたが、本第3の実施形態では輝度に閾値を設け、閾値範囲内にある画素のみを用いてR,G,Bの平均値を算出する。なお、輝度に閾値を設けることにより、各ブロック内に極端に暗い/明るい領域をどの程度含むかによってR,G,B平均値を求める際の母数が変わってくる。そのため、ブロック内において、輝度が閾値範囲内である画素数を表す有効画素数によって、各ブロックの信頼性が変わってくる。そこで、そのような信頼性を加味して飽和特徴量Cを算出する際には、上述した式(4)における重みW(i)をブロックの有効画素数とすることでブロック信頼性を加味した飽和特徴量の算出を行うことが可能である。この処理を図7(a)で示したようなシーンに適用した場合は以下のようになる。
【0058】
まず、ブロックごとに飽和特徴量ciを求めると、図7(c)に示すように、低輝度なブロックでは飽和特徴量ciが0に近くなり、高彩度な領域では1に近くなる。ここで、このまま第1の実施形態のように式(3)によりシーン全体の飽和特徴量を算出すると、以下の式(8)のようになる。
【0059】

【0060】
このように、画面内のほとんどが極端に低輝度であり、高彩度領域が注目されやすいにもかかわらず、シーンの飽和特徴量Cとしては低い値が見積もられてしまう。そこで、本第3の実施形態においては、前述した有効輝度範囲内にある有効画素数を考慮する。例えば図7(a)のようなシーンでは図7(c)に示したeiの値のように、極端に低輝度な領域では有効画素数を0に近くする。これを加味し、式(4)の重みW(i)としてeiを用いることにより、シーン全体の飽和特徴量Cは以下の式(9)のようになる。

【0061】
このように、高彩度領域に注目されやすいシーンにおける飽和特徴量として高い値を見積もることが可能となるため、高彩度領域に適した弱め量を算出することが可能となる。
【0062】
上記の通り本第3の実施形態によれば、極端に暗い/明るい領域を多く含んでいるようなシーンに対しても、より好ましい階調補正量を算出することが可能となる。
【0063】
<第4の実施形態>
本第4の実施形態においては、画像をブロックに分割する際の分割方法の例について説明する。ブロックの分割においては大きいサイズのブロックで分割するほど、画像中の色曲がりしそうな領域をエリアで認識しやすくなる。そのため、大きいサイズのブロックで分割する場合は、例えば高彩度な建物や車、または花のマクロ撮影時等のように、ブロック内に特定の被写体だけを多く含むような場合には色曲がりしそうな領域の検出を行いやすくなる。しかし、そのブロック内に異なる被写体、例えば高彩度な植物を遠景で撮影した際などに、ブロック内に花と葉の両方を含んでしまうような場合においては、これらが平均化されてしまうため、結果として彩度が低く見積もられてしまう。
【0064】
例えば図8のようなシーンの場合、図8(a)はこのシーンを大きなサイズのブロックで分割した時の2ブロックを取り出したものであるが、この場合、左側のブロックではブロック内のほとんどが花の領域となっている。そのため、この範囲内で多少の彩度のばらつきがあったとしても色曲がりしそうな領域としてエリアで認識することが可能である。しかし、右側のブロックではブロック内に花と葉が混在しているため、これらが平均化されてしまい、色曲がりしそうな領域として抽出することができない。
【0065】
図8(b)ではこのシーンを小さなサイズのブロックで分割した時の18ブロックを取りだしたものであるが、この場合は、右側の9ブロックはブロックごとに花領域、葉領域を抽出できている。そのため、色曲がりしそうな領域、色曲がりしない領域を抽出することが可能である。しかし、逆に左側の9ブロックでは大きい花を細かく見ることになってしまうため、この花に陰影があった場合、細かい彩度の変動の影響を受けてしまい、花全体として色曲がりしそうかどうかを見ることができなくなる。本第4の実施形態はこのような場合でも、より好ましい階調補正量を算出できるようにする。
【0066】
本第4の実施形態における基本的な処理の流れは、第1の実施形態で図2を参照して説明したものと同様であるが、本第4の実施形態においては、複数のサイズのブロックを用いてブロック分割を行う点が異なる。上述した第1の実施形態においては、S203及びS204においてブロックの輝度特徴量及び色特徴量を算出する際に、各ブロックごとにR,G,Bの平均値を算出し、そこから輝度値、彩度値、明度値を算出している。一方、本第4の実施形態においては、予め異なる2つのブロックサイズを規定しておく。そして、ブロックサイズが大きい方に関してはブロック内に含まれる画素のR値、G値、B値それぞれの平均値AveRL、AveGL、AveBL、及びブロック内に含まれる画素のR値、G値、B値それぞれの分散値VarR、VarG、VarBを求めておく。一方、ブロックサイズが小さいほうに関してはブロック内に含まれる画素のR値、G値、B値それぞれの平均値AveRS,AveGS,AveBSを算出しておく。
【0067】
すなわち、図8(a)の各ブロックにおける平均値・分散値と、図8(b)の各ブロックにおける平均値の算出を行う。その上で、まずブロックサイズが大きいほうの分散値を調べる。ここで、図8(a)の左側のブロックのように、ブロックの中に花しか含まれていないような場合には分散値は低くなる。逆に、図8(a)の右側のブロックのように、ブロック中に花と葉など、異なる被写体を含んでいるような場合においては、分散値は高い値を示す。つまり、そのようなブロックにおいては小さいブロックサイズで判定することが好ましい。そこで、大きいサイズのブロックから算出された分散値が予め決められた閾値よりも高い場合には、小さいサイズのブロックから算出された平均値を用る。一方、大きいサイズのブロックから算出された分散値が閾値以下の場合には大きいサイズのブロックから算出された平均値をそのまま用いる。なお、この閾値処理は例えばVarR、VarG、VarBの平均値や最大値がある閾値Thよりも高いかどうかで判断したりすることが可能である。これにより図8(c)のように、花領域のみを含むようなブロックにおいては大きいサイズのブロックから算出した平均値を用い、花領域と葉領域を含むようなブロックにおいては小さいサイズのブロックから算出した平均値を用いることが可能となる。
【0068】
この際、飽和特徴量の算出には式(4)を用い、重みW(i)をブロックを構成する画素数にすることでブロックサイズを考慮した飽和特徴量の算出を行うことが可能となる。
【0069】
なお、上記第4の実施形態では、2種類のブロックサイズに分割する場合について説明したが、3種類以上のブロックサイズに分割するように構成しても構わない。
【0070】
以上、本発明の好ましい実施例について説明したが、本発明はこれらの実施例に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【0071】
<他の実施形態>
なお、本発明は、複数の機器(例えばホストコンピュータ、インターフェイス機器、カメラヘッド、スキャナなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、デジタルスチルカメラ、デジタルビデオカメラなど)に適用してもよい。
【0072】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【0073】
図9は、上記プログラムにより本発明を実現可能な情報処理装置200の概略構成を示すブロック図である。図9において、表示部201は、画像処理前の画像の表示、画像処理後の画像の表示、対話的な操作のための文字表示などを行う。操作部202は、使用者の操作を受け付けるためのものである。操作部202は例えばキーボードやポインティング装置などを用いることが可能である。CPU203は、入力された信号やプログラムに従って、各種の演算や、情報処理装置200を構成する各部分の制御を行う。一次記憶装置204は、一時的なデータを記憶し、CPU203の作業用に使われる。二次記憶装置205は、画像処理を行うためのプログラムや各種の設定情報を記憶する。通信装置206は、外部装置と接続し制御コマンドやデータの送受信を行う。通信装置206として、通信装置109と同じような形態を選択することも可能である。
【0074】
また、情報処理装置200で本発明を実施した場合は、二次記憶装置205に格納された画像や通信装置206を介して取得された一般の画像を当該処理の対象とすればよく、処理の対象は撮影画像に限らない。

【特許請求の範囲】
【請求項1】
画像における輝度の階調補正を行う画像処理装置であって、
前記画像を複数のブロックに分割するブロック分割手段と、
前記ブロックごとに輝度値を含む複数の特徴量を算出し、該算出した複数の特徴量に基づいて、前記画像を基準の階調補正特性を用いて階調補正した場合の色曲がりの生じやすさを示す飽和特徴量を算出する算出手段と、
前記算出された飽和特徴量に応じて、前記基準の階調補正特性を変更する変更手段と、
前記変更手段により変更された階調補正特性により階調補正を行う補正手段とを備え、
前記変更手段は、前記飽和特徴量がより色曲がりが生じやすいことを示す場合に、前記基準の階調補正特性の階調補正の強さをより弱く変更することを特徴とする画像処理装置。
【請求項2】
前記複数の特徴量は、彩度値を含むことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記飽和特徴量は、前記ブロックごとの彩度値が所定の彩度値よりも大きい場合、より色曲がりが生じやすいことを示す値をとることを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記複数の特徴量は、明度値を含むことを特徴とする請求項1乃至3のいずれか1項に記載の画像処理装置。
【請求項5】
前記飽和特徴量は、前記ブロックごとの明度値が所定の明度値よりも大きい場合、より色曲がりが生じやすいことを示す値をとることを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記画像から、予め決められた被写体を検出する検出手段を更に有し、
前記変更手段は、前記被写体が検出された場合に、前記被写体が検出されなかった場合よりも、前記階調補正の強さの弱め方をより少なくするように変更を行うことを特徴とする請求項1乃至5のいずれか1項に記載の画像処理装置。
【請求項7】
前記算出手段は、輝度値が予め決められた範囲内にある画素の信号値を用いて、前記ブロックごとに、前記特徴量を算出することを特徴とする請求項1乃至5のいずれか1項に記載の画像処理装置。
【請求項8】
前記ブロック分割手段は、複数の異なる大きさのブロックにより前記画像を分割することが可能であって、より大きいブロックごとに分散値を求め、該分散値が閾値以下のブロックは、該大きいブロックにより分割し、前記分散値が前記閾値よりも高いブロックは、より小さいブロックにより分割し、
前記算出手段は、前記ブロックごとに算出した複数の特徴量を、前記ブロックの大きさに対応するようにそれぞれ重み付けして前記飽和特徴量を算出することを特徴とする請求項1乃至5のいずれか1項に記載の画像処理装置。
【請求項9】
前記算出手段は、前記複数の特徴量を、前記ブロック分割したブロック内に含まれる画素を構成する信号成分の平均値を用いて算出することを特徴とする請求項1乃至8のいずれか1項に記載の画像処理装置。
【請求項10】
前記算出手段は、前記複数の特徴量について、それぞれ前記ブロック分割したブロック内に含まれる画素を構成する信号成分があらかじめ定めた一定量を超えて含まれるように算出された境界値を用いて前記飽和特徴量を算出することを特徴とする請求項1乃至8のいずれか1項に記載の画像処理装置。
【請求項11】
画像における輝度の階調補正を行う画像処理方法であって、
ブロック分割手段が、前記画像を複数のブロックに分割するブロック分割工程と、
算出手段が、前記ブロックごとに輝度値を含む複数の特徴量を算出し、該算出した複数の特徴量、に基づいて前記画像を基準の階調補正特性を用いて前記階調補正した場合に、色曲がりの生じやすさを示す飽和特徴量を算出する算出工程と、
変更手段が、前記算出された飽和特徴量に応じて、前記基準の階調補正特性を変更する変更工程と、
補正手段が、前記変更工程で変更された階調補正特性により階調補正を行う補正工程とを備え、
前記変更工程では、前記飽和特徴量がより色曲がりが生じやすいことを示す場合に、前記階調補正の強さをより弱く変更することを特徴とする画像処理方法。
【請求項12】
コンピュータを、請求項1乃至10のいずれか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
【請求項13】
コンピュータに、請求項11に記載の画像処理方法の各工程を実行させるためのプログラム。
【請求項14】
請求項12または13に記載のプログラムを格納したコンピュータが読み取り可能な記憶媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2012−165146(P2012−165146A)
【公開日】平成24年8月30日(2012.8.30)
【国際特許分類】
【出願番号】特願2011−23248(P2011−23248)
【出願日】平成23年2月4日(2011.2.4)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】