(57)【特許請求の範囲】
【請求項１】
原画像の推定照明光成分を算出する照明光成分推定部と、
前記推定照明光成分を補正した補正推定照明光成分を出力する推定照明光成分補正部と、
前記原画像の輝度成分を前記補正推定照明光成分で除算することで前記輝度成分を補正するレチネックス処理部とを備え、
前記推定照明光成分補正部は、
前記推定照明光成分の最低輝度側から最高輝度側までの値を複数の区分に分割した度数分布の第１閾値以上の区分において、第２閾値以上の度数値を有する最低輝度側区分を求め、求めた区分の最小輝度値以上の推定照明光成分値を補正推定照明光成分の最大値に補正することを特徴とする画像処理装置。
【請求項２】
原画像の推定照明光成分を算出する照明光成分推定部と、
前記推定照明光成分を補正した補正推定照明光成分を出力する推定照明光成分補正部と、
前記原画像の輝度成分を前記補正推定照明光成分で除算することで前記輝度成分を補正するレチネックス処理部とを備え、
前記推定照明光成分補正部は、
前記推定照明光成分の最低輝度側から最高輝度側までの値を複数の区分に分割した高輝度側からの累積度数分布の第１閾値以上の区分において、第２閾値以上の累積度数値を有する最低輝度側区分を求め、求めた区分の最小輝度値以上の推定照明光成分値を補正推定照明光成分の最大値に補正することを特徴とする画像処理装置。
【請求項３】
前記第２閾値は、一様輝度分布の場合に、対応する区分で得られる度数値であることを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記第２閾値は、一様輝度分布の場合に、対応する区分で得られる累積度数値であることを特徴とする請求項２に記載の画像処理装置。
【請求項５】
原画像の推定照明光成分を算出する照明光成分推定部と、
前記推定照明光成分を補正した補正推定照明光成分を出力する推定照明光成分補正部と、
前記原画像の輝度成分を前記補正推定照明光成分で除算することで前記輝度成分を補正するレチネックス処理部とを備え、
前記推定照明光成分補正部は、
前記推定照明光成分の最低輝度側から最高輝度側までの値を複数の区分に分割した度数分布において、最高輝度側のピーク区分と最高輝度側の谷区分とを抽出し、抽出されたピーク区分の度数値が第１閾値以上であり、かつ最高輝度区分から抽出された谷区分までの度数値合計が第２閾値以上の場合、前記谷区分の最小輝度値以上の推定照明光成分値を補正推定照明光成分の最大値に補正することを特徴とする画像処理装置。
【請求項６】
原画像の推定照明光成分を算出する照明光成分推定ステップと、
前記推定照明光成分を補正した補正推定照明光成分を出力する推定照明光成分補正ステップと、
前記原画像の輝度成分を前記補正推定照明光成分で除算することで前記輝度成分を補正するレチネックス処理ステップとを含み、
前記推定照明光成分補正ステップは、
前記推定照明光成分の最低輝度側から最高輝度側までの値を複数の区分に分割した度数分布の第１閾値以上の区分において、第２閾値以上の度数値を有する最低輝度側区分を求め、求めた区分の最小輝度値以上の推定照明光成分値を補正推定照明光成分の最大値に補正することを特徴とする画像処理方法。
【請求項７】
原画像の推定照明光成分を算出する照明光成分推定ステップと、
前記推定照明光成分を補正した補正推定照明光成分を出力する推定照明光成分補正ステップと、
前記原画像の輝度成分を前記補正推定照明光成分で除算することで前記輝度成分を補正するレチネックス処理ステップとを含み、
前記推定照明光成分補正ステップは、
前記推定照明光成分の最低輝度側から最高輝度側までの値を複数の区分に分割した高輝度側からの累積度数分布の第１閾値以上の区分において、第２閾値以上の累積度数値を有する最低輝度側区分を求め、求めた区分の最小輝度値以上の推定照明光成分値を補正推定照明光成分の最大値に補正することを特徴とする画像処理方法。
【請求項８】
原画像の推定照明光成分を算出する照明光成分推定ステップと、
前記推定照明光成分を補正した補正推定照明光成分を出力する推定照明光成分補正ステップと、
前記原画像の輝度成分を前記補正推定照明光成分で除算することで前記輝度成分を補正するレチネックス処理ステップとを含み、
前記推定照明光成分補正ステップは、
前記推定照明光成分の最低輝度側から最高輝度側までの値を複数の区分に分割した度数分布において、最高輝度側のピーク区分と最高輝度側の谷区分とを抽出し、抽出されたピーク区分の度数値が第１閾値以上であり、かつ最高輝度区分から抽出された谷区分までの度数値合計が第２閾値以上の場合、前記谷区分の最小輝度値以上の推定照明光成分値を補正推定照明光成分の最大値に補正することを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に係り、特に高輝度部分の階調を失うことなく良好な輝度補正を行なうことができる画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
逆光などの偏った照明条件下で被写体を撮像したときに、照明の当たり具合によって明度差が非常に大きく、見にくい画像が生成されることがある。このような画像を画像処理によって補正することで、画像を見やすく改良することが行なわれている。
【０００３】
画像処理の方法として、原画像から照明光成分を抽出して、原画像の輝度成分を、照明光成分を用いて補正するレチネックス（Retinex）処理が知られている。レチネックス処理は、人の視覚は照明光を除去して外界を見る、明暗恒常性や色恒常性を備えているというレチネックス理論に基づく手法である。
【０００４】
レチネックス理論によると人間の視覚は各物体の反射率成分の比によって色を知覚する。反射率成分は、照明に依存しない被写体の画像成分である。これに対し、映像機器等に撮像された原画像は受光した物理的な光量によって各画素の値が決定されており、反射率成分と照明光成分との積で表わされる。したがって、原画像から照明光成分を分離して反射率成分を得ることによって、照明光成分に依存しない適切な画像を得ることができると考えられる。
【０００５】
レチネックス処理は、ＳＳＲ（Single-Scale-Retinex）、ＭＳＲ（Multi-Scale-Retinex）、ＬＲ（Linear Retinex）等種々の手法が提案されている。ここでは、簡易的に、［数１］に示すＬＲ法を例に説明する。
【数１】
0005648849.tif 000002
【０００６】
［数１］において、Ｙ（ｘ，ｙ）は、原画像の画素（ｘ，ｙ）の輝度成分であり、Ｒｉ（ｘ，ｙ）は、補正後の輝度成分である。右辺分母は、照明光成分に相当するものであり、輝度成分をぼかした画像が推定照明光成分として用いられている。Ｆは、画素（ｘ，ｙ）を周辺の画素を用いて平坦化するフィルタ関数であり、ガウスフィルタ等を用いることができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００９−２９６２１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
原画像の画素（ｘ，ｙ）の輝度成分を、輝度成分をぼかして得られる推定照明光成分で割るため、除算結果は１周辺に分布することになる。右辺Ａは、この分布を輝度信号のレンジ、例えば、０〜２５５に対応させるためのゲインである。ゲインの設定によって白飛びが数多く発生したり、暗部ノイズが強調されたりして画像の品質に影響を与えるため、ゲイン設定は適切に行なう必要がある。しかしながら、輝度分布の形状や範囲は画像毎に異なるため、個々の画像に適したゲインを設定するのは困難である。
【０００９】
ところで、画像を明るく補正することにより、もともと明るい部分で白飛びが生じたり、明るい部分の階調が失われてしまう場合がある。この現象を防ぐために、例えば、特許文献１には、周辺画素との平均輝度値が閾値以下の画素に対しては、補正利得を乗じて明るく補正し、周辺画素との平均輝度値が閾値を超える高輝度画素に対しては、補正利得を１、すなわち、補正を行なわないことで高輝度部の階調を維持することが記載されている。
【００１０】
しかしながら、特許文献１には、閾値の具体的な決め方については開示されておらず、統計的、実験的に求めるという記載や、輝度分布がはっきり分かれたような特殊な画像についての示唆に留まっている。実際は、輝度分布の形状や範囲は画像毎に異なるため、個々の画像に適した閾値を設定するのは困難である。
【００１１】
そこで、本発明は、個々の画像に適した良好な輝度補正を定量的に行なうことができる画像処理装置および画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記課題を解決するため、本発明の第１の態様である画像処理装置は、原画像の推定照明光成分を算出する照明光成分推定部と、前記推定照明光成分を補正した補正推定照明光成分を出力する推定照明光成分補正部と、前記原画像の輝度成分を前記補正推定照明光成分で除算することで前記輝度成分を補正するレチネックス処理部とを備え、前記推定照明光成分補正部は、前記推定照明光成分の最低輝度側から最高輝度側までの値を複数の区分に分割した度数分布の第１閾値以上の区分において、第２閾値以上の度数値を有する最低輝度側区分を求め、求めた区分の最小輝度値以上の推定照明光成分値を補正推定照明光成分の最大値に補正することを特徴とする。
ここで、前記第２閾値は、一様輝度分布の場合に、対応する区分で得られる度数値とすることができる。
上記課題を解決するため、本発明の第２の態様である画像処理装置は、原画像の推定照明光成分を算出する照明光成分推定部と、前記推定照明光成分を補正した補正推定照明光成分を出力する推定照明光成分補正部と、前記原画像の輝度成分を前記補正推定照明光成分で除算することで前記輝度成分を補正するレチネックス処理部とを備え、前記推定照明光成分補正部は、前記推定照明光成分の最低輝度側から最高輝度側までの値を複数の区分に分割した高輝度側からの累積度数分布の第１閾値以上の区分において、第２閾値以上の累積度数値を有する最低輝度側区分を求め、求めた区分の最小輝度値以上の推定照明光成分値を補正推定照明光成分の最大値に補正することを特徴とする。
ここで、前記第２閾値は、一様輝度分布の場合に、対応する区分で得られる累積度数値とすることができる。
上記課題を解決するため、本発明の第３の態様である画像処理装置は、原画像の推定照明光成分を算出する照明光成分推定部と、前記推定照明光成分を補正した補正推定照明光成分を出力する推定照明光成分補正部と、前記原画像の輝度成分を前記補正推定照明光成分で除算することで前記輝度成分を補正するレチネックス処理部とを備え、前記推定照明光成分補正部は、前記推定照明光成分の最低輝度側から最高輝度側までの値を複数の区分に分割した度数分布において、最高輝度側のピーク区分と最高輝度側の谷区分とを抽出し、抽出されたピーク区分の度数値が第１閾値以上であり、かつ最高輝度区分から抽出された谷区分までの度数値合計が第２閾値以上の場合、前記谷区分の最小輝度値以上の推定照明光成分値を補正推定照明光成分の最大値に補正することを特徴とする。
上記課題を解決するため、本発明の第４の態様である画像処理方法は、原画像の推定照明光成分を算出する照明光成分推定ステップと、前記推定照明光成分を補正した補正推定照明光成分を出力する推定照明光成分補正ステップと、前記原画像の輝度成分を前記補正推定照明光成分で除算することで前記輝度成分を補正するレチネックス処理ステップとを含み、前記推定照明光成分補正ステップは、前記推定照明光成分の最低輝度側から最高輝度側までの値を複数の区分に分割した度数分布において、第１閾値以上の区分の第２閾値以上の度数値を有する最低輝度側区分を求め、求めた区分の最小輝度値以上の推定照明光成分値を補正推定照明光成分の最大値に補正することを特徴とする。
上記課題を解決するため、本発明の第５の態様である画像処理方法は、原画像の推定照明光成分を算出する照明光成分推定ステップと、前記推定照明光成分を補正した補正推定照明光成分を出力する推定照明光成分補正ステップと、前記原画像の輝度成分を前記補正推定照明光成分で除算することで前記輝度成分を補正するレチネックス処理ステップとを含み、前記推定照明光成分補正ステップは、前記推定照明光成分の最低輝度側から最高輝度側までの値を複数の区分に分割した高輝度側からの累積度数分布において、第１閾値以上の第２閾値以上の累積度数値を有する最低輝度側区分を求め、求めた区分の最小輝度値以上の推定照明光成分値を補正推定照明光成分の最大値に補正することを特徴とする。
上記課題を解決するため、本発明の第６の態様である画像処理方法は、原画像の推定照明光成分を算出する照明光成分推定ステップと、前記推定照明光成分を補正した補正推定照明光成分を出力する推定照明光成分補正ステップと、前記原画像の輝度成分を前記補正推定照明光成分で除算することで前記輝度成分を補正するレチネックス処理ステップとを含み、前記推定照明光成分補正ステップは、前記推定照明光成分の最低輝度側から最高輝度側までの値を複数の区分に分割した度数分布において、最高輝度側のピーク区分と最高輝度側の谷区分とを抽出し、抽出されたピーク区分の度数値が第１閾値以上であり、かつ最高輝度区分から抽出された谷区分までの度数値合計が第２閾値以上の場合、前記谷区分の最小輝度値以上の推定照明光成分値を補正推定照明光成分の最大値に補正することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、個々の画像に適した良好な輝度補正を定量的に行なうことができる画像処理装置および画像処理方法が提供される。
【図面の簡単な説明】
【００１４】
【図１】本実施形態に係る画像処理装置の構成を示すブロック図である。
【図２】本実施形態の画像処理装置における画像補正の手順について説明するフローチャートである。
【図３】推定照明光成分の補正曲線の例を示す図である。
【図４】推定照明光成分の補正効果について説明する図である。
【図５】推定照明光成分の高輝度部分のクリップについて説明する図である。
【図６】クリップ輝度値の設定法の第１実施例について説明するフローチャートである。
【図７】クリップ輝度値の設定法の第１実施例について説明するヒストグラムおよび補正曲線である。
【図８】クリップ輝度値の設定法の第２実施例について説明するフローチャートである。
【図９】クリップ輝度値の設定法の第２実施例について説明する累積ヒストグラムである。
【図１０】クリップ輝度値の設定法の第３実施例について説明するフローチャートである。
【図１１】クリップ輝度値の設定法の第３実施例について説明するヒストグラムである。
【図１２】第３実施例によるクリップ輝度値の設定を行なった場合の、レチネックス処理結果について説明する画像例である。
【図１３】ヒストグラム比率Ｈｐ［０：１５］のピークと谷との検出手順の一例について説明するフローチャートである。
【図１４】低輝度部分についても最高輝度値にクリップした補正曲線の例を示す図である。
【発明を実施するための形態】
【００１５】
本発明の実施の形態について図面を参照して詳細に説明する。図１は、本実施形態に係る画像処理装置の構成を示すブロック図である。本実施形態において、画像処理装置１０は、原画像Ｉを入力し、レチネックス処理による輝度補正を施した補正画像ＩＲを出力する処理を行なう。
【００１６】
本図に示すように、画像処理装置１０は、画像入力部１１０、照明光成分推定部１２０、推定照明光成分補正部１３０、レチネックス処理部１４０、ゲイン調整部１５０、画像出力部１６０を備えている。
【００１７】
画像入力部１１０は、原画像Ｉを入力する。原画像Ｉは、例えば、撮像装置によって撮像された画像とすることができ、静止画像、動画像を構成する画像のいずれであってもよい。このとき、原画像ＩがＲＧＢ形式の画像であれば、ＹＵＶ変換を行なう。ここで、ＹＵＶ形式は、画像信号を輝度信号Ｙ、色差信号（Ｃｂ）Ｕ、色差信号（Ｃｒ）Ｖで表現する形式である。ＹＵＶ形式に変換された原画像Ｉは、輝度信号Ｙｉ、色差信号（Ｃｂ）Ｕｉ、色差信号（Ｃｒ）Ｖｉで表わすものとする。原画像Ｉが、輝度成分が分離された形式の画像フォーマットであれば、ＹＵＶ形式への変換処理は不要である。
【００１８】
照明光成分推定部１２０は、原画像Ｉの輝度信号Ｙｉに対してフィルタリング処理を行なうことにより平坦化し、推定照明光成分Ｌを算出する。フィルタリングに用いる関数は、例えば、ガウス関数とすることができる。ガウス関数では、参照する周辺画素量を定めるスケールが設定されるが、用いるスケールは単数であっても、複数であってもよい。複数のスケールを用いる場合は、それぞれのスケールの大きさを異ならせ、それぞれに対して重み付けを行なうことができる。
【００１９】
推定照明光成分補正部１３０は、推定照明光成分Ｌに対する補正を行ない、補正推定照明光成分Ｌ'を生成する。推定照明光成分Ｌに対する補正は、本実施形態における特徴部分の１つである。推定照明光成分補正部１３０が行なう推定照明光成分Ｌに対する補正の具体的な内容については後述する。
【００２０】
レチネックス処理部１４０は、原画像Ｉの輝度信号Ｙｉを、補正推定照明光成分Ｌ'で除算することにより補正し、補正輝度信号Ｙ'を生成する。以下では、原画像Ｉの輝度信号Ｙｉを、推定照明光成分Ｌあるいは補正推定照明光成分Ｌ'で除算する処理をレチネックス処理と称する。
【００２１】
ゲイン調整部１５０は、１の周辺に分布する補正輝度信号Ｙ'を輝度信号のレンジに対応させるためのゲイン補正を行ない、調整補正後輝度信号ＹＲを生成する。後述するように、本実施形態では、補正輝度信号Ｙ'は、ほぼ１以下の領域に分布するようになるため、画像の内容によらず、ゲイン値を一律に設定することができる。このため、画像毎に適切なゲインを設定する煩雑な処理を省くことができる。ゲイン値は、例えば、輝度信号のレンジが０〜２５５であれば、２５５とすることができる。この場合、オフセット値の設定は必須ではない。
【００２２】
画像出力部１６０は、原画像Ｉの輝度信号Ｙｉが調整補正後輝度信号ＹＲに補正された補正画像ＩＲを出力する。補正画像ＩＲをＲＧＢ形式で出力する場合には、ＹＵＶ形式からＲＧＢ形式への変換を行なう。ＲＧＢ形式への変換は、調整補正後輝度信号ＹＲと、色差信号（Ｃｂ）Ｕｉと、色差信号（Ｃｒ）Ｖｉとを用いて行なう。
【００２３】
次に、本実施形態の画像処理装置１０における画像補正の手順について図２のフローチャートを参照して説明する。
【００２４】
まず、画像入力部１１０が、ＲＧＢ形式の原画像Ｉを入力する（Ｓ１０１）。画像入力部１１０は、ＲＧＢ形式の原画像ＩをＹＵＶ形式に変換する（Ｓ１０２）。ＹＵＶ形式に変換された後の原画像Ｉは、輝度信号Ｙｉ、色差信号（Ｃｂ）Ｕｉ、色差信号（Ｃｒ）Ｖｉで表わすことができる。
【００２５】
そして、照明光成分推定部１２０において、輝度信号Ｙｉをフィルタリングすることにより、推定照明光成分Ｌを生成する（Ｓ１０３）。フィルタリングは、複数のスケールを用いたガウス関数とするが、ローパスフィルタ等の他の平滑化フィルタを用いるようにしてもよい。また、他の手法により、照明光成分を推定するようにしてもよい。例えば、輝度信号に代えて、ＲＧＢ形式のＧ信号を用いるようにしてもよい。
【００２６】
推定照明光成分Ｌは、推定照明光成分補正部１３０において補正され、補正推定照明光成分Ｌ'が生成される（Ｓ１０４）。本処理の詳細な内容については後述する。
【００２７】
次いで、レチネックス処理部１４０が、原画像Ｉの輝度信号Ｙｉを、補正推定照明光成分Ｌ'で除算することにより補正し、補正輝度信号Ｙ'を生成する（Ｓ１０５）。この補正輝度信号Ｙ'をゲイン調整部１５０が、例えば、ゲイン値を一律に２５５としたゲイン調整を行なって、調整補正後輝度信号ＹＲを生成する（Ｓ１０６）。
【００２８】
そして、画像出力部１６０が、調整補正後輝度信号ＹＲと、原画像の色差信号（Ｃｂ）Ｕｉと色差信号（Ｃｒ）Ｖｉとを用いてＲＧＢ形式への変換を行ない（Ｓ１０７）、補正画像ＩＲとして出力する（Ｓ１０８）。
【００２９】
次に、本実施形態における推定照明光成分Ｌの補正について説明する。本補正は、推定照明光成分補正部１３０が、上述のステップＳ１０４の処理において行なうものであり、補正の結果、補正推定照明光成分Ｌ'が生成される。
【００３０】
本補正では、補正輝度信号Ｙ'の分布を、なるべく補正前の傾向を保ったまま、１以下の領域に収めるようにする。これにより、一律のゲイン値を用いることができるようになり、画像毎に最適なゲイン値を設定する必要がなくなる。補正輝度信号Ｙ'は、原画像Ｉの輝度信号Ｙｉを推定照明光成分Ｌで除算することにより得られることから、補正輝度信号Ｙ'の分布を１以下の範囲に収めるためには、推定照明光成分Ｌの値が大きくなるような傾向で補正すればよいことになる。
【００３１】
そこで、推定照明光成分Ｌを、図３の曲線Ｑ１に示すような特性で補正することが考えられる。この結果、推定照明光成分Ｌの分布は、より低輝度の部分が高輝度になる傾向で、推定照明光成分Ｌが全体的に高輝度方向に圧縮された分布形状に補正される。
【００３２】
この補正推定照明光成分Ｌ'を用いて、原画像Ｉの輝度信号Ｙｉの除算を行なうと、ほぼ１以下の範囲に収まった分布形状の補正輝度信号Ｙ'を得ることができる。このため、ゲイン値を一律に設定することができ、画像毎に最適なゲイン値を設定する必要がなくなることになる。
【００３３】
しかしながら、図３の曲線Ｑ１に示すような特性で推定照明光成分Ｌを補正すると、高輝度部分で過補正が生じて高輝度部分の階調が失われてしまう場合があり、必ずしも良好な補正画像が得られないという問題がある。
【００３４】
ここで、推定照明光成分Ｌの補正が補正画像に与える影響を、図４を参照して概説し、これらの問題が発生する理由について説明する。図４に示した補正特性において、直線βは、補正前後の値が等しくなるため、推定照明光成分Ｌの補正を行なわないことと同義である。すなわち、原画像Ｉの輝度信号Ｙｉを推定照明光成分Ｌで割るという従来のレチネックス処理と同様の効果を得ることができる。
【００３５】
一方、図４に示した補正特性において、直線αは、推定照明光成分Ｌの値を一律に最大値に置き換えることになる。原画像Ｉの輝度信号Ｙｉを最大値で一律に割ると、原画像Ｉの輝度信号Ｙｉが元の分布形状のまま、０〜１の範囲に正規化されることになる。すなわち、レチネックス処理による画像補正が行なわれないことと同等である。つまり、全輝度範囲にわたって原画像Ｉの階調がそのまま残ることになる。
【００３６】
そこで、本実施形態では、図５（ａ）に示すように、高輝度部分の階調を失わせないために、推定照明光成分の高輝度部分を最高輝度値にクリップさせる。これにより、高輝度部分においてレチネックス処理が行なわれないことになり高輝度部分の階調が維持されることになる。
【００３７】
この場合、図５（ｂ）に示すように、どの程度の輝度値以上をクリップさせるかにより画像の補正結果が異なるが、輝度分布の形状や範囲は画像毎に異なるため、クリップ輝度値を一律に設定することは望ましくない。ここで、「クリップ輝度値」は、図５の破線で示すような、最高輝度値にクリップさせる区分最小値を意味する。クリップ輝度値以上の輝度値に対してはレチネックス効果が与えられなくなり、階調が維持される。
【００３８】
例えば、全体的にハイキーで低輝度部分の階調を重視したい画像であれば、クリップ輝度値を低めにして高輝度部分の階調を十分残した方がよい結果が得られる場合がある。また、全体的にローキーで低輝度部分の階調を重視したい画像であれば、クリップ輝度値を高めにしたり、クリップを行なわずに高輝度部分に対してレチネックス効果を与えた方がよい結果が得られる場合がある。
【００３９】
そこで、本実施形態では、以下に示すような手法により定量的にクリップ輝度値を設定するようにする。
【００４０】
まず、クリップ輝度値の設定法の第１実施例について図６のフローチャートを参照して説明する。以下では、推定照明光成分Ｌが８ビット、すなわち０〜２５５の２５６階調の場合を例に説明する。
【００４１】
推定照明光成分Ｌの補正におけるクリップ輝度値の設定法の第１実施例では、推定照明光成分Ｌに基づいて、１６区分のヒストグラムＨ［０：１５］を算出する（Ｓ２０１）。例えば、推定照明光成分Ｌにおける輝度値が０〜１５の画素であれば、Ｈ［０］の区分に含まれ、輝度値が２４０〜２５５の画素であれば、Ｈ［１５］の区分に含まれることになる。ただし、１６区分は例示であり、他の数であってもよい。
【００４２】
ヒストグラムＨ［０：１５］を算出すると、ヒストグラムＨ［０：１５］の各区分に含まれる画素数に基づいて、ヒストグラム比率Ｈｐ［０：１５］を算出する（Ｓ２０２）。これは、各区分に含まれる画素数を全画素数で割ることにより求めることができる。ただし、ヒストグラム比率Ｈｐ［０：１５］は、便宜的に用いるものであるため、以下の処理においてヒストグラム比率Ｈｐ［０：１５］ではなく、ヒストグラムＨ［０：１５］を用いるようにしてもよい。図７（ａ）は、算出されたヒストグラム比率Ｈｐ［０：１５］の一例を示している。
【００４３】
次に、区分の番号に対応する変数ｉに対して第１閾値を設定する（Ｓ２０３）。第１実施例では、第１閾値は、最高輝度値の７０％以上の値に対応する区分番号とすることが好ましく、本例では、図７（ａ）に示すように２５５×７０％≒１７８を含んだ区分である１１を第１閾値として定めるものとする。
【００４４】
そして、Ｈｐ［ｉ］の値が第２閾値以上となるかどうかを判定する（Ｓ２０４）。ここで、第２閾値は、輝度値が一様分布の場合のヒストグラム比率の値とすることができる。本例では、図７（ａ）に示すように、１６／２５５≒６．３％を第２閾値として定めるものとする。ただし、区分毎に第２閾値に対して重み付けを行なうようにしてもよい。
【００４５】
Ｈｐ［ｉ］の値が第２閾値以上となるかどうかの判定（Ｓ２０４）は、変数ｉを増分させていくことにより、第１閾値の区分から高輝度側の区分に対して順番に行なう（Ｓ２０６）。
【００４６】
ある変数ｉの値において、Ｈｐ［ｉ］の値が第２閾値以上となる区分が検出されると（Ｓ２０４：Ｙｅｓ）、区分Ｈｐ［ｉ］の区分最小値をクリップ輝度値として設定し、クリップ輝度値以上の輝度値をクリップする（Ｓ２０７）。なお、変数ｉは、第１閾値から増加させていくため（Ｓ２０６）、第１閾値以上の区分において、Ｈｐ［ｉ］の値が第２閾値以上となる最も低輝度側の区分が検出されることになる。
【００４７】
図７（ａ）の例では、区分Ｈｐ［１３］において、第２閾値以上となっているため、図７（ｂ）に示すように、区分Ｈｐ［１３］の区分最小値である２０８がクリップ輝度値として設定される。そして、図７（ｂ）に示すような補正曲線を用いて、推定照明光成分Ｌの補正を行なう。これにより、レチネックス処理後においても高輝度部分の階調を維持することができる。
【００４８】
一方、最も高輝度側の区分まで、Ｈｐ［ｉ］の値が第２閾値以上となる区分が検出されない場合（Ｓ２０５：Ｙｅｓ）は、クリップ輝度値は設定せず（Ｓ２０８）、クリップは行なわずに推定照明光成分Ｌの補正を行なう。これは、高輝度側に十分な画素が分布しておらず、画素が多く分布した中低輝度側の階調をより重視した方が、よい補正結果を得られると考えられるからである。
【００４９】
以上、第１実施例によれば、極めて低い計算コストで、クリップ輝度値が設定され、個々の画像に適した良好な輝度補正を定量的に行なうことができる。なお、第１閾値、第２閾値は例示であり、他の値としてもよい。また、画像を得る際の撮影モードとして「晴天風景」「逆光ポートレート」「夜景」等を定め、撮影モードに応じて閾値を変更するようにしてもよい。
【００５０】
次に、クリップ輝度値の設定法の第２実施例について図８のフローチャートを参照して説明する。
【００５１】
推定照明光成分Ｌの補正におけるクリップ輝度値の設定法の第２実施例でも、推定照明光成分Ｌに基づいて、１６区分のヒストグラムＨ［０：１５］を算出する（Ｓ３０１）。
【００５２】
ヒストグラムＨ［０：１５］を算出すると、第２実施例ではヒストグラムＨ［０：１５］の各区分に含まれる画素数に基づいて、高輝度側からの累積ヒストグラム比率Ｓｐ［０：１５］を算出する（Ｓ３０２）。これは、各区分に含まれる画素数を全画素数で割ることにより算出される比率を、高輝度側から累積することで求めることができる。図９は、算出された累積ヒストグラム比率Ｓｐ［０：１５］の一例を示している。
【００５３】
次に、区分の番号に対応する変数ｉに対して第１閾値を設定する（Ｓ３０３）。第２実施例では、第１閾値は、最高輝度値の６０％以上の値に対応する区分番号とすることが好ましく、本例では、図９に示すように２５５×６０％＝１５３を含んだ区分である９を第１閾値として定めるものとする。
【００５４】
そして、Ｓｐ［ｉ］の値が第２閾値以上となるかどうかを判定する（Ｓ３０４）。ここで、第２閾値は、輝度値が一様分布の場合の累積ヒストグラム比率の値とすることができる。本例では、図９に示すように、高輝度側から区分毎に約６．３％ずつ増加する値を第２閾値として定めるものとする。ただし、第２閾値として、輝度値が重み付け分布した場合の累積ヒストグラム比率の値を用いてもよい。
【００５５】
Ｓｐ［ｉ］の値が第２閾値以上となるかどうかの判定（Ｓ３０４）は、変数ｉを増分させていくことにより、第１閾値の区分から高輝度側の区分に対して順番に行なう（Ｓ３０６）。
【００５６】
ある変数ｉの値において、Ｓｐ［ｉ］の値が第２閾値以上となる区分が検出されると（Ｓ３０４：Ｙｅｓ）、区分Ｓｐ［ｉ］の区分最小値をクリップ輝度値として、クリップ輝度値以上の輝度値をクリップする（Ｓ３０７）。なお、変数ｉは、第１閾値から増加させていくため（Ｓ３０６）、第１閾値以上の区分において、Ｓｐ［ｉ］の値が第２閾値以上となる最も低輝度側の区分が検出されることになる。
【００５７】
図９の例では、区分Ｓｐ［１２］において、第２閾値以上となっているため、区分Ｓｐ［１２］の区分最小値である１９２がクリップ輝度値として設定される。そして、推定照明光成分Ｌの補正を行なう。これにより、高輝度部分の階調を維持することができる。
【００５８】
一方、最も高輝度側の区分まで、Ｓｐ［ｉ］の値が第２閾値以上となる区分が検出されない場合（Ｓ３０５：Ｙｅｓ）は、クリップ輝度値は設定せず（Ｓ３０８）、クリップは行なわずに推定照明光成分Ｌの補正を行なう。高輝度側に十分な画素が分布しておらず、画素が多く分布した中低輝度側の階調をより重視した方が、よい補正結果を得られると考えられるからである。
【００５９】
以上、第２実施例によれば、低い計算コストで、高輝度側の密度を考慮したクリップ輝度値が設定され、個々の画像に適した良好な輝度補正を定量的に行なうことができる。なお、第１閾値、第２閾値は例示であり、他の値としてもよい。また、画像を得る際の撮影モードとして「晴天風景」「逆光ポートレート」「夜景」等を定め、撮影モードに応じて閾値を変更するようにしてもよい。
【００６０】
次に、クリップ輝度値の設定法の第３実施例について図１０のフローチャートを参照して説明する。第３実施例では、ヒストグラムのピークと谷とを用いてクリップ輝度値を設定する。
【００６１】
推定照明光成分Ｌの補正におけるクリップ輝度値の設定法の第３実施例では、第１実施例と同様に、推定照明光成分Ｌに基づいて、１６区分のヒストグラムＨ［０：１５］を算出し（Ｓ４０１）、ヒストグラムＨ［０：１５］の各区分に含まれる画素数に基づいて、ヒストグラム比率Ｈｐ［０：１５］を算出する（Ｓ４０２）。ただし、推定照明光成分Ｌに代えて、原画像の輝度ヒストグラムを用いてもよい。図１１は、算出されたヒストグラムＨ［０：１５］の一例を示している。
【００６２】
そして、ヒストグラム比率Ｈｐ［０：１５］のピークと谷とを検出する（Ｓ４０３）。ピークと谷との検出は、後に一例を示すが種々の手法を用いることができる。
【００６３】
ここで、ピークは、ヒストグラムの山となっている区分、すなわち隣接する両端の区分よりも値が大きい区分であり、谷は、隣接するピークに挟まれる区分のうち、最も値の小さな区分である。なお、隣接する谷との差が所定の基準よりも小さい山は、ピークから除外するものとする。また、片側だけ他の区分と隣接する最低輝度区分および最高輝度区分は、隣接する１つの区分より大きければ山（ピーク候補）と見なすものとする。
【００６４】
図１１の例では、Ｈｐ［３］とＨｐ［１４］とでピークが検出され、Ｈｐ［３］とＨｐ［１４］との間で最も値が小さいＨｐ［９］が谷として検出されている。なお、Ｈｐ［１１］は、両端の区分よりも値が大きくなっているが、ピークとした場合の谷となるＨｐ［１２］との差が小さいため、ピークから除外している。
【００６５】
検出されたピークが１個以下の場合（Ｓ４０４：Ｙｅｓ）は、谷が形成されず、第３実施例によるクリップ輝度値設定は不向きとなるため、上述の第１実施例、第２実施例によってクリップ輝度値を設定することが望ましい（Ｓ４０５）。このように、本実施形態において、第１実施例、第２実施例、第３実施例は、組み合わせて行なうことができる。
【００６６】
検出されたピークが２個以上であれば（Ｓ４０４：Ｎｏ）、最も高輝度側のピークと谷とを抽出する（Ｓ４０６）。以下では、最も高輝度側のピークをｐｅａｋ＿ｍａｘと称し、最も高輝度側の谷をｂｏｔｔｏｍ＿ｍａｘと称する。図１１の例では、Ｈｐ［１４］がｐｅａｋ＿ｍａｘとなり、Ｈｐ［９］がｂｏｔｔｏｍ＿ｍａｘとなる。
【００６７】
第３実施例では、ｐｅａｋ＿ｍａｘの区分が第１閾値以上であり（Ｓ４０７：Ｙｅｓ）、かつｂｏｔｔｏｍ＿ｍａｘ以上の区分のヒストグラム比率Ｈｐの和が第２閾値以上であれば（Ｓ４０８：Ｙｅｓ）、ｂｏｔｔｏｍ＿ｍａｘの区分最小値をクリップ輝度値とする（Ｓ４０９）。ｂｏｔｔｏｍ＿ｍａｘ以上の輝度値の画素が十分分布し、高輝度部分の階調が重要であると考えられるからである。ここで、第１閾値は、例えば、１０とすることができ、第２閾値は、例えば、２５％とすることができる。
【００６８】
それ以外の場合（Ｓ４０７：Ｎｏ、Ｓ４０８：Ｎｏ）は、クリップ輝度値を設定せず、クリップを行なわない（Ｓ４１０）。高輝度側に十分な画素が分布しておらず、画素が多く分布した中低輝度側の階調をより重視した方が、よい補正結果を得られると考えられるからである。
【００６９】
図１１の例では、ｐｅａｋ＿ｍａｘの区分は１４であり、１０である第１閾値以上となっており（Ｓ４０７：Ｙｅｓ）、ｂｏｔｔｏｍ＿ｍａｘであるＨｐ［９］以上の比率合計は３３％で、第２閾値である２５％以上となっている（Ｓ４０８：Ｙｅｓ）。このため、ｂｏｔｔｏｍ＿ｍａｘであるＨｐ［９］の区分最小値である１４４がクリップ輝度値として設定される。そして、推定照明光成分Ｌの補正を行なう。これにより、高輝度部分の階調を維持することができる。
【００７０】
第３実施例によるクリップ輝度値の設定を行なった場合の、レチネックス処理結果について図１２を参照して説明する。図１２（ａ）は、原画像Ｉであり、図１２（ｂ）は、原画像の輝度成分をぼかした得られた推定照明光成分Ｌである。図１２（ｃ）は、クリップ輝度値を設定せずに図３に示したような補正曲線を用いて推定照明光成分Ｌを補正し、レチネックス処理を施した結果得られた画像である。図１２（ｄ）は、第３実施例によるクリップ輝度値を設定した図５（ａ）に示したような補正曲線を用いて推定照明光成分Ｌを補正し、レチネックス処理を施した結果得られた画像である。
【００７１】
図１２（ｃ）に示したクリップ輝度値を設定しない画像は、レチネックス効果により、図１２（ａ）に示した原画像Ｉの暗い部分が明るく補正され、人物が明瞭になっているが、明るい部分で過補正が生じ、ビルと空との境界が曖昧になっている。これに対し、図１２（ｄ）に示したクリップ輝度値を設定した画像は、暗い部分は図１２（ｃ）に示した画像と同等に明るく補正されているのに対し、明るい部分の補正は抑制され、階調が維持されており、ビルと空との境界が明確に残っている。
【００７２】
次に、ヒストグラム比率Ｈｐ［０：１５］のピークと谷との検出手順（Ｓ４０３）の一例について、図１３のフローチャートを参照して説明する。本手順では、まず、ヒストグラム比率Ｈｐ［０：１５］の各区分から、ピーク候補となる区分を抽出する（Ｓ５０１）。この処理は、前の区分より大きく、かつ次の区分より大きい区分を抽出することで行なうことができる。最も低輝度側の区分は、次の区分より大きければピーク候補とし、最も高輝度側の区分は、前の区分より大きければピーク候補とする。
【００７３】
ピーク候補を抽出すると、抽出されたピークに基づいて谷候補を抽出する（Ｓ５０２）。この処理は、隣接するピーク候補に挟まれる区分のうち、最も比率値の小さい区分を谷候補とすることで行なうことができる。
【００７４】
次に、ピーク候補からピークの選別を行なう（Ｓ５０３）。ピークの選別は、隣接する谷候補とのヒストグラム比率の差が第３閾値以下のピーク候補を除外して、残ったピーク候補をピークとして設定する処理である。第３閾値は、例えば、２％とすることができる。
【００７５】
最後に、ピークとして設定された区分に基づいて谷を設定する（Ｓ５０４）。この処理は、隣接するピークに挟まれる区分のうち、最も値の小さい区分を谷と設定することで行なうことができる。
【００７６】
以上、ヒストグラム比率のピークと谷とに基づいてクリップ輝度値を設定する第３実施例について説明した。第３実施例は、第１実施例、第２実施例よりも計算コストは上昇するが、その分、個々の画像の輝度分布をより考慮した補正結果を得ることができる。また、上述のように、第１実施例、第２実施例、第３実施例のクリップ輝度値設定は、組み合わせて用いることができる。
【００７７】
なお、上述の実施例では、高輝度部分におけるクリップ輝度値について説明したが、図１４に示すような、極低輝度部分についても最高輝度値にクリップした補正曲線を用いて推定照明光成分Ｌの補正を行なうようにしてもよい。これにより、高輝度部分の階調を維持するのに加え、極低輝度部分の階調も維持されるため、暗部ノイズが強調されたり、黒浮きが発生することを防ぐことができる。この場合、推定照明光Ｌのフルスケールを２５５とすると、例えば、０から２〜４までの値を最高輝度値にクリップすることで、良好な結果を得ることができる。
【符号の説明】
【００７８】
１０…画像処理装置
１１０…画像入力部
１２０…照明光成分推定部
１３０…推定照明光成分補正部
１４０…レチネックス処理部
１５０…ゲイン調整部
１６０…画像出力部
【図１】
0005648849.tif 000003
【図２】
0005648849.tif 000004
【図３】
0005648849.tif 000005
【図４】
0005648849.tif 000006
【図５】
0005648849.tif 000007
【図６】
0005648849.tif 000008
【図７】
0005648849.tif 000009
【図８】
0005648849.tif 000010
【図９】
0005648849.tif 000011
【図１０】
0005648849.tif 000012
【図１１】
0005648849.tif 000013
【図１２】
0005648849.tif 000014
【図１３】
0005648849.tif 000015
【図１４】
0005648849.tif 000016