(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-15
(45)【発行日】2024-03-26
(54)【発明の名称】画像処理装置、画像処理方法、及びプログラム
(51)【国際特許分類】
H04N 23/10 20230101AFI20240318BHJP
H04N 23/88 20230101ALI20240318BHJP
【FI】
H04N23/10
H04N23/88
(21)【出願番号】P 2020086873
(22)【出願日】2020-05-18
【審査請求日】2023-05-12
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100090273
【氏名又は名称】國分 孝悦
(72)【発明者】
【氏名】服部 光明
【審査官】鈴木 肇
(56)【参考文献】
【文献】特開2004-350222(JP,A)
【文献】特開2008-042644(JP,A)
【文献】特開2003-224867(JP,A)
【文献】特開2007-110576(JP,A)
【文献】特開2014-209681(JP,A)
【文献】特開2009-010814(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00 - 1/40
G06T 3/00 - 5/50
H04N 5/222- 5/257
H04N 9/01 - 9/11
H04N 9/44 - 9/78
H04N 23/00 -23/10
H04N 23/12 -23/17
H04N 23/40 -23/76
H04N 23/83 -23/959
H04N 25/10 -25/17
H04N 25/611
(57)【特許請求の範囲】
【請求項1】
撮像画像から2つ以上の特定被写体を検出する検出手段と、
前記検出された第1の特定被写体の色情報から第1の光源色を推定する第1の色推定手段と、
前記検出された第2の特定被写体の色情報から第2の光源色を推定する第2の色推定手段と、
前記検出された特定被写体以外を含む領域の色情報から第3の光源色を推定する第3の色推定手段と、
前記第1の光源色と前記第2の光源色と前記第3の光源色のそれぞれの類似度に応じて、前記第1の光源色と前記第2の光源色と前記第3の光源色の少なくとも1つに重み付けを行って前記撮像画像に適用するホワイトバランス補正値を算出する算出手段と、
を有することを特徴とする画像処理装置。
【請求項2】
前記算出手段は、前記第1の光源色と前記第2の光源色と前記第3の光源色の類似度に基づいて、前記第1の光源色と前記第2の光源色と前記第3の光源色のそれぞれの信頼度を算出し、前記信頼度に基づいて前記重み付けを行って前記ホワイトバランス補正値を算出することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記算出手段は、
前記第1の光源色と前記第2の光源色と前記第3の光源色の類似度と所定値との比較により前記類似度が高いか低いかを判定し、
前記第1の光源色と前記第2の光源色と前記第3の光源色のすべての類似度が高いと判定した場合には、前記第1の光源色と前記第2の光源色と前記第3の光源色の信頼度が高いと判定し、
前記第1の光源色と前記第2の光源色と前記第3の光源色のいずれか1つだけ類似度が低いと判定した場合には、前記低いと判定された類似度に対応した光源色の信頼度を低いと判定し、
前記第1の光源色と前記第2の光源色と前記第3の光源色のいずれも類似度が低いと判定した場合には、前記第1の光源色と前記第2の光源色と前記第3の光源色の信頼度を中立と判定することを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記算出手段は、前記重み付けが行われた後の、前記第1の光源色と前記第2の光源色と前記第3の光源色とを混合処理して得られた光源色を基に、前記ホワイトバランス補正値を算出することを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記算出手段は、前記第1の光源色と前記第2の光源色と前記第3の光源色のうち、前記信頼度が高いと判定された光源色に対する前記重み付けを100%とし、前記信頼度が高いと判定されなかった光源色に対する前記重み付けを0%として前記混合処理を行うことを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記算出手段は、前記第1の光源色と前記第2の光源色と前記第3の光源色に、前記信頼度が高いと判定された光源色が1つもなく、前記信頼度が中立または低いと判定された光源色のみである場合には、前記信頼度が中立と判定された光源色に対する前記重み付けを100%とし、前記信頼度が中立と判定されなかった光源色に対する前記重み付けを0%として前記混合処理を行うことを特徴とする請求項4または請求項5に記載の画像処理装置。
【請求項7】
前記算出手段は、前記第1の光源色と前記第2の光源色と前記第3の光源色に、前記信頼度が高いと判定された光源色および前記信頼度が中立と判定された光源色が1つもなく、前記信頼度が低いと判定された光源色のみである場合には、前コマの撮像画像において前記混合処理で得られた光源色を基に算出した前記ホワイトバランス補正値の情報を用いることを特徴とする請求項4から請求項6のいずれか1項に記載の画像処理装置。
【請求項8】
前記算出手段は、前記第1の光源色と前記第2の光源色と前記第3の光源色と、前記第1の光源色と前記第2の光源色と前記第3の光源色の前記類似度と、前記第1の光源色と前記第2の光源色と前記第3の光源色の前記信頼度との少なくとも1つの情報を、次コマ以降の撮像で得られる同種の情報と比較し、その比較結果に基づいて、次コマ以降の画像のホワイトバランス補正値を算出することを特徴とする請求項2から請求項7のいずれか1項に記載の画像処理装置。
【請求項9】
前記算出手段は、前コマの撮像から、経過時間が所定値以上経過した場合と、特定被写体の明るさが所定値以上変化した場合との、少なくともいずれかである場合には、前記前コマで得られた前記情報を用いないことを特徴とする請求項7または請求項8に記載の画像処理装置。
【請求項10】
前記検出手段は、前記撮像画像から、顔、肌、草木の緑、青空、雲、土、木の幹、アスファルト、紅葉、枯れ葉の少なくともいずれか2つ以上の被写体を、前記特定被写体として検出することを特徴とする請求項1から請求項9のいずれか1項に記載の画像処理装置。
【請求項11】
前記第3の色推定手段は、前記特定被写体以外を含む領域に含まれる白色領域の色情報から前記第3の光源色を推定することを特徴とする請求項1から請求項10のいずれか1項に記載の画像処理装置。
【請求項12】
画像処理装置が実行する画像処理方法であって、
撮像画像から2つ以上の特定被写体を検出する検出工程と、
前記検出された第1の特定被写体の色情報から第1の光源色を推定する第1の色推定工程と、
前記検出された第2の特定被写体の色情報から第2の光源色を推定する第2の色推定工程と、
前記検出された特定被写体以外を含む領域の色情報から第3の光源色を推定する第3の色推定工程と、
前記第1の光源色と前記第2の光源色と前記第3の光源色のそれぞれの類似度に応じて、前記第1の光源色と前記第2の光源色と前記第3の光源色の少なくとも1つに重み付けを行って前記撮像画像に適用するホワイトバランス補正値を算出する算出工程と、
を有することを特徴とする画像処理方法。
【請求項13】
コンピュータを、請求項1から請求項11のいずれか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像のホワイトバランスを調整する画像処理技術に関する。
【背景技術】
【0002】
画像処理装置におけるオートホワイトバランス技術として、特許文献1には、顔検出などによって特定の被写体を検出し、その検出領域の色情報を用いて光源を推定して、ホワイトバランス補正値を算出する技術が開示されている。また近年、ディープラーニング技術により、顔以外の肌や自然の草木など様々な被写体の検出が行えるようになってきており、ホワイトバランスの演算に利用できる情報が多くなっている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、ディープラーニング技術により様々な被写体が検出できるようになる一方で、対象とすべき被写体ではないものを誤検出してしまうケースがあり、この誤検出結果を基にホワイトバランスを演算してしまうと、誤った補正値を算出することになる。
【0005】
そこで、本発明は、被写体の誤検出によるホワイトバランスの誤補正の影響を軽減し、適切なホワイトバランス制御を可能にすることを目的とする。
【課題を解決するための手段】
【0006】
本発明の画像処理装置は、撮像画像から2つ以上の特定被写体を検出する検出手段と、前記検出された第1の特定被写体の色情報から第1の光源色を推定する第1の色推定手段と、前記検出された第2の特定被写体の色情報から第2の光源色を推定する第2の色推定手段と、前記検出された特定被写体以外を含む領域の色情報から第3の光源色を推定する第3の色推定手段と、前記第1の光源色と前記第2の光源色と前記第3の光源色のそれぞれの類似度に応じて、前記第1の光源色と前記第2の光源色と前記第3の光源色の少なくとも1つに重み付けを行って前記撮像画像に適用するホワイトバランス補正値を算出する算出手段と、を有することを特徴とする。
【発明の効果】
【0007】
本発明によれば、被写体の誤検出によるホワイトバランスの誤補正の影響を軽減でき、適切なホワイトバランス制御が可能となる。
【図面の簡単な説明】
【0008】
【
図1】画像処理装置を備えた撮像装置の構成例を示す図である。
【
図3】撮像装置のCPUが実行する処理のフローチャートである。
【
図4】ホワイトバランス補正値演算処理のフローチャートである。
【
図5】画像のブロック分割の説明に用いる図である。
【
図6】R/G,B/G値と黒体輻射軌跡の説明に用いる図である。
【
図7】光源色の類似度及び信頼度算出の説明に用いる図である。
【
図8】推定光源色の類似度と信頼度を表にして示す図である。
【
図9】信頼度及び推定光源色の再算出の説明に用いる図である。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明に必須のものとは限らない。なお、同一の構成については、同じ符号を付して説明する。
【0010】
図1は、本実施形態の画像処理装置の一適用例である撮像装置100の概略構成を示した図である。
撮像装置100は、デジタルカメラやデジタルビデオカメラのようなカメラである。なお、撮像装置100は、カメラ機能付き携帯電話、カメラ付きコンピュータなど、カメラ機能を備える任意の電子機器であっても良い。
【0011】
光学系101は、レンズ、シャッター、絞り等により構成されており、被写体の光学像を撮像素子102の撮像面上に形成する。また、光学系101からは、焦点距離、シャッター速度、絞り値などの情報が中央演算装置(以降、CPUとする)103へ送られる。
撮像素子102は、CCDイメージセンサ、CMOSイメージセンサなどであり、R(赤),G(緑),B(青)のべイヤー配列等で構成され、光学系101にて結像された光学像を画素ごとの輝度情報に変換する。そして、不図示のAD変換器を通してデジタル化されたデータ、いわゆる現像処理前のRAWデータが、CPU103を通じて一次記憶装置104に記憶される。なお、撮像素子102の電気的利得(以降、ISO感度とする)は、CPU103によって設定される。
【0012】
測光センサ105は、複数の測光領域に分割(例えば水平12、垂直8の計96領域に分割)されており、光学系101によって入射した光量から分割領域ごとの被写体輝度を検出する。測光センサ105から出力された測光領域ごとの輝度の信号は、不図示のAD変換器でデジタル化されてCPU103へ送られる。なお、分割領域数については任意の正数であればよく、前述した96領域に限定するものではない。
【0013】
制御部として機能するCPU103は、入力されたデータや予め記憶されたプログラムに従い、撮像装置100を構成する各部を制御することで、撮像装置100の機能を実現する。なお、以下の説明において、CPU103がプログラムを実行して実現する機能の少なくとも一部は、ASICなどの専用ハードウェアによって実現されても良い。
【0014】
一次記憶装置104は、例えばRAMのような揮発性記憶装置であり、CPU103の作業用に使われる。また、一次記憶装置104に記憶されている情報は、画像処理装置106で利用されたり、記録媒体107へ記録されたりもする。
二次記憶装置108は、例えばEEPROMのような不揮発性記憶装置であり、撮像装置100を制御するためのプログラム(ファームウェア)や各種の設定情報を記憶している。二次記憶装置108に記憶されているプログラムや各種設定情報は、CPU103によって利用される。
【0015】
記録媒体107は、撮像素子102で撮像されて一次記憶装置104に一時的に記憶されている画像のデータなどを記録する。なお、記録媒体107は、例えば半導体メモリカードのように、撮像装置100から取り外し可能であり、記録されたデータはパーソナルコンピュータなど他の機器で読み出し可能である。つまり、撮像装置100は、記録媒体107の着脱機構及び読み書き機能を有する。
【0016】
表示部109は、撮影時のビューファインダー画像、撮影画像、対話的な操作のためのGUI画像などの表示を行う。
操作部110は、ユーザの操作を受け付けてCPU103へ操作入力情報として伝達する入力デバイス群であり、例えばボタン、レバー、タッチパネル等である。操作部110は、音声や視線などを用いた入力機器が含まれていても良い。また撮像装置100において撮影開始のユーザ操作を取得するレリーズボタンも、この操作部110に含まれる。なお本実施形態の撮像装置100は、画像処理装置106が撮像画像に適用する様々な画像処理のパターンを複数有しており、それらパターンを撮像モードとして操作部110から設定可能となされている。
【0017】
画像処理装置106は、撮像素子102による撮像で取得された画像データに対して、各種の画像処理を施す。画像処理には、ホワイトバランス処理、RGBベイヤー配列の信号をRGBの色毎の3つのプレーン信号に変換するための色補間処理、ガンマ補正処理、彩度補正、色相補正などのいわゆる現像処理が含まれる。詳細は後述するが、画像処理装置106は、撮像画像から2つ以上の特定被写体領域を検出する処理、特定被写体領域色判定処理、光源色推定処理、光源色類似度及び信頼度算出処理、光源色混合処理、ホワイトバランス補正値の算出処理などを行う。なお、画像処理装置106のそれら各処理の少なくとも一部は、CPU103が本実施形態に係るプログラムを実行することによってソフトウェア的に実現されても良い。
【0018】
以下、本実施形態におけるホワイトバランス補正にかかる各種の演算処理と制御処理について説明する。
図2は、画像処理装置106において、ホワイトバランス処理を行うホワイトバランス制御部200の機能を示したブロック図である。なお、以降の説明では、ホワイトバランスをWBと記す。WB制御部200は、分割部201、第1色判定部202、第1色推定部203、第2色判定部204、第2色推定部205、白判定部206、第3色推定部207、類似度算出部208、色混合部209、補正値算出部210を有して構成されている。
【0019】
分割部201は、撮像素子102にて撮像されて一次記憶装置104に一時的に記憶された撮像画像を、複数のブロックに分割する。分割部201によるブロック分割処理の詳細は後述する。
【0020】
第1色判定部202と第2色判定部204は、撮像画像からそれぞれが特定の被写体を検出する。なお本実施形態では、例えば、第1特定被写体検出として人物の人肌領域を、第2特定被写体として自然の草木等の領域を挙げる。そして、第1色判定部202と第2色判定部204は、それぞれ検出した特定被写体の色情報を取得する。すなわち、第1色判定部202は撮像画像から1つ目の特定被写体を検出してその特定被写体の色情報を取得し、第2色判定部204は撮像画像から2つ目の被写体領域を検出してその特定被写体の色情報を取得する。本実施形態において、第1特定被写体として人物の人肌領域を検出する場合、第1特定被写体の色情報は人肌の肌色情報であり、第2特定被写体として自然の草木等を検出する場合、第2特定被写体の色情報は草木等の緑色情報である。第1色判定部202と第2色判定部204で検出された特定被写体の領域から色情報を取得する処理の詳細は後述する。
【0021】
白判定部206は、撮像画像から特定被写体領域以外を含む領域の色情報を取得する。すなわち白判定部206は、第1色判定部202と第2色判定部204とで検出される2つの以上の特定被写体以外を含む領域の色情報を取得する。詳細は後述するが、本実施形態の場合、白判定部206では、特定被写体領域以外を含む領域から白色情報を取得する。
【0022】
第1色推定部203は、第1色判定部202において検出された1つ目の特定被写体の色情報を基に第1光源色を推定する。以下、推定された第1光源色を、第1推定光源色とする。
第2色推定部205は、第2色判定部204において検出された2つ目の特定被写体の色情報を基に第2光源色を推定する。以下、推定された第2光源色を、第2推定光源色とする。
第3色推定部207は、白判定部206により取得された色、つまり撮像画像の特定被写体領域以外を含む領域の白色情報を基に第3光源色を推定する。以下、推定された第3光源色を、第3推定光源色とする。
これら第1色推定部203、第2色推定部205、第3色推定部207における処理の詳細は後述する。
【0023】
類似度算出部208は、第1光源色と第2光源色と第3の光源色との類似度を算出し、さらにそれら類似度から、第1光源色と第2光源色と第3の光源色のそれぞれの信頼度を算出する。
色混合部209は、類似度もしくは類似度から算出した信頼度に基づいて、第1光源色と第2光源色と第3の光源色に重み付けを行ってそれらを混合する色混合処理を行う。
補正値算出部210は、色混合部209による色混合処理後の光源色を基に、撮像画像に対して適用するホワイトバランス補正値(WB補正値)を算出する。
すなわち本実施形態では、第1から第3の光源色の類似度を算出し、さらに類似度から第1光源色から第3の光源色の信頼度を算出し、その信頼度を基に、第1から第3光源色に重み付けしてWB補正値を算出する。これら類似度算出部208、色混合部209、および補正値算出部210における処理の詳細は後述する。そして、画像処理装置106では、そのWB補正値を用いたホワイトバランス処理が行われる。
【0024】
図3は、撮像装置100のCPU103の処理に関するフローチャートである。なお、本実施形態では、レリーズボタンが2段階になっており、以降に出てくる操作部110のSW1はレリーズボタンのいわゆる半押しを意味し、操作部110のSW2はレリーズボタンのいわゆる全押しを意味する。
【0025】
ステップS301において、CPU103は、操作部110を介したユーザからの入力情報を受け付ける。
次にステップS302において、CPU103は、ユーザからの入力情報を基に、光学系101の焦点距離、シャッター速度、絞り値などの設定を調節する。
次にステップS303において、CPU103は、ユーザからの入力情報を基に、測光センサ105の測光領域を調節する。
ステップS304において、CPU103は、ユーザからの入力情報を基に、撮像素子102のISO感度などの設定を調節する。
次にステップS305において、CPU103は、ステップS302からステップS304等の処理で変更された設定に関する情報を表示部109に表示することで、ユーザに提示する。
なお、ステップS301からステップS305の順番はこの限りではなく、処理に応じて自由に順番を入れ替えることができる。
【0026】
次にステップS306において、CPU103は、レリーズボタンからのSW1の入力の有無(SW1 ON/OFF)を判定する。CPU103は、レリーズボタンからSW1が入力されない限り、ステップS301~ステップS305の動作を繰り返す。一方、レリーズボタンからSW1が入力(SW1 ON)された場合、CPU103は、ステップS307の処理に進む。
【0027】
ステップS307に進むと、CPU103は、測光センサ105からの出力を基に被写体の明るさを計測する。また、撮像装置100が自動露出(AE)モードに設定されている場合、CPU103は、シャッター速度と絞り値、ISO感度を基に自動的に露出を調節する。
次にステップS308において、CPU103は、撮像装置100が自動フォーカス(AF)モードに設定されている場合、不図示の測距センサからの情報を基に光学系101のフォーカスレンズを制御してピントを合わせる。
なお、ステップS307からステップS308の順番はこの限りではなく、処理に応じて自由に順番を入れ替えることができる。
【0028】
次にステップS309において、CPU103は、レリーズボタンからのSW2の入力の有無(SW2 ON/OFF)を判定する。CPU103は、レリーズボタンからSW2が入力されない限り、ステップS301~ステップS308の動作を繰り返す。一方、レリーズボタンからSW2が入力(SW2 ON)された場合、CPU103は、ステップS310の処理に進む。
【0029】
ステップS310に進むと、CPU103は、撮像素子102に露光を行わせ、その撮像素子102の撮像信号がA/D変換された後のRAWデータを一次記憶装置104に記憶させる。
【0030】
次にステップS311において、CPU103による制御の下、画像処理装置106は、一次記憶装置104に記憶されたデータから特定被写体を検出する。本実施形態では、例えば、人肌を第1特定被写体検出として検出し、自然の緑を第2特定被写体として検出するケースを挙げて説明する。なお、検出する特定被写体はこれらに限るものではなく、例えば、顔、青空、雲、土、木の幹、アスファルト、紅葉、枯れ葉など被写体の素の色が推定できる特定被写体であれば何でも良い。また本実施形態では、2つの特定被写体を検出するケースについて説明するが、3つ以上であっても良い。また特定被写体検出の検出方法としてはディープラーニング技術だけでなくルールベースの手法であっても良い。
【0031】
次にステップS312において、CPU103による制御の下、画像処理装置106は、一次記憶装置104に記憶されたデータを基にホワイトバランス補正値(WB補正値)を演算する。この処理の詳細は後述する。
さらにステップS313において、CPU103による制御の下、画像処理装置106は、一次記憶装置104に記憶されたRAWデータを、ステップS212で演算したWB補正値などを用いて現像処理する。
次にステップS314において、CPU103は、現像処理後の画像データに基づく画像を、表示部109に表示させる。
また、ステップS315において、CPU103は、現像処理後の画像データを記録媒体107に記録する。
【0032】
以下、ステップS312において、画像処理装置106で行われるWB補正値の演算について詳細を説明する。
図4は、画像処理装置106の
図2に示した各機能部によって実行される、WB補正値演算処理のフローチャートである。
ステップS401において、分割部201は、一次記憶装置104に記憶された画像データを、例えば
図5に示すように水平と垂直とで任意の数のブロックに分割し、それぞれのブロック内のR,G,B積分値を算出する。
【0033】
次にステップS402において、第1色判定部202は、特定被写体検出処理によって第1特定被写体領域を検出し、その第1特定被写体領域のブロックのR,G,B積分値のみを積分する。本実施形態の場合、第1特定被写体領域として人肌領域が検出され、その肌色領域のR,G,B積分値が算出される。さらに第1色判定部202は、そのR,G,B積分結果から、R/G,B/G値を算出する。
そして第1色推定部203は、第1色判定部202で算出された人肌領域に対応したR/G,B/G値から、光源色のR/G,B/G値を推定する。
【0034】
以下、人肌領域に対応したR/G,B/G値から、光源色のR/G,B/G値を推定する方法について説明する。
図6(a)は、R/G,B/G値のグラフであり、横軸がR/G値、縦軸がB/G値を示している。図中の実線は、黒体輻射軌跡601を示している。
また本実施形態において、二次記憶装置108には、予め各種の光源色とそれら種類ごとの光源下における人肌のR/G,B/G値の対応テーブルが記憶されているとする。なお、実際の人肌の色は人によってばらつきがあるが、それらばらつきの中心付近の肌の色を代表値として、この対応テーブルが作成されているものとする。
【0035】
図6(a)において、例えば人肌領域に対応したR/G,B/G値が図中の丸印602の位置にあった場合、対応テーブルから得られる人肌領域の色に対応した光源色は、丸印603の位置になる。同様に、例えば人肌領域に対応したR/G,B/G値が丸印604の位置にあった場合、対応テーブルから得られる人肌領域の色に対応した光源色は、丸印605の位置になる。第1色推定部203は、このように第1色判定部202で算出された人肌領域のR/G,B/G値と対応テーブルとを用いることで、人肌領域の色から光源色を推定する。本実施形態では、第1色推定部203にて推定された光源色が、第1推定光源色である。
【0036】
次にステップS403において、第2色判定部204は、特定被写体検出処理によって第2特定被写体領域を検出し、その第2特定被写体領域のブロックのR,G,B積分値のみを積分する。本実施形態の場合、第2特定被写体領域として自然の緑領域が検出され、その緑領域のR,G,B積分値が算出される。さらに第2色判定部204は、そのR,G,B積分結果から、R/G,B/G値を算出する。
そして第2色推定部205は、第2色判定部204で算出された自然の緑領域に対応したR/G,B/G値から、光源色のR/G,B/G値を推定する。
【0037】
以下、自然の緑領域に対応したR/G,B/G値から、光源色のR/G,B/G値を推定する方法について説明する。
図6(b)は、R/G,B/G値のグラフであり、横軸がR/G値、縦軸がB/G値を示している。図中の実線は、黒体輻射軌跡601を示している。
また本実施形態において、二次記憶装置108に予め記憶されている対応テーブルには、各種の光源色と、それら種類ごとの光源下における自然の緑のR/G,B/G値とが対応付けられている。なお、実際の自然の緑の色はばらつきがあるが、それらばらつきの中心付近の色を代表値として、この対応テーブルが作成されているものとする。
【0038】
図6(b)において、例えば自然の緑領域に対応したR/G,B/G値が丸印606の位置にあった場合、対応テーブルから自然の緑領域の色に対応した光源色は、丸印607の位置になる。同様に、例えば自然の緑領域に対応したR/G,B/G値が丸印608の位置にあった場合、対応テーブルから自然の緑領域の色に対応した光源色は、丸印609の位置になる。第2色推定部205は、このように第2色判定部204で算出された自然の緑領域のR/G,B/G値と対応テーブルとを用いることで、自然の緑領域の色から光源色を推定する。本実施形態では、第2色推定部205にて推定された光源色が、第2推定光源色である。
【0039】
次にステップS404において、白判定部206は、撮像画像の画面全体から白領域を検出し、その白領域のR,G,B積分値を算出し、さらにそのR,G,B積分結果から、白色領域のR/G,B/G値を算出する。
【0040】
図6(c)は、R/G,B/G値のグラフであり、横軸がR/G値、縦軸がB/G値を示している。図中の点線で囲われた領域は、白色領域610を示している。白判定部206は、
図6(c)に示したR/G,B/G軸上に設定した白色領域610内に含まれるブロックのR,G,B値を積分し、丸印611で示した1つの積分されたR,G,B値を算出する。なお、
図6(c)に示した白色領域610は、黒体輻射軌跡601付近と蛍光灯や水銀灯等の光源色が含まれるように領域を設定する。
そして第3色推定部207は、白判定部206にて設定された白色領域に対応したR/G,B/G値から、光源色のR/G,B/G値を推定する。第3色推定部207で推定されたR/G,B/G値は、撮像画像における画面全体(つまり特定被写体領域を含む領域)から算出した光源色となり、本実施形態では、この第3色推定部207にて推定された光源色が、第3推定光源色である。
【0041】
なお、本実施形態では撮像画像の画面全体に対して白判定部206の処理を実施しているが、第1特定被写体領域および第2特定被写体領域を除外した領域のみで白判定部206の処理を実施しても良い。
また、本実施形態では画像から白色領域610に含まれるブロックを抽出することで光源色を推定する方法を説明したが、第1及び第2特定被写体検出領域以外を含む画像領域のデータを用いた光源色推定処理であればこれ以外の手法であっても良い。
【0042】
次にステップS405において、類似度算出部208は、第1推定光源色から第3推定光源色の類似度を算出し、さらにそれら算出した類似度の信頼度を算出する。その詳細について
図7(a)~
図7(c)を用いて説明する。
【0043】
図7(a)~
図7(c)において、図中の実線は黒体輻射軌跡601を示し、丸印701は前述した第1推定光源色、丸印702は第2推定光源色、丸印703は第3推定光源色のそれぞれのR/G,B/G値の位置を示している。ここで、類似度算出部208は、第1推定光源色から第3推定光源色のそれぞれのR/G,B/G値のグラフ上での距離を算出する。
これら距離は、例えば以下の式(1)で算出することができる。
【0044】
D12=[(R/G1-R/G2)^2+(B/G1-B/G2)^2}^(1/2)
D13=[(R/G1-R/G3)^2+(B/G1-B/G3)^2}^(1/2) 式(1)
D23=[(R/G2-R/G3)^2+(B/G2-B/G3)^2}^(1/2)
【0045】
なお式(1)においてD12は第1推定光源色と第2推定光源色のR/G,B/G値のグラフ上での距離を示し、同様に、D13は第1推定光源色と第3推定光源色の距離を、D23は第2推定光源色と第3推定光源色の距離を示す。また式(1)中のR/G1,B/G1は第1推定光源色におけるR/G,B/G値を示し、同様に、R/G2,B/G2は第2推定光源色のR/G,B/G値を、R/G3,B/G3は第3推定光源色のR/G,B/G値を示している。
【0046】
類似度算出部208は、これらの距離が所定値以内の場合に類似度が高いと判定し、一方、所定値を超える場合に類似度が低いと判定する。例えば、距離D12が所定値以内の場合には第1推定光源色と第2推定光源色の類似度が高いと判定し、例えばD12が所定値を超える場合には第1推定光源色と第2推定光源色の類似度が低いと判定する。距離D13、距離D23についても同様にして類似度が判定される。そして、類似度算出部208は、それら類似度を基に、第1推定光源色~第3推定光源色について信頼度を判定する。
【0047】
図7(a)は、第1推定光源色、第2推定光源色、および第3推定光源色の類似度がいずれも高い場合のケースを示している。この例の場合、それぞれの推定光源色の類似度が高いことから、類似度算出部208は、いずれの推定光源色も信頼度が高いと判定する。
【0048】
図7(b)は、第1推定光源色と第3推定光源色との類似度が高く、一方、第2推定光源色は第1、第3推定光源色のいずれに対しても類似度が低い場合の例を示している。このように、他の2つに対して1つだけ推定光源色の距離が離れている場合、類似度算出部208は、特定被写体検出結果が誤判定している可能性が高く、類似度が低くなっている1つの推定光源色(この例では第2推定光源色)の信頼度は低いと判定する。
【0049】
図7(c)は、第1推定光源色、第2推定光源色、および第3推定光源色の類似度がいずれも低い場合の例を示している。このように、3つのすべての推定光源色の距離が離れている場合には、いずれの推定光源色の推定結果の信頼度が高いかどうかを判別することはできないため、類似度算出部208は、信頼度が中立であると判定する。なお、第1特定被写体または第2特定被写体のいずれか一方でも検出されなかった場合も、類似度算出部208は、第1推定光源色、第2推定光源色、および第3推定光源色の信頼度を中立と判定する。
【0050】
図8は、以上のように第1推定光源色、第2推定光源色、および第3推定光源色の類似度の組み合わせから信頼度を求める対応テーブルを示した図である。類似度算出部208は、この
図8に示した対応テーブルを基に推定光源色の信頼度を判定する。
図7(a)の例は、
図8において第1推定光源色~第3推定光源色の類似度の項目がすべて「高」となり、類似度算出部208は、第1推定光源色~第3推定光源色の信頼度をすべて「高」と判定する。
図7(b)の例は、
図8において第1,第3推定光源色の類似度が「高」で、第2推定光源色が「低」となり、類似度算出部208は、第1,第3推定光源色の信頼度を「高」、第2推定光源色の信頼度を「低」と判定する。
図7(c)の例は、
図8の第1推定光源色~第3推定光源色の類似度がすべて「低」となり、類似度算出部208は、第1~第3推定光源色の信頼度を、中立を示す「中」と判定する。
【0051】
次に、ステップS406において、類似度算出部208は、今回の処理が撮像装置100の電源投入後の1コマ目の撮像時の処理かどうかを判定する。
ここで、1コマ目の撮像時の処理である場合、類似度算出部208は、ステップS407の処理を実施する。ステップS407において、類似度算出部208は、これまでの処理で算出された第1推定光源色~第3推定光源色の信頼度と、それら推定した光源色のR/G,B/G値を一次記憶装置104に記憶させる。
【0052】
次に、ステップS408において、色混合部209は、第1推定光源色~第3推定光源色の信頼度に応じた混合処理を行う。
以下、色混合部209における色混合処理の詳細について説明する。
ここで、推定光源色の信頼度は、
図8の対応テーブルに示したような「高」、「中」、「低」のいずれかの結果となっている。
【0053】
色混合部209は、第1推定光源色~第3推定光源色のうち1つでも信頼度「高」があった場合、その信頼度「高」の推定光源色の重みを100%とし、他の信頼度(「中」又は「低」)の推定光源色の重みを0%とし、下記式(2)により推定光源色を混合する。
【0054】
また、第1推定光源色~第3推定光源色のうち、信頼度「高」及び「中」が1つもなく、信頼度「低」のみの場合、色混合部209は、前コマの撮像時における混合後光源色を使用する。なお本実施形態の撮像装置100では、制御上、電源投入後1コマ目の撮像において第1推定光源色~第3推定光源色の信頼度が「低」になることは無いとする。
このように、本実施形態においては、推定光源色それぞれの距離の関係を比較することで、推定光源色の誤判定を判別することができる。
【0055】
R/G0=(R/G1×a+R/G2×b+R/G3×c)/(a+b+c)
B/G0=(B/G1×a+B/G2×b+B/G3×c)/(a+b+c) 式(2)
【0056】
なお、式(2)のR/G0は色混合処理後のR/G値を示し、B/G0は色混合処理後のB/G値を示す。また、式(2)中のR/G1,B/G1は第1推定光源色のR/G,B/G値を示し、R/G2,B/G2は第2推定光源色のR/G,B/G値を、R/G3,B/G3は第3推定光源色のR/G,B/G値を示している。また式中のaは第1推定光源色のR/G,B/G値に対する重み、bは第2推定光源色のR/G,B/G値に対する重み、cは第3推定光源色のR/G,B/G値に対する重みである。
【0057】
また、次コマ以降で使用するため、色混合部209は、ここで算出した光源色R/G、B/Gを一次記憶装置104に記憶しておく。なお、本実施形態では、色混合部209は、信頼度に応じて色混合処理を行ったが、類似度に応じて色混合処理を行ってもよい。
【0058】
次にステップS409において、補正値算出部210は、ステップS408で算出された色混合処理後の光源色のR/G,B/G値から、下記の式(3)を用いて、WB補正値(ホワイトバランス補正値)を算出する。
【0059】
Wr=1/(R/G0)
Wg=1 式(3)
Wb=1/(B/G0)
【0060】
なお、式(3)のWrはR値に対するWB補正値、WgはG値に対するWB補正値、WbはB値に対するWB補正値である。また、R/G0は色混合処理後のR/G値、B/G0は色混合処理後のB/G値である。
その後、補正値算出部210におけるWB補正値の演算処理は終了する。
【0061】
ステップS406の処理において、撮像装置100の電源投入後2コマ目以降の撮像時の処理であると判定された場合の処理について説明する。
ステップS406で撮像装置100の電源投入後2コマ目以降の処理と判定された場合、画像処理装置106における処理はステップS410に進む。
【0062】
ステップS410に進むと、類似度算出部208は、第1推定光源色の信頼度を、最新コマと過去コマで得られた第1推定光源色~第3推定光源色の信頼度の比較結果に基づいて再算出する。
具体的には、類似度算出部208は、最新コマと過去コマにおいてそれぞれ求めた第1推定光源色~第3推定光源色のR/G,B/G値を比較する。そして、類似度算出部208は、最新コマと過去コマで得られた第1推定光源色~第3推定光源色のR/G,B/G値について前述同様の距離が所定値以内である場合、
図9に示したテーブルのように、信頼度及び推定光源色を再算出する。ここで、最新コマと過去コマの推定光源色のR/G,B/G値の距離が所定値を超える場合、類似度算出部208は、最新コマにおいて求められた信頼度及び推定光源色を、再算出後の信頼度及び推定光源色とする。
【0063】
次に
図9に示したテーブルの詳細について説明する。
類似度算出部208は、
図9の基本的な動作として、最新コマで算出した信頼度を優先して、信頼度及び推定光源色を再算出するが、最新コマで算出した信頼度が「中」の場合には過去コマで算出した信頼度を優先して信頼度及び推定光源色を再算出する。なお、過去コマと最新コマで算出した信頼度がいずれも「中」の場合、類似度算出部208は、最新コマによる信頼度及び推定光源色を再算出結果とする。
【0064】
以上のように、本実施形態においては、最新コマと過去コマとで、それぞれ算出した推定光源色のR/G,B/G値の距離(類似度)と信頼度の比較結果に応じて、信頼度及び推定光源色を再算出する。すなわち本実施形態においては、第1、第2、第3推定光源色と類似度と信頼度との少なくともいずれか1つを、次コマ以降の撮影で得られる同種の結果と比較し、その比較結果に応じて、次コマ以降の画像のWB補正値を算出する。これにより、最新コマで算出された信頼度が「中」と判定された場合においても、推定光源色が誤判定されたかどうかを判別することができる。
【0065】
なおステップS406で撮像装置100の電源投入後2コマ目以降と判定する際に、1コマ前から、経過時間が所定値以上経過していた場合や測光センサ105で算出した被写体の明るさが所定値以上変化した場合は、過去コマ情報の信頼性が低下する。このため、経過時間が所定値以上経過していた場合と明るさが所定値以上変化した場合の少なくとも何れかに該当する場合には、前コマで得られた情報を用いず、1コマ目として処理する構成となされていても良い。
【0066】
以上説明したように、本実施形態によれば、特定被写体検出を用いたオートホワイトバランス演算で被写体認識の誤検出によるWBの誤補正の影響を軽減し、適切なWB制御を可能にし、オートホワイトバランスの精度低下を抑制することができる。
【0067】
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【0068】
100:撮像装置、103:中央演算装置(CPU)、106:画像処理装置、200:ホワイトバランス制御部、201:分割部、202:第1色判定部、203:第1色推定部、204:第2色判定部、205:第2色推定部、206:白判定部、207:第3色推定部、208:類似度算出部、209:色混合部、210:補正値算出部