階調補正方法、階調補正装置、階調補正プログラム及び画像機器
【課題】逆光下で撮影された人物画像に対しても、視認性の良い画像に補正する。
【解決手段】顔検出部1は、入力画像またはその縮小画像から顔の有無とその位置を検出する。パラメータ算出制御部2は、顔の有無に応じて補正パラメータの算出方法を制御する。顔が検出された場合には、顔領域補正パラメータ算出部3が、検出された顔の中心領域から算出する代表輝度値に基づいて、肌の色が好ましく映る輝度値に予め定めておいた境界輝度レベルを基準に、代表輝度値が高いほど暗く、低いほど明るく補正する特性を備えた補正パラメータを算出する。顔が検出されなかった場合には、標準補正パラメータ算出部4が、画像内容に関わらず、入力画像またはその縮小画像の画像データに基づいて補正パラメータを算出する。画像変換部5は、得られた補正パラメータを用いて入力画像の画素値を変換することによって、階調補正する。
【解決手段】顔検出部1は、入力画像またはその縮小画像から顔の有無とその位置を検出する。パラメータ算出制御部2は、顔の有無に応じて補正パラメータの算出方法を制御する。顔が検出された場合には、顔領域補正パラメータ算出部3が、検出された顔の中心領域から算出する代表輝度値に基づいて、肌の色が好ましく映る輝度値に予め定めておいた境界輝度レベルを基準に、代表輝度値が高いほど暗く、低いほど明るく補正する特性を備えた補正パラメータを算出する。顔が検出されなかった場合には、標準補正パラメータ算出部4が、画像内容に関わらず、入力画像またはその縮小画像の画像データに基づいて補正パラメータを算出する。画像変換部5は、得られた補正パラメータを用いて入力画像の画素値を変換することによって、階調補正する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像の階調を補正する階調補正方法、階調補正装置、階調補正プログラム及び画像機器に関する。
【背景技術】
【0002】
画像の階調を補正する階調補正装置として、例えば、特許文献1に記載されている明度補正装置がある。特許文献1に記載の明度補正装置は、画像を幾つかの領域に分解して、分解した各小領域の平均輝度に基づいてパラメータを算出し、ガンマ補正を行うものである。
【0003】
また、人物画像の階調補正方法として、色情報に基づいて人肌領域を抽出し、人肌領域の色を、好ましい肌色となるよう予め定められたパラメータに基づいて補正する方法(例えば、特許文献2)がある。また、特許文献3には、顔検出手段を用いて画像処理を施す画像処理方法が記載されている。特許文献3に記載の画像処理方法は、顔検出手段により顔領域画像データSHを求め、SHの特性値に基づいて逆光等の画像状態を判断する。判断した画像状態に基づいて得られる重み係数によって所望の肌色画像と元画像とを重みづけ加算することによって画像処理を施す。また、特許文献4には、顔領域の濃度値が目標範囲に入るように濃度補正する画像処理方法が記載されている。
【0004】
また、特許文献5には、補正対象画像に添付された画像情報に基づいて補正パラメータを決定することにより、画像処理を施す画像処理方法が記載されている。特許文献5には、入力画像の縮小画像(プレビュー)データに基づいてガンマ補正値を決定することによって、適切な画像補正処理が短時間で可能となると記載されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平10−150566号公報(段落0013−0014)
【特許文献2】特開平11−267937号公報(段落0006−0008)
【特許文献3】特開平11−328359号公報(段落0016−0023)
【特許文献4】特開2000−196890号公報(段落0005)
【特許文献5】特開2000−137805号公報(段落0017−0018)
【発明の概要】
【発明が解決しようとする課題】
【0006】
例えば、画像が逆光下で撮影された人物画像である場合、特許文献1や特許文献2に記載の補正方法では、必ずしも視認性の良い人物画像に補正することができない。特許文献1に記載の明度補正装置は、画像中に人物が含まれるかどうかを判断していないため、画像全体として視認性が良くなるように補正できたとしても、人物画像として視認性が良いとは限らない。つまり、人物の肌色が好ましい肌色になるよう補正されるとは限らない。
また、特許文献2に記載の階調補正方法では、色情報を元にして人肌を検出しようとしているが、極度の逆光状態の場合、肌色が通常の分布から外れてしまう可能性がある。
【0007】
また、顔を検出する手段を備えたとしても、大容量メモリを要する演算が必要となり、処理時間が長くなるという問題がある。特許文献3に記載の画像処理方法では、所望の肌色に変換された顔画像と顔領域以外の背景画像とを重み付きで合成するために、画像データを保持するフレームメモリが必要だからである。また特許文献4に記載の画像処理方法についても、一旦濃度値に変換する必要があるため、画素毎の演算手段と、濃度画像を保存するメモリが必要だからである。
【0008】
また、特許文献5に記載の画像処理方法では、必ずしも最適な補正パラメータを決定できない。特許文献5に記載の画像処理方法は、ガンマ補正値を求めるための算出式として全画素の輝度平均Lvをもとに、gamma=In(0.5)/In(Lv)という計算式を挙げている。この計算式によると、輝度平均が一定となるように出力画像が生成される。従って、例えば、明るすぎる画像や暗すぎる画像を入力すると、過剰強調してしまい、かえって品質を損なってしまう。また、対数変換を必要としているため、計算自体に処理負荷がかかる。
【0009】
従って、本発明は、例え逆光下で撮影された人物画像であっても、視認性の良い人物画像に自動で階調補正することができる階調補正方法、階調補正装置および階調補正プログラムを提供することを目的とする。また、本発明は、階調補正の演算に必要なメモリ容量および演算回数を削減することも目的とする。ここで、視認性の良い人物画像とは、画像全体の階調バランスにおいて顔部分の肌色が好ましく映る明度をもつ画像をいう。
【課題を解決するための手段】
【0010】
本発明による階調補正方法は、画像の階調を補正する階調補正方法であって、
画像から抽出した該画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出するステップと、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の階調を補正するための補正パラメータを算出するステップと、
前記補正パラメータを用いて前記画像の画素値を変換するステップと、を含むことを特徴とする。なお、特定領域を抽出する際に参照する画像および代表輝度値を算出する際に参照する画像は、補正対象の画像と同じ内容を表している画像であれば、例えば、縮小画像であってもよい。
【0011】
本発明による階調補正装置は、画像の階調を補正する階調補正装置であって、
画像から抽出した該画像の特定領域に含まれる画素の輝度成分を示す値と、予め定められた輝度成分の境界値とに基づいて、前記画像の階調を補正するための補正パラメータを算出する特定領域補正パラメータ算出部と、
前記補正パラメータを用いて前記画像の画素値を変換する画素変換部と、を備えたことを特徴とする。
【0012】
また、本発明による階調補正プログラムは、画像の階調を補正するための階調補正プログラムであって、コンピュータに、画像から特定領域を抽出する処理、
前記特定領域に含まれる画素の輝度成分を示す値と、予め定められた輝度成分の境界値とに基づいて、画像の階調を補正するためのパラメータである補正パラメータを算出する処理、および
前記補正パラメータを用いて画像の画素値を変換する処理を実行させることを特徴とする。
【発明の効果】
【0013】
本発明によれば、入力画像の特定領域内に含まれる画素の輝度成分を示す値と、予め定められた輝度成分の境界値とに基づいて補正パラメータを算出するので、例えば、逆光下で撮影された顔が暗い画像(逆光画像)に対しては顔部分が明るくなるような階調補正を実現できる。また、逆光画像に対してだけでなく、例えば、順光下で撮影された特定領域の画像に対しては変動を抑えた階調補正を実現できる。なお、本発明において、補正パラメータとは、輝度階調を補正するための変換計算に用いるパラメータをいう。
【図面の簡単な説明】
【0014】
【図1】第1の実施の形態による階調補正装置の構成例を示すブロック図である。
【図2】顔領域補正パラメータ算出部3の構成例を示すブロック図である。
【図3】顔中心領域の設定例を示す説明図である。
【図4】γ補正によるトーンカーブの一例を示す説明図である。
【図5】代表輝度値からγ値への変換特性の一例を示す説明図である。
【図6】主観評価実験で得られた代表輝度値と最適γ値との関係を表すプロット図である。
【図7】トーンカーブの制御点移動量によって求まるトーンカーブの一例を示す説明図である。
【図8】代表輝度値からトーンカーブの制御点の移動量に変換するための変換テーブルの一例を示す説明図である。
【図9】第1の実施の形態による階調補正装置の動作例を示すフローチャートである。
【図10】第2の実施の形態による階調補正装置の構成例を示すブロック図である。
【図11】第2の実施の形態による階調補正装置の動作例を示すフローチャートである。
【図12】第3の実施の形態による階調補正装置の構成例を示すブロック図である。
【図13】複数顔を含む入力画像の一例を示す説明図である。
【図14】補正パラメータマップ関数をグラフ化した説明図である。
【図15】パーソナルコンピュータの一構成例を示すブロック図である。
【図16】他の実施の形態による階調補正装置の構成例を示すブロック図である。
【図17】本発明の画像機器の実施形態としてのカメラ付き携帯電話の構成を示すブロック図である。
【発明を実施するための形態】
【0015】
実施の形態1.
以下、本発明の実施の形態を図面を参照して説明する。図1は、本発明の第1の実施の形態による階調補正装置の構成例を示すブロック図である。図1に示す階調補正装置は、顔検出部1と、パラメータ算出制御部2と、顔領域補正パラメータ算出部3と、標準補正パラメータ算出部4と、画素変換部となる画像変換部5とを備える。階調補正装置は、例えばプログラムに従って動作するパーソナルコンピュータ等の情報処理装置によって実現される。ただし、ソフトウエアにより階調補正装置の機能が実現される場合に限らず、階調補正装置の各構成部を別々に又は一体化させて専用IC(ハードウエア)により構成することができる。なお、本実施の形態において、画像の階調を補正するための階調補正プログラムは、例えば、階調補正装置を実現する情報処理装置のハードディスク等の記憶装置に記憶される。
【0016】
図15はパーソナルコンピュータの一構成例を示すブロック図である。画像の階調を補正するための階調補正プログラムはハードディスク等のディスク装置204に記憶され、図9に示すフローチャートに示す手順でCPU205により階調補正プログラムが実行される。RAM206は入出力部203を通して入力された画像データやプログラム実行に必要なデータが記憶される。入力された画像や階調補正後の画像出力は液晶表示装置(LCD)等の表示部202に表示される。操作部201は例えばキーボードでプログラムの実行開始や中断を制御する。階調補正後の画像出力はディスク装置204に保存されたり、入出力部203を介してプリンタに出力されたり、入出力部203を介してネットワークを通じて送信される。なお、本発明は、上記階調補正プログラムを記録した、コンピュータ読み取り可能な記録媒体としても成立しえる。かかる記録媒体はコンピュータに内蔵されるハードディスク等の記録媒体に限らず、CDROM、DVD、フラッシュメモリ等のリムーバルな記録媒体も含まれる。
【0017】
顔検出部1は、入力画像を解析し、顔の有無および顔の位置を検出する。顔検出部1は、入力画像の画像データ(画像を数値化した情報)を参照し、パターン認識を用いて画像中の顔の有無を判断し、顔が検出された場合には、その顔の位置を検出する。顔検出部1は、顔の位置を示す情報として、例えば、入力画像における顔の特徴点の座標(例えば、両目位置座標)を出力する。
【0018】
顔検出部1は、例えば、濃淡パターンを用いたテンプレートマッチングを行うことによって、顔を検出してもよい。なお、上記に示したテンプレートマッチングの手法は、例えば、文献「小杉信,”個人識別のための多重ピラミッドを用いたシーン中の顔の探索・位置決め”,電子情報通信学会論文誌,1994年4月,Vol.J77−D−II,No.4,p.672−681」に記載されている。また例えば、固有ベクトル盗撮距離を用いて位置決めを行うことにより位置を検出することも可能である。なお、上記で示した位置決め手段は、例えば、文献「M.Turk,A.Pentland,”Face Recognition on Using Eigenfaces”,Proceedings of IEEE,CVPR91,June 1991,p.586−591」に記載されている。
【0019】
また、顔検出部1は、顔を検出した際に、検出した顔パターンの信頼度を示す顔検出信頼度を算出してもよい。顔検出信頼度は、顔を検出する際に得られるパターン認識におけるパターンの特徴量と入力画像の特徴量との差分を用いることができる。また、信頼度が高いほど大きい値となるよう差分の逆数を用いてもよい。なお、顔検出部1が解析する画像は、入力画像と同じサイズである必要はなく、顔が検出可能な程度に縮小された参照入力画像であってもよい。なお、顔検出部1が入力画像に縮小処理を施こして参照入力画像を生成してもよい。
【0020】
パラメータ算出制御部2は、顔検出部1の検出結果に応じて補正パラメータの算出方法を決定し、その方法を実施するよう制御する。パラメータ算出制御部2は、顔検出部1からの顔検出有無の情報を元に、どのように補正パラメータを算出するか(つまりどの手段(構成部)を用いて補正パラメータを算出するか)を制御する。本実施の形態では、パラメータ算出制御部2は、顔が未検出の場合には、標準補正パラメータ算出部4を用いて補正パラメータを算出するよう制御し、顔が検出された場合には、顔領域補正パラメータ算出部3を用いて補正パラメータを算出するよう制御する。
【0021】
顔領域補正パラメータ算出部3は、入力画像の顔領域の輝度成分に基づいて補正パラメータを算出する。なお、顔領域補正パラメータ算出部3は、入力画像の代わりに参照入力画像を使用して補正パラメータを算出することも可能である。顔領域補正パラメータ算出部3は、図2に示すように、顔中心領域設定部11と、代表輝度算出部12と、補正パラメータ算出部13とを含む。図2は、顔領域補正パラメータ算出部3の構成例を示すブロック図である。顔検出部1および顔中心領域設定部11とは顔領域抽出部となる。
【0022】
顔中心領域設定部11は、顔検出部1から出力される顔の特徴点の座標から、画像中における顔中心領域を設定する。顔中心領域とは、人間が顔を見る際に最も注視する領域であって、本実施の形態においては、およそ両目と口とによって囲まれた領域をいう。図3は、顔中心領域の設定例を示す説明図である。図3に示すように、顔中心領域101は、両目間隔wを基準にした矩形領域として定義することも可能である。顔中心領域設定部11は、例えば図3に示すように、顔中心領域として、両目を結んだ幅を両目間隔wとする場合に、両目位置を基準にして上に0.4w、下に0.8w伸ばした点によって囲まれた矩形領域を設定する。なお、顔中心領域は、矩形以外に楕円や任意の形状であってもよい。
【0023】
代表輝度算出部12は、顔中心領域に含まれる画素の輝度成分の代表値を算出する。輝度成分として、例えば、入力画像がカラー画像の場合は、XYZ座標系のY値を用いることができる。入力画像がグレー画像の場合は、画素値をそのまま用いてもよい。また、輝度成分の代表値としては、平均値や中央値、最大値や最小値などが利用可能だが、実験の結果、平均値を用いるのが最も精度が高い。以下、代表輝度算出部12が算出する輝度成分の代表値を代表輝度値という。
【0024】
補正パラメータ算出部13は、代表輝度算出部12が算出した代表輝度値に基づいて補正パラメータを算出する。また、補正パラメータ算出部13は、顔検出部1が顔検出信頼度を算出する場合には、代表輝度値と顔検出信頼度とに基づいて補正パラメータを算出することも可能である。
【0025】
本実施の形態では、補正パラメータとして、γ(ガンマ)補正におけるγ値や、トーンカーブの制御点移動量を用いる場合を例にとって説明する。γ補正とは、一般的には、画像の明るさの変化に対する電圧換算値の変化の比を示すγ値を、1に近づけるよう素子の特性等により生じる誤差等を修正することをいう。本実施の形態では、以下の式(1)で示される補正をγ補正と呼ぶ。式(1)において、R,G,Bは赤,緑,青(3原色)の光の強度を示し、R’,G’,B’はγ補正後のR,G,Bを示す。また、aは定数である。なお、式(1)に示すγ補正では、γ<1の場合に明るく、γ>1の場合に暗くなるよう補正される。
【0026】
R’=a(R)γ
G’=a(G)γ
B’=a(B)γ 式(1)
また、R,G,Bが0〜255を範囲とする場合には、γ補正は、以下の式(2)で表すことができる。
【0027】
R’=255・(R/255)γ
G’=255・(G/255)γ
B’=255・(B/255)γ 式(2)
また、図4は、γ補正によるトーンカーブの一例を示す説明図である。トーンカーブとは、入力RGB値(補正前の画素値)を横軸、出力RGB値(補正後の画素値)を縦軸にとったときの変換特性カーブをいう。γ補正においては、R,G,Bそれぞれに対して、図4に示す変換特性カーブを使用する。図4に示すトーンカーブは、45度の直線に比べて上方に持ち上げられている状態であるため、γ補正によって、入力画像が明るくなるよう補正されたことを示している。
【0028】
補正パラメータとしてγ値を算出する場合には、代表輝度値Yfからγ値へ変換する際の特性(以下、変換特性という。)に基づいて、代表輝度値からγ値を算出する。図5は、代表輝度値Yfからγ値への変換特性の一例を示す説明図である。図5では、本発明が用いる変換特性の例として、線形変換特性41と、非線形変換特性42とを示している。
【0029】
補正パラメータ算出部13は、例えば、線形変換特性41に基づいて、直線の一次式を用いて(一次変換により)γ値を算出する。また例えば、非線形変換特性42に基づいて、非線形関数またはルックアップテーブルを用いてγ値を算出してもよい。ここでいうルックアップテーブル(以下、ルックアップテーブル1という。)とは、代表輝度値のとりうる値それぞれに対し、非線形変換特性21に基づいて定めたγ値を登録したテーブルである。
【0030】
以下の式(3)は、補正パラメータ算出部13が線形変換特性41に基づいてγ値を算出するために用いる変換式の一例である。なお、式(3)において、α,βは定数である。
【0031】
γ=αYf+β 式(3)
また、補正パラメータ算出部13は、顔検出部1が顔検出信頼度Lを算出する場合には、例えば、以下の式(4)を用いて重みづけされたγ値(γ’)を算出することも可能である。式(4)では、顔検出の信頼度が高い場合には代表輝度値に基づいて算出したγ値に大きい重みづけをし、逆に信頼度が低い場合にはデフォルトパラメータであるγ0の重み付けを大きくするよう定義している。なお、式(4)において、顔検出信頼度Lは、0≦L≦1の実数とし、値が大きい程信頼度が高いことを示す。また、式(5)は、式(4)を、γ値の算出方法を限定しない表現に書き換えた式である。
【0032】
γ’=L×(αYf+β)+(1−L)×γ0 式(4)
γ’=L×γ+(1−L)×γ0 式(5)
なお、本発明においては、変換特性に一定の基準を設ける。すなわち、図5に示すように、所定のレベル(以下、境界輝度レベルという。)を基準にして、代表輝度値Yfが低くなるに従って明るく(γ値を小さく)、代表輝度値が高くなるに従って暗く(γ値を大きく)するような特性を備える変換特性に基づいて補正パラメータを算出する。なお、境界輝度レベルは、使用する地域に応じて肌の色が好ましく映る輝度値に予め定めておく。
【0033】
なお、計算式に用いる定数やルックアップテーブル1の内容は、必要に応じて階調補正装置が備える記憶装置に予め記憶しておく。また、変換特性は、予め複数の変換特性を利用可能にしておき、利用者が指定できるようにしてもよい。なお、境界輝度値が利用者により調整される場合には、記憶しておいた定数やルックアップテーブル1の内容は境界輝度値に応じて変更される。
【0034】
図6は、主観評価実験で得られた代表輝度値Yfと最適γ値との関係を表すプロット図である。ここで、最適γ値とは、評価者に手動で人物画像のγ補正を調整させた場合に、評価者が最も好ましいと思う画像に補正されたときのγ値をいう。図6に示すように、顔中心領域の代表輝度値Yfと最適γ値とは正の相関があり、代表輝度値Yfが高ければ高いほど画像を暗く補正し、代表輝度値Yfが低ければ低いほど画像を明るくする補正をする傾向があることがわかる。従って、図6の実験結果は、本発明が定めた基準を備えた変換特性に基づいて補正パラメータを算出することによって、最適なγ補正が実現できることを裏付けている。
【0035】
また、補正パラメータとしてトーンカーブの制御点移動量を求めてもよい。トーンカーブの制御点移動量とは、図7に示すようなトーンカーブを描くグラフにおいて、制御点として定めた輝度値の、45度の直線を基準にした縦軸方向の移動量であって、すなわち所定の入力輝度値の補正量を示す情報である。図7は、トーンカーブの制御点移動量(d1,d2,d3)によって求まるトーンカーブの一例を示す説明図である。トーンカーブの制御点の移動量は、図8に示すように、代表輝度値のとりうる値に対応する各制御点の移動量を登録した変換テーブルを用いて求めることができる。図8は、代表輝度値からトーンカーブの制御点移動量に変換するための変換テーブルの一例を示す説明図である。
【0036】
なお、制御点移動量においても、境界輝度レベルを基準に、代表輝度値Yfが低くなるに従って明るく(プラス方向に大きく)、代表輝度値Yfが高くなるに従って暗く(マイナス方向に大きく)移動するような特性を備える変換テーブルを用いる。なお、ここでいう制御点移動量の大小は、各制御点の移動量ではなく、輝度値全体の補正量を見た際の大小を表している。なお、図7では、制御点として3点定めているが、3点に限定されない。つまり、各制御点移動量から上記で示した特性に基づくトーンカーブの近似式を導出可能であれば、例えば中間点1点であっても、また3点以上であってもよい。なお、変換テーブルの内容は、階調補正装置が備える記憶装置に予め記憶しておく。変換テーブルには、既に説明したγ値から描かれるγ補正によるトーンカーブの値を登録してもよい。なお、ここまでトーンカーブの制御点移動量を縦軸方向の移動量として説明したが、制御点移動量は、横軸方向の移動量として定義することも可能である。横軸方向の移動量として定義する場合には、左方向に大きく移動すると明るく、右方向に大きく移動すると暗く画像が変換されることになる。
【0037】
標準補正パラメータ算出部4は、入力画像の画像データを用いて標準的な補正パラメータを算出する。標準補正パラメータ算出部4は、入力画像全体または所定の評価領域内の画像データに基づいて、補正パラメータを算出する。なお、標準補正パラメータ算出部4においても、入力画像の代わりに参照入力画像を用いて補正パラメータを算出することが可能である。標準補正パラメータ算出部4は、例えば、画像内容に関係なく、画像を幾つかの領域に分割して各小領域の輝度値の平均値に基づいて算出してもよい。また、平均値だけではなく、最小値や最大値、最小値と最大値の差分値等に基づいて算出してもよい。
【0038】
画像変換部5は、補正パラメータに基づいて入力画像の各画素値を変換することによって入力画像全体の階調を補正する。画像変換部5は、画素値に補正パラメータを用いた演算を施すことによって、画像値を変換する。例えば、補正パラメータとしてγ値が算出される場合、画像変換部5は、γ補正式(2)を用いてγ補正の対象となる成分(例えば、R,G,B)のとりうる値(例えば、0〜255)に対し、γ補正後の値を計算し、その値を所定の記憶領域に登録することでルックアップテーブルを作成する。ここでいうルックアップテーブル(以下、ルックアップテーブル2という。)とは、階調補正の対象となる成分のとりうる値に対し、補正パラメータを用いて算出される補正後の値を登録したテーブルである。なお、式(2)に示すとおり、γ補正の対象となる成分R,G,Bは同じ計算式を用いて補正されるので、ルックアップテーブル2は共通のテーブルとすることができる。このように、画素値の成分のうち補正対象となる成分のとりうる値に対し補正パラメータを用いて計算した補正後の値を登録したルックアップテーブルを用いて画素値の変換を行うので、画素毎に補正量を求める演算を行う必要がなく、また、出力サイズの画像合成を行わない為、大容量メモリを必要とせず、高速な補正処理が可能である。
【0039】
また、補正パラメータとしてトーンカーブの制御点移動量が算出される場合には、画像変換部5は、例えば、全制御点移動量に基づいてトーンカーブの近似式を求め、求めた近似式を用いて階調補正の対象となる成分のとりうる値(例えば、0〜255)に対し、補正後の値を算出してルックアップテーブル2を作成する。トーンカーブの近似式は、直線補間やスプライン補間等の補間法を用いて各制御点移動量が示す補正後の輝度値から求めることができる。
【0040】
つまり、画像変換部5は、階調補正の対象となる成分のとりうる値に対し、補正パラメータを用いて算出される補正後の値を登録したルックアップテーブル2を作成する。画像変換部5は、作成したルックアップテーブル2を用いて、入力画像の画素毎に、その画素値の成分のうち階調補正の対象となる成分の値を入力としてテーブル変換を行うことによって、入力画像全体の階調を補正する。
【0041】
なお、本実施の形態において、顔検出部1、パラメータ算出制御部2、顔領域補正パラメータ算出部3、顔中心領域設定部11、代表輝度算出部12、補正パラメータ算出部13、標準補正パラメータ算出部4および画像変換部5は、プログラムに従って動作するCPUによって実現される。
【0042】
次に、図9を参照して本実施の形態の動作について説明する。図9は、本実施の形態による階調補正装置の動作例を示すフローチャートである。まず、補正対象の入力画像が入力されると、顔検出部1は、顔検出処理を行う(ステップA1)。顔検出部1は、入力画像が縮小された参照入力画像を参照し、パターン認識を用いて顔を検出する。また、顔検出部1は、顔が検出された場合には、顔の位置を検出する。顔検出部1は、顔の検出結果および顔の位置を示す情報(例えば、両目位置座標)を出力する。なお、顔検出部1は、顔を検出する際に合わせて顔検出信頼度を算出してもよい。パラメータ算出制御部2は、顔が検出されたか否かを判断する(ステップA2)。パラメータ算出制御部2は、顔が検出された場合には(ステップA2のYes)、顔領域補正パラメータ算出部3に補正パラメータの算出指示をだす。
【0043】
顔領域補正パラメータ算出部3は、パラメータ算出制御部2からの指示をうけて、参照入力画像における顔領域の輝度値に基づいて補正パラメータを算出する。まず、顔中心領域設定部11が、顔検出部1が検出した顔の位置を示す情報から参照入力画像における顔中心領域を定める。次に、代表輝度算出部12は、顔中心領域設定部11が定めた顔中心領域に含まれる画素値から代表輝度値を算出する(ステップA3)。代表輝度算出部12は、例えば、顔中心領域に含まれる画素の輝度値の平均値を代表輝度値として求める。
【0044】
補正パラメータ算出部13は、代表輝度算出部12が算出した代表輝度値に基づいて補正パラメータを算出する(ステップA4)。補正パラメータ算出部13は、例えば、境界輝度レベルを基準に代表輝度値に応じて補正方向および補正量が変化する変換特性を備えた直線の一次式や非線形関数またはルックアップテーブル1を用いて、代表輝度値に基づくγ補正におけるγ値を算出してもよい。また例えば、境界輝度レベルを基準に代表輝度値に応じて補正方向および補正量が変化する特性を備えた変換テーブルを用いて代表輝度値に基づくトーンカーブの制御点移動量を算出してもよい。また、顔検出部1が顔検出信頼度を算出する場合には、補正パラメータ算出部13は、算出した補正パラメータとデフォルトパラメータとの間で顔検出信頼度による重みづけをしてもよい。
【0045】
また、パラメータ算出制御部2は、顔が検出されなかった場合には(ステップA2のNo)、標準補正パラメータ算出部4に補正パラメータの算出指示をだす。標準補正パラメータ算出部4は、参照入力画像の画像データを用いて標準的な補正パラメータを算出する。標準補正パラメータ算出部4は、例えば、参照入力画像の所定の領域に含まれる画素値に基づいて補正パラメータを算出する(ステップA6)。
【0046】
画像変換部5は、算出された補正パラメータを用いて入力画像の各画素値を変換する(ステップA5)。画像変換部5は、補正パラメータとしてγ値が算出される場合には、γ補正式を用いてγ補正の対象となる画素値の成分のとりうる値に対して、γ補正後の値を算出してルックアップテーブル2を作成する。また、補正パラメータとしてトーンカーブの制御点移動量が算出される場合には、全制御点移動量に基づいてトーンカーブの近似式を求め、求めた近似式を用いて階調補正の対象となる成分のとりうる値に対して、補正後の値を算出してルックアップテーブル2を作成する。次に、画像変換部5は、入力画像の画素毎に、その画素値の階調補正の対象となる成分の値を、作成したルックアップテーブルを用いてテーブル変換を行うことによって更新する。画像変換部5は、入力画像の全画素の画素値を変換することによって、入力画像の階調を補正する。
【0047】
以上のように、本実施の形態によれば、画像中の顔を検出し、その顔の中心領域の輝度情報(代表輝度値)に基づいて算出する補正パラメータを用いて画像全体の階調を補正するため、顔が暗く写っている逆光画像に対しては、顔が明るくなるような階調補正を実現することができる。また、境界輝度レベルを基準に代表輝度値に応じて補正方向および補正量を変化させる特性に基づいて補正パラメータを算出するので、逆光画像に対してだけでなく、順光下で撮影された顔画像に対しては変動を抑えた階調補正を実現できる。つまり、肌の色が好ましく映る輝度値に予め定めた境界輝度レベルを基準にした代表輝度値に基づく階調補正を行うので、視認性の良い人物画像を提供することができる。
【0048】
また、参照入力画像のみを用いて補正パラメータを算出することもでき、出力サイズの画像合成を行わないため、大容量メモリを必要としない。また、補正パラメータの算出の際に、対数変換等の複雑な演算を用いず、かつ画像変換の際にルックアップテーブル2を作成してテーブル変換を行うので、高速に処理を実行できる。
【0049】
実施の形態2.
次に、本発明の第2の実施の形態について図面を参照して説明する。図10は、第2の実施の形態による階調補正装置の構成例を示すブロック図である。図10に示す階調補正装置は、顔検出部1と、パラメータ算出制御部2と、顔領域補正パラメータ算出部3と、複数顔繰り返し判定部21と、標準補正パラメータ算出部4と、補正パラメータ統合部22と、画像変換部5とを備える。図10に示す階調補正装置は、図1に示す第1の実施の形態に比べて、複数顔繰り返し判定部21と、補正パラメータ統合部22とが追加となっている点が異なる。
【0050】
複数顔繰り返し判定部21は、複数(N個)の顔が検出された場合に、N個の顔領域に対応する補正パラメータをそれぞれ算出するよう制御する。複数顔繰り返し判定部21は、N個の顔領域に対応する補正パラメータが算出されるまで、顔領域補正パラメータ算出部3に繰り返し指示を出す。補正パラメータ統合部22は、顔検出数が複数の場合に、それぞれの顔領域に対応して算出された補正パラメータを統合する。補正パラメータ統合部22は、例えば、各補正パラメータの平均を取ることによって補正パラメータを統合してもよい。また例えば、顔検出部1が顔検出信頼度を算出する場合には、以下の式(6)に示すように、重み付き平均によって統合してもよい。式(6)において、顔検出数をN、顔検出信頼度をL(N)、顔領域に対応して算出された補正パラメータ(ここでは、γ値)をγ(N)とする。
【0051】
【数1】
【0052】
また、複数顔による補正パラメータの統合例として、顔の大きさで加重平均してもよい。例えば、両目間隔を顔の大きさとして、以下の式(7)を用いて統合してもよい。式(7)において、D(N)は両目間隔を示す。両目間隔D(N)は、顔検出部1の出力から算出することができる。
【0053】
【数2】
【0054】
補正パラメータ統合部22は、統合した補正パラメータを統合補正パラメータとして出力する。また、補正パラメータ統合部22は、顔検出数Nが0の場合に、標準補正パラメータ算出部4が算出した補正パラメータが入力される場合には、その補正パラメータをそのまま統合補正パラメータとして出力してもよい。画像変換部5は、補正パラメータ統合部22から出力される統合補正パラメータを用いて画素値を変換する。
【0055】
なお、本実施の形態において、複数顔繰り返し判定部21および補正パラメータ統合部22は、プログラムに従って動作するCPUによって実現される。
【0056】
次に、図11を参照して本実施の形態の動作を説明する。図11は、第2の実施の形態による階調補正装置の動作例を示すフローチャートである。なお、ステップA1,A2およびステップA5,A6は、図9に示す第1の実施の形態と同様のため、説明省略している。ここでは、顔検出部1が顔検出処理(ステップA1)を行った際に、N個の顔が検出されたとする。顔領域補正パラメータ算出部3は、パラメータ算出制御部2からの指示を受けて、参照入力画像における各顔領域の輝度値に基づいて補正パラメータを算出する。
【0057】
複数顔繰り返し判定部21は、検出されたN個の顔領域全てについて、ステップA3とステップA4の動作を実施するように制御を行う。複数顔繰り返し判定部21は、顔領域補正パラメータ算出部3が1つの顔領域に対応する補正パラメータを算出しおえた際に、他の顔領域が存在するかを判断する(ステップA11)。他の顔が存在する場合には(ステップA11のYes)、次の顔領域に対応する補正パラメータの算出動作を実施するよう、顔領域補正パラメータ算出部3に指示を出す(ステップA3に戻る。)。他の顔が存在しない場合には、算出されたN個の顔に対応する補正パラメータを補正パラメータ統合部22に出力する。
【0058】
補正パラメータ統合部22は、N個の顔に対応する補正パラメータを統合し、統合補正パラメータを算出する(ステップA12)。補正パラメータ統合部22は、例えば、各補正パラメータの平均を取ることによって統合補正パラメータを算出する。また例えば、顔検出部1が顔検出信頼度を算出する場合には、顔検出信頼度や顔の大きさを用いて加重平均(重み付け平均)を取ることによって統合補正パラメータを算出してもよい。画像変換部5は、統合補正パラメータまたは標準補正パラメータ算出部4が算出した補正パラメータに基づいて入力画像の各画素値を変換する(ステップA5)。なお、補正パラメータ統合部22は、標準補正パラメータ算出部4が算出した補正パラメータが入力される場合には、その補正パラメータをそのまま統合補正パラメータとして出力してもよい。
【0059】
以上のように、本実施の形態によれば、画像中の全ての顔領域を重みづけしながら統合するので、画像全体のバランスを保った補正が可能となり、特定の顔の影響によって画像全体に補正の悪影響が及ぶのを防ぐことができる。
【0060】
実施の形態3.
次に、本発明の第3の実施の形態について図面を参照して説明する。図12は、第3の実施の形態による階調補正装置の構成例を示すブロック図である。図12に示す階調補正装置は、顔検出部1と、パラメータ算出制御部2と、顔領域補正パラメータ算出部3と、複数顔繰り返し判定部21と、標準補正パラメータ算出部4と、顔重点補正パラメータ算出部31と、顔重点画像変換部32とを備える。図12に示す階調補正装置は、図10に示す第2の実施の形態と比べて、補正パラメータ統合部22の代わりに顔重点補正パラメータ算出部31が、また画像変換部5の代わりに顔重点画像変換部32が追加となっている点が異なる。
【0061】
顔重点補正パラメータ算出部31は、顔領域補正パラメータ算出部3によって算出された各顔領域に対応する補正パラメータを用いて、各顔中心領域を重点的に補正するような補正パラメータマップを算出する。また、顔重点画像変換部32は、顔重点補正パラメータ算出部31が算出した補正パラメータマップに基づいて、特定領域を重点的に階調変換する。
【0062】
本実施の形態では、補正パラメータを画像中の座標値(x,y)に依存して変動する補正パラメータマップとして扱うことによって、顔領域の補正効果が大きくなるように設定することを可能とする。顔重点補正パラメータ算出部31は、各座標における補正パラメータ(ここでは、γ値)を以下の式(8)に示す関数Γ(x,y)として表す。以下、関数Γ(x,y)を補正パラメータマップ関数という。顔重点補正パラメータ算出部31は、検出された顔中心領域の座標に基づいて、補正パラメータマップ関数によって画像中の全座標における補正パラメータを算出する。
【0063】
γ=Γ(x,y) 式(8)
より具体的には、顔重点補正パラメータ算出部31は、検出された顔中心領域の座標およびそれらの補正パラメータに基づいて、画像中の全座標における補正パラメータを示す補正パラメータマップ関数Γ(x,y)を生成する。
【0064】
補正パラメータマップ関数Γ(x,y)の例として、以下の式(9)に示すような2次元ガウス分布関数を利用した関数がある。式(9)において、Nは顔検出数、γiはi(1≦i≦N)番目の顔領域に対応する補正パラメータ、(x0,y0)はi番目の顔領域の中心座標、σiはi番目の顔中心領域の大きさによって変化するパラメータ(顔中心領域の面積が大きいときはσiも大きい値、小さい時はσiも小さい値となるように設定される。)とする。
【0065】
【数3】
【0066】
式(9)では、補正パラメータマップ関数Γ(x,y)は、各顔領域に対応する補正パラメータγiに対して重み関数Wを用いて重みづけした後に総和を取る形式で定義されている。なお、重み関数Wは、顔の中心座標から離れるに従って低減するような関数であればよく、式(9)に示した形式に制限されない。また、重みづけ関数Wの出力値を予めテーブルとして記憶しておくことも可能である。
【0067】
図13に複数顔を含む入力画像の一例を示す。ここでは、顔検出部1によって、第1の顔中心領域101−1と第2の顔中心領域101−2とが検出されている。図13では、第1の顔中心領域101−1による補正の影響が支配的となる範囲を第1の顔影響範囲102−1として、第2の顔中心領域101−2による補正の影響が支配的となる範囲を第2の顔影響範囲102−2として示している。
【0068】
また、図14は、図13の顔検出結果に基づいて生成される補正パラメータマップ関数Γ(x,y)の一例をグラフ化した説明図である。図14では、第1の顔中心領域101−1に対応する補正パラメータを基に得られた補正パラメータ分布を第1の顔補正パラメータ分布103−1として、また、第2の顔中心領域101−2に対応する補正パラメータを基に得られた補正パラメータ分布を第2の顔補正パラメータ分布103−2として示している。
【0069】
図13に示すように、第1の顔中心領域101−1内の輝度値が高いので、図14の第1の顔補正パラメータ分布103−1における顔中心付近の補正パラメータ(ここでは、γ値)は、大きくなる。一方、第3の顔中心領域101−2内の輝度値は低いので、図14の第2の顔補正パラメータ分布103−2における顔中心付近の補正パラメータは、第1の補正パラメータ分布103−1に比べて小さくなる。
【0070】
また、顔重点画像変換部32は、顔重点補正パラメータ算出部31が生成した補正パラメータマップ関数Γ(x,y)を用いて、入力画像の各画素値を変換することによって入力画像全体の階調を補正する。顔重点画像変換部32は、入力画像の各画素を座標軸で捉え、各画素に対して、補正パラメータマップ関数Γ(x,y)が示すその座標における補正パラメータに基づいて、画素値に演算を施すことによって、画像値を変換する。
【0071】
顔重点画像変換部32は、入力画像の全ての座標に対して、その座標が示す画素値を変換することによって、入力画像全体の階調を補正する。なお、ある座標において補正パラメータマップ関数Γ(x,y)が補正なし(γ値なら0)を示す場合は、その座標が示す画素値の変換処理は行わない。また、顔重点画像変換部32は、顔検出数が0の場合は、第1の実施の形態と同様に、標準補正パラメータ算出部4が算出した補正パラメータを用いて入力画像の各画素値を変換する。
【0072】
なお、本実施の形態において、顔重点補正パラメータ算出部31および顔重点画像変換部32は、プログラムに従って動作するCPUによって実現される。
【0073】
以上のように、本実施の形態によれば、複数の顔それぞれに応じた補正パラメータを設定することができる。また、顔領域およびその近傍にのみ補正を施したり、複数の顔それぞれに応じた補正を施すことができるので、特定の顔の影響によって画像全体に補正の悪影響が及ぶのを防ぐことができる。
【0074】
また、各座標における補正量を算出する際に、補正量パラメータマップ関数を用いるので、画像合成用などの余計なフレームメモリを用いる必要がない。
【0075】
以上説明した実施形態では、画像に人物を含み、その画像から特定領域(specific area)として顔領域を抽出する場合について説明したが、画像に特定領域となる動物を含む場合、画像に特定領域となる建造物又は乗り物を含む場合、画像に特定領域として山や島等の自然物を含む場合など、特定領域は特に限定されない。上述した実施形態では、特定領域は入力画像を解析することで自動検出しているが、表示装置に画像を表示して手動で特定領域を指定してもよい。
【0076】
また各実施形態において、表示装置に画像を表示して手動で特定領域を指定する等により、画像の顔領域(特に中心領域)が抽出できれば、顔検出部1、顔中心領域設定部11は設けなくてもよい。また標準補正パラメータ算出部4はなくともよく、その場合パラメータ算出制御部2も設けなくともよい。すなわち、本発明の実施形態において、図16に示すような構成を取ることもできる。図16の構成においては、図2の顔中心領域設定部11の出力と同様の、画像の顔中心領域の情報を代表輝度算出部12に入力している。
【0077】
上述した実施形態の階調補正装置は、ビデオカメラ、デジタルカメラ、カメラ付き携帯電話、画像処理機能を備えたプリンタ等の画像機器(image equipment)に用いることができる。
【0078】
図17は、本発明の画像機器の実施形態としてのカメラ付き携帯電話の構成を示すブロック図である。画像の階調を補正するための階調補正プログラムはROM104に記憶され、図9に示すフローチャートに示す手順でCPU105により階調補正プログラムが実行される。RAM106には、入出力部103、送受信器101、又はCCD等の撮像素子107から入力された画像データや、プログラム実行に必要なデータが記憶される。入力された画像や階調補正後の画像出力は液晶表示部(LCD)等の表示部102に表示される。階調補正後の画像出力はRAM106に保存されたり、入出力部103を介してプリンタに出力されたり、送受信器101を通じて送信される。
【0079】
本発明はその精神または主張な特徴から逸脱することなく、他の種々の形で実施することができる。そのため、前述した各実施形態は単なる例示にすぎず、限定的に解釈されるべきではない。本発明の範囲は特許請求の範囲によって示すものであって、明細書本文にはなんら拘束されない。さらに、特許請求の範囲の均等範囲に属する変形や変更はすべて本発明の範囲内のものである。
【符号の説明】
【0080】
1 顔検出部
2 パラメータ算出制御部
3 顔領域補正パラメータ算出部
11 顔中心領域設定部
12 代表輝度算出部
13 補正パラメータ算出部
4 標準補正パラメータ算出部
5 画像変換部
21 複数顔繰り返し判定部
22 補正パラメータ統合部
31 顔重点補正パラメータ算出部
32 顔重点画像変換部
【技術分野】
【0001】
本発明は、画像の階調を補正する階調補正方法、階調補正装置、階調補正プログラム及び画像機器に関する。
【背景技術】
【0002】
画像の階調を補正する階調補正装置として、例えば、特許文献1に記載されている明度補正装置がある。特許文献1に記載の明度補正装置は、画像を幾つかの領域に分解して、分解した各小領域の平均輝度に基づいてパラメータを算出し、ガンマ補正を行うものである。
【0003】
また、人物画像の階調補正方法として、色情報に基づいて人肌領域を抽出し、人肌領域の色を、好ましい肌色となるよう予め定められたパラメータに基づいて補正する方法(例えば、特許文献2)がある。また、特許文献3には、顔検出手段を用いて画像処理を施す画像処理方法が記載されている。特許文献3に記載の画像処理方法は、顔検出手段により顔領域画像データSHを求め、SHの特性値に基づいて逆光等の画像状態を判断する。判断した画像状態に基づいて得られる重み係数によって所望の肌色画像と元画像とを重みづけ加算することによって画像処理を施す。また、特許文献4には、顔領域の濃度値が目標範囲に入るように濃度補正する画像処理方法が記載されている。
【0004】
また、特許文献5には、補正対象画像に添付された画像情報に基づいて補正パラメータを決定することにより、画像処理を施す画像処理方法が記載されている。特許文献5には、入力画像の縮小画像(プレビュー)データに基づいてガンマ補正値を決定することによって、適切な画像補正処理が短時間で可能となると記載されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平10−150566号公報(段落0013−0014)
【特許文献2】特開平11−267937号公報(段落0006−0008)
【特許文献3】特開平11−328359号公報(段落0016−0023)
【特許文献4】特開2000−196890号公報(段落0005)
【特許文献5】特開2000−137805号公報(段落0017−0018)
【発明の概要】
【発明が解決しようとする課題】
【0006】
例えば、画像が逆光下で撮影された人物画像である場合、特許文献1や特許文献2に記載の補正方法では、必ずしも視認性の良い人物画像に補正することができない。特許文献1に記載の明度補正装置は、画像中に人物が含まれるかどうかを判断していないため、画像全体として視認性が良くなるように補正できたとしても、人物画像として視認性が良いとは限らない。つまり、人物の肌色が好ましい肌色になるよう補正されるとは限らない。
また、特許文献2に記載の階調補正方法では、色情報を元にして人肌を検出しようとしているが、極度の逆光状態の場合、肌色が通常の分布から外れてしまう可能性がある。
【0007】
また、顔を検出する手段を備えたとしても、大容量メモリを要する演算が必要となり、処理時間が長くなるという問題がある。特許文献3に記載の画像処理方法では、所望の肌色に変換された顔画像と顔領域以外の背景画像とを重み付きで合成するために、画像データを保持するフレームメモリが必要だからである。また特許文献4に記載の画像処理方法についても、一旦濃度値に変換する必要があるため、画素毎の演算手段と、濃度画像を保存するメモリが必要だからである。
【0008】
また、特許文献5に記載の画像処理方法では、必ずしも最適な補正パラメータを決定できない。特許文献5に記載の画像処理方法は、ガンマ補正値を求めるための算出式として全画素の輝度平均Lvをもとに、gamma=In(0.5)/In(Lv)という計算式を挙げている。この計算式によると、輝度平均が一定となるように出力画像が生成される。従って、例えば、明るすぎる画像や暗すぎる画像を入力すると、過剰強調してしまい、かえって品質を損なってしまう。また、対数変換を必要としているため、計算自体に処理負荷がかかる。
【0009】
従って、本発明は、例え逆光下で撮影された人物画像であっても、視認性の良い人物画像に自動で階調補正することができる階調補正方法、階調補正装置および階調補正プログラムを提供することを目的とする。また、本発明は、階調補正の演算に必要なメモリ容量および演算回数を削減することも目的とする。ここで、視認性の良い人物画像とは、画像全体の階調バランスにおいて顔部分の肌色が好ましく映る明度をもつ画像をいう。
【課題を解決するための手段】
【0010】
本発明による階調補正方法は、画像の階調を補正する階調補正方法であって、
画像から抽出した該画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出するステップと、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の階調を補正するための補正パラメータを算出するステップと、
前記補正パラメータを用いて前記画像の画素値を変換するステップと、を含むことを特徴とする。なお、特定領域を抽出する際に参照する画像および代表輝度値を算出する際に参照する画像は、補正対象の画像と同じ内容を表している画像であれば、例えば、縮小画像であってもよい。
【0011】
本発明による階調補正装置は、画像の階調を補正する階調補正装置であって、
画像から抽出した該画像の特定領域に含まれる画素の輝度成分を示す値と、予め定められた輝度成分の境界値とに基づいて、前記画像の階調を補正するための補正パラメータを算出する特定領域補正パラメータ算出部と、
前記補正パラメータを用いて前記画像の画素値を変換する画素変換部と、を備えたことを特徴とする。
【0012】
また、本発明による階調補正プログラムは、画像の階調を補正するための階調補正プログラムであって、コンピュータに、画像から特定領域を抽出する処理、
前記特定領域に含まれる画素の輝度成分を示す値と、予め定められた輝度成分の境界値とに基づいて、画像の階調を補正するためのパラメータである補正パラメータを算出する処理、および
前記補正パラメータを用いて画像の画素値を変換する処理を実行させることを特徴とする。
【発明の効果】
【0013】
本発明によれば、入力画像の特定領域内に含まれる画素の輝度成分を示す値と、予め定められた輝度成分の境界値とに基づいて補正パラメータを算出するので、例えば、逆光下で撮影された顔が暗い画像(逆光画像)に対しては顔部分が明るくなるような階調補正を実現できる。また、逆光画像に対してだけでなく、例えば、順光下で撮影された特定領域の画像に対しては変動を抑えた階調補正を実現できる。なお、本発明において、補正パラメータとは、輝度階調を補正するための変換計算に用いるパラメータをいう。
【図面の簡単な説明】
【0014】
【図1】第1の実施の形態による階調補正装置の構成例を示すブロック図である。
【図2】顔領域補正パラメータ算出部3の構成例を示すブロック図である。
【図3】顔中心領域の設定例を示す説明図である。
【図4】γ補正によるトーンカーブの一例を示す説明図である。
【図5】代表輝度値からγ値への変換特性の一例を示す説明図である。
【図6】主観評価実験で得られた代表輝度値と最適γ値との関係を表すプロット図である。
【図7】トーンカーブの制御点移動量によって求まるトーンカーブの一例を示す説明図である。
【図8】代表輝度値からトーンカーブの制御点の移動量に変換するための変換テーブルの一例を示す説明図である。
【図9】第1の実施の形態による階調補正装置の動作例を示すフローチャートである。
【図10】第2の実施の形態による階調補正装置の構成例を示すブロック図である。
【図11】第2の実施の形態による階調補正装置の動作例を示すフローチャートである。
【図12】第3の実施の形態による階調補正装置の構成例を示すブロック図である。
【図13】複数顔を含む入力画像の一例を示す説明図である。
【図14】補正パラメータマップ関数をグラフ化した説明図である。
【図15】パーソナルコンピュータの一構成例を示すブロック図である。
【図16】他の実施の形態による階調補正装置の構成例を示すブロック図である。
【図17】本発明の画像機器の実施形態としてのカメラ付き携帯電話の構成を示すブロック図である。
【発明を実施するための形態】
【0015】
実施の形態1.
以下、本発明の実施の形態を図面を参照して説明する。図1は、本発明の第1の実施の形態による階調補正装置の構成例を示すブロック図である。図1に示す階調補正装置は、顔検出部1と、パラメータ算出制御部2と、顔領域補正パラメータ算出部3と、標準補正パラメータ算出部4と、画素変換部となる画像変換部5とを備える。階調補正装置は、例えばプログラムに従って動作するパーソナルコンピュータ等の情報処理装置によって実現される。ただし、ソフトウエアにより階調補正装置の機能が実現される場合に限らず、階調補正装置の各構成部を別々に又は一体化させて専用IC(ハードウエア)により構成することができる。なお、本実施の形態において、画像の階調を補正するための階調補正プログラムは、例えば、階調補正装置を実現する情報処理装置のハードディスク等の記憶装置に記憶される。
【0016】
図15はパーソナルコンピュータの一構成例を示すブロック図である。画像の階調を補正するための階調補正プログラムはハードディスク等のディスク装置204に記憶され、図9に示すフローチャートに示す手順でCPU205により階調補正プログラムが実行される。RAM206は入出力部203を通して入力された画像データやプログラム実行に必要なデータが記憶される。入力された画像や階調補正後の画像出力は液晶表示装置(LCD)等の表示部202に表示される。操作部201は例えばキーボードでプログラムの実行開始や中断を制御する。階調補正後の画像出力はディスク装置204に保存されたり、入出力部203を介してプリンタに出力されたり、入出力部203を介してネットワークを通じて送信される。なお、本発明は、上記階調補正プログラムを記録した、コンピュータ読み取り可能な記録媒体としても成立しえる。かかる記録媒体はコンピュータに内蔵されるハードディスク等の記録媒体に限らず、CDROM、DVD、フラッシュメモリ等のリムーバルな記録媒体も含まれる。
【0017】
顔検出部1は、入力画像を解析し、顔の有無および顔の位置を検出する。顔検出部1は、入力画像の画像データ(画像を数値化した情報)を参照し、パターン認識を用いて画像中の顔の有無を判断し、顔が検出された場合には、その顔の位置を検出する。顔検出部1は、顔の位置を示す情報として、例えば、入力画像における顔の特徴点の座標(例えば、両目位置座標)を出力する。
【0018】
顔検出部1は、例えば、濃淡パターンを用いたテンプレートマッチングを行うことによって、顔を検出してもよい。なお、上記に示したテンプレートマッチングの手法は、例えば、文献「小杉信,”個人識別のための多重ピラミッドを用いたシーン中の顔の探索・位置決め”,電子情報通信学会論文誌,1994年4月,Vol.J77−D−II,No.4,p.672−681」に記載されている。また例えば、固有ベクトル盗撮距離を用いて位置決めを行うことにより位置を検出することも可能である。なお、上記で示した位置決め手段は、例えば、文献「M.Turk,A.Pentland,”Face Recognition on Using Eigenfaces”,Proceedings of IEEE,CVPR91,June 1991,p.586−591」に記載されている。
【0019】
また、顔検出部1は、顔を検出した際に、検出した顔パターンの信頼度を示す顔検出信頼度を算出してもよい。顔検出信頼度は、顔を検出する際に得られるパターン認識におけるパターンの特徴量と入力画像の特徴量との差分を用いることができる。また、信頼度が高いほど大きい値となるよう差分の逆数を用いてもよい。なお、顔検出部1が解析する画像は、入力画像と同じサイズである必要はなく、顔が検出可能な程度に縮小された参照入力画像であってもよい。なお、顔検出部1が入力画像に縮小処理を施こして参照入力画像を生成してもよい。
【0020】
パラメータ算出制御部2は、顔検出部1の検出結果に応じて補正パラメータの算出方法を決定し、その方法を実施するよう制御する。パラメータ算出制御部2は、顔検出部1からの顔検出有無の情報を元に、どのように補正パラメータを算出するか(つまりどの手段(構成部)を用いて補正パラメータを算出するか)を制御する。本実施の形態では、パラメータ算出制御部2は、顔が未検出の場合には、標準補正パラメータ算出部4を用いて補正パラメータを算出するよう制御し、顔が検出された場合には、顔領域補正パラメータ算出部3を用いて補正パラメータを算出するよう制御する。
【0021】
顔領域補正パラメータ算出部3は、入力画像の顔領域の輝度成分に基づいて補正パラメータを算出する。なお、顔領域補正パラメータ算出部3は、入力画像の代わりに参照入力画像を使用して補正パラメータを算出することも可能である。顔領域補正パラメータ算出部3は、図2に示すように、顔中心領域設定部11と、代表輝度算出部12と、補正パラメータ算出部13とを含む。図2は、顔領域補正パラメータ算出部3の構成例を示すブロック図である。顔検出部1および顔中心領域設定部11とは顔領域抽出部となる。
【0022】
顔中心領域設定部11は、顔検出部1から出力される顔の特徴点の座標から、画像中における顔中心領域を設定する。顔中心領域とは、人間が顔を見る際に最も注視する領域であって、本実施の形態においては、およそ両目と口とによって囲まれた領域をいう。図3は、顔中心領域の設定例を示す説明図である。図3に示すように、顔中心領域101は、両目間隔wを基準にした矩形領域として定義することも可能である。顔中心領域設定部11は、例えば図3に示すように、顔中心領域として、両目を結んだ幅を両目間隔wとする場合に、両目位置を基準にして上に0.4w、下に0.8w伸ばした点によって囲まれた矩形領域を設定する。なお、顔中心領域は、矩形以外に楕円や任意の形状であってもよい。
【0023】
代表輝度算出部12は、顔中心領域に含まれる画素の輝度成分の代表値を算出する。輝度成分として、例えば、入力画像がカラー画像の場合は、XYZ座標系のY値を用いることができる。入力画像がグレー画像の場合は、画素値をそのまま用いてもよい。また、輝度成分の代表値としては、平均値や中央値、最大値や最小値などが利用可能だが、実験の結果、平均値を用いるのが最も精度が高い。以下、代表輝度算出部12が算出する輝度成分の代表値を代表輝度値という。
【0024】
補正パラメータ算出部13は、代表輝度算出部12が算出した代表輝度値に基づいて補正パラメータを算出する。また、補正パラメータ算出部13は、顔検出部1が顔検出信頼度を算出する場合には、代表輝度値と顔検出信頼度とに基づいて補正パラメータを算出することも可能である。
【0025】
本実施の形態では、補正パラメータとして、γ(ガンマ)補正におけるγ値や、トーンカーブの制御点移動量を用いる場合を例にとって説明する。γ補正とは、一般的には、画像の明るさの変化に対する電圧換算値の変化の比を示すγ値を、1に近づけるよう素子の特性等により生じる誤差等を修正することをいう。本実施の形態では、以下の式(1)で示される補正をγ補正と呼ぶ。式(1)において、R,G,Bは赤,緑,青(3原色)の光の強度を示し、R’,G’,B’はγ補正後のR,G,Bを示す。また、aは定数である。なお、式(1)に示すγ補正では、γ<1の場合に明るく、γ>1の場合に暗くなるよう補正される。
【0026】
R’=a(R)γ
G’=a(G)γ
B’=a(B)γ 式(1)
また、R,G,Bが0〜255を範囲とする場合には、γ補正は、以下の式(2)で表すことができる。
【0027】
R’=255・(R/255)γ
G’=255・(G/255)γ
B’=255・(B/255)γ 式(2)
また、図4は、γ補正によるトーンカーブの一例を示す説明図である。トーンカーブとは、入力RGB値(補正前の画素値)を横軸、出力RGB値(補正後の画素値)を縦軸にとったときの変換特性カーブをいう。γ補正においては、R,G,Bそれぞれに対して、図4に示す変換特性カーブを使用する。図4に示すトーンカーブは、45度の直線に比べて上方に持ち上げられている状態であるため、γ補正によって、入力画像が明るくなるよう補正されたことを示している。
【0028】
補正パラメータとしてγ値を算出する場合には、代表輝度値Yfからγ値へ変換する際の特性(以下、変換特性という。)に基づいて、代表輝度値からγ値を算出する。図5は、代表輝度値Yfからγ値への変換特性の一例を示す説明図である。図5では、本発明が用いる変換特性の例として、線形変換特性41と、非線形変換特性42とを示している。
【0029】
補正パラメータ算出部13は、例えば、線形変換特性41に基づいて、直線の一次式を用いて(一次変換により)γ値を算出する。また例えば、非線形変換特性42に基づいて、非線形関数またはルックアップテーブルを用いてγ値を算出してもよい。ここでいうルックアップテーブル(以下、ルックアップテーブル1という。)とは、代表輝度値のとりうる値それぞれに対し、非線形変換特性21に基づいて定めたγ値を登録したテーブルである。
【0030】
以下の式(3)は、補正パラメータ算出部13が線形変換特性41に基づいてγ値を算出するために用いる変換式の一例である。なお、式(3)において、α,βは定数である。
【0031】
γ=αYf+β 式(3)
また、補正パラメータ算出部13は、顔検出部1が顔検出信頼度Lを算出する場合には、例えば、以下の式(4)を用いて重みづけされたγ値(γ’)を算出することも可能である。式(4)では、顔検出の信頼度が高い場合には代表輝度値に基づいて算出したγ値に大きい重みづけをし、逆に信頼度が低い場合にはデフォルトパラメータであるγ0の重み付けを大きくするよう定義している。なお、式(4)において、顔検出信頼度Lは、0≦L≦1の実数とし、値が大きい程信頼度が高いことを示す。また、式(5)は、式(4)を、γ値の算出方法を限定しない表現に書き換えた式である。
【0032】
γ’=L×(αYf+β)+(1−L)×γ0 式(4)
γ’=L×γ+(1−L)×γ0 式(5)
なお、本発明においては、変換特性に一定の基準を設ける。すなわち、図5に示すように、所定のレベル(以下、境界輝度レベルという。)を基準にして、代表輝度値Yfが低くなるに従って明るく(γ値を小さく)、代表輝度値が高くなるに従って暗く(γ値を大きく)するような特性を備える変換特性に基づいて補正パラメータを算出する。なお、境界輝度レベルは、使用する地域に応じて肌の色が好ましく映る輝度値に予め定めておく。
【0033】
なお、計算式に用いる定数やルックアップテーブル1の内容は、必要に応じて階調補正装置が備える記憶装置に予め記憶しておく。また、変換特性は、予め複数の変換特性を利用可能にしておき、利用者が指定できるようにしてもよい。なお、境界輝度値が利用者により調整される場合には、記憶しておいた定数やルックアップテーブル1の内容は境界輝度値に応じて変更される。
【0034】
図6は、主観評価実験で得られた代表輝度値Yfと最適γ値との関係を表すプロット図である。ここで、最適γ値とは、評価者に手動で人物画像のγ補正を調整させた場合に、評価者が最も好ましいと思う画像に補正されたときのγ値をいう。図6に示すように、顔中心領域の代表輝度値Yfと最適γ値とは正の相関があり、代表輝度値Yfが高ければ高いほど画像を暗く補正し、代表輝度値Yfが低ければ低いほど画像を明るくする補正をする傾向があることがわかる。従って、図6の実験結果は、本発明が定めた基準を備えた変換特性に基づいて補正パラメータを算出することによって、最適なγ補正が実現できることを裏付けている。
【0035】
また、補正パラメータとしてトーンカーブの制御点移動量を求めてもよい。トーンカーブの制御点移動量とは、図7に示すようなトーンカーブを描くグラフにおいて、制御点として定めた輝度値の、45度の直線を基準にした縦軸方向の移動量であって、すなわち所定の入力輝度値の補正量を示す情報である。図7は、トーンカーブの制御点移動量(d1,d2,d3)によって求まるトーンカーブの一例を示す説明図である。トーンカーブの制御点の移動量は、図8に示すように、代表輝度値のとりうる値に対応する各制御点の移動量を登録した変換テーブルを用いて求めることができる。図8は、代表輝度値からトーンカーブの制御点移動量に変換するための変換テーブルの一例を示す説明図である。
【0036】
なお、制御点移動量においても、境界輝度レベルを基準に、代表輝度値Yfが低くなるに従って明るく(プラス方向に大きく)、代表輝度値Yfが高くなるに従って暗く(マイナス方向に大きく)移動するような特性を備える変換テーブルを用いる。なお、ここでいう制御点移動量の大小は、各制御点の移動量ではなく、輝度値全体の補正量を見た際の大小を表している。なお、図7では、制御点として3点定めているが、3点に限定されない。つまり、各制御点移動量から上記で示した特性に基づくトーンカーブの近似式を導出可能であれば、例えば中間点1点であっても、また3点以上であってもよい。なお、変換テーブルの内容は、階調補正装置が備える記憶装置に予め記憶しておく。変換テーブルには、既に説明したγ値から描かれるγ補正によるトーンカーブの値を登録してもよい。なお、ここまでトーンカーブの制御点移動量を縦軸方向の移動量として説明したが、制御点移動量は、横軸方向の移動量として定義することも可能である。横軸方向の移動量として定義する場合には、左方向に大きく移動すると明るく、右方向に大きく移動すると暗く画像が変換されることになる。
【0037】
標準補正パラメータ算出部4は、入力画像の画像データを用いて標準的な補正パラメータを算出する。標準補正パラメータ算出部4は、入力画像全体または所定の評価領域内の画像データに基づいて、補正パラメータを算出する。なお、標準補正パラメータ算出部4においても、入力画像の代わりに参照入力画像を用いて補正パラメータを算出することが可能である。標準補正パラメータ算出部4は、例えば、画像内容に関係なく、画像を幾つかの領域に分割して各小領域の輝度値の平均値に基づいて算出してもよい。また、平均値だけではなく、最小値や最大値、最小値と最大値の差分値等に基づいて算出してもよい。
【0038】
画像変換部5は、補正パラメータに基づいて入力画像の各画素値を変換することによって入力画像全体の階調を補正する。画像変換部5は、画素値に補正パラメータを用いた演算を施すことによって、画像値を変換する。例えば、補正パラメータとしてγ値が算出される場合、画像変換部5は、γ補正式(2)を用いてγ補正の対象となる成分(例えば、R,G,B)のとりうる値(例えば、0〜255)に対し、γ補正後の値を計算し、その値を所定の記憶領域に登録することでルックアップテーブルを作成する。ここでいうルックアップテーブル(以下、ルックアップテーブル2という。)とは、階調補正の対象となる成分のとりうる値に対し、補正パラメータを用いて算出される補正後の値を登録したテーブルである。なお、式(2)に示すとおり、γ補正の対象となる成分R,G,Bは同じ計算式を用いて補正されるので、ルックアップテーブル2は共通のテーブルとすることができる。このように、画素値の成分のうち補正対象となる成分のとりうる値に対し補正パラメータを用いて計算した補正後の値を登録したルックアップテーブルを用いて画素値の変換を行うので、画素毎に補正量を求める演算を行う必要がなく、また、出力サイズの画像合成を行わない為、大容量メモリを必要とせず、高速な補正処理が可能である。
【0039】
また、補正パラメータとしてトーンカーブの制御点移動量が算出される場合には、画像変換部5は、例えば、全制御点移動量に基づいてトーンカーブの近似式を求め、求めた近似式を用いて階調補正の対象となる成分のとりうる値(例えば、0〜255)に対し、補正後の値を算出してルックアップテーブル2を作成する。トーンカーブの近似式は、直線補間やスプライン補間等の補間法を用いて各制御点移動量が示す補正後の輝度値から求めることができる。
【0040】
つまり、画像変換部5は、階調補正の対象となる成分のとりうる値に対し、補正パラメータを用いて算出される補正後の値を登録したルックアップテーブル2を作成する。画像変換部5は、作成したルックアップテーブル2を用いて、入力画像の画素毎に、その画素値の成分のうち階調補正の対象となる成分の値を入力としてテーブル変換を行うことによって、入力画像全体の階調を補正する。
【0041】
なお、本実施の形態において、顔検出部1、パラメータ算出制御部2、顔領域補正パラメータ算出部3、顔中心領域設定部11、代表輝度算出部12、補正パラメータ算出部13、標準補正パラメータ算出部4および画像変換部5は、プログラムに従って動作するCPUによって実現される。
【0042】
次に、図9を参照して本実施の形態の動作について説明する。図9は、本実施の形態による階調補正装置の動作例を示すフローチャートである。まず、補正対象の入力画像が入力されると、顔検出部1は、顔検出処理を行う(ステップA1)。顔検出部1は、入力画像が縮小された参照入力画像を参照し、パターン認識を用いて顔を検出する。また、顔検出部1は、顔が検出された場合には、顔の位置を検出する。顔検出部1は、顔の検出結果および顔の位置を示す情報(例えば、両目位置座標)を出力する。なお、顔検出部1は、顔を検出する際に合わせて顔検出信頼度を算出してもよい。パラメータ算出制御部2は、顔が検出されたか否かを判断する(ステップA2)。パラメータ算出制御部2は、顔が検出された場合には(ステップA2のYes)、顔領域補正パラメータ算出部3に補正パラメータの算出指示をだす。
【0043】
顔領域補正パラメータ算出部3は、パラメータ算出制御部2からの指示をうけて、参照入力画像における顔領域の輝度値に基づいて補正パラメータを算出する。まず、顔中心領域設定部11が、顔検出部1が検出した顔の位置を示す情報から参照入力画像における顔中心領域を定める。次に、代表輝度算出部12は、顔中心領域設定部11が定めた顔中心領域に含まれる画素値から代表輝度値を算出する(ステップA3)。代表輝度算出部12は、例えば、顔中心領域に含まれる画素の輝度値の平均値を代表輝度値として求める。
【0044】
補正パラメータ算出部13は、代表輝度算出部12が算出した代表輝度値に基づいて補正パラメータを算出する(ステップA4)。補正パラメータ算出部13は、例えば、境界輝度レベルを基準に代表輝度値に応じて補正方向および補正量が変化する変換特性を備えた直線の一次式や非線形関数またはルックアップテーブル1を用いて、代表輝度値に基づくγ補正におけるγ値を算出してもよい。また例えば、境界輝度レベルを基準に代表輝度値に応じて補正方向および補正量が変化する特性を備えた変換テーブルを用いて代表輝度値に基づくトーンカーブの制御点移動量を算出してもよい。また、顔検出部1が顔検出信頼度を算出する場合には、補正パラメータ算出部13は、算出した補正パラメータとデフォルトパラメータとの間で顔検出信頼度による重みづけをしてもよい。
【0045】
また、パラメータ算出制御部2は、顔が検出されなかった場合には(ステップA2のNo)、標準補正パラメータ算出部4に補正パラメータの算出指示をだす。標準補正パラメータ算出部4は、参照入力画像の画像データを用いて標準的な補正パラメータを算出する。標準補正パラメータ算出部4は、例えば、参照入力画像の所定の領域に含まれる画素値に基づいて補正パラメータを算出する(ステップA6)。
【0046】
画像変換部5は、算出された補正パラメータを用いて入力画像の各画素値を変換する(ステップA5)。画像変換部5は、補正パラメータとしてγ値が算出される場合には、γ補正式を用いてγ補正の対象となる画素値の成分のとりうる値に対して、γ補正後の値を算出してルックアップテーブル2を作成する。また、補正パラメータとしてトーンカーブの制御点移動量が算出される場合には、全制御点移動量に基づいてトーンカーブの近似式を求め、求めた近似式を用いて階調補正の対象となる成分のとりうる値に対して、補正後の値を算出してルックアップテーブル2を作成する。次に、画像変換部5は、入力画像の画素毎に、その画素値の階調補正の対象となる成分の値を、作成したルックアップテーブルを用いてテーブル変換を行うことによって更新する。画像変換部5は、入力画像の全画素の画素値を変換することによって、入力画像の階調を補正する。
【0047】
以上のように、本実施の形態によれば、画像中の顔を検出し、その顔の中心領域の輝度情報(代表輝度値)に基づいて算出する補正パラメータを用いて画像全体の階調を補正するため、顔が暗く写っている逆光画像に対しては、顔が明るくなるような階調補正を実現することができる。また、境界輝度レベルを基準に代表輝度値に応じて補正方向および補正量を変化させる特性に基づいて補正パラメータを算出するので、逆光画像に対してだけでなく、順光下で撮影された顔画像に対しては変動を抑えた階調補正を実現できる。つまり、肌の色が好ましく映る輝度値に予め定めた境界輝度レベルを基準にした代表輝度値に基づく階調補正を行うので、視認性の良い人物画像を提供することができる。
【0048】
また、参照入力画像のみを用いて補正パラメータを算出することもでき、出力サイズの画像合成を行わないため、大容量メモリを必要としない。また、補正パラメータの算出の際に、対数変換等の複雑な演算を用いず、かつ画像変換の際にルックアップテーブル2を作成してテーブル変換を行うので、高速に処理を実行できる。
【0049】
実施の形態2.
次に、本発明の第2の実施の形態について図面を参照して説明する。図10は、第2の実施の形態による階調補正装置の構成例を示すブロック図である。図10に示す階調補正装置は、顔検出部1と、パラメータ算出制御部2と、顔領域補正パラメータ算出部3と、複数顔繰り返し判定部21と、標準補正パラメータ算出部4と、補正パラメータ統合部22と、画像変換部5とを備える。図10に示す階調補正装置は、図1に示す第1の実施の形態に比べて、複数顔繰り返し判定部21と、補正パラメータ統合部22とが追加となっている点が異なる。
【0050】
複数顔繰り返し判定部21は、複数(N個)の顔が検出された場合に、N個の顔領域に対応する補正パラメータをそれぞれ算出するよう制御する。複数顔繰り返し判定部21は、N個の顔領域に対応する補正パラメータが算出されるまで、顔領域補正パラメータ算出部3に繰り返し指示を出す。補正パラメータ統合部22は、顔検出数が複数の場合に、それぞれの顔領域に対応して算出された補正パラメータを統合する。補正パラメータ統合部22は、例えば、各補正パラメータの平均を取ることによって補正パラメータを統合してもよい。また例えば、顔検出部1が顔検出信頼度を算出する場合には、以下の式(6)に示すように、重み付き平均によって統合してもよい。式(6)において、顔検出数をN、顔検出信頼度をL(N)、顔領域に対応して算出された補正パラメータ(ここでは、γ値)をγ(N)とする。
【0051】
【数1】
【0052】
また、複数顔による補正パラメータの統合例として、顔の大きさで加重平均してもよい。例えば、両目間隔を顔の大きさとして、以下の式(7)を用いて統合してもよい。式(7)において、D(N)は両目間隔を示す。両目間隔D(N)は、顔検出部1の出力から算出することができる。
【0053】
【数2】
【0054】
補正パラメータ統合部22は、統合した補正パラメータを統合補正パラメータとして出力する。また、補正パラメータ統合部22は、顔検出数Nが0の場合に、標準補正パラメータ算出部4が算出した補正パラメータが入力される場合には、その補正パラメータをそのまま統合補正パラメータとして出力してもよい。画像変換部5は、補正パラメータ統合部22から出力される統合補正パラメータを用いて画素値を変換する。
【0055】
なお、本実施の形態において、複数顔繰り返し判定部21および補正パラメータ統合部22は、プログラムに従って動作するCPUによって実現される。
【0056】
次に、図11を参照して本実施の形態の動作を説明する。図11は、第2の実施の形態による階調補正装置の動作例を示すフローチャートである。なお、ステップA1,A2およびステップA5,A6は、図9に示す第1の実施の形態と同様のため、説明省略している。ここでは、顔検出部1が顔検出処理(ステップA1)を行った際に、N個の顔が検出されたとする。顔領域補正パラメータ算出部3は、パラメータ算出制御部2からの指示を受けて、参照入力画像における各顔領域の輝度値に基づいて補正パラメータを算出する。
【0057】
複数顔繰り返し判定部21は、検出されたN個の顔領域全てについて、ステップA3とステップA4の動作を実施するように制御を行う。複数顔繰り返し判定部21は、顔領域補正パラメータ算出部3が1つの顔領域に対応する補正パラメータを算出しおえた際に、他の顔領域が存在するかを判断する(ステップA11)。他の顔が存在する場合には(ステップA11のYes)、次の顔領域に対応する補正パラメータの算出動作を実施するよう、顔領域補正パラメータ算出部3に指示を出す(ステップA3に戻る。)。他の顔が存在しない場合には、算出されたN個の顔に対応する補正パラメータを補正パラメータ統合部22に出力する。
【0058】
補正パラメータ統合部22は、N個の顔に対応する補正パラメータを統合し、統合補正パラメータを算出する(ステップA12)。補正パラメータ統合部22は、例えば、各補正パラメータの平均を取ることによって統合補正パラメータを算出する。また例えば、顔検出部1が顔検出信頼度を算出する場合には、顔検出信頼度や顔の大きさを用いて加重平均(重み付け平均)を取ることによって統合補正パラメータを算出してもよい。画像変換部5は、統合補正パラメータまたは標準補正パラメータ算出部4が算出した補正パラメータに基づいて入力画像の各画素値を変換する(ステップA5)。なお、補正パラメータ統合部22は、標準補正パラメータ算出部4が算出した補正パラメータが入力される場合には、その補正パラメータをそのまま統合補正パラメータとして出力してもよい。
【0059】
以上のように、本実施の形態によれば、画像中の全ての顔領域を重みづけしながら統合するので、画像全体のバランスを保った補正が可能となり、特定の顔の影響によって画像全体に補正の悪影響が及ぶのを防ぐことができる。
【0060】
実施の形態3.
次に、本発明の第3の実施の形態について図面を参照して説明する。図12は、第3の実施の形態による階調補正装置の構成例を示すブロック図である。図12に示す階調補正装置は、顔検出部1と、パラメータ算出制御部2と、顔領域補正パラメータ算出部3と、複数顔繰り返し判定部21と、標準補正パラメータ算出部4と、顔重点補正パラメータ算出部31と、顔重点画像変換部32とを備える。図12に示す階調補正装置は、図10に示す第2の実施の形態と比べて、補正パラメータ統合部22の代わりに顔重点補正パラメータ算出部31が、また画像変換部5の代わりに顔重点画像変換部32が追加となっている点が異なる。
【0061】
顔重点補正パラメータ算出部31は、顔領域補正パラメータ算出部3によって算出された各顔領域に対応する補正パラメータを用いて、各顔中心領域を重点的に補正するような補正パラメータマップを算出する。また、顔重点画像変換部32は、顔重点補正パラメータ算出部31が算出した補正パラメータマップに基づいて、特定領域を重点的に階調変換する。
【0062】
本実施の形態では、補正パラメータを画像中の座標値(x,y)に依存して変動する補正パラメータマップとして扱うことによって、顔領域の補正効果が大きくなるように設定することを可能とする。顔重点補正パラメータ算出部31は、各座標における補正パラメータ(ここでは、γ値)を以下の式(8)に示す関数Γ(x,y)として表す。以下、関数Γ(x,y)を補正パラメータマップ関数という。顔重点補正パラメータ算出部31は、検出された顔中心領域の座標に基づいて、補正パラメータマップ関数によって画像中の全座標における補正パラメータを算出する。
【0063】
γ=Γ(x,y) 式(8)
より具体的には、顔重点補正パラメータ算出部31は、検出された顔中心領域の座標およびそれらの補正パラメータに基づいて、画像中の全座標における補正パラメータを示す補正パラメータマップ関数Γ(x,y)を生成する。
【0064】
補正パラメータマップ関数Γ(x,y)の例として、以下の式(9)に示すような2次元ガウス分布関数を利用した関数がある。式(9)において、Nは顔検出数、γiはi(1≦i≦N)番目の顔領域に対応する補正パラメータ、(x0,y0)はi番目の顔領域の中心座標、σiはi番目の顔中心領域の大きさによって変化するパラメータ(顔中心領域の面積が大きいときはσiも大きい値、小さい時はσiも小さい値となるように設定される。)とする。
【0065】
【数3】
【0066】
式(9)では、補正パラメータマップ関数Γ(x,y)は、各顔領域に対応する補正パラメータγiに対して重み関数Wを用いて重みづけした後に総和を取る形式で定義されている。なお、重み関数Wは、顔の中心座標から離れるに従って低減するような関数であればよく、式(9)に示した形式に制限されない。また、重みづけ関数Wの出力値を予めテーブルとして記憶しておくことも可能である。
【0067】
図13に複数顔を含む入力画像の一例を示す。ここでは、顔検出部1によって、第1の顔中心領域101−1と第2の顔中心領域101−2とが検出されている。図13では、第1の顔中心領域101−1による補正の影響が支配的となる範囲を第1の顔影響範囲102−1として、第2の顔中心領域101−2による補正の影響が支配的となる範囲を第2の顔影響範囲102−2として示している。
【0068】
また、図14は、図13の顔検出結果に基づいて生成される補正パラメータマップ関数Γ(x,y)の一例をグラフ化した説明図である。図14では、第1の顔中心領域101−1に対応する補正パラメータを基に得られた補正パラメータ分布を第1の顔補正パラメータ分布103−1として、また、第2の顔中心領域101−2に対応する補正パラメータを基に得られた補正パラメータ分布を第2の顔補正パラメータ分布103−2として示している。
【0069】
図13に示すように、第1の顔中心領域101−1内の輝度値が高いので、図14の第1の顔補正パラメータ分布103−1における顔中心付近の補正パラメータ(ここでは、γ値)は、大きくなる。一方、第3の顔中心領域101−2内の輝度値は低いので、図14の第2の顔補正パラメータ分布103−2における顔中心付近の補正パラメータは、第1の補正パラメータ分布103−1に比べて小さくなる。
【0070】
また、顔重点画像変換部32は、顔重点補正パラメータ算出部31が生成した補正パラメータマップ関数Γ(x,y)を用いて、入力画像の各画素値を変換することによって入力画像全体の階調を補正する。顔重点画像変換部32は、入力画像の各画素を座標軸で捉え、各画素に対して、補正パラメータマップ関数Γ(x,y)が示すその座標における補正パラメータに基づいて、画素値に演算を施すことによって、画像値を変換する。
【0071】
顔重点画像変換部32は、入力画像の全ての座標に対して、その座標が示す画素値を変換することによって、入力画像全体の階調を補正する。なお、ある座標において補正パラメータマップ関数Γ(x,y)が補正なし(γ値なら0)を示す場合は、その座標が示す画素値の変換処理は行わない。また、顔重点画像変換部32は、顔検出数が0の場合は、第1の実施の形態と同様に、標準補正パラメータ算出部4が算出した補正パラメータを用いて入力画像の各画素値を変換する。
【0072】
なお、本実施の形態において、顔重点補正パラメータ算出部31および顔重点画像変換部32は、プログラムに従って動作するCPUによって実現される。
【0073】
以上のように、本実施の形態によれば、複数の顔それぞれに応じた補正パラメータを設定することができる。また、顔領域およびその近傍にのみ補正を施したり、複数の顔それぞれに応じた補正を施すことができるので、特定の顔の影響によって画像全体に補正の悪影響が及ぶのを防ぐことができる。
【0074】
また、各座標における補正量を算出する際に、補正量パラメータマップ関数を用いるので、画像合成用などの余計なフレームメモリを用いる必要がない。
【0075】
以上説明した実施形態では、画像に人物を含み、その画像から特定領域(specific area)として顔領域を抽出する場合について説明したが、画像に特定領域となる動物を含む場合、画像に特定領域となる建造物又は乗り物を含む場合、画像に特定領域として山や島等の自然物を含む場合など、特定領域は特に限定されない。上述した実施形態では、特定領域は入力画像を解析することで自動検出しているが、表示装置に画像を表示して手動で特定領域を指定してもよい。
【0076】
また各実施形態において、表示装置に画像を表示して手動で特定領域を指定する等により、画像の顔領域(特に中心領域)が抽出できれば、顔検出部1、顔中心領域設定部11は設けなくてもよい。また標準補正パラメータ算出部4はなくともよく、その場合パラメータ算出制御部2も設けなくともよい。すなわち、本発明の実施形態において、図16に示すような構成を取ることもできる。図16の構成においては、図2の顔中心領域設定部11の出力と同様の、画像の顔中心領域の情報を代表輝度算出部12に入力している。
【0077】
上述した実施形態の階調補正装置は、ビデオカメラ、デジタルカメラ、カメラ付き携帯電話、画像処理機能を備えたプリンタ等の画像機器(image equipment)に用いることができる。
【0078】
図17は、本発明の画像機器の実施形態としてのカメラ付き携帯電話の構成を示すブロック図である。画像の階調を補正するための階調補正プログラムはROM104に記憶され、図9に示すフローチャートに示す手順でCPU105により階調補正プログラムが実行される。RAM106には、入出力部103、送受信器101、又はCCD等の撮像素子107から入力された画像データや、プログラム実行に必要なデータが記憶される。入力された画像や階調補正後の画像出力は液晶表示部(LCD)等の表示部102に表示される。階調補正後の画像出力はRAM106に保存されたり、入出力部103を介してプリンタに出力されたり、送受信器101を通じて送信される。
【0079】
本発明はその精神または主張な特徴から逸脱することなく、他の種々の形で実施することができる。そのため、前述した各実施形態は単なる例示にすぎず、限定的に解釈されるべきではない。本発明の範囲は特許請求の範囲によって示すものであって、明細書本文にはなんら拘束されない。さらに、特許請求の範囲の均等範囲に属する変形や変更はすべて本発明の範囲内のものである。
【符号の説明】
【0080】
1 顔検出部
2 パラメータ算出制御部
3 顔領域補正パラメータ算出部
11 顔中心領域設定部
12 代表輝度算出部
13 補正パラメータ算出部
4 標準補正パラメータ算出部
5 画像変換部
21 複数顔繰り返し判定部
22 補正パラメータ統合部
31 顔重点補正パラメータ算出部
32 顔重点画像変換部
【特許請求の範囲】
【請求項1】
画像の階調を補正する階調補正装置であって、
前記画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出する代表輝度値算出部と、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の画素値の入出力特性を示すトーンカーブ上の代表点における補正量である補正パラメータを算出する補正パラメータ算出部と、
前記補正パラメータに基づいて前記トーンカーブの近似式を求め、該近似式を用いて前記画像の画素値を変換する画素変換部と、を備えることを特徴とする階調補正装置。
【請求項2】
画像の階調を補正する階調補正装置であって、
前記画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出する代表輝度値算出部と、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の階調をγ補正するためのγ値である補正パラメータを前記代表輝度値の一次変換により算出する補正パラメータ算出部と、
前記補正パラメータを用いて前記画像の画素値を変換する画素変換部と、を備えることを特徴とする階調補正装置。
【請求項3】
画像の階調を補正する階調補正装置であって、
前記画像の複数の顔領域のそれぞれに含まれる画素の輝度成分を代表する代表輝度値を算出する代表輝度値算出部と、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の複数の顔領域の階調を補正するための複数の補正パラメータを算出し、前記複数の顔領域のそれぞれの大きさに基づいて複数の補正パラメータを統合する補正パラメータ算出部と、
前記統合された補正パラメータを用いて前記画像の画素値を変換する画素変換部と、を備えることを特徴とする階調補正装置。
【請求項4】
画像の階調を補正する階調補正方法であって、
前記画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出するステップと、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の画素値の入出力特性を示すトーンカーブ上の代表点における補正量である補正パラメータを算出するステップと、
前記補正パラメータに基づいて前記トーンカーブの近似式を求め、該近似式を用いて前記画像の画素値を変換するステップと、を備えることを特徴とする階調補正方法。
【請求項5】
画像の階調を補正する階調補正方法であって、
前記画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出するステップと、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の階調をγ補正するためのγ値である補正パラメータを前記代表輝度値の一次変換により算出するステップと、
前記補正パラメータを用いて前記画像の画素値を変換するステップと、を備えることを特徴とする階調補正方法。
【請求項6】
画像の階調を補正する階調補正方法であって、
前記画像の複数の顔領域のそれぞれに含まれる画素の輝度成分を代表する代表輝度値を算出するステップと、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の複数の顔領域の階調を補正するための複数の補正パラメータを算出し、前記複数の顔領域のそれぞれの大きさに基づいて複数の補正パラメータを統合するステップと、
前記統合された補正パラメータを用いて前記画像の画素値を変換するステップと、を備えることを特徴とする階調補正方法。
【請求項7】
画像の階調を補正するための階調補正プログラムであって、
コンピュータに、
前記画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出する処理と、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の画素値の入出力特性を示すトーンカーブ上の代表点における補正量である補正パラメータを算出する処理と、
前記補正パラメータに基づいて前記トーンカーブの近似式を求め、該近似式を用いて前記画像の画素値を変換する処理と、を実行させるための階調補正プログラム。
【請求項8】
画像の階調を補正するための階調補正プログラムであって、
コンピュータに、
前記画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出する処理と、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の階調をγ補正するためのγ値である補正パラメータを前記代表輝度値の一次変換により算出する処理と、
前記補正パラメータを用いて前記画像の画素値を変換する処理と、を実行させるための階調補正プログラム。
【請求項9】
画像の階調を補正するための階調補正プログラムであって、
コンピュータに、
前記画像の複数の顔領域のそれぞれに含まれる画素の輝度成分を代表する代表輝度値を算出する処理と、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の複数の顔領域の階調を補正するための複数の補正パラメータを算出し、前記複数の顔領域のそれぞれの大きさに基づいて複数の補正パラメータを統合する処理と、
前記統合された補正パラメータを用いて前記画像の画素値を変換する処理と、
を実行させるための階調補正プログラム。
【請求項1】
画像の階調を補正する階調補正装置であって、
前記画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出する代表輝度値算出部と、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の画素値の入出力特性を示すトーンカーブ上の代表点における補正量である補正パラメータを算出する補正パラメータ算出部と、
前記補正パラメータに基づいて前記トーンカーブの近似式を求め、該近似式を用いて前記画像の画素値を変換する画素変換部と、を備えることを特徴とする階調補正装置。
【請求項2】
画像の階調を補正する階調補正装置であって、
前記画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出する代表輝度値算出部と、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の階調をγ補正するためのγ値である補正パラメータを前記代表輝度値の一次変換により算出する補正パラメータ算出部と、
前記補正パラメータを用いて前記画像の画素値を変換する画素変換部と、を備えることを特徴とする階調補正装置。
【請求項3】
画像の階調を補正する階調補正装置であって、
前記画像の複数の顔領域のそれぞれに含まれる画素の輝度成分を代表する代表輝度値を算出する代表輝度値算出部と、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の複数の顔領域の階調を補正するための複数の補正パラメータを算出し、前記複数の顔領域のそれぞれの大きさに基づいて複数の補正パラメータを統合する補正パラメータ算出部と、
前記統合された補正パラメータを用いて前記画像の画素値を変換する画素変換部と、を備えることを特徴とする階調補正装置。
【請求項4】
画像の階調を補正する階調補正方法であって、
前記画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出するステップと、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の画素値の入出力特性を示すトーンカーブ上の代表点における補正量である補正パラメータを算出するステップと、
前記補正パラメータに基づいて前記トーンカーブの近似式を求め、該近似式を用いて前記画像の画素値を変換するステップと、を備えることを特徴とする階調補正方法。
【請求項5】
画像の階調を補正する階調補正方法であって、
前記画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出するステップと、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の階調をγ補正するためのγ値である補正パラメータを前記代表輝度値の一次変換により算出するステップと、
前記補正パラメータを用いて前記画像の画素値を変換するステップと、を備えることを特徴とする階調補正方法。
【請求項6】
画像の階調を補正する階調補正方法であって、
前記画像の複数の顔領域のそれぞれに含まれる画素の輝度成分を代表する代表輝度値を算出するステップと、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の複数の顔領域の階調を補正するための複数の補正パラメータを算出し、前記複数の顔領域のそれぞれの大きさに基づいて複数の補正パラメータを統合するステップと、
前記統合された補正パラメータを用いて前記画像の画素値を変換するステップと、を備えることを特徴とする階調補正方法。
【請求項7】
画像の階調を補正するための階調補正プログラムであって、
コンピュータに、
前記画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出する処理と、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の画素値の入出力特性を示すトーンカーブ上の代表点における補正量である補正パラメータを算出する処理と、
前記補正パラメータに基づいて前記トーンカーブの近似式を求め、該近似式を用いて前記画像の画素値を変換する処理と、を実行させるための階調補正プログラム。
【請求項8】
画像の階調を補正するための階調補正プログラムであって、
コンピュータに、
前記画像の特定領域に含まれる画素の輝度成分を代表する代表輝度値を算出する処理と、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の階調をγ補正するためのγ値である補正パラメータを前記代表輝度値の一次変換により算出する処理と、
前記補正パラメータを用いて前記画像の画素値を変換する処理と、を実行させるための階調補正プログラム。
【請求項9】
画像の階調を補正するための階調補正プログラムであって、
コンピュータに、
前記画像の複数の顔領域のそれぞれに含まれる画素の輝度成分を代表する代表輝度値を算出する処理と、
前記代表輝度値と、予め定められた輝度成分の境界値とに基づいて、前記画像の複数の顔領域の階調を補正するための複数の補正パラメータを算出し、前記複数の顔領域のそれぞれの大きさに基づいて複数の補正パラメータを統合する処理と、
前記統合された補正パラメータを用いて前記画像の画素値を変換する処理と、
を実行させるための階調補正プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【公開番号】特開2013−55712(P2013−55712A)
【公開日】平成25年3月21日(2013.3.21)
【国際特許分類】
【出願番号】特願2012−279334(P2012−279334)
【出願日】平成24年12月21日(2012.12.21)
【分割の表示】特願2007−551146(P2007−551146)の分割
【原出願日】平成18年12月21日(2006.12.21)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】
【公開日】平成25年3月21日(2013.3.21)
【国際特許分類】
【出願日】平成24年12月21日(2012.12.21)
【分割の表示】特願2007−551146(P2007−551146)の分割
【原出願日】平成18年12月21日(2006.12.21)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】
[ Back to top ]