(57)【要約】【課題】明るさを表す値が他の領域に比べて極端に大きいまたは小さい領域があっても、適切な明るさの分布が得られる画像処理装置を提供する。【解決手段】画像を構成する画素の輝度値の分布を算出する輝度値分布算出部と、画素のうち輝度値に関する所定の条件を満たす画素を抽出する対象画素抽出部と、対象画素抽出部で抽出した画素の輝度値に基づいて輝度値分布を補正する輝度値分布補正部とを備えることを特徴とする画像処理装置である。【選択図】図１
2015166968.tif 000002
【特許請求の範囲】
【請求項１】
画像を構成する画素の輝度値の分布を算出する輝度値分布算出部と、
前記画素のうち輝度値に関する所定の条件を満たす画素を抽出する対象画素抽出部と、
前記対象画素抽出部で抽出した画素の輝度値に基づいて前記輝度値分布を補正する輝度値分布補正部と
を備えることを特徴とする画像処理装置。
【請求項２】
前記対象画素抽出部は、前記画像を構成する画素の輝度値のクォンタイル関数の微分値を算出し、該微分値に基づいて前記所定の条件を満たす輝度値を有する画素を抽出すること
を特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記対象画像抽出部は、前記微分値の平均値から所定の値以内にある微分値を有する画素を、前記所定の条件を満たす画素として抽出すること
を特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記輝度値分布補正部は、
前記輝度値分布のダイナミックレンジを拡大又は縮小する倍率を算出する倍率算出部と、
前記画像を構成する画素各々の画素値を、算出した前記倍率を用いて変換する画素値変換部と
を備えることを特徴とする請求項１から請求項３のいずれか一項に記載の画像処理装置。
【請求項５】
前記輝度値分布補正部は、オフセット値を決定するオフセット設定部をさらに有し、
前記画素値変換部は、前記画像を構成する画素各々の画素値を、算出した前記倍率と、前記オフセット値とを用いて変換する
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
コンピュータに、
画像を構成する画素の輝度値の分布を算出する手順と、
前記画素のうち輝度値に関する所定の条件を満たす画素を抽出する手順と、
抽出した画素の輝度値に基づいて前記輝度値の分布を補正する手順と、
を実行させるための画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理プログラムに関する。
【背景技術】
【０００２】
良好な処理後画像を提供することを目的とする画像処理装置が特許文献１に開示されている。この画像処理装置は、画像の明るさに関する成分の値の画素数に関するヒストグラムから、該画像の明るさの分布を判別し、該判別に基づいて、明るさに関する成分を補正する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−２７４４２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の画像処理装置では、画素値のコントラストを良好にするなどの目的で、明るさに関する成分の分布を補正する場合、該成分の値が主たる領域に比べて極端に大きいまたは小さい領域があると、該小さな領域の影響により、主たる領域の明るさの幅が十分な大きさにならず、適切な明るさの分布が得られないことがあるという問題がある。
【０００５】
本発明は、前記の点に鑑みてなされたものであり、明るさが他の領域に比べて極端に大きいまたは小さい領域があっても、適切な明るさの分布が得られる画像処理装置及び画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一態様は、画像を構成する画素の輝度値の分布を算出する輝度値分布算出部と、前記画素のうち輝度値に関する所定の条件を満たす画素を抽出する対象画素抽出部と、前記対象画素抽出部で抽出した画素の輝度値に基づいて前記輝度値分布を補正する輝度値分布補正部とを備えることを特徴とする画像処理装置である。
【０００７】
また、本発明の一態様は、コンピュータに、画像を構成する画素の輝度値の分布を算出する手順と、前記画素のうち輝度値に関する所定の条件を満たす画素を抽出する手順と、抽出した画素の輝度値に基づいて前記輝度値の分布を補正する手順とを実行させるための画像処理プログラムである。
【発明の効果】
【０００８】
本発明によれば、画像処理装置及び画像処理プログラムは、明るさが他の領域に比べて極端に大きいまたは小さい領域があっても、適切な明るさの分布を得ることが出来る。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態における画像処理装置１０の構成を示す概略ブロック図である。
【図２】同実施形態における対象画素抽出部１３の動作を説明するフローチャートである。
【図３】同実施形態におけるヒストグラム生成部１２が生成するヒストグラムの例を示すグラフである。
【図４】同実施形態における対象画素抽出部１３が生成するクォンタイル関数値の例を示すグラフである。
【図５】同実施形態における対象画素抽出部１３が生成するクォンタイル関数値の微分値の例を示すグラフである。
【図６】同実施形態における原画像Ｉおよび処理結果等の例を示す図である。
【発明を実施するための形態】
【００１０】
本発明の一実施形態について図面を参照して詳細に説明する。図１は、画像処理装置１０の構成を示す概略ブロック図である。画像処理装置１０は、入力された原画像Ｉに対して、明るさの分布を補正し、該補正結果である補正画像Ｉ’を出力する。画像処理装置１０は、輝度値生成部１１と、ヒストグラム生成部１２と、対象画素抽出部１３と、輝度分布補正部１７とを含んで構成される。
【００１１】
輝度値生成部１１には、原画像Ｉ（補正前画像）を構成する画素各々の赤、緑、青各々の画素値が入力される。輝度値生成部１１は、画素各々の輝度値Ｙを、該画素の赤、緑、青の画素値を用いて算出する。本実施形態では、輝度値として、以下の式（１）を用いて算出される輝度値Ｙを用いる。なお、式（１）において、Ｒは赤の画素値であり、Ｇは緑の画素値であり、Ｂは青の画素値である。
Ｙ＝０．２９９×Ｒ＋０．５８７×Ｇ＋０．１１４×Ｂ  ・・・（１）
また、輝度値Ｙを算出する式における、Ｒ、Ｇ、Ｂ各々に乗じる係数を、他の値とするなどして、輝度値として、輝度値Ｙ以外の明るさを表す値を用いるようにしてもよい。
【００１２】
ヒストグラム生成部１２（輝度値分布算出部）は、輝度値生成部１１が生成した輝度値各々の画素数を表すヒストグラム（輝度値の分布）を生成する。対象画素抽出部１３は、ヒストグラム生成部１２が生成したヒストグラムのうち、輝度値に関する所定の条件を満たす画素を抽出する。例えば、対象画素抽出部１３は、ヒストグラムのうち、両端の少なくとも一方を除いた部分を抽出する。より具体的には、対象画素抽出部１３は、ヒストグラム中の主たる分布とは別に、両端のいずれか一方に、相対的に小さな分布があるときに、該小さな分布を除いた部分を抽出する。なお、対象画素抽出部１３による抽出方法の詳細は、後述する。
【００１３】
輝度分布補正部１７（輝度値分布補正部）は、対象画素抽出部１３が抽出した部分を参照して、原画像Ｉの輝度値の分布を補正する。輝度分布補正部１７は、倍率算出部１４、オフセット設定部１５、画素値変換部１６を含んで構成される。倍率算出部１４には、対象画素抽出部１３が抽出したヒストグラムが、対象画素抽出部１３から入力される。倍率算出部１４は、入力されたヒストグラムのダイナミックレンジ（原ダイナミックレンジ）が、所定のダイナミックレンジ（目標ダイナミックレンジ）となるように、画素値を拡大又は縮小するための倍率αを算出する。
【００１４】
ここで、ヒストグラムのダイナミックレンジは、該ヒストグラムに含まれる輝度値の分布の幅であり、ヒストグラム中で、画素数が０でない輝度値の最大値と最小値との差である。例えば、倍率算出部１４は、目標ダイナミックレンジ「ｒ．ｃｏｎｔ．ａｄｊ」を、原ダイナミックレンジ「ｒ．ｃｏｎｔ．ｓｒｃ」で除算した値を、倍率αとする。なお、目標ダイナミックレンジ「ｒ．ｃｏｎｔ．ａｄｊ」は、ユーザが定めた値でもよいし、画素値の定義域の幅と等しい値など、予め設定されている値でもよい。
【００１５】
オフセット設定部１５には、対象画素抽出部１３が抽出したヒストグラムが、対象画素抽出部１３から入力される。オフセット設定部１５は、上述の倍率αが乗算された画素値をオフセットさせるためのオフセット値ＯＦを、入力されたヒストグラムを参照して定める。具体的には、オフセット設定部１５は、入力されたヒストグラムのうち、輝度値の最小値をオフセット値ＯＦとする。
【００１６】
なお、オフセット設定部１５は、オフセット値ＯＦを、入力されたヒストグラムに加えて、倍率算出部１４が算出した倍率αを参照して、定めてもよい。例えば、入力されたヒストグラムの最小値に、倍率αを乗じた値をオフセット値ＯＦとしてもよいし、入力されたヒストグラムの最小値に倍率αを乗じた値と、入力されたヒストグラムの最小値との差をオフセット値ＯＦとしてもよい。また、オフセット設定部１５は、上述したオフセット値を定める複数の方法を用いて、オフセット値の候補を複数定め、定めた複数の候補の中から、オフセット値ＯＦを選択してもよい。
【００１７】
画素値変換部１６には、倍率算出部１４が算出した倍率αと、オフセット設定部１５が定めたオフセット値ＯＦが入力される。画素値変換部１６は、原画像Ｉを構成する画素各々の画素値に、倍率αを乗じた後、オフセット値ＯＦを引いた値を、補正画像Ｉ’の画素値として出力する。
【００１８】
図２は、対象画素抽出部１３の動作を説明するフローチャートである。対象画素抽出部１３は、入力されたヒストグラムを積分することで、各輝度値に対する該輝度値以下の画素数を表す累積密度分布を生成する。さらに、対象画素抽出部１３は、生成した累積密度分布から、その逆関数であるクォンタイル（quantile）関数値ｑ（ｎ）を生成する（Ｓ１）。このクォンタイル関数値ｑ（ｎ）は、原画像Ｉにおける各画素を輝度値順にソートしたときに、輝度値が小さい方から数えたときの順番／全画素数×１００＝ｎに対する、その輝度値である。以降、このｎをインデックスという。なお、ここでは、クォンタイル関数値を、１００／分割数Ｎ％毎に、０％から１００％まで算出する。分割数Ｎは、予め設定された正の数である。
【００１９】
次に、対象画素抽出部１３は、ステップＳ１にて算出したクォンタイル関数値ｑ（ｎ）について、各インデックスｎにおける微分値ｄｑ（ｎ）を算出する（Ｓ２）。本実施形態では、クォンタイル関数値ｑ（ｎ）の微分値として、近似値である１次差分値ｄｑ（ｎ）＝ｑ（ｎ）−ｑ（ｎ−１００／分割数Ｎ）を用いる。なお、クォンタイル関数値ｑ（ｎ）の微分値として、ｑ（ｎ＋１００／分割数Ｎ）−ｑ（ｎ）や、２次差分値、あるいは、より高次の差分値などを用いるようにしてもよい。
【００２０】
次に、対象画素抽出部１３は、上端側から予め決められた画素数のインデックスを、上端側で除外されるインデックスの下限値である上端側閾値ｑ＿ｕとする。同様に、対象画素抽出部１３は、下端側から予め決められた画素数のインデックスを、下端側で除外されるインデックスの上限値である下端側閾値ｑ＿ｌとする。対象画素抽出部１３は、上述の上端側閾値ｑ＿ｕと下端側閾値ｑ＿ｌを下記の式（２）、（３）にて算出する（Ｓ３）。
ｑ＿ｌ＝ｉｇｎ×Ｎ  ・・・（２）
ｑ＿ｕ＝Ｎ×（ｉｇｎ−１）＋１  ・・・（３）
ここで、ｉｇｎ（０＜ｉｇｎ＜０．５）は、対象画素抽出部１３による抽出の際に除外される割合の上限を決めるパラメータであり、予め設定される。２×ｉｇｎの割合が、除外される割合の上限となる。なお、ｑ＿ｌを算出する際のｉｇｎと、ｑ＿ｕを算出する際のｉｇｎとを異なる値としても良い。
【００２１】
次に、対象画素抽出部１３は、ステップＳ２で算出した微分値ｄｑ（ｎ）の平均値ｍｅａｎ（ｄｑ）、標準偏差ｓｄ（ｄｑ）を算出する（Ｓ４）。次に、対象画素抽出部１３は、ステップＳ４にて算出した平均値ｍｅａｎ（ｄｑ）から、所定の重みｗ×標準偏差ｓｄ（ｄｑ）以上、微分値が離れているインデックス群を、除外インデックス候補ｘｏ＿ｄｑとして算出する（Ｓ５）。除外インデックス候補ｘｏ＿ｄｑは、以下の式（４）で定義できる。なお、所定の重みｗは、予め設定されている値である。
ｘｏ＿ｄｑ＝ａｒｇ｛ｄｑ＞ｍｅａｎ（ｄｑ）＋ｗ×ｓｄ（ｄｑ）  ｏｒ  ｄｑ＜ｍｅａｎ（ｄｑ）−ｗ×ｓｄ（ｄｑ）｝  ・・・（４）
【００２２】
次に、対象画素抽出部１３は、除外インデックス候補ｘｏ＿ｄｑの中に、上端側閾値ｑ＿ｕ以上のものがあるか否かを判定する（Ｓ６）。上端側閾値ｑ＿ｕ以上のものがあると判定したときは（Ｓ６−Ｙｅｓ）、対象画素抽出部１３は、該当する除外インデックス候補ｘｏ＿ｄｑの最小値を、上端側の除外インデックスｘｏ＿ｕとして選択し（Ｓ７）、ステップＳ９に進む。このステップＳ７における除外インデックスｘｏ＿ｕの選択は、以下の式（５）で表せる。
ｘｏ＿ｕ＝ａｒｇｍｉｎ｛ｘｏ＿ｄｑ≧ｑ＿ｕ｝  ・・・（５）
また、ステップＳ６にて、上端側閾値ｑ＿ｕ以上のものがないと判定したときは、対象画素抽出部１３は、全画素（１００％）を上端側の除外インデックスとして選択し（Ｓ８）、ステップＳ９に進む。
【００２３】
ステップＳ９では、対象画素抽出部１３は、除外インデックス候補ｘｏ＿ｄｑの中に、下端側閾値ｑ＿ｌ以下のものがあるか否かを判定する。下端側閾値ｑ＿ｌ以下のものがあると判定したときは（Ｓ９−Ｙｅｓ）、対象画素抽出部１３は、該当する除外インデックス候補ｘｏ＿ｄｑの最大値を、下端側の除外インデックスとして選択し（Ｓ１０）、ステップＳ１２に進む。このステップＳ１０における除外インデックスｘｏ＿ｌの選択は、以下の式（６）で表せる。
ｘｏ＿ｌ＝ａｒｇｍａｘ｛ｘｏ＿ｄｑ≦ｑ＿ｌ｝  ・・・（６）
また、ステップＳ９にて、下端側閾値ｑ＿ｌ以下のものがないと判定したときは、対象画素抽出部１３は、０（０％）を下端側の除外インデックスとして選択し（Ｓ１１）、ステップＳ１２に進む。
【００２４】
ステップＳ１２では、対象画素抽出部１３は、ヒストグラム生成部１２から入力されたヒストグラムのうち、下端側の除外インデックスにおける輝度値から、上端側の除外インデックスにおける輝度値までを抽出して、倍率算出部１４と、オフセット設定部１５とに入力し、処理を終了する。なお、各除外インデックスにおける輝度値は、ｎを除外インデックスとしたときの、ステップＳ１にて算出したクォンタイル関数値ｑ（ｎ）である。
【００２５】
図３は、ヒストグラム生成部１２が生成するヒストグラムの例を示すグラフである。図３において、横軸は輝度値、縦軸は画素数である。すなわち、ヒストグラム生成部１２が生成するヒストグラムは、輝度値各々に対して、原画像Ｉ中に含まれる該輝度値の画素数を対応付けたものである。なお、図３に示すヒストグラムにおいて、輝度値の範囲は０から１．０である。図３に示す例では、主たる分布は、輝度値が０から０．１付近にあるが、該主たる分布から上端側に離れ、輝度値０．６を越えた辺りに、小さな分布がある。すなわち、このヒストグラムは、画像のほぼ全体は、輝度値０から０．１程度で非常に暗いということ、そして、画像の一部、小さな領域だけが、輝度値０．６以上という、これらの輝度値からは大きく離れて明るいということを表している。
【００２６】
図４は、対象画素抽出部１３が生成するクォンタイル関数値の例を示すグラフである。図４において、横軸は画素数／全画素数［％］、縦軸は輝度値である。図４に示すグラフでは、画素数／全画素数［％］が、１００％の直前になるまで、輝度値は０．１付近までしか上がらず、１００％の点のみが、輝度値０．６を越えたところにある。すなわち、図３のヒストグラムの場合と同様に、このグラフは、画像のほぼ全体は、輝度値０から０．１程度で非常に暗いということ、そして、画像の一部、小さな領域だけが、輝度値０．６以上になっているということを表している。
【００２７】
図５は、対象画素抽出部１３が生成するクォンタイル関数値の微分値の例を示すグラフである。図５のグラフは、図４のグラフのクォンタイル関数値の１次差分値をプロットしたグラムである。図５の縦軸は、輝度値の１次差分値、横軸は、画素数／全画素数［％］である。図５に示すグラフでは、画素数／全画素数［％］が、０％から１００％の直前になるまでは、１次差分値は０．１を遥かに下回る非常に小さな値であり、１００％の点のみが、１次差分値が０．５を越えたところにある。すなわち、クォンタイル関数値の微分値が大きいということは、該インデックスに対応する輝度値付近の画素数が少ないということを意味している。したがって、クォンタイル関数値の微分値を参照することで、画素数の少ない輝度値を抽出することができる。
【００２８】
図６は、原画像Ｉおよび処理結果等の例を示す図である。図６において、画像Ｉ１は、原画像Ｉの例である。画像Ｉ１は、画像全体の輝度が小さく、画像の内容を把握することができないが、白い丸で囲った領域Ｂ１内に、全体に比べて輝度が大きい小さな領域がある。ヒストグラム生成部１２が生成したヒストグラムを輝度分布補正部１７に直接入力する画像処理装置が、このような画像Ｉ１を処理した場合の処理結果が、画像Ｉ１”である。画像Ｉ”は、多少の改善は見られるものの、画像全体が暗すぎる。一方、画像Ｉ１を、画像処理装置１０が処理した場合の処理結果は、画像Ｉ１’である。画像Ｉ１’は、画像Ｉ１”に比較して、より適切な輝度値の分布が得られているため、画像の大部分の様子を把握することができる。
【００２９】
なお、本実施形態では、原画像Ｉが、該原画像Ｉを構成する画素各々の赤、緑、青の画素値により表される場合を説明したが、輝度値と、赤の色差値、青の色差値で表されるＹＵＶ形式など、他の形式により表される場合でも、本実施形態と同様にして輝度値の分布を補正することができる。
【００３０】
また、本実施形態では、輝度分布補正部１７は、画素値に倍率αを乗じた後にオフセット値を引いているが、輝度値の分布の幅を表す値に基づき、輝度値の分布を補正するものであれば、どのようなものでもよい。例えば、画素値に倍率αを乗じるだけで、オフセット値を引かないもの、倍率αを乗じる変わりに、γ補正や、予め設定されている変換テーブルを用いるなど、画素値を非線形に変換するものであってもよい。
【００３１】
このように、本実施形態における画像処理装置は、原画像Ｉを構成する画素の輝度値の分布を算出するヒストグラム生成部１２と、該画素のうち、輝度値に関する所定の条件を満たす画素を抽出する対象画素抽出部１３と、該抽出した部分の画素値に基づいて、原画像Ｉの輝度値の分布を補正する輝度分布補正部１７とを備える。
【００３２】
輝度値が主たる領域に比べて極端に大きいまたは小さい領域があると、ヒストグラム中の主たる分布とは別に、両端のいずれか一方に、小さな分布ができるが、上述の構成により、該小さな分布を除いたヒストグラムに基づいて、輝度値の分布を補正することができるので、上述のような極端に大きいまたは小さい領域があっても、該領域の影響を受けずに、適切な明るさの分布を得ることができる。
【００３３】
さらに、本実施形態における画像処理装置において、対象画素抽出部１３は、原画像Ｉを構成する画素の輝度値のクォンタイル関数の微分値を算出し、該微分値に基づいて所定の条件を満たす輝度値を有する画素を抽出する。
【００３４】
輝度値が主たる領域に比べて極端に大きいまたは小さい領域と、主たる領域との間では、輝度値のクォンタイル関数の微分値が大きな値となるので、対象画素抽出部１３は、輝度値が主たる領域に比べて極端に大きいまたは小さい領域を検出し、該領域のみを除くことができる。このため、該領域の大きさや有無にかかわらず、画像処理装置１０は、適切な明るさの分布を得ることができる。
【００３５】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【００３６】
なお、上記に説明した画像処理装置を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、実行処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。
【００３７】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバーやクライアントとなるコンピュータシステム内部の揮発性メモリーのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【符号の説明】
【００３８】
１０…画像処理装置  １１…輝度値生成部  １２…ヒストグラム生成部  １３…対象画素抽出部  １４…倍率算出部  １５…オフセット設定部  １６…画素値変換部  １７…輝度分布補正部
【図１】
2015166968.tif 000003
【図２】
2015166968.tif 000004
【図３】
2015166968.tif 000005
【図４】
2015166968.tif 000006
【図５】
2015166968.tif 000007
【図６】
2015166968.tif 000008