(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-09
(45)【発行日】2022-12-19
(54)【発明の名称】画像処理装置、制御方法及びプログラム
(51)【国際特許分類】
H04N 9/04 20060101AFI20221212BHJP
H04N 9/73 20060101ALI20221212BHJP
【FI】
H04N9/04 B
H04N9/73 A
(21)【出願番号】P 2018193495
(22)【出願日】2018-10-12
【審査請求日】2021-09-10
(31)【優先権主張番号】P 2017231970
(32)【優先日】2017-12-01
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100090273
【氏名又は名称】國分 孝悦
(72)【発明者】
【氏名】三宅 利尚
【審査官】鈴木 明
(56)【参考文献】
【文献】国際公開第2014/080613(WO,A1)
【文献】特開2011-055170(JP,A)
【文献】特開2005-341077(JP,A)
【文献】特開2000-197070(JP,A)
【文献】特開2011-211327(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 9/04-9/11
H04N 9/44-9/78
(57)【特許請求の範囲】
【請求項1】
撮像により得られた画像データを処理する画像処理装置であって、
前記撮像により得られた第1の画像データにおいて検出された無彩色領域に基づき、無彩色領域の位置を決定する決定手段と、
前記第1の画像データよりも後の撮像で得られた第2の画像
データに対して色補正処理を行うための色補正パラメータを算出する算出手段とを有し、
前記算出手段は、前記決定手段により決定された無彩色領域の位置に対応する、前記第2の画像データにおける位置の色情報に基づき、前記色補正パラメータを算出することを特徴とする画像処理装置。
【請求項2】
画像データにおける無彩色領域を検出する検出手段をさらに有し、
前記検出手段は、前記画像データの輝度に基づき、前記無彩色領域の検出条件を変更することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記検出手段は、前記画像データの輝度が所定値よりも小さい場合、前記無彩色領域が検出されなかったと判断することを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記決定手段は、前記第1の画像データを含む複数の画像データにおいて検出された無彩色領域に基づき、前記無彩色領域の位置を決定することを特徴とする請求項1または2に記載の画像処理装置。
【請求項5】
前記決定手段は、前記複数の画像データにおいて共通して検出された無彩色領域に対し、無彩色領域の位置の重みを大きくすることを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記決定手段はさらに、前記複数の画像データの間の差分に基づき、前記無彩色領域の位置を決定することを特徴とする請求項4に記載の画像処理装置。
【請求項7】
前記決定手段はさらに、前記複数の画像データの間の輝度または色の変化に基づき、前記無彩色領域の位置を決定することを特徴とする請求項4に記載の画像処理装置。
【請求項8】
前記決定手段はさらに、前記複数の画像データにおける動体の検出結果に基づき、前記無彩色領域の位置を決定することを特徴とする請求項4に記載の画像処理装置。
【請求項9】
前記画像処理装置は、監視カメラであることを特徴とする請求項1乃至8のいずれか1項に記載の画像処理装置。
【請求項10】
前記撮像の画角の変化を検知する検知手段をさらに有し、
前記検知手段により画角の変化を検知した場合、前記決定手段により決定された無彩色領域の位置を使用しないことを特徴とする請求項1乃至9のいずれか1項に記載の画像処理装置。
【請求項11】
前記撮像の画角の変化を検知する検知手段をさらに有し、
前記検知手段により画角の変化を検知した場合、前記決定手段は前記画角の変化に基づき新たな無彩色領域の位置を決定することを特徴とする請求項1乃至9のいずれか1項に記載の画像処理装置。
【請求項12】
前記算出手段は、前記第1の画像データにおいて検出された無彩色領域に基づき、
前記第2の画像
データに対して前記色補正処理を行うための色補正パラメータをさらに算出することを特徴とする請求項1乃至11のいずれか1項に記載の画像処理装置。
【請求項13】
前記色補正処理は、ホワイトバランス処理であることを特徴とする請求項1乃至12のいずれか1項に記載の画像処理装置。
【請求項14】
撮像により得られた画像データを処理する画像処理装置の制御方法であって、
前記撮像により得られた第1の画像データにおいて検出された無彩色領域に基づき、無彩色領域の位置を決定する決定工程と、
前記第1の画像データよりも後の撮像で得られた第2の画像
データに対して色補正処理を行うための色補正パラメータを算出する算出工程とを有し、
前記算出工程では、前記決定工程で決定された無彩色領域の位置に対応する、前記第2の画像データにおける位置の色情報に基づき、前記色補正パラメータを算出することを特徴とする制御方法。
【請求項15】
コンピュータを、請求項1乃至13のいずれか1項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、特に、撮像画像の色を調整するために用いて好適な画像処理装置、制御方法及びプログラムに関する。
【背景技術】
【0002】
従来、ホワイトバランスを調整する場合に、画像信号から無彩色の領域を抽出し、抽出した領域を基準として撮像画像全体の色を調整する手法が知られている。
【0003】
無彩色領域を抽出する方法としては、撮像装置で得られた画像から彩度の低い領域を抽出する方法が知られている。ところが、十分な照度が得られない環境では撮像画像全体の彩度が低くなるため、本来有彩色である領域を無彩色と誤認してしまう場合があり、特定の波長領域が強い光源下においては無彩色の領域を有彩色と誤認してしまう場合がある。そのため、低照度の環境や特定の光源の元では、同一の被写体を撮影したにも関わらず、被写体の色味が正しく再現できないという問題があった。
【0004】
この問題を解決するために、ホワイトバランスを調整する際に、過去に撮影していた画像の情報を用いるという手段が提案されている。特許文献1には、過去に撮影したRGBの各ゲインを記憶しておき、光源が判定できない場合は記憶していたゲイン値を使用する手法が開示されている。また、特許文献2には、広角で撮影した画像の中で無彩色の領域を記憶しておき、再生時に記憶していた領域を基準として色の調整を行う手法が開示されている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2002-34053号公報
【文献】特開2010-147651号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1に記載の手法の場合、記憶していたRGBの各ゲイン値を適用するため、事前に同一の条件で撮影されていた情報が必要となり、利用できる場面が限定されてしまう。また、特許文献2に記載の手法は、実際に再生する領域よりも広い領域を撮影し、表示する領域外の無彩色領域を記憶しておく必要があり、夜間など無彩色領域を判断できないシーンにおいては正しい色を得ることができない。
【0007】
本発明は前述の問題点に鑑み、様々な条件下において、被写体の色味を正しく再現できるようにすることを目的としている。
【課題を解決するための手段】
【0008】
本発明に係る画像処理装置は、撮像により得られた画像データを処理する画像処理装置であって、前記撮像により得られた第1の画像データにおいて検出された無彩色領域に基づき、無彩色領域の位置を決定する決定手段と、前記第1の画像データよりも後の撮像で得られた第2の画像データに対して色補正処理を行うための色補正パラメータを算出する算出手段とを有し、前記算出手段は、前記決定手段により決定された無彩色領域の位置に対応する、前記第2の画像データにおける位置の色情報に基づき、前記色補正パラメータを算出することを特徴とする。
【発明の効果】
【0009】
本発明によれば、様々な条件下において、被写体の色味を正しく再現することができる。
【図面の簡単な説明】
【0010】
【
図1】画像処理装置のハードウェア構成例を示すブロック図である。
【
図2】第1の実施形態に係る画像処理装置の機能構成例を示すブロック図である。
【
図3】第1の実施形態において、ホワイトバランス制御を行うための処理手順の一例を示すフローチャートである。
【
図4】無彩色領域からホワイトバランスの調整した例を説明するための図である。
【
図5】低照度下において無彩色領域を検出できなくなる例を説明するための図である。
【
図6】第2の実施形態に係る画像処理装置の機能構成例を示すブロック図である。
【
図7】第2の実施形態において、ホワイトバランス制御を行うための処理手順の一例を示すフローチャートである。
【
図8】重み付けを加算する処理を説明するための図である。
【
図9】第3の実施形態に係る画像処理装置の機能構成例を示すブロック図である。
【
図10】第4の実施形態に係る画像処理装置の機能構成例を示すブロック図である。
【
図11】第4の実施形態において、ホワイトバランス制御を行うための処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【0011】
(第1の実施形態)
図1は、本実施形態に係る画像処理装置100のハードウェア構成例を示すブロック図である。本実施形態に係る画像処理装置としては、例えば監視カメラのような特定の場所に設置された装置を用いることができる。画像処理装置100は、CPU101と、ROM102と、RAM103と、記憶装置104と、表示部105と、入力部106と、通信部107とを有している。CPU101は、ROM102に記憶された制御プログラムを読み出して各種処理、例えば撮像、記憶、通信、表示、入出力といった制御を実行する。RAM103は、CPU101の主メモリ、ワークエリア等の一時記憶領域として用いられる。記憶装置104は例えば着脱可能なメモリ等であり、各種データや各種プログラム等を記憶する。なお、記憶装置104は内蔵型のメモリであってもよい。表示部105は、各種情報を表示する。入力部106は、ユーザによる各種操作を受け付ける。
【0012】
通信部107は、ネットワークを介して画像形成装置等の外部装置との通信処理を行う。また、他の例としては、通信部107は、無線により外部装置との通信を行ってもよい。撮像部108は、撮像素子、レンズ群、A/D変換器などから構成され、画像データを生成する。なお、後述する画像処理装置100の機能や処理は、CPU101がROM102等に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。
【0013】
なお、上記のハードウェア構成は一例であり、必ずしも1つのハードウェアが1つの構成に対応するとは限らない。例えば複数のプロセッサーが協働して1つの制御手段として機能してもよいし、1つのプロセッサーが複数の手段として機能してもよい。また、画像処理装置100の制御の少なくとも一部を、ハードウェア回路によって実現してもよい。
【0014】
また、
図1の構成の一部を、画像処理装置とは異なる装置が備えていてもよい。例えば監視カメラの場合、撮像、画像の出力を担当する監視カメラ本体と、監視カメラからの画像を表示、記憶する制御端末とからなるシステムが想定される。この場合、制御端末が画像処理装置100として機能し、画像処理装置100は撮像部108を必ずしも必要としない。監視カメラで撮像された画像は、制御端末の通信部107から受信することになる。
【0015】
次に、
図2を参照しながら、本実施形態において画像処理装置100が無彩色領域を検出できなかった場合に、過去に検出した無彩色領域を使用したホワイトバランス制御について説明する。本実施形態の画像処理装置100は、無彩色領域を検出できなかった場合に、ホワイトバランスの調整基準を得ることができる。
【0016】
図2は、本実施形態に係る画像処理装置100のCPU101の制御の下、無彩色領域の情報を記憶し、その無彩色領域の情報を用いてホワイトバランスを調整する制御を行うための機能構成例を示すブロック図である。
図2において、画像入力部210は、撮像部108や記憶装置104などから画像データを取得する。上述したように、画像処理装置100が制御端末である場合は、通信部107から画像データを取得する。無彩色領域検出部220は、画像入力部210で取得した画像データから後述のホワイトバランス処理で用いる白色やグレー色のような無彩色領域を検出し、その座標位置情報を出力する。記憶部230は例えば記憶装置104に相当し、無彩色領域検出部220で検出した無彩色領域の座標位置情報を記憶する。
【0017】
WB処理部240は、無彩色領域検出部220または記憶部230から無彩色領域の座標位置情報を取得する。そして、その無彩色領域がより無彩色に近づくように各色のゲイン値を調整し、色補正処理の一種であるホワイトバランス処理を行う。この処理については後に詳述する。画像出力部250は、WB処理部240によって処理された画像を表示部105または通信部107に出力する。なお、上述したように、
図2に示す各機能は、それぞれが複数のCPUやROM、RAM等を協働させて実現されるものでもよく、また、それぞれがハードウェア回路により実現されるものでもよい。
【0018】
図3は、本実施形態におけるホワイトバランス制御を行うための処理手順の一例を示すフローチャートである。
まず、ステップS310において、画像入力部210は、画像データを取得する。次に、ステップS311において、無彩色領域検出部220は、ステップS310で取得された画像データから画素または所定のブロック単位でRGBの値、またはCrCb等の色差情報を取得する。そして、ステップS312において、無彩色領域検出部220は、RGBの値、またはCrCb等の色差情報が所定の閾値の範囲内であるか否かを判定する。この所定の閾値は無彩色を示す色の範囲を示し、予めROM102に記憶されているものとする。つまりステップS312において、無彩色領域検出部220は対象の画素またはブロックが無彩色領域として検出できたか否かを判定する。この判定の結果、所定の閾値の範囲内である場合はステップS313に進み、そうでない場合はステップS314に進む。
【0019】
ステップS313において、無彩色領域検出部220は、無彩色領域として検出された領域の座標位置情報を記憶部230に記憶する。なお、記憶部230に既に座標位置情報が記憶されている場合は、座標位置情報を上書きして記憶する。一方、ステップS314においては、無彩色領域検出部220は、過去に検出された(つまり、過去にステップS313で記憶された)無彩色領域の座標位置情報を記憶部230から取得する。そして、ステップS315において、WB処理部240は、無彩色領域の座標位置情報を用いて、無彩色領域の色差がより小さくなるように各色のゲイン値(色補正パラメータ)を調整し、画像データに対してホワイトバランス処理を行う。この際、ステップS314で過去に記憶された無彩色領域の座標位置情報を取得している場合は、当該座標位置情報が示す領域の色差がより小さくなるように各色のゲイン値を調整する。つまりWB処理部240は、過去に無彩色領域であると判定された領域を無彩色にする制御を行う。これは、監視カメラ(定点カメラ)のように一定の画角で継続的に画像データを取得し続ける場合においては、時間が経過しても無彩色領域(例えば建物の壁)の座標は変化しないという想定に基づく。
【0020】
図4(a)は,無彩色領域が検出された例を説明するための図である。ステップS312では、色差信号Cr、Cbがそれぞれ閾値th1から閾値th2の範囲内であった場合には無彩色領域として判定し、範囲外であった場合は有彩色領域であると判定する。また、
図4(b)は、ホワイトバランスの調整した例を説明するための図であり、ステップS315では、無彩色領域として検出した領域がより無彩色に近づくようにそれぞれのゲイン値を調整する。
【0021】
図5は、低照度下において無彩色領域を検出できなくなる例を説明するための図である。低照度下では彩度が下がるため、
図5(a)に示すような本来色差が大きいため有彩色領域と判定されるべき領域も、
図5(b)に示すように、色差信号Cr、Cbが無彩色領域の閾値th1から閾値th2の範囲とみなしてしまう。これにより、有彩色領域を無彩色領域と誤認してしまう場合がある。そのため本実施形態の画像処理装置100は、ステップS312において画像データの輝度Yが所定の閾値(所定値)未満である場合は、色差信号Cr、Cbが無彩色領域である閾値th1から閾値th2の範囲であっても無彩色領域とは判定しないようにする。つまり、無彩色領域の検出条件を変更する。その状態でホワイトバランスの制御を行うと、基準となる無彩色領域が判定できず、本来の色を得ることができないからである。なお、上述の説明では輝度Yに基づき無彩色領域と判定しないようにしたが、輝度Yが所定の値よりも小さい場合に、無彩色領域と判定する範囲を狭くしてもよい。例えば、閾値th1を大きくすること、または閾値th2を小さくすることが考えられる。
【0022】
以上のように本実施形態によれば、無彩色領域が検出できなかった場合においても、過去に無彩色領域として検出できていた領域をホワイトバランス調整の基準とするようにした。例えば監視カメラのように、撮影する対象に変化が少ない場合においては、過去の無彩色領域と、現在の無彩色領域とで一致している可能性が高いため、過去の無彩色領域を基準とすることにより、本来の色を得ることができる。
【0023】
なお、カメラがパン・チルトや光学ズームを行うことで画角が変化し、無彩色領域の座標が変化する場合がある。このように画角の変化を検知した場合は、記憶部230に記憶されている無彩色領域の座標を消去または無効にすることで使用できないようにしてもよい。また、パン・チルトの角度や光学ズームの倍率に基づき画角変更後の無彩色領域の座標を算出し、新たに記憶部230に記憶してもよい。
【0024】
(第2の実施形態)
以下、本発明の第2の実施形態について説明する。第1の実施形態は、一定の画角で継続的に画像データを取得し続ける場合においては、時間が経過しても無彩色領域(例えば建物の壁)の座標は変化しないという想定に基づいていた。しかしながら画角は変わらなくても、例えば無彩色の移動体などが画角内にある場合は無彩色領域が時間とともに変化する場合がある。そこで本実施形態では、画面内に変化があって無彩色領域に変化がある場合に、記憶されている無彩色領域の精度が下がるという課題を解決するために、領域毎に重み付けを設けている。なお、本実施形態に係る画像処理装置のハードウェア構成については
図1と同様であるため、説明は省略する。
【0025】
図6は、本実施形態に係る画像処理装置600の機能構成例を示すブロック図である。以下、
図1と異なる点についてのみ説明する。
第1の実施形態では、検出した無彩色領域の座標位置情報を直接保存していた。これに対して本実施形態では、重み付け制御部610が、無彩色領域検出部220にて検出した無彩色領域の座標位置情報と、記憶部230に保存されている無彩色領域の座標位置情報とを比較して、領域毎に重み付けを加算するようにしている。
【0026】
図7は、本実施形態におけるホワイトバランス制御を行うための処理手順の一例を示すフローチャートである。以下、
図3と重複する処理については説明を省略する。
ステップS312の判定の結果、RGBの値、またはCrCb等の色差情報が所定の閾値の範囲内である(無彩色領域を検出した)場合は、ステップS710に進む。そして、ステップS710において、重み付け制御部610は、過去に無彩色領域として検出された領域の座標位置情報及び重み付け情報を記憶部230から読み出して参照する。
【0027】
次に、ステップS711において、重み付け制御部610は、今回無彩色領域として検出した領域と、過去に無彩色領域として検出した領域(重み付けが「1」以上の領域であって現在は無彩色領域から除外されている部分も含む)とを比較する。そして、一致(共通)する領域が存在するか否かを判定する。この判定の結果、一致する領域が存在する場合は、ステップS712において、重み付け制御部610は、その領域の重み付けを加算するとともに、一致していない領域では重み付けを「1」とする。具体的には、
図8に示すように複数のブロックで区切ってブロック毎に重み付けを行い、無彩色領域として一致するブロックでは重み付けを「1」上乗せする。一方、一致する領域が存在しない場合は、ステップS713において、重み付け制御部610は、今回無彩色領域として検出した領域の重み付けを「1」とする。そして、ステップS714において、重み付け制御部610は、無彩色領域の座標位置情報および新しい重み付け情報を記憶部230に保存する。
【0028】
一方、ステップS312の判定の結果、RGBの値、またはCrCb等の色差情報が所定の閾値の範囲外である(無彩色領域を検出できなかった)場合は、ステップS715に進む。そして、ステップS715において、無彩色領域検出部220は、過去に検出された無彩色領域の座標位置情報及び重み付け情報を記憶部230から取得する。
【0029】
次に、ステップS716において、無彩色領域検出部220は、無彩色領域のブロックのうち、一定期間内に無彩色領域として検出されていないブロックが存在するか否かを判定する。この判定の結果、一定期間内に無彩色領域として検出されていないブロックが存在する場合は、そのブロックは無彩色領域としての信頼度が低い。そのため、ステップS717において、無彩色領域検出部220は、無彩色領域の範囲を変更し、新たな無彩色領域の座標位置情報及び重み付け情報を記憶部230に記憶する。具体的には、
図8(b)及び
図8(c)に示す例のように、重み付けが「1」以上のブロックであるが、一定期間内に重み付けが変更されていない場合は、そのブロックを無彩色領域から除外するようにする。一方、一定期間内に無彩色領域として検出されていないブロックが存在しない場合はそのままステップS718に進む。
【0030】
ステップS718においては、WB処理部240は、記憶部230に記憶された無彩色領域の座標位置情報及び重み付け情報を用いて、重みの高い無彩色領域(例えば
図8の例では重み3以上の領域)がより白に近づくようにゲイン値を調整し、画像データに対してホワイトバランス処理を行う。
【0031】
図8は、重み付けを加算して無彩色領域を設定する例を説明するための図である。例えば、
図8(a)に示す重み付け「1」の領域の一部が、今回検出された無彩色領域の一部と一致していた場合には、ステップS712では、
図8(b)に示すように、その領域では重み付けが「2」に加算される。その後、
図8(b)の重み付け「1」の領域は、一定期間内に無彩色領域として検出されなかった領域と判定され、ステップS717では、その領域が無彩色領域から除外される。続いて、
図8(b)に示す重み付け「1」又は「2」の領域の一部が、今回検出された無彩色領域の一部と一致していた場合には、ステップS712では、
図8(c)に示すように、その領域では重み付けが「2」又は「3」に加算される。この処理で重み付け「1」から「2」に変更された領域は、無彩色領域の一部として扱われるようになる。その後、
図8(c)の重み付け「2」の領域の一部は、一定期間内に無彩色領域として検出されなかった領域と判定され、ステップS717では、その領域が無彩色領域から除外される。
【0032】
以上のように本実施形態では、過去に検出された無彩色領域と、今回検出した無彩色領域とを比較し、重み付けを加算するようにしている。これにより、無彩色領域が検出できず、過去の情報を参照した場合において無彩色領域の可能性がより高い領域を元に色調整を行うことが可能となる。なお、ステップS716で判定する「一定期間」は、重み付けの数値によって変化させてもよい。例えば重み付けの数値が高いブロックでは「一定期間」を長い期間とし、重み付けの数値が低いブロックでは「一定期間」を短い期間としてもよい。
【0033】
また、本実施形態によれば、撮影している画面内に変化があり、無彩色領域が変化するような場合においても良好な色を得ることができる。無彩色領域が変化する場面において、無彩色領域として単純に記憶されてしまうと、無彩色領域から有彩色領域に変化した領域についても、無彩色領域としてホワイトバランス調整の基準としてしまう。しかし、無彩色領域に重み付けを適用することで、重み付けの結果が高い領域は、過去に無彩色であった可能性がより高く、変化も起きにくい箇所と想定できる。そのため、重み付けの結果が高い領域がより無彩色になるようホワイトバランス調整を行うことで良好な色を得ることが可能となる。
【0034】
(第3の実施形態)
以下、本発明の第3の実施形態について説明する。本実施形態では、通常のホワイトバランス制御を行った場合の画像も併せて得ることができる。なお、本実施形態に係る画像処理装置のハードウェア構成については
図1と同様であるため、説明は省略する。
【0035】
図9は、本実施形態に係る画像処理装置900の機能構成例を示すブロック図である。以下、
図1と異なる点についてのみ説明する。
無彩色領域検出部220は、後のホワイトバランス処理で用いる白色やグレー色のような無彩色領域を検出し、座標位置情報を出力する。そして、無彩色領域検出部220で無彩色領域を検出した場合に、その無彩色領域の座標位置情報を記憶部230に記憶する。WB処理部240は、無彩色領域検出部220から取得した無彩色領域がより無彩色に近づくように各色のゲイン値を調整し、ホワイトバランス処理を行う。この処理では、公知である通常のホワイトバランス処理を行う。そして、その処理結果を記憶装置104に相当する画像記憶部910に記憶する。
【0036】
画像表示部920は、画像記憶部910に記憶された画像データに対し、記憶部230に記憶されている無彩色領域の座標位置情報を用いて色調整を行う。そして、色調整した画像データを表示部105に出力する。さらに画像表示部920は、画像記憶部910に記憶された画像データもそのまま表示部105に出力する。
【0037】
以上のように本実施形態によれば、通常のホワイトバランス処理がなされた画像に対して、表示する直前に過去の無彩色領域の情報を用いたホワイトバランス処理を再度実行する。そして、ホワイトバランス処理が再実行された画像と、通常のホワイトバランス制御によって得られた画像との二種類の画像を表示させることができる。
【0038】
本実施形態によって得られる画像は本来の色に近いが、通常のホワイトバランス処理で得られる画像の方が見た目に近い場合も考えられる。そのような場合を想定し、本実施形態では2種類の画像を得ることができ、好ましい方を選択することができる。
【0039】
(第4の実施形態)
以下、本発明の第4の実施形態について説明する。上述の実施形態では、例えば低照度下において無彩色領域が変化した場合、例えば暗い状態で白い車が移動した場合に、正しくホワイトバランス処理ができない場合がある。そこで本実施形態では、無彩色領域に変化が発生しうる領域を事前に検出する手段と、無彩色領域が検出できない場合に、記憶している無彩色領域の変化を検出しての重みを変動させる手段を設けている。なお、本実施形態に係る画像処理装置のハードウェア構成については
図1と同様であるため、説明は省略する。
【0040】
図10は、本実施形態に係る画像処理装置1000の機能構成例を示すブロック図である。以下、
図6と異なる点についてのみ説明する。
第2の実施形態では、重み付け制御部610が、無彩色領域検出部220にて検出した無彩色領域の座標位置情報と、記憶部230に保存されている無彩色領域の座標位置情報とを比較して、領域毎に重み付けを加算していた。これに対して本実施形態では、輝度・色変化取得部1010、動体検出部1020、画像変化取得部1030が、無彩色領域検出部220にて検出した無彩色領域の座標位置情報と、記憶部230に保存されている無彩色領域の座標位置の変化を検出し、領域毎に重み付けを変動するようにしている。
【0041】
図11は、本実施形態におけるホワイトバランス制御を行うための処理手順の一例を示すフローチャートである。以下、
図7と重複する処理については説明を省略する。
ステップS312の判定の結果、RGBの値、またはCrCb等の色差情報が所定の閾値の範囲内である(無彩色領域を検出できた)場合は、ステップS710に進む。そして、重み付け制御部610は、過去に無彩色領域として検出した領域の情報を読み出す。ステップS711で、重み付け制御部610は、今回無彩色領域として検出した領域と、過去に無彩色領域として検出した領域(重み付けが「1」以上の領域であって現在は無彩色領域から除外されている部分も含む)とを比較する。ステップS711の判定の結果、今回無彩色領域として検出した領域と、記憶部230から読み出した過去に無彩色領域として検出した領域に一致する領域が存在する場合は、ステップS1110に進む。
【0042】
ステップS1110において、輝度・色変化取得部1010は、過去に無彩色領域として検出された領域の輝度情報及び色情報を記憶部230から読み出して参照する。そして、今回無彩色領域として検出した領域と、過去に無彩色領域として検出した領域との輝度情報・色情報を比較して、変動が大きい領域が存在するか否かを判定する。無彩色領域と判断された領域の中でも、輝度や色の変化が大きい領域の場合、将来的にも色変化が発生している可能性が高く信頼性の低い領域といえる。この判定の結果、変動の大きい領域が存在する場合は、ステップS1111において、重み付け制御部610は、その領域の重み付けを減算する。
【0043】
次に、ステップS1112では、WB処理部240は、現在の撮影条件(シャッタースピード、ゲイン、絞り)から撮影条件が良好であるかどうかを判断する。そして、撮影環境が良好でないと判断された場合は、ステップS1113に進む。そして、ステップS1113において、WB処理部240は、無彩色領域として検出された領域の色情報を記憶部230から読み出して参照し、過去の無彩色領域の色情報を元に、色調整の目標とする目標値を決定する。
【0044】
一方、ステップS312の判定の結果、RGBの値、またはCrCb等の色差情報が所定の閾値の範囲外である(無彩色領域を検出できなかった)場合は、ステップS715に進む。そして、ステップS715において、無彩色領域検出部220は、過去に無彩色領域として検出した領域の情報を読み出す。ステップS716において、無彩色領域検出部220は、無彩色領域のブロックのうち、一定期間内に無彩色領域として検出されていないブロックが存在するか否かを判定する。この判定の結果、一定期間内に無彩色領域として検出されていないブロックが存在しない場合、ステップS1114に進む。
【0045】
ステップS1114において、動体検出部1020は、動体の検出結果から、記憶部230に記憶された無彩色領域の座標位置と、動体が発生した領域とが一致するかどうかを判断する。動体が発生した領域と記憶された無彩色領域の座標位置とが一致した場合、重みの高い無彩色領域があったとしてもその領域は信頼性が低いと判断できる。動体が発生していた領域と無彩色領域の座標位置とが一致していた場合(動領域が検出できた場合)はステップS1115に進む。そして、ステップS1115において、重み付け制御部610は、動体が発生していた領域と無彩色領域の座標位置が一致していた領域の重みを減算し、その情報を記憶部230に記憶する。
【0046】
一方、ステップS1114において、動体検出部1020にて動領域が検出できなかった場合、記憶部230に記憶された無彩色領域の座標位置が信頼できるか判断するために、ステップS1116に進む。そして、ステップS1116において、画像変化取得部1030は、記憶部230に記憶された無彩色領域を検出していた時点の画像と、現在の画像から変化を取得する。
【0047】
そして、ステップS1117において、画像変化取得部1030は、取得した画像の差分領域について、記憶部230に記憶された無彩色領域の座標位置と、差分が発生した領域とが一致するかどうかを判断する。差分が発生した領域と記憶された無彩色領域の座標位置とが一致した場合、重みの高い無彩色領域があったとしてもその領域は信頼性が低いと判断できる。差分が発生していた領域と無彩色領域の座標位置とが一致していた場合はステップS1118に進む。そして、ステップS1118において、重み付け制御部610は、差分が発生していた領域と無彩色領域の座標位置とが一致していた領域の重みを減算し、その情報を記憶部230に記憶する。ステップS1119において、WB処理部240は、無彩色領域として検出された領域の色情報を記憶部230から読み出して参照し、過去の無彩色領域の色情報を元に、色調整の目標とする目標値を決定する。
【0048】
以上のように本実施形態では、過去に検出された無彩色領域と検出時の画像の情報、加えて現在の動体、および現在の画像との差分を元に、重み付けを変動するようにしている。これにより、無彩色領域が検出できず、過去の情報を参照した場合において無彩色領域の可能性がより高く、変化の少ない領域を元に色調整を行うことが可能となる。
【0049】
また、本実施形態によれば、撮影している画面内に変化があり、無彩色領域が変化するような場合においても良好な色を得ることができる。重み付けの結果が高い領域は、過去に無彩色であった可能性がより高く、変化も起きにくい箇所と想定できるが、その領域にも変化が発生する可能性がある。そのため、重み付けの結果を使用する場合に動き領域、過去との差分、またホワイトバランスの目標を変更することで良好な色を得ることが可能となる。
【0050】
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
【0051】
220 無彩色領域検出部
230 記憶部
240 WB処理部