(57)【特許請求の範囲】
【請求項１】
入力画像の特徴に応じて画像補正するための補正カーブが通過し、当該補正カーブの形状を指定する制御点を算出する画像処理装置であって、
前記入力画像の輝度ヒストグラムを階調ごとに暗部、中間部および明部の複数値域に分割して、暗部と明部とをさらに複数値域に分割する分割手段と、
前記分割手段により分割された各値域の画素数と入力画像の画素数とをそれぞれ算出して、入力画像の画素数に対する各値域の画素数の割合を算出する割合算出手段と、
前記各値域の画素数の割合と、前記制御点との関係を示す関係情報を用いて、前記割合算出手段により算出された明部の割合から明部と中間部との間の制御点を算出し、当該明部と中間部との間の制御点および前記割合算出手段により算出された中間部の割合から中間部と暗部の間の制御点を算出し、算出された制御点での入力を出力に補正する補正量が所定の上限値よりも大きい場合、補正量を上限値とし、補正量が所定の下限値よりも小さい場合、補正量を下限値として、明部と中間部の間の制御点、および、中間部と暗部の間の制御点を算出する制御点算出手段と、
を備えたことを特徴とする画像処理装置。 
【請求項２】
入力画像の特徴に応じて画像補正するための補正カーブが通過し、当該補正カーブの形状を指定する制御点を算出する画像処理装置としてのコンピュータに実行させる画像処理プログラムであって、
前記入力画像の輝度ヒストグラムを階調ごとに暗部、中間部および明部の複数値域に分割して、暗部と明部とをさらに複数値域に分割する分割手順と、
前記分割手順により分割された各値域の画素数と入力画像の画素数とをそれぞれ算出して、入力画像の画素数に対する各値域の画素数の割合を算出する割合算出手順と、
前記各値域の画素数の割合と、前記制御点との関係を示す関係情報を用いて、前記割合算出手順により算出された明部の割合から明部と中間部との間の制御点を算出し、当該明部と中間部との間の制御点および前記割合算出手順により算出された中間部の割合から中間部と暗部の間の制御点を算出し、算出された制御点での入力を出力に補正する補正量が所定の上限値よりも大きい場合、補正量を上限値とし、補正量が所定の下限値よりも小さい場合、補正量を下限値として、明部と中間部の間の制御点、および、中間部と暗部の間の制御点を算出する制御点算出手順と、
をコンピュータに実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、入力画像の特徴に応じて画像補正するための補正カーブの形状を指定する制御点を算出する画像処理装置に関する。
【背景技術】
【０００２】
従来より、動画や静止画などの画像を補正する画像補正は、入力される画像の特徴に応じて補正を行なうことで、様々なシーンに対応して綺麗で見やすい画像を出力している。例えば、デジタルカメラなどで撮影された画像において、逆光画像のような暗部の階調が見えにくい画像を補正する場合には、画像の各画素ごとに、暗い部分を明るくする補正を行なう。
【０００３】
また、非特許文献１では、図１７および図１８に示すように、画像補正処理後のヒストグラムが均等分布になるように画像補正を行なう。具体的に説明すると、入力された画像から算出されるヒストグラムを明るさの度合いによって暗部、中間部および明部などの複数ビンに分割し、全体の画素数に対する各ビンの画素数の割合によって階調の拡大または階調の縮小を行なって、画像処理後のヒストグラムが均等分布になるように画像補正を行なう。なお、図１７および図１８は、従来技術に係る画像補正におけるヒストグラム均等化を説明するための図である。
【０００４】
そして、非特許文献１では、ヒストグラムを均等化した後、図１９および図２０に示すように、画像補正に用いる補正カーブを算出して画像補正を行なう。具体的に説明すると、全体の画素数に対する各ビンの画素数の割合に伴って算出された補正カーブを用いて画像補正を行なう。つまり、非特許文献１では、画像全体に対して暗い画素数の割合が大きい場合に、図１９に示すように、暗部の補正量が最も大きくなり、かつ、補正方向も明るくする方向に補正される。一方、非特許文献１では、画像全体に対して明るい画素数の割合が大きい場合に、図２０に示すように、明部の補正量が最も大きくなり、かつ、補正方向も暗くする方向に補正される。なお、図１９および図２０は、従来技術に係るヒストグラム均等化による画像補正処理を説明するための図である。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】R．C．Gonzalez、R．E．Woods、「Digital  Image  Processing」、Ｐ９１〜Ｐ９４
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記した従来の技術では、コストがかかるという課題があった。また、出力された画像の安定性が低いという課題があった。
【０００７】
具体的には、逆光画像のような暗部の階調が見えにくい画像を補正する場合には、画素ごとに補正量を制御する必要があり、処理が多くなるために、コストがかかるという課題があった。また、非特許文献１のように画像補正後のヒストグラムを均等分布にする場合には、補正量および補正方向について制限することなく補正しているために、画像によっては暗部をさらに暗くする補正をして階調が不自然になり、出力された画像の安定性が低いという課題があった。
【０００８】
そこで、この発明は、上記した従来技術の課題を解決するためになされたものであり、コストをかけることなく、安定して高品質に画像補正を行なうことができる補正カーブの形状を指定する制御点を算出する画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するため、本願の開示する画像処理装置は、入力画像の特徴に応じて画像補正するための補正カーブの形状を指定する制御点を算出する画像処理装置であって、前記入力画像の輝度ヒストグラムを階調ごとに複数値域に分割する分割手段と、前記分割手段により分割された各値域の画素数と入力画像の画素数とをそれぞれ算出して、入力画像の画素数に対する各値域の画素数の割合を算出する割合算出手段と、前記割合算出手段により算出された各値域の割合と、制御点との関係を示す関係情報を用いて、前記割合算出手段により算出された各値域の割合から、明部と中間部の間の制御点、および、中間部と暗部の間の制御点を算出し、算出された制御点での入力を出力に補正する補正量が所定の上限値よりも大きい場合、補正量を上限値とし、補正量が所定の下限値よりも小さい場合、補正量を下限値として、明部と中間部の間の制御点、および、中間部と暗部の間の制御点を算出する制御点算出手段と、を備えたことを要件とする。
【発明の効果】
【００１０】
本願の開示する画像処理装置によれば、輝度ヒストグラムから得られる情報のみから補正量が制限された補正カーブの形状を指定する制御点を算出することができる結果、コストをかけることなく、安定して高品質に画像補正を行なうことができる補正カーブの制御点を算出できるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】図１は、実施例１に係る画像処理装置の概要および特徴を示す図である。
【図２】図２は、実施例１に係る画像処理装置の構成を示すブロック図である。
【図３】図３は、実施例１に係る明部と中間部との曲点の縦座標を算出するための式の例を示す図である。
【図４】図４は、実施例１に係る中間部と暗部との曲点の縦座標を算出するための式の例を示す図である。
【図５】図５は、明るさの度数の大小関係を示すＬｏｏｋ−ＵｐＴａｂｌｅの例を示す図である。
【図６】図６は、Ｌｏｏｋ−ＵｐＴａｂｌｅに基づいて制御点を算出する際に用いる式の例を示す図である。
【図７】図７は、実施例１に係る曲点の補正量を算出するための式の例を示す図である。
【図８】図８は、実施例１に係る曲点の補正量を制限する場合について説明するための図である。
【図９】図９は、実施例１に係る補正カーブを算出するための式の例を示す図である。
【図１０】図１０は、実施例１に係る補正カーブの例を示す図である。
【図１１】図１１は、実施例１に係る画像処理装置による処理を示すフローチャートである。
【図１２】図１２は、実施例２に係る変化範囲が制限された曲点を算出する処理について説明するための図である。
【図１３】図１３は、実施例３に係る暗部と明部とをさらに分割した場合の分割ビン度数算出部による処理を説明するための図である。
【図１４】図１４は、実施例３に係る暗部と明部とをさらに分割した場合の制御点算出部による処理を説明するための図である。
【図１５】図１５は、曲点から線形補間により補正量を算出する処理を説明するための図である。
【図１６】図１６は、画像処理プログラムを実行するコンピュータを示す図である。
【図１７】図１７は、従来技術に係る画像補正におけるヒストグラム均等化を説明するための図である。
【図１８】図１８は、従来技術に係る画像補正におけるヒストグラム均等化を説明するための図である。
【図１９】図１９は、従来技術に係るヒストグラム均等化による画像補正処理を説明するための図である。
【図２０】図２０は、従来技術に係るヒストグラム均等化による画像補正処理を説明するための図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照して、この発明に係る画像処理装置の実施例を詳細に説明する。なお、以下では、実施例１に係る画像処理装置の概要および特徴、画像処理装置の構成および処理の流れを順に説明し、最後に本実施例による効果を説明する。なお、以下の実施例においては、補正カーブの形状を指定する制御点として、補正カーブの曲点を例に挙げて説明するが、本実施例の制御点の算出対象は補正カーブの曲点に限られるものではない。
【実施例１】
【００１３】
［画像処理装置の概要および特徴］
次に、実施例１に係る画像処理装置の概要および特徴を説明する。図１は、実施例１に係る画像処理装置の概要および特徴を示す図である。
【００１４】
一般的に、逆光画像などの画像処理は、画像の暗い部分をいかに出力するかによって、画像の画質が左右される。そして、この画像処理装置は、当該画像処理装置に接続される他の装置などから入力される動画や静止画などの画像の特徴に応じて、画像補正するための補正カーブの形状を指定する制御点を算出する。
【００１５】
このような構成において、画像処理装置は、入力画像の特徴に応じて画像補正するための補正カーブの形状を指定する制御点を算出することを概要とし、特に、画像を補正するのに際して、コストをかけることなく、安定して高品質に画像補正を行なうことができる補正カーブの制御点を算出することが可能である点を主たる特徴とする。
【００１６】
この主たる特徴について説明すると、画像処理装置は、入力画像を受け付けると、当該画像の輝度ヒストグラムを算出し（図１の（１）参照）、画像の輝度ヒストグラムを階調ごとに複数値域に分割する（図１の（２）参照）。
【００１７】
具体的に例を挙げると、画像処理装置は、入力される動画や静止画などの画像を受け付けると、当該画像を読み込んで画素ごとの輝度成分を算出して、算出された輝度成分の出現度数から画像の輝度ヒストグラムを算出する。続いて、画像処理装置は、算出された輝度ヒストグラムを暗部（例えば、０〜８４階調）、中間部（例えば、８５〜１６８階調）、明部（例えば、１６９〜２５５階調）の複数値域に分割する。
【００１８】
そして、画像処理装置は、分割された各値域の画素数と入力画像の画素数とをそれぞれ算出して、入力画像の画素数に対する各値域の画素数の割合または大小関係を算出し、算出された各値域の割合または大小関係に基づいて画像補正するための補正カーブの形状を指定する制御点を算出する（図１の（３）参照）。
【００１９】
上記した例で具体的に説明すると、画像処理装置は、分割された暗部、中間部、明部などの各値域の画素数をカウントする。そして、画像処理装置は、カウントされた各値域の画素数の全体画素数に対する割合または大小関係を算出する。続いて、画像処理装置は、算出された暗部、中間部、明部などの各値域の割合または大小関係を用いて、画像補正に用いる補正カーブの変化点となる曲点（制御点）を算出する。その後、画像処理装置は、算出された曲点をさらに所定の範囲内の補正量に制限した最終的な曲点を算出する。
【００２０】
続いて、画像処理装置は、算出された制御点に基づいて補正カーブを算出し、算出された補正カーブに基づいて入力画像を補正する（図１の（４）参照）。上記した例で具体的に説明すると、画像処理装置は、算出された補正量が制限された曲点に基づいて補正カーブを算出する。そして、画像処理装置は、算出された補正カーブに基づいて入力値から出力値を求めることで入力画像を補正して、補正された画像を出力する。
【００２１】
このように、実施例１に係る画像処理装置は、入力される動画や静止画などの画像の輝度ヒストグラム情報のみから、複数値域に分割した各値域の画素数の割合を用いて、階調を補正する補正カーブの曲点を算出することができる結果、コストをかけることなく、安定して高品質に画像補正を行なうことができる補正カーブの制御点を算出することが可能である。
【００２２】
［画像処理装置の構成］
次に、図２を用いて、実施例１に係る画像処理装置の構成を説明する。図２は、実施例１に係る画像処理装置の構成を示すブロック図である。図２に示すように、画像処理装置１０は、Ｉ／Ｆ部１１と、記憶部２０と、制御部３０とから構成され、入力される入力画像に応じて画像補正に用いられる補正カーブの制御点を算出する。
【００２３】
Ｉ／Ｆ部１１は、画像処理装置１０に接続される他の装置から入力された動画や静止画などの入力画像を受け付けて後述する輝度ヒストグラム算出部３１に入力する。なお、動画や静止画は、接続される他の装置だけでなく、ＣＤ−Ｒなどの記憶媒体から入力されることとしてもよい。
【００２４】
記憶部２０は、制御部３０による各種処理に必要なデータや、制御部３０による各種処理結果を記憶するとともに、特に本発明に密接に関連するものとしては、入力画像記憶部２１と、補正カーブ記憶部２２とを備える。
【００２５】
入力画像記憶部２１は、画像処理装置１０に入力される動画や静止画などの入力画像を記憶する。また、補正カーブ記憶部２２は、後述する補正カーブ算出部３４により算出される画像補正に用いられる補正カーブ（図１０参照）を記憶する。なお、図１０は、実施例１に係る補正カーブの例を示す図である。
【００２６】
制御部３０は、制御プログラム、各種の処理手順などを想定したプログラムおよび所要データを格納するための内部メモリを有するとともに、特に本発明に密接に関連するものとしては、輝度ヒストグラム算出部３１と、分割ビン度数算出部３２と、制御点算出部３３と、補正カーブ算出部３４と、画像補正部３５とを備え、これらによって種々の処理を実行する。
【００２７】
輝度ヒストグラム算出部３１は、入力画像を受け付けて、当該画像の輝度ヒストグラムを算出する。具体的に例を挙げると、輝度ヒストグラム算出部３１は、入力画像を受け付けると、当該画像または縮小画像を入力画像記憶部２１に格納する。そして、輝度ヒストグラム算出部３１は、入力画像記憶部２１に格納された画像または縮小画像を読み込んでＲＧＢ成分から画素ごとのＹ成分（輝度成分）を「Ｙ＝０．２９９×Ｒ＋０．５８７×Ｇ＋０．１１４×Ｂ」などの変換式から算出する。続いて、輝度ヒストグラム算出部３１は、算出されたＹ成分の度数をカウントして、各画素のＹ値に基づいて画像または縮小画像の輝度ヒストグラムを算出する。
【００２８】
分割ビン度数算出部３２は、入力画像の輝度ヒストグラムを階調ごとに複数値域に分割して、分割された各値域の画素数と入力画像の画素数とをそれぞれ算出して、入力画像の画素数に対する各値域の画素数の割合または大小関係を算出する。上記した例で具体的に例を挙げると、分割ビン度数算出部３２は、輝度ヒストグラム算出部３１により算出された輝度ヒストグラムを「０〜８４階調：暗部」、「８５〜１６８階調：中間部」、「１６９〜２５５階調：明部」などの階調ごとに複数値域に分割する。そして、分割ビン度数算出部３２は、分割された暗部、中間部および明部の各値域の画素数（例えば、暗部「５」、中間部「１」、明部「４」など）をカウントして、全体の画素数「１０」に対する割合（例えば、暗部「５／１０」、中間部「１／１０」、明部「４／１０」など）を算出する。
【００２９】
制御点算出部３３は、算出された各値域の割合または大小関係に基づいて画像補正するための補正カーブの形状を指定する制御点を算出する。上記した例で具体的に例を挙げると、制御点算出部３３は、分割ビン度数算出部３２により算出された暗部、中間部および明部の各値域の割合を用いて、図３に示すような式に基づいて明部と中間部との間における曲点の縦座標「２５５×（１−４／（２×１０））＝２０４」を算出する。ここで、明部と中間部との間における曲点の横座標は、「Ｔｈ２＝１６８」、重みＷ１は、「Ｗ１＝２」とする。そして、制御点算出部３３は、算出された明部と中間部との間における曲点（１６８，２０４）を用いて、図４に示すような式に基づいて中間部と暗部との間における曲点の縦座標「２０４−２５５×（１／（０．５×１０））＝１５３」を算出する。ここで、中間部と暗部との間における曲点の横座標は、「Ｔｈ１＝８４」、重みＷ２は、「Ｗ２＝０．５」とする。
【００３０】
つまり、制御点算出部３３は、画像において明るい部分となる明部と中間部との曲点（１６８，２０４）を算出して、算出された明るい部分の曲点を用いて暗い部分となる中間部と暗部との曲点（８４，１５３）を算出するので、逆光画像などの全体的に暗い画像の補正において、明るい部分の補正値を反映した暗い部分の補正を行なうことが可能である。なお、図３は、実施例１に係る明部と中間部との曲点の縦座標を算出するための式の例を示す図であり、図４は、実施例１に係る中間部と暗部との曲点の縦座標を算出するための式の例を示す図である。
【００３１】
また、補正カーブの形状を指定する制御点の算出は、明部、中間部および暗部の大小関係を利用した制御点（曲点）算出の一つとして、上記したように、各値域の割合から算出する場合を説明したが、予め保存された明るさの度数に基づいて制御点を算出することもできる。具体的に説明すると、制御点算出部３３は、図５に示すＬＵＴ（Look−Up  Table）に基づいて制御点を算出する。なお、図５は、明るさの度数の大小関係を示すＬｏｏｋ−ＵｐＴａｂｌｅの例を示す図である。
【００３２】
このＬＵＴを用いた制御点の算出は、例えば、図６の（Ａ）と（Ｂ）とに示す式を用いて算出することとなる。また、ＬＵＴを用いた制御点の算出式においては、図３および図４で示した曲点の算出式の例と同様に、明部と中間部との制御点を算出した後に、当該明部と中間部との制御点算出結果を用いつつ、中間部と暗部との制御点を算出する。なお、図６は、Ｌｏｏｋ−ＵｐＴａｂｌｅに基づいて制御点を算出する際に用いる式の例を示す図である。
【００３３】
続いて、制御点算出部３３は、算出された曲点をさらに所定の範囲内に制限する。上記した例で具体的に例を挙げると、制御点算出部３３は、算出された曲点（１６８，２０４）および（８４，１５３）を、図７に示すような式に基づいて補正量「２０４−１６８＝３６」および「１５３−８４＝６９」を算出する。また、制御点算出部３３は、曲点の補正量を図８に示すような制限に基づいて算出する。
【００３４】
つまり、制御点算出部３３は、算出された曲点について変化範囲「３６」または「６９」がＴｈ５以下である場合に補正量をＴｈ５、変化範囲「３６」または「６９」がＴｈ５とＴｈ６との間である場合に補正量を「３６」または「６９」、変化範囲「３６」または「６９」がＴｈ６以上である場合に補正量をＴｈ６として、最終的な曲点（８４，８４＋Ｔｈ５）、（８４，１５３）または（８４，８４＋Ｔｈ６）と、（１６８，１６８＋Ｔｈ５）、（１６８，２０４）または（１６８，１６８＋Ｔｈ６）とを算出する。この結果、制御点算出部３３は、曲点の変化範囲が最小でも「Ｔｈ５」、最大でも「Ｔｈ６」に調整された明るい方向に画像補正するための曲点を算出するので、逆光画像のような暗い画像を補正する場合でも、暗部を必要以上に暗くする補正、または、明部を必要以上に明るくする補正を行なうことなく安定して高品質に画像補正を行なうための補正カーブの制御点を算出することが可能である。なお、図７は、実施例１に係る曲点の補正量を算出するための式の例を示す図であり、図８は、実施例１に係る曲点の補正量を制限する場合について説明するための図である。
【００３５】
その後、補正カーブ算出部３４は、制御点算出部３３により算出された曲点に基づいて補正カーブを算出する。上記した例で具体的に例を挙げると、補正カーブ算出部３４は、図１０に示すように、制御点算出部３３により補正量が制限された明部と中間部とから算出された曲点１（ｘ１，ｙ１）と、中間部と暗部とから算出された曲点２（ｘ２，ｙ２）とに基づいて、図９の（Ａ）に示すような式に基づいて直線で示される補正カーブ（Ａ）を算出する。
【００３６】
また、補正カーブ算出部３４は、図１０に示すように、制御点算出部３３により補正量が制限された明部と中間部とから算出された曲点１（ｘ１，ｙ１）と、中間部と暗部とから算出された曲点２（ｘ２，ｙ２）とに基づいて、図９の（Ｂ）に示すような式に基づいて曲線で示される補正カーブ（Ｂ）を算出することとしてもよい。なお、図９は、実施例１に係る補正カーブを算出するための式の例を示す図であり、図１０は、実施例１に係る補正カーブの例を示す図である。
【００３７】
そして、画像補正部３５は、補正カーブ算出部３４により算出された補正カーブに基づいて入力画像を補正する。上記した例で具体的に例を挙げると、画像補正部３５は、補正カーブ算出部３４により算出された補正カーブ（Ａ）や補正カーブ（Ｂ）などに基づいて、受け付けた画像または縮小画像の補正を行なう。なお、画像補正においては、画像のＹ成分にカーブをかけてからＲＧＢ成分に逆変換してもよいし、直接ＲＧＢ成分にカーブをかけてもよい。
【００３８】
［実施例１に係る画像処理装置による処理］
次に、図１１を用いて、実施例１に係る画像処理装置１０による処理を説明する。図１１は、実施例１に係る画像処理装置１０による処理を示すフローチャートである。
【００３９】
図１１に示すように、画像処理装置１０は、当該画像処理装置１０に画像が入力されると（ステップＳ１０１肯定）、当該画像または縮小画像を読み込んでＲＧＢ成分から画素ごとのＹ成分を算出し、算出されたＹ成分の度数をカウントして、各画素のＹ値に基づいて画像または縮小画像の輝度ヒストグラムを算出する（ステップＳ１０２）。
【００４０】
そして、画像処理装置１０は、算出された輝度ヒストグラムを暗部、中間部および明部などの階調ごとに複数値域に分割して（ステップＳ１０３）、分割された暗部、中間部および明部の各値域の画素数をカウントして、各値域の全体の画素数に対する割合または大小関係を算出する（ステップＳ１０４）。
【００４１】
続いて、画像処理装置１０は、算出された暗部、中間部および明部の各値域の割合または大小関係を用いて、明部および中間部と中間部および暗部との曲点を、明るい部分の補正値を反映しつつそれぞれ算出するとともに、算出された曲点の変化範囲を制限した曲点を算出する（ステップＳ１０５）。
【００４２】
その後、画像処理装置１０は、算出された曲点に基づいて補正カーブを算出して（ステップＳ１０６）、算出された補正カーブに基づいて入力された画像または縮小画像の補正を行なう（ステップＳ１０７）。なお、具体的には、制御点を直線で結ぶ「折れ線」によって補正カーブを生成することとするが、「スプライン」などの曲線を用いてもかまわない。
【００４３】
［実施例１による効果］
このように、画像処理装置１０は、入力される入力画像の輝度ヒストグラムの情報から、画像を補正するために用いる変化範囲が制限された補正カーブの形状を指定する制御点を算出することとしたので、コストをかけることなく、安定して高品質に画像補正を行なうことができる補正カーブの制御点を算出することが可能である。
【００４４】
例えば、画像処理装置１０は、入力画像の輝度ヒストグラムを算出して、当該輝度ヒストグラムを階調ごとに暗部、中間部および明部などの複数値域に分割する。そして、画像処理装置１０は、分割された各値域の全体画素数に対する割合または大小関係を算出する。続いて、画像処理装置１０は、算出された各値域の割合または大小関係を用いて明部および中間部と、中間部および暗部との制御点（曲点）を、補正量を制限しつつ算出する。その後、画像処理装置１０は、算出された制御点を用いて補正カーブを算出し、算出された補正カーブに基づいて入力された入力画像の補正を行なう。つまり、画像処理装置１０は、輝度ヒストグラムから得られる情報のみから補正量が制限された制御点を算出することができる結果、コストをかけることなく、安定して高品質に画像補正を行なうことができる補正カーブの制御点を算出することが可能である。
【実施例２】
【００４５】
ところで、実施例１では、「Ｔｈ５」や「Ｔｈ６」などの所定の固定値を用いて変化範囲が制限された曲点を算出する場合を説明したが、本発明はこれに限定されるものではなく、所定の記憶部に予め曲点補正量カーブを記憶して、当該曲点補正量カーブを用いて曲点を算出することもできる。
【００４６】
［実施例２に係る変化範囲が制限された曲点を算出する処理］
そこで、以下の実施例２では、図１２を用いて、実施例２に係る画像処理装置１０による変化範囲が制限された曲点を算出する処理について説明する。図１２は、実施例２に係る変化範囲が制限された曲点を算出する処理について説明するための図である。なお、変化範囲が制限された曲点を算出する処理以外の処理は、上記した実施例１と同様の処理となるので説明を省略して、ここでは、変化範囲が制限された曲点を算出する処理について説明する。
【００４７】
実施例１と異なる点は、補正量に対応付けて、変化範囲が制限された補正量を示す曲点補正量カーブを記憶している点である。具体的には、図１２に示すように、所定の固定値が定められていない曲点補正カーブを用いて、図７に示す式に基づいて算出された補正量の変化範囲を制限しつつ最終的な曲点を算出する。
【００４８】
［実施例２による効果］
このように、画像処理装置１０は、曲点の補正量に対応付けて変化範囲が制限された補正量を示す曲点補正量カーブを保持し、算出された補正量に基づいて最終的な曲点を算出することとしたので、より高精度に曲点の補正量を算出して、高品質に画像補正を行なうための補正カーブの曲点を算出することが可能である。
【実施例３】
【００４９】
ところで、実施例１では、輝度ヒストグラムを階調ごとに暗部、中間部および明部に分割して曲点を算出する場合を説明したが、本発明はこれに限定されるものではなく、暗部と明部とをさらに細かく分割して曲点を算出することもできる。
【００５０】
［実施例３に係る分割ビン度数算出部による処理］
そこで、以下の実施例３では、図１３と図１４とを用いて、実施例３に係る画像処理装置１０による処理について説明する。図１３は、実施例３に係る暗部と明部とをさらに分割した場合の分割ビン度数算出部３２による処理を説明するための図であり、図１４は、実施例３に係る暗部と明部とをさらに分割した場合の制御点算出部３３による処理を説明するための図である。
【００５１】
また、図１３において用いる変数「ｉ」は、０〜２５５の階調を示しており、「Ｈｉｓｔ（ｉ）」は、処理される輝度ヒストグラムの各画素の階調値を示している。また、図１３において用いる所定の値「Ｔｈ１〜Ｔｈ４」は、例えば、「Ｔｈ１＝８４」、「Ｔｈ２＝１６８」、「Ｔｈ３＝４２」および「Ｔｈ４＝２１２」などの値である。なお、実施例３に係る画像処理装置１０の構成や一部の機能については、実施例１と同様のものとなるのでその説明を省略して、ここでは、実施例１とは異なる分割ビン度数算出部３２と制御点算出部３３とによる処理について説明する。
【００５２】
図１３に示すように、分割ビン度数算出部３２は、輝度ヒストグラム算出部３１により入力画像の輝度ヒストグラムが算出されると（ステップＳ２０１肯定）、変数ｉを「ｉ＝０」にして（ステップＳ２０２）、輝度ヒストグラムの画素の階調値「Ｈｉｓｔ（ｉ）」と所定値「Ｔｈ１」とを比較する（ステップＳ２０３）。
【００５３】
そして、分割ビン度数算出部３２は、輝度ヒストグラムの画素の階調値「Ｈｉｓｔ（ｉ）＝３０」が所定値「Ｔｈ１＝８４」よりも小さい場合に（ステップＳ２０３肯定）、当該画素を暗部度数としてカウントする（ステップＳ２０４）。
【００５４】
続いて、分割ビン度数算出部３２は、輝度ヒストグラムの画素の階調値「Ｈｉｓｔ（ｉ）＝３０」が所定値「Ｔｈ３＝４２」よりも小さい場合に（ステップＳ２０５肯定）、当該画素を暗部度数Ａとしてカウントして（ステップＳ２０６）、輝度ヒストグラムの画素の階調値「Ｈｉｓｔ（ｉ）＝５０」が所定値「Ｔｈ３＝４２」以上である場合に（ステップＳ２０５否定）、当該画素を暗部度数Ｂとしてカウントする（ステップＳ２０７）。
【００５５】
その後、分割ビン度数算出部３２は、変数ｉを「ｉ＝ｉ＋１」として（ステップＳ２０８）、当該変数ｉが「２５５」以上である場合に処理を終了する（ステップＳ２０９否定）。なお、分割ビン度数算出部３２は、変数ｉが「２５５」より小さい場合には（ステップＳ２０９肯定）、ステップＳ２０３の処理を行なう。
【００５６】
また、分割ビン度数算出部３２は、ステップＳ２０３において、輝度ヒストグラムの画素の階調値「Ｈｉｓｔ（ｉ）＝９０」が所定値「Ｔｈ１＝８４」以上である場合に（ステップＳ２０３否定）、輝度ヒストグラムの画素の階調値「Ｈｉｓｔ（ｉ）」と所定値「Ｔｈ２」とを比較する（ステップＳ２１０）。
【００５７】
そして、分割ビン度数算出部３２は、輝度ヒストグラムの画素の階調値「Ｈｉｓｔ（ｉ）＝１００」が所定値「Ｔｈ２＝１６８」よりも小さい場合に（ステップＳ２１０肯定）、当該画素を中間部度数としてカウントして（ステップＳ２１１）、ステップＳ２０８の処理を行なう。
【００５８】
また、分割ビン度数算出部３２は、ステップＳ２１０において、輝度ヒストグラムの画素の階調値「Ｈｉｓｔ（ｉ）＝２００」が所定値「Ｔｈ２＝１６８」以上である場合に（ステップＳ２１０否定）、当該画素を明部度数としてカウントする（ステップＳ２１２）。
【００５９】
そして、分割ビン度数算出部３２は、輝度ヒストグラムの画素の階調値「Ｈｉｓｔ（ｉ）＝２００」が所定値「Ｔｈ４＝２１２」よりも小さい場合に（ステップＳ２１３肯定）、当該画素を明部度数Ａとしてカウントして（ステップＳ２１４）、輝度ヒストグラムの画素の階調値「Ｈｉｓｔ（ｉ）＝２３０」が所定値「Ｔｈ４＝２１２」以上である場合に（ステップＳ２１３否定）、当該画素を明部度数Ｂとしてカウントして（ステップＳ２１５）、ステップＳ２０８の処理を行なう。
【００６０】
なお、分割ビン度数算出部３２は、全ての画素の階調値をカウントすると、実施例１と同様の処理を行なって、入力画像の画素数に対する各値域の画素数の割合を算出する。つまり、分割ビン度数算出部３２は、入力画像の画素数に対する暗部Ａ、暗部Ｂ、中間部、明部Ａおよび明部Ｂの画素数の割合を算出する。
【００６１】
［実施例３に係る制御点算出部による処理］
次に、実施例３に係る制御点算出部３３による処理について説明する。図１４に示すように、制御点算出部３３は、分割ビン度数算出部３２により各値域の画素数の割合が算出されると（ステップＳ３０１肯定）、実施例１と同様の処理を行なって、明部と中間部との変化範囲が制限された曲点を算出する（ステップＳ３０２、ステップＳ３０３）。
【００６２】
そして、制御点算出部３３は、中間部と暗部との変化範囲が制限された曲点を算出する（ステップＳ３０４、ステップＳ３０５）。続いて、制御点算出部３３は、暗部Ａと暗部Ｂとの変化範囲が制限された曲点を、中間部と暗部との変化範囲が制限された曲点に基づいて算出する（ステップＳ３０６、ステップＳ３０７）。その後、制御点算出部３３は、明部Ａと明部Ｂとの変化範囲が制限された曲点を、明部と中間部との変化範囲が制限された曲点に基づいて算出する（ステップＳ３０８、ステップＳ３０９）。
【００６３】
［実施例３による効果］
このように、画像処理装置１０は、入力される画素の階調値に基づいて、暗部と明部とをさらに細かく分割し、分割された各値域の入力画像の画素数に対する割合を算出して、算出された各値域の割合に基づいて変化範囲が制限された曲点を算出することとしたので、さらに高品質に画像補正を行なうための補正カーブの曲点を算出することが可能である。
【実施例４】
【００６４】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、（１）線形補間により補正量を算出、（２）システム構成、（３）プログラムに区分けして異なる実施例を説明する。
【００６５】
（１）線形補間により補正量を算出
上記実施例１〜３では、算出された曲点に基づいて補正カーブを算出し、算出された補正カーブに基づいて入力画像を補正する場合を説明したが、本発明はこれに限定されるものではなく、算出された各曲点を線形補間することにより補正量を算出することもできる。
【００６６】
例えば、画像処理装置１０は、図１５に示すように、曲点１（ｘ１，ｙ１）と曲点２（ｘ２，ｙ２）とが算出されると、原点（０，０）と曲点１との間に位置する点（ｘ０，ｙ０）や、曲点１と曲点２との間に位置する点（ｘｎ，ｙｎ）などを線形補間により、各入力値「ｘ０」と「ｘｎ」とから各出力値「ｙ０」と「ｙｎ」とを算出して、当該各出力値を入力画像の補正量として画像補正処理を行なう。つまり、画像処理装置１０は、画像補正するための補正カーブの曲点が算出されると、画像補正するための補正カーブを算出することなく画像補正を行なうので、処理負荷を削減した画像補正処理を実施することが可能である。なお、図１５は、曲点から線形補間により補正量を算出する処理を説明するための図である。
【００６７】
（２）システム構成
また、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメタを含む情報（例えば、図２に示した補正カーブ記憶部２２に格納される補正カーブなどの情報）については、特記する場合を除いて任意に変更することができる。
【００６８】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、例えば、輝度ヒストグラム算出部３１を、入力画像を受け付けて入力画像記憶部２１に格納する画像受付部と、輝度ヒストグラムを算出する輝度ヒストグラム算出部として分散するなど、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００６９】
（３）プログラム
なお、本実施例で説明した画像処理装置は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図１６を用いて、上記の実施例に示した画像処理装置と同様の機能を有する画像処理プログラムを実行するコンピュータの一例を説明する。図１６は、画像処理プログラムを実行するコンピュータを示す図である。
【００７０】
図１６に示すように、画像処理装置としてのコンピュータ１１０は、ＨＤＤ１３０、ＣＰＵ１４０、ＲＯＭ１５０およびＲＡＭ１６０をバス１８０などで接続して構成される。
【００７１】
ＲＯＭ１５０には、上記の実施例１に示した画像処理装置１０と同様の機能を発揮する画像処理プログラム、つまり、図１６に示すように分割プログラム１５０ａと、割合／大小関係算出プログラム１５０ｂと、制御点算出プログラム１５０ｃとが、あらかじめ記憶されている。なお、これらのプログラム１５０ａ〜１５０ｃについては、図２に示した画像処理装置１０の各構成要素と同様、適宜統合または、分散してもよい。
【００７２】
そして、ＣＰＵ１４０がこれらのプログラム１５０ａ〜プログラム１５０ｃをＲＯＭ１５０から読み出して実行することで、図１６に示すように、プログラム１５０ａ〜プログラム１５０ｃは、分割プロセス１４０ａと、割合／大小関係算出プロセス１４０ｂと、制御点算出プロセス１４０ｃとして機能するようになる。なお、プロセス１４０ａ〜プロセス１４０ｃは、図２に示した、輝度ヒストグラム算出部３１と、分割ビン度数算出部３２と、制御点算出部３３とにそれぞれ対応する。
【００７３】
そして、ＣＰＵ１４０はＲＡＭ１６０に記録されたデータに基づいて画像処理プログラムを実行する。
【００７４】
なお、上記した各プログラム１５０ａ〜１５０ｃについては、必ずしも最初からＲＯＭ１５０に記憶させておく必要はなく、例えば、コンピュータ１１０に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」、またはコンピュータ１１０の内外に備えられるＨＤＤなどの「固定用の物理媒体」、さらには公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ１１０に接続される「他のコンピュータ（またはサーバ）」などに各プログラムを記憶させておき、コンピュータ１１０がこれから各プログラムを読み出して実行するようにしてもよい。
【符号の説明】
【００７５】
１０  画像処理装置
１１  Ｉ／Ｆ部
２０  記憶部
２１  入力画像記憶部
２２  補正カーブ記憶部
３０  制御部
３１  輝度ヒストグラム算出部
３２  分割ビン度数算出部
３３  制御点算出部
３４  補正カーブ算出部
３５  画像補正部
【図１】
0005447614.tif 000002
【図２】
0005447614.tif 000003
【図３】
0005447614.tif 000004
【図４】
0005447614.tif 000005
【図５】
0005447614.tif 000006
【図６】
0005447614.tif 000007
【図７】
0005447614.tif 000008
【図８】
0005447614.tif 000009
【図９】
0005447614.tif 000010
【図１０】
0005447614.tif 000011
【図１１】
0005447614.tif 000012
【図１２】
0005447614.tif 000013
【図１３】
0005447614.tif 000014
【図１４】
0005447614.tif 000015
【図１５】
0005447614.tif 000016
【図１６】
0005447614.tif 000017
【図１７】
0005447614.tif 000018
【図１８】
0005447614.tif 000019
【図１９】
0005447614.tif 000020
【図２０】
0005447614.tif 000021