(57)【特許請求の範囲】
【請求項１】
画像の明るさの補正を実行する画像処理装置であって、
前記画像を複数の領域に分割する分割部と、
前記領域毎にエッジ量を検出するエッジ検出部と、
前記補正に用いる補正量を前記領域毎のエッジ量に基づいて変化させる補正部と、を備え、
前記エッジ量の差が所定差以上である領域間の距離が所定距離以内である場合、前記分割部は、前記画像の分割数を減らすことを特徴とする画像処理装置。
【請求項２】
前記補正部は、前記画像を構成する画素毎に、前記領域毎のエッジ量と画素の位置とに基づいて変化させた前記補正量を適用することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記補正部は、前記画素毎に適用する補正量を、画素の位置と、当該画素が属する領域のエッジ量と、当該画素が属する領域に隣接する他の領域のエッジ量とに基づいて変化させることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記補正部は、前記画像の所定のしきい値未満の明るさを有する部分を対象として前記補正を実行することを特徴とする請求項１〜請求項３のいずれかに記載の画像処理装置。
【請求項５】
前記分割部は、前記画像のサイズに応じて前記画像の分割数を異ならせることを特徴とする請求項１〜請求項４のいずれかに記載の画像処理装置。
【請求項６】
画像の明るさの補正を実行する画像処理方法であって、
前記画像を複数の領域に分割する分割工程と、
前記領域毎にエッジ量を検出するエッジ検出工程と、
前記補正に用いる補正量を前記領域毎のエッジ量に基づいて変化させる補正工程と、を備え、
前記エッジ量の差が所定差以上である領域間の距離が所定距離以内である場合、前記分割工程において、前記画像の分割数を減らすことを特徴とする画像処理方法。
【請求項７】
画像の明るさの補正をコンピューターに実行させる画像処理プログラムであって、
前記画像を複数の領域に分割する分割機能と、
前記領域毎にエッジ量を検出するエッジ検出機能と、
前記補正に用いる補正量を前記領域毎のエッジ量に基づいて変化させる補正機能と、を実行させ、
前記エッジ量の差が所定差以上である領域間の距離が所定距離以内である場合、前記分割機能は、前記画像の分割数を減らすことを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法および画像処理プログラムに関する。
【背景技術】
【０００２】
デジタルスチルカメラで撮影された画像の明るさの補正を可能にするソフトウェアが知られている。
また、画像からエッジ画素をサンプリングした結果としての輝度分布から特徴量（メジアン）を求め、当該特徴量がしきい値未満である場合に暗い画像と判断して画像全体を明るく補正する構成が知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第３４５８８５５号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
暗い画像が明るくなるように補正することで、一定の画質向上効果が見られる。ただし、画像内で明暗差が比較的大きい箇所を含めて画像全体を明るく補正した場合、当該箇所のメリハリ（コントラスト感）が損なわれることがある。
【０００５】
本発明は上述の課題に鑑みてなされたものであり、適切な明るさの補正を実行して画質を向上させる画像処理装置、画像処理方法および画像処理プログラムを提供する。
【課題を解決するための手段】
【０００６】
本発明の態様の１つは、画像の明るさの補正を実行する画像処理装置であって、前記画像を複数の領域に分割する分割部と、前記領域毎にエッジ量を検出するエッジ検出部と、前記補正に用いる補正量を前記領域毎のエッジ量に基づいて変化させる補正部と、を備える。
【０００７】
当該構成によれば、画像は、領域毎のエッジ量に基づいて変化した補正量により明るさが補正される。これにより、明暗差が比較的大きい箇所、つまりエッジ量が比較的多い箇所の明るさが過剰に補正されることを、回避できる。
【０００８】
本発明の態様の１つは、前記補正部は、前記画像を構成する画素毎に、前記領域毎のエッジ量と画素の位置とに基づいて変化させた前記補正量を適用するとしてもよい。
当該構成によれば、画像の画素毎に、位置と領域毎のエッジ量とに応じた最適な補正量にて明るさを補正することができる。
【０００９】
本発明の態様の１つは、前記補正部は、前記画素毎に適用する補正量を、画素の位置と、当該画素が属する領域のエッジ量と、当該画素が属する領域に隣接する他の領域のエッジ量とに基づいて変化させるとしてもよい。
当該構成によれば、画像の画素毎に、位置と、属する領域のエッジ量と、隣接する他の領域のエッジ量とに応じた最適な補正量にて明るさを補正することができる。
【００１０】
本発明の態様の１つは、前記補正部は、前記画像の所定のしきい値未満の明るさを有する部分を対象として前記補正を実行するとしてもよい。
当該構成によれば、画像内の比較的暗い部分だけを明るく補正することができる。
【００１１】
本発明の態様の１つは、前記分割部は、前記画像のサイズに応じて前記画像の分割数を異ならせるとしてもよい。
当該構成によれば、画像のサイズに応じた最適な数に分割された領域毎のエッジ量を検出することができる。
【００１２】
本発明の態様の１つは、前記エッジ量の差が所定差以上である領域間の距離が所定距離以内である場合、前記分割部は、前記画像の分割数を減らすとしてもよい。  
当該構成によれば、分割数が多すぎるために距離が近い領域間の補正量の変動が大きくなりすぎる、といった状況を回避することができる。
【００１３】
本発明の技術的思想は、画像処理装置という物以外によっても実現される。例えば、これまで説明した画像処理装置の各部が実行する工程を有する画像処理方法の発明や、当該方法をコンピューターに実行させる画像処理プログラムの発明を把握することができる。また、当該プログラムを記憶したコンピューター読み取り可能な記憶媒体も、一つの発明として成り立つ。
【図面の簡単な説明】
【００１４】
【図１】本実施形態にかかる装置構成を例示するブロック図。
【図２】本実施形態にかかる画像処理を示すフローチャート。
【図３】複数の領域に分割された画像を例示する図。
【図４】画素毎の補正係数が決定された状態を例示する図。
【図５】画素の補正係数を決定する方法の一例を説明するための図。
【図６】補正量生成処理を示すフローチャート。
【図７】輝度分布の一例を示す図。
【図８】補正量テーブルに該当する関数の一例を示す図。
【図９】変形例にかかる画像処理を示すフローチャート。
【発明を実施するための形態】
【００１５】
以下に、各図を参照しながら本発明の実施形態を説明する。各図は本実施形態を説明するための一例に過ぎない。また、各図は互いに整合していないこともある。
図１は、システム１をブロック図により示している。システム１は、画像入力装置１０、画像処理装置２０、画像出力装置３０を含んでいる。画像処理装置２０は、画像入力装置１０が生成した画像（画像データ）を画像入力装置１０から入力し、入力した画像を対象にして画像処理を実行することが可能である。また、画像処理装置２０は、当該処理後の画像を画像出力装置３０へ出力することが可能である。画像出力装置３０は、画像処理装置２０から入力した画像を所定の態様（印刷媒体への印刷、画面への表示、等の各態様）で出力することが可能である。
【００１６】
画像入力装置１０には、例えば、デジタルスチルカメラ、スキャナー、ビデオカメラ等が該当する。画像処理装置２０には、例えば、パーソナルコンピュータ（ＰＣ）、スマートフォン、タブレット型端末等が該当する。画像出力装置３０には、例えば、プリンター、プロジェクター、ディスプレイ（例えば、液晶表示装置）等が該当する。プリンターとは、少なくともプリンターとして機能する製品を指す。従って、プリンターの機能に加えてスキャナーやファクシミリ等としても機能する複合機も、プリンターの概念に含まれる。
【００１７】
本発明にかかる、画像の明るさの補正を実行する画像処理装置は、図２，６，９等を用いて説明する処理を実行可能な装置や部品やシステム等であればよい。このような画像処理装置の一例が、画像処理装置２０である。以下では、画像処理装置２０が処理を実行する場合を例に挙げて、本実施形態を説明する。
【００１８】
ただし、画像入力装置１０や画像出力装置３０が本発明の画像処理装置であってもよい。つまり、本実施形態にかかる処理は、画像入力装置１０がそのリソースを利用して実行してもよいし、あるいは画像出力装置３０がそのリソースを利用して実行してもよい。例えば、画像入力装置１０の実体は、画像処理装置２０の構成や機能を含んだ製品であってもよい。あるいは、画像出力装置３０の実体は、画像処理装置２０の構成や機能を含んだ製品であってもよい。
【００１９】
図１の例では、画像処理装置２０は、制御部２１、記憶部２２、操作入力部２３、通信インターフェイス（Ｉ／Ｆ）２４等を含んで構成されている。制御部２１は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等を有するＩＣや、その他の記憶媒体等により構成される。制御部２１では、ＣＰＵが、ＲＯＭや記憶部２２等に保存されたプログラムに従った演算処理を、ＲＡＭ等をワークエリアとして用いて実行する。例えば、記憶部２２には、アプリケーションソフトウェア２９（以下、ＡＰＬ２９）が記憶されており、制御部２１は、ＡＰＬ２９に従うことで画像処理を実行する。制御部２１は、このような画像処理を実行する際に、分割部２５、エッジ検出部２６、係数決定部２７、補正部２８等として機能する。ＡＰＬ２９は、画像処理プログラムの一例である。
【００２０】
操作入力部２３は、ユーザーによる操作を受け付けるための手段（ボタン、キーボード、マウス等）である。操作入力部２３の少なくとも一部は、ディスプレイに表示されたタッチパネルにより実現されるとしてもよい。ここで言うディスプレイとは、画像出力装置３０が有するディスプレイや、画像出力装置３０とは別装置である場合の画像処理装置２０が有するあるいは接続するディスプレイ等を指す。
【００２１】
通信Ｉ／Ｆ２４は、画像処理装置２０を他の装置（画像入力装置１０や、画像出力装置３０や、これら以外の装置）と有線あるいは無線にて接続するためのインターフェイスの総称である。画像処理装置２０は、通信Ｉ／Ｆ２４を介して他の装置と、例えば、ＵＳＢケーブル、有線ネットワーク、無線ＬＡＮ、電子メール通信等の様々な手段や通信規格により接続可能である。
【００２２】
図２は、制御部２１がＡＰＬ２９に従って実行する画像処理をフローチャートにより示している。図２の少なくとも一部は、本発明にかかる画像処理方法を示している。
【００２３】
ステップＳ１００では、分割部２５は、処理対象の画像を複数の領域に分割する。処理対象の画像とは、ユーザーによる任意の操作に応じて制御部２１が画像入力装置１０や記憶部２２等の入力元から入力した画像を指す。当該画像は、例えば、複数の要素色毎の階調値を有する複数の画素で表現された画像データである。具体的には、画像は、ＲＧＢ（レッド、グリーン、ブルー）毎の階調値を有する画素で表現されたＲＧＢデータである。
【００２４】
ステップＳ１１０では、エッジ検出部２６は、ステップＳ１００で分割された領域毎にエッジ量を検出する。エッジは、例えば、所定のフィルターを領域内の画像に適用することで検出することができる。また、エッジ検出部２６は、例えば、前記文献１にも記載されているように、各画素について、隣接する画素との差分（階調値等の差分）により表されるエッジ度を求め、当該エッジ度が所定のしきい値よりも大きい画素をエッジ画素として検出する。そして、エッジ検出部２６は、領域毎のエッジ画素の数や比率を、それぞれの領域のエッジ量とする。
【００２５】
ステップＳ１２０，Ｓ１３０では、係数決定部２７は、領域毎のエッジ量に応じて、領域毎の補正係数を決定する。まず、係数決定部２７は、前記複数の領域のうちステップＳ１１０で検出されたエッジ量が最も少ない領域に対して、補正係数を１．０と決定する（ステップＳ１２０）。エッジ量が最も少ない領域を、最少エッジ領域と呼ぶ。補正係数とは、画像の明るさの補正（明るさ補正）に用いる補正量を変化させる（調整する）ための係数であり、ここでは０以上１．０以下の値とする。明るさ補正については、その呼び名を、明度補正、あるいは輝度補正等としてもよい。明るさ補正については、後に説明する。
【００２６】
また、係数決定部２７は、最少エッジ領域以外の各領域の補正係数を、最少エッジ領域のエッジ量と各領域のエッジ量との比率に応じて決定する（ステップＳ１３０）。
図３，４は、図２のフローチャートの各過程を模式的に説明するための図である。
図３は、ステップＳ１００により４つの領域Ａ１，Ａ２，Ａ３，Ａ４に分割された、処理対象の画像ＩＭを例示している。ただし画像の分割数（分割後の領域の数）は４に限定されない。画像は、各領域のサイズ（縦および横方向の画素数）が同一かほぼ同一となるように分割される。
【００２７】
さらに図３は、ステップＳ１１０により領域Ａ１，Ａ２，Ａ３，Ａ４毎に検出されたエッジ量ＥＱと、ステップＳ１２０，Ｓ１３０により領域Ａ１，Ａ２，Ａ３，Ａ４毎に決定された補正係数ＣＦとを例示している。図３では、領域毎のエッジ量ＥＱを、領域内の画素数に対するエッジ画素数の比率（０〜１００％）により示している。
【００２８】
図３の例では、左下の領域Ａ３のエッジ量ＥＱ（１０％）が最少であるため、領域Ａ１，Ａ２，Ａ３，Ａ４のうち領域Ａ３が最少エッジ領域に該当する。よって、領域Ａ３の補正係数ＣＦが１．０である。
また、領域Ａ１のエッジ量（３０％）は領域Ａ３のエッジ量（１０％）の３倍である。そこで、当該３倍の逆数である１／３倍を領域Ａ３の補正係数ＣＦ（１．０）に掛けた値、０．３３が領域Ａ１の補正係数ＣＦとされている。
同様に、領域Ａ２のエッジ量（６０％）は領域Ａ３のエッジ量（１０％）の６倍である。そこで、当該６倍の逆数である１／６倍を領域Ａ３の補正係数ＣＦ（１．０）に掛けた値、０．１７が領域Ａ２の補正係数ＣＦとされている。
同様に、領域Ａ４のエッジ量（２０％）は領域Ａ３のエッジ量（１０％）の２倍である。そこで、当該２倍の逆数である１／２倍を領域Ａ３の補正係数ＣＦ（１．０）に掛けた値、０．５が領域Ａ４の補正係数ＣＦとされている。
【００２９】
このように領域毎の補正係数は、対応する領域のエッジ量が多いほど小さい値となる。また、補正係数は、エッジ量の多さ（あるいは少なさ）を示す一つの指標とも言える。
補正係数は、後述の明るさ補正（ステップＳ１５０）において、画素毎の補正に適用される補正量の調整に用いられる。従って、補正係数は、同じ領域内の画素に関しては当該領域について決定された一律の補正係数であってもよい。同じ領域内の画素に関して同じ補正係数を用いるという思想に立てば、次のステップＳ１４０は不要である。つまり本実施形態は、ステップＳ１３０の後、ステップ１４０を実施せずにステップＳ１５０を実施する態様を否定しない。
【００３０】
一方で、画像を構成する画素毎に補正係数を決定するという思想を採用してもよい。つまりステップＳ１４０では、係数決定部２７は、領域毎の補正係数と画素の位置とに基づいて、画素毎の補正係数を決定する。
【００３１】
図４は、ステップＳ１４０により画素毎に補正係数が決定された状態を例示している。図４において、各矩形は画像ＩＭ内の各画素を示し、各矩形内の数値は各画素の補正係数を示している。図４では領域Ａ１，Ａ２，Ａ３，Ａ４が各々９個の画素で構成された例を示している。実際には領域を構成する画素数は９個よりも大幅に多いと予想されるが、ここでは図の見易さを考慮して画素数を少なくしている。係数決定部２７は、領域毎の中央に位置する画素（中央画素）の補正係数は、上述のように領域毎に決定した補正係数とする。例えば、領域Ａ１の中央画素の補正係数は、領域Ａ１に対して決定した補正係数ＣＦ（図３によれば０．３３）をそのまま用いる。他の領域Ａ２，Ａ３，Ａ４についても同様の考え方である（図３，４参照）。なお中央画素は、厳密に領域の中央に位置する画素に限らず、領域の中央に近いいずれかの画素であってもよい。
【００３２】
また係数決定部２７は、例えば、画像ＩＭの４隅に対応する隅領域に属する画素については、隅領域が含まれる領域に対して決定した補正係数を用いるとしてもよい。図４では、画像ＩＭの４隅に対応する隅領域Ｂ１，Ｂ２，Ｂ３，Ｂ４を、それぞれにハッチングを付して例示している。隅領域Ｂ１は、画像ＩＭの左上隅に対応しており、領域Ａ１に含まれている。隅領域Ｂ１は、Ｘ方向において領域Ａ１の中央画素と同位置かつＹ方向において領域Ａ１の中央画素よりも前記左上隅側に存在する画素、Ｙ方向において領域Ａ１の中央画素と同位置かつＸ方向において領域Ａ１の中央画素よりも前記左上隅側に存在する画素、および、ＸおよびＹ方向において領域Ａ１の中央画素よりも前記左上隅側に存在する画素、により構成されている。係数決定部２７は、このような隅領域Ｂ１に属する各画素の補正係数は、領域Ａ１に対して決定した補正係数ＣＦをそのまま用いる（図３，４参照）。なお、Ｘ方向は画像ＩＭの横方向に対応する座標系であり、Ｙ方向は画像ＩＭの縦方向に対応する座標系を意味する。
【００３３】
隅領域Ｂ２は、画像ＩＭの右上隅に対応しており、領域Ａ２に含まれている。隅領域Ｂ２は、Ｘ方向において領域Ａ２の中央画素と同位置かつＹ方向において領域Ａ２の中央画素よりも前記右上隅側に存在する画素、Ｙ方向において領域Ａ２の中央画素と同位置かつＸ方向において領域Ａ２の中央画素よりも前記右上隅側に存在する画素、および、ＸおよびＹ方向において領域Ａ２の中央画素よりも前記右上隅側に存在する画素、により構成されている。係数決定部２７は、隅領域Ｂ２に属する各画素の補正係数は、領域Ａ２に対して決定した補正係数ＣＦをそのまま用いる（図３，４参照）。画像ＩＭの左下隅に対応する隅領域Ｂ３、画像ＩＭの右下隅に対応する隅領域Ｂ４のそれぞれについても同様の考え方により各画素の補正係数が決定される（図３，４参照）。
【００３４】
また係数決定部２７は、例えば、周囲の４つの中央画素よりも内側（内側領域）に属する画素については、画素の位置と周囲の中央画素の補正係数とに基づいて、補正係数を決定するとしてもよい。図４では、画像ＩＭに含まれる内側領域Ｃを、ハッチングを付して例示している。内側領域Ｃは、領域Ａ１の中央画素、領域Ａ２の中央画素、領域Ａ３の中央画素および領域Ａ４の中央画素、よりも内側の範囲である。係数決定部２７は、内側領域Ｃに属する各画素の補正係数を、周囲の中央画素の補正係数で補間して決定する。このとき、画素の位置と、当該画素が属する領域の補正係数と、当該画素が属する領域に隣接する他の領域の補正係数とに基づいて、当該画素の補正係数を補間する。
【００３５】
図５は、画像ＩＭの一部範囲を例示している。例えば、図５に示す画素Ｐ１について補正係数を決定する場面を想定する。画素Ｐ１は、内側領域Ｃ内の画素でありかつ領域Ａ１に属しているとする。この場合、係数決定部２７は、領域Ａ１に対して決定した補正係数ＣＦ（領域Ａ１の中央画素の補正係数）と、領域Ａ１にＸ方向において隣接する領域Ａ２対して決定した補正係数ＣＦ（領域Ａ２の中央画素の補正係数）と、領域Ａ１にＹ方向において隣接する領域Ａ３対して決定した補正係数ＣＦ（領域Ａ３の中央画素の補正係数）と、に基づいて画素Ｐ１の補正係数を補間する。ここで言う“隣接する領域”とは、補正係数を決定する対象としている画素が属する内側領域を共有している領域同士の関係を前提としている。
【００３６】
係数決定部２７は、例えば、領域Ａ１の中央画素Ｐ１ｃの中心と画素Ｐ１の中心とを通る線Ｌ１と、領域Ａ２の中央画素Ｐ２ｃの中心と領域Ａ３の中央画素Ｐ３ｃの中心とを通る線Ｌ２との交点ｐｘを特定する。次に、交点ｐｘの位置に対応する補正係数を、中央画素Ｐ２ｃの補正係数と中央画素Ｐ３ｃの補正係数とに基づく線形補間により決定する。次に、画素Ｐ１の位置に対応する補正係数を、当該交点ｐｘの位置に対応する補正係数と中央画素Ｐ１ｃの補正係数とに基づく線形補間により決定する。このような方法により、係数決定部２７は内側領域Ｃ内の画素毎に補正係数を決定することができる。
【００３７】
また係数決定部２７は、画像を構成する画素のうち、中央画素、隅領域および内側領域のいずれにも該当しない各画素については、画素と当該画素の近隣の２つの中央画素との各距離の比率に応じた補間により、補正係数を決定することができる。
むろん、係数決定部２７は、上述した方法以外の方法を用いて画素毎の補正係数を決定してもよい。いずれにしてもステップＳ１４０では、領域毎の補正係数と画素の位置とに基づいて画素毎の補正係数が決定される。言うまでもないが、図３，４に示したエッジ量や補正係数の具体的数値は例に過ぎず、本発明の権利範囲はこれら数値によって限定的に解されるものではない。
【００３８】
ステップＳ１５０では、補正部２８は、補正量を補正係数で調整し、調整後の補正量を用いて画像の明るさ補正を実行する。当該ステップＳ１５０を説明する前に、調整前の補正量を得るために必要となる処理（補正量生成処理）を、図６に基づいて説明する。
【００３９】
図６は、補正量生成処理を示すフローチャートである。補正量生成処理も、制御部２１がＡＰＬ２９に従って実行する処理の一部である。補正量生成処理は、前記処理対象の画像を制御部２１が入力した以降に実行され、遅くともステップＳ１５０（図２）が開始されるまでに完了する。補正量生成処理は、例えば、ステップＳ１００〜Ｓ１４０と並行して実施されてもよい。
【００４０】
ステップＳ２００では、補正部２８は、前記処理対象の画像（ステップＳ１００で複数の領域に分割される画像）の輝度分布（ヒストグラム）を生成する。この場合、補正部２８は、画像を構成する画素毎の輝度を算出し、これら輝度のヒストグラムを生成する。画素毎の輝度の算出方法は様々である。補正部２８は、例えば、ＲＧＢの組み合わせと輝度との変換関係を予め定めたテーブルを参照することにより、画素が有するＲＧＢを輝度に変換することができる。あるいは、補正部２８は、前記文献１にも記載されているように、それぞれに所定の重みを掛けたＲＧＢを加算することで輝度を算出することができる。なお、画素が有するＲＧＢの各階調値は、０〜２５５の２５６階調で表現され、輝度も同様に０〜２５５の２５６階調で表現されるものとする。
【００４１】
ステップＳ２１０では、補正部２８は、補正量を規定する補正量テーブル（図８参照）を生成するために必要な暗部のコントロールポイントを、前記輝度分布から特定する。暗部のコントロールポイントとは、画像内の暗部（比較的輝度が低い部分）の中で特に度数（頻度）が高い輝度を指す。
【００４２】
図７は、ステップＳ２００で生成された輝度分布Ｈの一例を示している。補正部２８は、例えば、輝度分布Ｈにおける階調値６４以下の範囲（暗部に相当する輝度の範囲）のうちで、度数が最も高い輝度を、暗部のコントロールポイントとして特定する。ここでは、輝度ｎ１が、当該コントロールポイントとして特定されたとする。
【００４３】
次に、ステップＳ２２０では、補正部２８は、前記コントロールポイントに対応するオフセット量を特定する。オフセット量とは、輝度を上昇させる量を意味する。本実施形態では、画像処理装置２０は、前記コントロールポイントが採り得る輝度（０〜６４）のそれぞれに対してオフセット量を規定したテーブルを予め記憶しているものとする。従って、補正部２８は、当該テーブルを参照することにより、ステップＳ２１０で特定したコントロールポイントに対応するオフセット量を特定することができる。
【００４４】
ステップＳ２３０では、補正部２８は、前記コントロールポイントのオフセット量に基づいて補正量テーブルを生成する。ここでは、補正量テーブルを関数ｆ（ｎ）で表現する。関数ｆ（ｎ）は、０〜２５５の階調値を採り得る輝度ｎの関数である。補正部２８は、関数ｆ（ｎ）を生成する。
【００４５】
図８は、関数ｆ（ｎ）を実線により例示している。補正部２８は、関数ｆ（ｎ）を生成するにあたり、関数ｆ（ｎ）が満足すべき条件を幾つか決定する。当該条件の一つを、
ｆ（ｎ１）＝ｎ１＋Δｎ１
とする。Δｎ１は、上述のコントロールポイントとして特定された輝度ｎ１に対応するオフセット量である。さらに補正部２８は、以下のような条件を決定する。
ｆ（０）＝０
ｆ（１２８）＝１２８
ｆ（２５５）＝２５５
【００４６】
補正部２８は、少なくともこれら条件の全てを満足するような関数ｆ（ｎ）を、例えばスプライン補間等の手法で生成する。また補正部２８は、輝度ｎが採り得る階調範囲０〜２５５の全てで図８に二点鎖線で示す傾き１の直線を下回らないように調整を適宜施して関数ｆ（ｎ）を生成する。この結果、図８に示すような、階調範囲０〜１２７の入力については値が増加するように補正して出力し、階調範囲１２８〜２５５の入力については値を維持して（つまり補正しないで）出力する補正量テーブル（関数ｆ（ｎ））が得られる。
【００４７】
ステップＳ１５０（図２）では、補正部２８は、前記処理対象の画像を構成する画素毎に輝度を補正量テーブルを用いて補正することにより、明るさ補正を実現する。ただし補正部２８は、補正量テーブルが規定する補正量（調整前の補正量）を補正係数で調整し、当該調整後の補正量にて輝度を補正する。補正量テーブルが規定する補正量とは、前記関数ｆ（ｎ）における入力と出力との差分である。つまり、明るさ補正の対象とする画素の輝度ｎ（入力）と当該輝度ｎを関数ｆ（ｎ）で変換した後の値（出力）との差分に対して、当該画素の補正係数を乗算し、当該乗算により得られた値（調整後の補正量）を、当該画素の輝度ｎ（入力）に加算する。これにより、当該画素の輝度ｎが、より高い値へ補正されたことになる。さらに補正部２８は、補正後の輝度をＲＧＢへ変換する。補正部２８は、例えば、輝度とＲＧＢの組み合わせとの変換関係を予め定めたテーブル等を参照することにより、輝度をＲＧＢに変換することができる。補正部２８は、このような明るさ補正を全ての画素について実行する。なお、係数決定部２７と補正部２８とを含めて、補正部と呼んでもよい。
【００４８】
ステップＳ１５０においては、補正係数が１．０である画素については、補正量の調整は実質的に行われず、補正量テーブルをそのまま用いた明るさ補正が実行される。また、輝度ｎが１２８以上である画素については、補正量が０であるため、実質的に明るさ補正は実行されない。
【００４９】
このような本実施形態によれば、画像処理装置は、処理対象の画像を複数の領域に分割し（ステップＳ１００）、領域毎にエッジ量を検出し（ステップＳ１１０）、画像の明るさ補正を実行する際、補正に用いる補正量を領域毎のエッジ量（エッジ量を表す指標としての補正係数）に応じて変化させる（ステップＳ１５０）。このとき、明るさを上昇させるための補正量は、エッジ量が多い領域の画素ほど大きく低減される。従って、画像内でエッジが比較的多く立っている箇所（例えば文字列等）については、それが暗い色であっても、適用される明るさ補正の強度が抑制され、結果、このような箇所における画像のメリハリが適切に維持される。
【００５０】
また本実施形態では、画素毎に適用する明るさ補正の補正量を、領域毎のエッジ量（補正係数）と画素の位置とに基づいて変化させる。つまり、領域単位で同じ補正係数を補正量の調整に用いるのではなく、画素の位置に応じて異ならせた補正係数で補正量を調整する。特に、画素毎に適用する補正量を、画素の位置と、当該画素が属する領域のエッジ量（補正係数）と、当該画素が属する領域に隣接する他の領域のエッジ量（補正係数）とに基づいて変化させる。これにより、領域の境界を挟んで明るさ補正の補正量が急激に変動するといったことが回避され、階調の転び等による画質の破綻を防ぐことができる。
【００５１】
また本実施形態では、画像のうち所定のしきい値未満の明るさを有する部分（図８の例で言えば、階調値１２８未満の輝度を有する画素）を対象として明るさ補正を実行する。これにより、画像内の比較的暗い部分（例えば、黒潰れしている箇所）だけを明るく補正することができ、また、装置の処理負担を軽減することができる。
【００５２】
本発明は上述の実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば後述するような変形例を採用可能である。
【００５３】
変形例１：
画像を多くの領域に分割した場合、個々の領域は狭くなる。そのため、領域毎に検出されるエッジ量は、局所的なエッジの分布状況を顕著に反映したものとなり、領域毎に大きく異なる傾向が見られる。領域毎にエッジ量が違い過ぎると、隣接する領域間で明るさ補正の補正量が急激に変動し易く、画質上好ましくない。一方で、領域の数が少なすぎると、領域毎のエッジ量が画像内でのエッジの分布状況を正確に反映しないものとなってしまう。このような実情を鑑みて、分割部２５は、処理対象の画像のサイズに応じて画像の分割数を異ならせるとしてもよい。分割部２５は、処理対象の画像のサイズが大きい程、画像の分割数を増やす。
【００５４】
ステップＳ１００において、分割部２５は、処理対象の画像の画素数を、予め規定した複数のしきい値（第１しきい値、第２しきい値、第３しきい値…）と比較し、当該比較の結果に応じて分割数を決定する。ここでは、第１しきい値＜第２しきい値＜第３しきい値、であるとする。分割部２５は、例えば、画像の画素数が第１しきい値未満であれば、画像を４等分し、当該画素数が第１しきい値以上、第２しきい値未満であれば、画像を９等分し、当該画素数が第２しきい値以上、第３しきい値未満であれば、画像を１６等分し…、というように分割数を変えていく。このような変形例によれば、エッジ量が多い箇所について明るさ補正の補正量を抑制するという効果を、画質の破綻を防止しつつ適切に達成することができる。
【００５５】
変形例２：
図９は、制御部２１がＡＰＬ２９に従って実行する画像処理であって、図２とは異なる例をフローチャートにより示している。図９は、ステップＳ１３２，Ｓ１３４を有する点で図２と異なる。分割部２５は、当該フローチャートを開始して最初のステップ１００では、処理対象の画像を所定の分割数で分割する。所定の分割数とは、画像のサイズ等にかかわらず予め設定されている数であってもよいし、前記変形例１のように画像のサイズに応じて決定した数であってもよい。
【００５６】
ステップＳ１３２では、制御部２１は、エッジ量の差が所定差以上である領域間の距離が狭い（所定距離以内である）か否かを判定し、ＹｅｓであればステップＳ１３４へ進み、ＮｏであればステップＳ１４０へ進む。ここで言う所定差および所定距離は、いずれも予め設定された差および距離である。ステップＳ１３２では、制御部２１は、補正係数の差を見ることでエッジ量の差を間接的に判断する。ステップＳ１３０が終了した時点で領域毎の補正係数が決定されているため、制御部２１は、補正係数の差が所定差以上である領域の組み合わせを全て抽出する。次に、当該抽出した領域の組み合わせ毎に、領域間の距離（例えば、領域の中心間距離）が所定距離以内であるか否か判定し、当該抽出した領域の組み合わせの中に距離が所定距離以内である組み合わせが一つ以上存在する場合に、Ｙｅｓと判定する。領域間の距離が所定距離以内とは、例えば、領域の辺同士または角同士が接している状態を指す。
【００５７】
ステップＳ１３４では、制御部２１は、画像の分割数を前回のステップＳ１００で採用された分割数よりも減らす設定を行う。例えば、前回のステップＳ１００で採用された分割数が１６であれば新たな分割数を９としたり、前回のステップＳ１００で採用された分割数が９であれば新たな分割数を４としたりする。ステップＳ１３４を経て、処理はステップＳ１００へ戻る。ステップＳ１３４後のステップＳ１００では、分割部２５は、ステップＳ１３４で設定された新たな分割数に従って処理対象の画像を分割する。つまり分割部２５は、画像の分割数を減らす。
【００５８】
このような変形例２によれば、距離が近い領域間で明るさ補正の補正量の変動が大きくなり過ぎて画質が破綻するという状況を、画像の分割数を減らすことで適切に回避することができる。なお、ステップＳ１３２，Ｓ１３４の処理のタイミングは、図９に示したようなステップＳ１３０の後ではなく、ステップＳ１１０の後であってもよい。つまり制御部２１は、領域毎の補正係数ではなく領域毎のエッジ量を直接に比較し、エッジ量の差が所定差以上である領域間の距離が狭いか否かを判定するとしてもよい。
【符号の説明】
【００５９】
１０…画像入力装置、２０…画像処理装置、２１…制御部、２２…記憶部、２５…分割部、２６…エッジ検出部、２７…係数決定部、２８…補正部、２９…ＡＰＬ、３０…画像出力装置、Ａ１，Ａ２，Ａ３，Ａ４…領域、ＩＭ…画像
【図１】
0006701687.tif 000002
【図２】
0006701687.tif 000003
【図３】
0006701687.tif 000004
【図４】
0006701687.tif 000005
【図５】
0006701687.tif 000006
【図６】
0006701687.tif 000007
【図７】
0006701687.tif 000008
【図８】
0006701687.tif 000009
【図９】
0006701687.tif 000010