(57)【特許請求の範囲】
【請求項１】
ホワイトバランス調整機能を有する撮像装置において、
分光特性の異なる複数の色フィルタを有する撮像素子と、
前記撮像素子からの出力信号を、前記複数の色フィルタの配列における単位配列に基づいて複数のブロックにブロック化し、その一部のブロックの出力信号を間引き、間引き後の各ブロックの出力信号による画像のエッジの状況に基づいて、当該ブロックの出力信号が前記ホワイトバランス調整のために使用できるか否かを判断する適正判断手段と、
を備えたことを特徴とする撮像装置。
【請求項２】
請求項１に記載の撮像装置において、
前記各ブロックの出力信号による画像のエッジの状況は、各ブロックにおける同色のフィルタの出力信号値の差が予め決められた値より小さいか否かであることを特徴とする撮像装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は静止画を撮像する撮像装置の技術分野に属するものである。
【０００２】
【従来の技術】
図１６は従来のデジタル電子カメラのブロック図である。
【０００３】
図１６において３００はデジタル電子カメラ、３０８はメモリカード等の記録媒体である。デジタル電子カメラ３００において、３０１は焦点距離や画角が調整可能な撮像レンズ、３０２は絞り機能とシャッター機能を兼ねる絞り兼用シャッター、３０４は撮像レンズ３０１や絞り兼用シャッター３０２のメカ系駆動回路である。１０１は被写体からの反射光を電気信号に変換する撮像素子、１０３は撮像素子を動作させるために必要なタイミング信号を発生するタイミング信号発生回路（以降ＴＧとする）、１０２はタイミング信号発生回路からの信号を撮像信号駆動可能なレベルに増幅する撮像素子駆動回路、１０４は撮像素子１０１の出力ノイズ除去のためのＣＤＳ回路やＡＧＣ回路を備えたプリプロセス手段、１０５はＡ／Ｄ変換器、３０３はＡ／Ｄ変換されたデジタル信号を処理する撮像信号処理する回路を有する撮像信号処理回路、１０８はシステム制御ＣＰＵ、１１６は操作補助のための表示やカメラの状態を表わす操作表示部、１１８はカメラの撮影開始をを外部撮影者が制御するためのスイッチで第１ストロークＳＷ１と第２ストロークＳＷ２の２段階操作が可能である。３０７はデジタル電子カメラ３００と記録媒体３０８とを接続するための記録媒体Ｉ／Ｆである。また３０５は光学系３０１の焦点調整のために撮像装置と被写体との距離を測定する測距回路、３０６は被写体の明るさを測定する測光回路である。
【０００４】
また、図１７は３０３撮像信号処理回路の内部構成とその周辺を示すブロック図である。１０１は色フィルタが補色の撮像素子（ＣＣＤ）であり、撮像した信号は１０４プリプロセス手段を介して１０５Ａ／Ｄ変換器に入力し、デジタル信号に変換された後に３０３撮像信号処理回路に入力される。入力された信号は４１０メモリに一旦記憶した後、あるいは入力信号を直接に４０１エンハンサー・Ｃ＿ＳＥＰ回路へ入力する。４０１エンハンサー・Ｃ＿ＳＥＰ回路および４０２遅延器を用いて輝度信号と色信号とを分離し輝度信号に対しては周波数の高域部に対する強調・補償を行う。４０１から出力される色信号はＣＣＤ色フィルタ（Ｍａ，Ｇｒ，Ｃｙ，Ｙｅ）をそれぞれ加算した信号（Ｗｒ，Ｗｂ，Ｇｒ，Ｇｂ）であり、同色信号を４０３Ｃ＿ＭＴＸにおいてＲＧＢ信号に変換する。４０４にて輝度信号Ｙと色信号に対してフィルタ処理を施す。４０５ＷＢは色信号ＲＧＢそれぞれの利得を４０８ＡＷＢに従って制御するホワイトバランス回路である。４０６はＹおよびＲＧＢに対してガンマ処理を施すガンマ回路であり、４０７Ｃ＿ＹＭＴＸはガンマ処理されたＲＧＢ信号を色差信号Ｒ−Ｙ，Ｂ−Ｙに変換するマトリクス回路である。４０８ＡＷＢはＲＧＢ信号あるいは４０７Ｃ＿ＹＭＴＸの出力Ｒ−Ｙ，Ｂ−Ｙ信号およびＹ信号を一定期間積分し積分値に応じて４０５ＷＢでＲ信号およびＢ信号の利得を制御しホワイトバランス制御をするための制御信号を発生させる。４０９は色差信号に対するフィルタ処理するフィルタである。輝度信号Ｙと色差信号Ｒ−Ｙ，Ｂ−Ｙを４１０メモリに１画像分記憶した後に４１１圧縮回路においてデータ圧縮処理を施す構成である。４１２はＣＣＤをフレーム読み出しする時の垂直方向の画素加算を行う画素加算回路である。
【０００５】
図１８の（Ａ）は４０８ＡＷＢの詳細な図面であり、色差信号（Ｒ−Ｙ，Ｂ−Ｙ）を入力し同信号の振幅に対し所定値を越えた大きな振幅の入力を制限するクリップ回路を有し、クリップ回路を通過した色差信号と輝度信号とを例えば一画面を複数ブロックに分割し、この分割ブロック毎に積分し、（Ｒ−Ｙ）と（Ｂ−Ｙ）とで作る座標において白色の色温度変化時における変化範囲を白判別範囲（図１８の（Ｂ）のように）  として設け、ブロック毎の積分値が同座標上において白判別範囲内にあるか否かを判別し、白判別範囲内の積分値を用いてＲ信号とＢ信号のゲインを定める制御を１０８のシステム制御ＣＰＵが行い、このゲインに応じた制御値でＲ／Ｂそれぞれのゲインを調整する。
【０００６】
【発明が解決しようとする課題】
上記従来例によるホワイトバランス制御は動画撮影時に適応するには時間経過にともなってある制御状態に収束する。しかしながら静止画撮影において上記従来例に基づくホワイトバランス制御を適応するには、画像の撮影（本露光）前に一旦撮像素子を露光し、この露光した信号を信号処理回路を用いて色差信号を作り上記従来のホワイトバランス検出により（Ｒ−Ｙ），（Ｂ−Ｙ）の座標上の位置から色温度状況を検出し同色温度における調整値を得た後に、本露光を行い先に得た調整値を用いてゲイン調整を行ってホワイトバランスを取る。
【０００７】
この様に一回のホワイトバランス検出で正確な色温度を検出する必要があるが、従来の様に（Ｒ−Ｙ），（Ｂ−Ｙ）で座標を作り同座標上に白判別範囲を設定する方法にあっては、ある色を低輝度で撮影した時とある色温度（特に白判別範囲内にあってＲ−Ｙ軸とＢ−Ｙ軸の交差点より遠い場所にあたる色温度）における白撮影した時とではともに白判別範囲内に入るので色温度の特定が難しくなり正確な色温度を検出することができない欠点があった。例えば、Ｒ−ＹとＹとの関係は図１８の（Ｃ）に示す様に、色温度変化がαからβまでの間であるとき白色はａ，ｂ，ｏの３点で囲まれた領域に存在する。これに対しある色（ａ色）はｃ，ｄ，ｏの３点で囲まれた領域に存在するものとする、従来の様にＲ−Ｙのレベル（ｅ）で白色を判別すると領域（Ｆ）内のａ色も含まれることとなり色温度検出の妨げとなる。
【０００８】
本発明は、上記問題点を解決するためになされたもので、ホワイトバランスを良好に調整できる撮像装置を提供することを課題とするものである。
【０００９】
【課題を解決するための手段】
上記課題を解決するため、本発明では、撮像装置を次の（１）、（２）のとおりに構成する。
（１）ホワイトバランス調整機能を有する撮像装置において、
分光特性の異なる複数の色フィルタを有する撮像素子と、
前記撮像素子からの出力信号を、前記複数の色フィルタの配列における単位配列に基づいて複数のブロックにブロック化し、その一部のブロックの出力信号を間引き、間引き後の各ブロックの出力信号による画像のエッジの状況に基づいて、当該ブロックの出力信号が前記ホワイトバランス調整のために使用できるか否かを判断する適正判断手段と、
を備えた撮像装置。
（２）前記（１）に記載の撮像装置において、
前記各ブロックの出力信号による画像のエッジの状況は、各ブロックにおける同色のフィルタの出力信号値の差が予め決められた値より小さいか否かである撮像装置。
【００１８】
【発明の実施の形態】
発明の実施の形態を実施例によって詳細に説明する。
【００１９】
【実施例】
以下、図面を参照して本発明の実施例を説明する。
【００２０】
（実施例１）
図４は本発明の第１の実施例に係る電子カメラの信号処理の流れを示したブロック図である。本実施例における撮像素子はフレーム読み出しを行なうため撮像素子からの出力は撮像素子に張り付けられたフィルタのまま出てくる。まず、オプティカルブラック領域における各フィルタ出力の積分値を用いて黒レベルの調整を行なう。次に、ホワイトバランス処理を行ない、白点におけるＭａ、Ｇｒ、Ｃｙ、Ｙｅの出力ゲインが同じになるようにする。
【００２１】
輝度信号（Ｙ）を作るには、色フィルタによるモアレを除去するためにローパスフィルタがかけられた後、アパーチャー補正を行なう。ここでは、水平、垂直にそれぞれハイパスフィルタがかけられ、ゲインを調整、アパチャー信号の振幅の小さいものにはその振幅が大きくなるように、また振幅の大きいものにはその振幅が小さくなるようなＰｅａｋ  Ｔｏ  Ｐｅａｋ処理が施され、水平、垂直が足され、さらにゲインをかけて、輝度成分（Ｙｎ）に加えられる。
【００２２】
色差信号（Ｒ−Ｙ，Ｂ−Ｙ）を作るには、まず同時化回路で４色の信号を同時化し、撮像面全領域に４つの色信号が割り当てられるよう画素補間を行なう。次に４×３のマトリクスを用いてＭＧＹＣ信号をＲＧＢ  信号に変換する。このとき、マトリクスは、ホワイトバランス情報から被写体の色温度を判別して、その色温度における色再現の最もよくなるようなマトリクスが用いられる。次に、ＲＧＢ信号をＲ−Ｙ、Ｂ−Ｙ信号に変換し、モアレ低減のためのローパスフィルタをかけ、Ｙ信号を参考に飽和の色消し処理を行なう。
【００２３】
このようにして作られた、輝度信号（Ｙ）と色差信号（Ｒ−Ｙ，Ｂ−Ｙ）は、ＲＧＢ信号に変換され、ガンマ補正処理を行なった後、記録される。
【００２４】
次に、本発明の主眼点である、ホワイトバランス処理について詳細に説明する。ＣＣＤ補色フィルターが図５に示すように配列している場合、図の８画素配列を単位ブロックとして、この単位ブロックの繰り返しで全体の配列が成り立っている。この８画素それぞれの色フィルタに合わせて、Ｍａ１、Ｍａ２、Ｇｒ１、Ｇｒ２、Ｃｙ１、Ｃｙ２、Ｙｅ１、Ｙｅ２とする。同色フィルタの出力をそれぞれ２色（Ｍａ１とＭａ２、Ｇｒ１とＧｒ２、Ｃｙ１とＣｙ２、Ｙｅ１とＹｅ２）に分けて扱うのは、隣接画素の色が異なることにより同色フィルタの画素でも互いに出力レベルが異なるためである。
【００２５】
以下、ホワイトバランス処理を図１ないし図３のフローチャートを参照して説明する。
【００２６】
（ｓｔｅｐ１）初期設定
１．１  誤差吸収
ＣＣＤ撮像素子から出力された画像信号全てに対し、予め決めておいた係数をかける。これは、ＣＣＤ撮像素子上の色フィルタの配列によって、同一色を撮影した時に同一色のフィルタからの出力値が異なってしまうのを補正するものである。これを図５を用いて説明すると、例えば白色板を撮影したとき、Ｍａ１とＭａ２、Ｇｒ１とＧｒ２では、撮像素子にもよるが、信号値が大きく異なることがある。これは、ＣｙとＹｅのフィルタの影響を受けたものと考えられ、この値を同じにするような係数をかけ吸収することが必要である。
【００２７】
Ｍａ１＝Ｍａ１＊Ｋｍ１
Ｍａ２＝Ｍａ２＊Ｋｍ２
Ｇｒ１＝Ｇｒ１＊Ｋｇ１
Ｇｒ２＝Ｇｒ２＊Ｋｇ２
Ｃｙ１＝Ｃｙ１＊Ｋｃ１
Ｃｙ２＝Ｃｙ２＊Ｋｃ２
Ｙｅ１＝Ｙｅ１＊Ｋｙ１
Ｙｅ２＝Ｙｅ２＊Ｋｙ２
（但し、各係数Ｋ＊は予め各ＣＣＤ撮像子毎に測定した値）
１．２  白判別範囲幅の設定
予め白板を様々な色温度で撮影し、その時の、
（Ｙｅ−Ｃｙ）／ＣｙをＸ軸（色温度の変化の影響が大きい）
（Ｍａ−Ｇｒ）／ＧｒをＹ軸
とし、プロットしたものを白判別曲線と呼び、図６のようになる。Ｘ軸方向の値は色温度の変化に対して敏感に反応する。＋方向に行くにつれて色温度は低くなる。Ｙ軸方向は、緑、赤色に敏感に反応する。よってＹ軸の幅ｄｙを変化させることで緑、赤の補正が可能となる。本実施例ではｄｙを、被写体の照度、あるいは、フリッカーの有無で変化させる。蛍光燈の光成分は、太陽光等に比べ緑色のスペクトルがたっている。つまり、太陽光下の撮影に比べ、被写体の色が緑がかってしまう。これを補正するために、Ｙ軸の緑方向の白判別領域（図６におけるｄｙの値）を広くすることで、緑補正が行える。よって、被写体の照度が暗ければ蛍光燈下である可能性が大きく、またフリッカーがある場合は蛍光燈下であるので、ｄｙの値を大きくする。図１２に示す（ａ）は通常光撮影の場合の白範囲幅、図１２（ｂ）は蛍光燈撮影の場合の白範囲幅である。
【００２８】
また，フラッシュ光の有無、被写体の照度情報から、ある程度被写体の色温度が予測できる。これにより、Ｘ軸の範囲を限定することで、より正確なホワイトバランスが可能となる。図１２（ｃ）はフラッシュ撮影時の白範囲幅を示した図であり、通常のＸ軸の範囲ｄｘに対し、これにフラッシュオンや照度情報からｄｘ１に限定する。
【００２９】
（ｓｔｅｐ２）  サンプルポイントの抽出
図３のような８画素単位を１サンプルポイントと呼び、新たなサンプリングポイントを選択する。
【００３０】
（ｓｔｅｐ３）  サンプルポイントにおける適正判断処理
３．１  飽和判別
サンプルポイント８画素に飽和画素が含まれるか否かを判断し、次式を一つでも満たさない場合、飽和画素があると判断し、本サンプルポイントは使用しないで、ステップ２に戻り、次のサンプリングポイントを抽出する。
【００３１】
Ｍａ１＜ＢｒｉｇｈｔＴｈｒｅｓｈｏｌｄＭａｇｅｎｔａ
Ｍａ２＜ＢｒｉｇｈｔＴｈｒｅｓｈｏｌｄＭａｇｅｎｔａ
Ｇｒ１＜ＢｒｉｇｈｔＴｈｒｅｓｈｏｌｄＧｒｅｅｎ
Ｇｒ２＜ＢｒｉｇｈｔＴｈｒｅｓｈｏｌｄＧｒｅｅｎ
Ｃｙ１＜ＢｒｉｇｈｔＴｈｒｅｓｈｏｌｄＣｙａｎ
Ｃｙ２＜ＢｒｉｇｈｔＴｈｒｅｓｈｏｌｄＣｙａｎ
Ｙｅ１＜ＢｒｉｇｈｔＴｈｒｅｓｈｏｌｄＹｅｌｌｏｗ
Ｙｅ２＜ＢｒｉｇｈｔＴｈｒｅｓｈｏｌｄＹｅｌｌｏｗ
３．２  ノイズ判別
サンプルポイント８画素が、Ｓ／Ｎが悪い場合、つまり次式を満たさない場合、ノイズ画素であると判断し、本サンプルポイントは使用しないで、ステップ２に戻る。
【００３２】
（Ｍａ１＋Ｍａ２＋Ｇｒ１＋Ｇｒ２＋Ｃｙ１＋Ｃｙ２＋Ｙｅ１＋Ｙｅ２）／８＞ＤａｒｋＴＨｒｅｓｈｏｌｄ
３．３  エッジ判別
サンプルポイントの８画素において、以下の４つ式を満たす場合はステップ４へ進み、一つでも満たさない場合がある時は、そのサンプルポイントにはエッジが含まれていると判断し、ステップ２に戻る。
【００３３】
ＥｄｇｅＴｈｒｅｓｈｏｌｄＭａｇｅｎｔａ＞｜Ｍａ１−Ｍａ２｜
ＥｄｇｅＴｈｒｅｓｈｏｌｄＧｒｅｅｎ＞｜Ｇｒ１−Ｇｒ２｜
ＥｄｇｅＴｈｒｅｓｈｏｌｄＣｙａｎ＞｜Ｃｙ１−Ｃｙ２｜
ＥｄｇｅＴｈｒｅｓｈｏｌｄＹｅｌｌｏｗ＞｜Ｙｅ１−Ｙｅ２｜
（ｓｔｅｐ４）
サンプルポイントにおいて、以下の式の値を求める。
【００３４】
Ｘ１＝（Ｙｅ１−Ｃｙ１）／Ｃｙ１              （１）
Ｙ１＝（Ｍａ１−Ｇｒ１）／Ｇｒ１              （２）
Ｘ２＝（Ｙｅ２−Ｃｙ２）／Ｃｙ２              （３）
Ｙ２＝（Ｍａ２−Ｇｒ２）／Ｇｒ２              （４）
（ｓｔｅｐ５）
（Ｙｅ−Ｃｙ）／ＣｙをＸ軸、（Ｍａ−Ｇｒ）／ＧｒをＹ軸にとり、式（１）から（４）が、ＸＹ軸上に設けた所定の白領域内にある場合、つまり以下の条件式を満たす場合、
ａ＜Ｘ１＜ｂ、ｃ＜Ｙ１＜ｄかつａ＜Ｘ２＜ｂ、ｃ＜Ｙ２＜ｄ      （５）
同サンプルポイントをＷＢ設定するためのデータとして有効とみなされ、ステップ６へ進み、式（５）を満たさない場合はステップ８に進む。
【００３５】
（ｓｔｅｐ６）
６．１
まず、同サンプルポイントにおいて、以下の式を用いて、ＷＢ座標におけるサンプルポイントのＸＹ軸値の平均値、及び、輝度値を求める。
【００３６】
ＡｖｅｒａｇｅＸ＝（Ｘ１＋Ｘ２）／２
ＡｖｅｒａｇｅＹ＝（Ｙ１＋Ｙ２）／２
ＡｖｅｒａｇｅＢｒｉｇｈｔｎｅｓｓ＝（Ｍａ１＋Ｍａ２＋Ｇｒ１＋Ｇｒ２＋Ｃｙ１＋Ｃｙ２＋Ｙｅ１＋Ｙｅ２）／８
６．２
同サンプルポイントがＷＢ設定有効データとみなされた最初のサンプルポイントである場合は、図７に示すような値をパラメータとして持つサンプルポイントグループを作り、ステップ６．１で求めた値、及び、同ポイントの画素値を代入する。
【００３７】
ＧｐＸ  ＝  ＡｖｅｒａｇｅＸ
ＧｐＹ  ＝  ＡｖｅｒａｇｅＹ
ＧｐＢｒｉｇｈｔｎｅｓｓ＝ＡｖｅｒａｇｅＢｒｉｇｈｔｎｅｓｓ
ＧｐＭａ１＝Ｍａ１
ＧｐＭａ２＝Ｍａ２
ＧｐＧｒ１＝Ｇｒ１
ＧｐＧｒ２＝Ｇｒ２
ＧｐＣｙ１＝Ｃｙ１
ＧｐＣｙ２＝Ｃｙ２
ＧｐＹｅ１＝Ｙｅ１
ＧｐＹｅ２＝Ｙｅ２
ＧｐＮｕｍｂｅｒ＝１
ＧｐＷｅｉｇｈｔ＝１
６．３
また、同サンプルポイントがＷＢ設定有効データとみなされた最初でないサンプルポイントである場合は、既存のサンプルポイントグループのＧｐＸ、ＧｐＹ、ＧｐＢｒｉｇｈｔｎｅｓｓの値を用いて、以下の条件式を満たすときに、同サンプルポイントはそのサンプルポイントグループに含まれると判断し、サンプルポイントグループに含ませる。
【００３８】
0003897370.tif 000002
また、全てのサンプルポイントグループに含ませることができない場合は、同サンプルポイントを基準とする新たなサンプルポイントグループを作成する。（ｓｔｅｐ６．２と同じ処理）
（ｓｔｅｐ７）
全てのサンプルポイントにおいて、ステップ６の処理が終了したら、ステップ６で作られた一つあるいは複数個のサンプルポイントグループの中から、本当の白のグループをさがすわけであるが、実際にはどれが白であるかわからない。そこで、輝度の高いものは白であるという仮定をして、前記複数のサンプルポイントグループの輝度情報ＧｐＢｒｉｇｈｔｎｅｓｓを用いて、輝度の大きいものに重み付けを行う。重み付けは以下の式で行なう。また、本重み付け処理を行うか行わないかは、ユーザが予め設定可能である。
【００３９】
0003897370.tif 000003
８．１
ステップ４で求め座標にあらわしたホワイト点（Ｘ１，Ｙ１）（Ｘ２，Ｙ２）が所定範囲内にないものとステップ５（５）式で判別されたならば、図６に示すように同座標点を所定範囲枠上に移動し、範囲枠上の座標（Ｘ’，Ｙ’）から次式を用いて、Ｍａ１’、Ｍａ２’、Ｙｅ１’、Ｙｅ２’を新たに求め直す。
【００４０】
Ｍａ１’＝（１＋Ｙ１’）＊Ｇｒ１
Ｍａ２’＝（１＋Ｙ２’）＊Ｇｒ２
Ｙｅ１’＝（１＋Ｘ１’）＊Ｃｙ１
Ｙｅ２’＝（１＋Ｘ２’）＊Ｃｙ２
８．２
但し、座標点の移動の仕方は図のように、座標点に対して最も近い所定範囲枠上の座標に移動するものとする。この座標移動処理を色クリップ処理とよぶ。この色クリップされたサンプルポイントの総数をＳＮ２  とし、色クリップによって求められる積分値をＭａ１’，Ｍａ２’，Ｇｒ１’，Ｇｒ２’，Ｃｙ１’，Ｃｙ２’，Ｙｅ１’，Ｙｅ２’とする。
【００４１】
（ｓｔｅｐ９）
９．１
ステップ６及び７で得られた全てのサンプルポイントグループに対して、以下の式を用いて、白判別範囲内の積分値（ＳＭａ１，ＳＭａ２，ＳＧｒ１，ＳＧｒ２，ＳＣｙ１，ＳＣｙ２，ＳＹｅ１，ＳＹｅ２）を求める。
【００４２】
ＳＭａ１＝ＳＭａ１＋ＧｐＭａ１＊ＧｐＷｅｉｇｈｔ
ＳＭａ２＝ＳＭａ２＋ＧｐＭａ２＊ＧｐＷｅｉｇｈｔ
ＳＧｒ１＝ＳＧｒ１＋ＧｐＧｒ１＊ＧｐＷｅｉｇｈｔ
ＳＧｒ２＝ＳＧｒ２＋ＧｐＧｒ２＊ＧｐＷｅｉｇｈｔ
ＳＣｙ１＝ＳＣｙ１＋ＧｐＣｙ１＊ＧｐＷｅｉｇｈｔ
ＳＣｙ２＝ＳＣｙ２＋ＧｐＣｙ２＊ＧｐＷｅｉｇｈｔ
ＳＹｅ１＝ＳＹｅ１＋ＧｐＹｅ１＊ＧｐＷｅｉｇｈｔ
ＳＹｅ２＝ＳＹｅ２＋ＧｐＹｅ２＊ＧｐＷｅｉｇｈｔ
９．２
また、同時に白とみなされたサンプルポイント数ＳＮ１を求める。
【００４３】
ＳＮ１＝ＳＮ１＋ＧｐＮｕｍｂｅｒ
（ｓｔｅｐ１０）
サンプル数（ＳＮ１＋ＳＮ２）が０または所定以上得られていなければ、ホワイトバランス調整データとして、所定の色温度（例えば５０００Ｋ）のホワイトバランス調整値を用いる。
【００４４】
（ｓｔｅｐ１１）
白撮影時の平均輝度レベルとしての、
ＳＹ＝（ＳＭａ１＋ＳＭａ２＋ＳＧｒ１＋ＳＧｒ２＋ＳＣｙ１＋ＳＣｙ２＋ＳＹｅ１＋ＳＹｅ２）／８
を求め、この平均輝度レベルに対する各色の積分値の比率を求める。
【００４５】
0003897370.tif 000004
クリップ時の平均輝度レベルとしての
ＳＹ’＝（ＳＭａ１’＋ＳＭａ２’＋ＳＧｒ１’＋ＳＧｒ２’＋ＳＣｙ１’＋ＳＣｙ２’＋ＳＹｅ１’＋ＳＹｅ２’）／８
を求め、この平均輝度レベルに対する各色の積分値の比率を求める。
【００４６】
0003897370.tif 000005
ステップ１１及び１２で得られた、各色の積分値の比率と、白判別範囲内の積分サンプル数ＳＮ１  と色クリップによる積分サンプル数ＳＮ２  より、ホワイトバランス調整データ（ｗｍｇ１，ｗｇ１，ｗｃｙ１，ｗｙｅ１，ｗｍｇ２，ｗｇ２，ｗｃｙ２，ｗｙｅ２）を作る。
【００４７】
例えば、
0003897370.tif 000006
のような処理を施す。これらの値をホワイトバランス調整データとして記憶する。
【００４８】
上記処理で得られたホワイトバランス調整データを、撮像素子から得られた画素毎の信号値にかけることでホワイトバランスをとることができる。
【００４９】
以上、撮像素子からの信号値でホワイトバランスのための座標を作り、その座標におおいて白領域に入ったサンプル点に対し、白いものは相対的に輝度値が高いという仮定のもとに重み付けを行なった後、そのサンプル点で積分を行なう処理をするので、画像中に白が少ない場合であっても、重み付けにより、他の色に影響されホワイトバランスが大きくずれることを回避することが可能である。
【００５０】
また、撮像素子からの出力信号をフィルタ配列毎にブロック化する手段と、其の複数ブロックを任意にあるいは千鳥状に間引く手段の少なくとも一つ以上の手段を備えていることで、撮像素子の全ての画素に対して計算を行わずにすみ、処理の高速化が実現できる。
【００５１】
また、前記分割手段によって分割されたブロック中に、飽和画素があるか否かを判断する手段、ノイズ画素はあるか否かを判断する手段、ブロック内に画像のエッジか含まれるか否かを判断する手段の少なくともひとつ以上を備えた適正判断手段を備えていることから、参照ブロックが、被写体の色温度を求めるのに適したブロックか否かを判断できる。
【００５２】
また、色フィルタ配列上、ある色フィルタの画素の信号値に隣接した別の色のフィルタの光が漏れこみ、その結果、同一被写体の同一ブロック内における同一色の画素の値が互いに異なるということに起因する被写体の色温度を判別できないといった問題点を、白板を撮影し、同一ブロック内における同一色の画素の信号値が同じになるようある係数を各色フィルタ毎にかけることにより回避することが可能となる。
【００５３】
また、被写体の照度情報、フリッカー情報、フラッシュ光の有無等の情報から、前記白判別範囲を変化させることにより、光源が蛍光燈の場合の緑成分補正や、フラッシュ時のホワイトバランス、日中シンクロ撮影時におけるホワイトバランスをより正確にとることが可能となる。
【００５４】
また、（Ｒ−Ｙ）／Ｙ，（Ｂ−Ｙ）／Ｙに代わって（Ｍａ−Ｇｒ）／Ｇｒまたは（Ｍａ−Ｇｒ）／Ｍａと（Ｙｅ−Ｃｙ）／Ｃｙまたは（Ｙｅ−Ｃｙ）／Ｙｅによって座標を作り色温度の検出をすることにより、（Ｍａ，Ｇｒ，Ｃｙ，Ｙｅ）の色フィルタを有する撮像素子の読み出し信号から直接に色温度検出ができるため、本露光前の色温度検出の為の露光および信号処理を省略することができ、簡易でかつ正確な色温度検出が可能となる。また、白色部分を少量しか含まない被写体撮影時にあっても（Ｍａ−Ｇｒ）／Ｇｒ＝ａ，（Ｙｅ−Ｃｙ）／Ｃｙ＝ｂの形で白色判別範囲内の座標を与えることにより、白色判別範囲内におけるＭａ’＝（１＋ａ）＊Ｇｒ，Ｙｅ’＝（１＋ｂ）＊Ｃｙの形の簡易な処理で撮像素子出力を置き換えることができ、前記撮影条件にあってもホワイトバランスが大きくずれないホワイトバランス調整が可能となる。
【００５５】
以上、本実施例はフィルタが４色の場合を考えたが、３色の場合でも同様の操作でホワイトバランス調整データを得ることができるのは明白である。
【００５６】
（実施例２）
図８は本発明の第２の実施例に係る電子カメラの信号処理の流れを示した図である。本実施例における撮像素子はフィールド読み出しを行なうため、図１１に示すように撮像素子からの出力は垂直方向２画素が加算されて読み出される。この図において、
Ｗｂ＝Ｍａ＋Ｃｙ
Ｇｒ＝Ｇ＋Ｙｅ
Ｇｂ＝Ｃｙ＋Ｇ
Ｗｒ＝Ｙｅ＋Ｍａ
である。色フィルタが（Ｍａ、Ｇ  、Ｃｙ、Ｙｅ）から（Ｗｂ、Ｇｒ、Ｇｂ、Ｗｒ）に変わったものと考えるとフレーム読み出しとほぼ同じ処理を行なうことになる。
【００５７】
まず、オプティカルブラック領域における各フィルタ出力の積分値を用いて黒レベルの調整を行なう。次に、ホワイトバランス処理を行ない、白点におけるＷｂ、Ｇｒ、Ｇｂ、Ｗｒの出力ゲインが同じになるようにする。
【００５８】
輝度信号（Ｙ）を作るには、色フィルタによるモアレを除去するために水平ローパスフィルタがかけられた後、アパーチャー補正を行なう。ここでは、水平、垂直にそれぞれハイパスフィルタがかけられ、ゲインを調整、アパチャー信号の振幅の小さいものにはその振幅が大きくなるように、また振幅の大きいものにはその振幅が小さくなるようなＰｅａｋ  Ｔｏ  Ｐｅａｋ処理が施され、水平、垂直が足され、さらにゲインをかけて、輝度成分（Ｙｎ）に加えられる。
【００５９】
色差信号（Ｒ−Ｙ，Ｂ−Ｙ）を作るには、まず同時化回路で４色の信号を同時化し、撮像面全領域に４つの色信号が割り当てられるよう画素補間を行なう。次に４×３のマトリクスを用いてＷｂＧｒＧｂＷｒ信号をＲＧＢ信号に変換する。このとき、マトリクスは、ホワイトバランス情報から被写体の色温度を判別して、その色温度における色再現の最もよくなるようなマトリクスが用いられる。次に、ＲＧＢ信号をＲ−Ｙ、Ｂ−Ｙ信号に変換し、モアレ低減のためのローパスフィルタをかけ、Ｙ信号を参考に飽和の色消し処理を行なう。
【００６０】
このようにして作られた、輝度信号（Ｙ）と色差信号（Ｒ−Ｙ，Ｂ−Ｙ）は、ＲＧＢ信号に変換され、ガンマ補正処理を行なった後、記録される。
【００６１】
次に、本発明の主眼点である、ホワイトバランス処理について詳細に説明する。ＣＣＤ補色フィルターが図１１（ａ）のように配列している場合、図の８画素配列を単位ブロックとして、この単位ブロックの繰り返しで全体の配列が成り立っている。ここで、フィールド読み出しを行なうため、１フィールドでは、図１１（ｂ）のような信号が読み出される。
【００６２】
以下、ホワイトバランス処理を図９，図１０のフローチャートを参照して説明する。
【００６３】
（ｓｔｅｐ１）白判別範囲の設定
予め白板を様々な色温度で撮影し、その時の、
（（Ｗｒ−Ｇｂ）−（Ｗｂ−Ｇｒ））／（Ｗｒ＋Ｇｂ）をＸ軸
（（Ｗｒ−Ｇｂ）＋（Ｗｂ−Ｇｒ））／（Ｗｂ＋Ｇｒ）をＹ軸
とし、プロットしたものを図１３に示す。実施例１と同様に、被写体の照度、フリッカーの有無でＸ軸の幅を変化させ、また、フラッシュの有無、被写体の照度によってＹ軸の幅を変化させる。
【００６４】
（ｓｔｅｐ２）サンプルポイント抽出
図１１に示すような加算後の画素４画素単位（Ｗｂ，Ｇｂ，Ｇｒ，Ｗｒ）を１サンプルポイントと呼び、新たなサンプリングポイントを選択する。
【００６５】
（ｓｔｅｐ３）
３．１  飽和判別
サンプルポイント４画素に飽和画素が含まれるか否かを判断し、次式を一つでも満たさない場合、飽和画素があると判断し、本サンプルポイントは使用しないで、ステップ２に戻る。
【００６６】
Ｗｂ＜ＢｒｉｇｈｔｎｅｓｓＴｈｒｅｓｈｏｌｄＷｂ
Ｇｂ＜ＢｒｉｇｈｔｎｅｓｓＴｈｒｅｓｈｏｌｄＧｂ
Ｇｒ＜ＢｒｉｇｈｔｎｅｓｓＴｈｒｅｓｈｏｌｄＧｒ
Ｗｒ＜ＢｒｉｇｈｔｎｅｓｓＴｈｒｅｓｈｏｌｄＷｒ
３．２  ノイズ判別
サンプルポイント４画素が、Ｓ／Ｎが悪い場合、つまり次式を満たさない場合、ノイズ画素であると判断し、本サンプルポイントは使用しないで、ステップ２に戻る。
【００６７】
（Ｗｂ＋Ｇｂ＋Ｇｒ＋Ｗｒ）／４＞ＤａｒｋＴｈｒｅｓｈｏｌｄ
（ｓｔｅｐ４）
サンプルポイントにおいて、以下の式の値を求める。
【００６８】
Ｘ１＝（（Ｗｒ−Ｇｂ）−（Ｗｂ−Ｇｒ））／（Ｗｒ＋Ｇｂ）        （１）
Ｙ１＝（（Ｗｒ−Ｇｂ）＋（Ｗｂ−Ｇｒ））／（Ｗｂ＋Ｇｒ）        （２）
（ｓｔｅｐ５）
（（Ｗｒ−Ｇｂ）−（Ｗｂ−Ｇｒ））／（Ｗｒ＋Ｇｂ）をＸ軸、（（Ｗｒ−Ｇｂ）＋（Ｗｂ−Ｇｒ））／（Ｗｂ＋Ｇｒ）をＹ軸にとり、式（１）（２）が、ＸＹ軸上に設けた所定の領域内にある場合、つまり以下の条件式を満たす場合、
ａ＜Ｘ１＜ｂ、ｃ＜Ｙ１＜ｄ                              （３）
同サンプルポイントをＷＢ設定するためのデータとして有効とみなされ、ステップ４へ進み、式（３）を満たさない場合はステップ８に進む。
【００６９】
（ｓｔｅｐ６）
６．１
まず、同サンプルポイントにおいて、以下の式を用いて、ＷＢ座標におけるサンプルポイントのＸＹ軸値の平均値、及び、輝度値を求める。
【００７０】
ＡｖｅｒａｇｅＸ＝Ｘ１
ＡｖｅｒａｇｅＹ＝Ｙ１
ＡｖｅｒａｇｅＢｒｉｇｈｔｎｅｓｓ＝（Ｗｂ＋Ｇｒ＋Ｇｂ＋Ｗｒ）／２
６．２
同サンプルポイントがＷＢ設定有効データとみなされた最初のサンプルポイントである場合は、図７に示すような値をパラメータとして持つサンプルポイントグループを作り、ステップ６．１で求めた値、及び、同ポイントの画素値を代入する。
【００７１】
ＧｐＸ＝ＡｖｅｒａｇｅＸ
ＧｐＹ＝ＡｖｅｒａｇｅＹ
ＧｐＢｒｉｇｈｔｎｅｓｓ＝ＡｖｅｒａｇｅＢｒｉｇｈｔｎｅｓｓ
ＧｐＷｂ＝Ｗｂ
ＧｐＧｒ＝Ｇｒ
ＧｐＧｂ＝Ｇｂ
ＧｐＷｒ＝Ｗｒ
ＧｐＮｕｍｂｅｒ＝１
ＧｐＷｅｉｇｈｔ＝１
６．３
また、同サンプルポイントがＷＢ設定有効データとみなされた最初でないサンプルポイントである場合は、既存のサンプルポイントグループのＧｐＸ、ＧｐＹ、ＧｐＢｒｉｇｈｔｎｅｓｓの値を用いて、以下の条件式を満たすときに、同サンプルポイントはそのサンプルポイントグループに含まれると判断し、サンプルポイントグループに含ませる。
【００７２】
0003897370.tif 000007
また、全てのサンプルポイントグループに含ませることができない場合は、同サンプルポイントを基準とする新たなサンプルポイントグループを作成する。（ｓｔｅｐ６．２と同じ処理）
（ｓｔｅｐ７）
全てのサンプルポイントにおいて、ステップ６の処理が終了したら、ステップ６で作られた一つあるいは複数個のサンプルポイントグループの中から、本当の白のグループをさがすわけであるが、実際にはどれが白であるかわからない。そこで、輝度の高いものは白であるという仮定をして、前記複数のサンプルポイントグループの輝度情報ＧｐＢｒｉｇｈｔｎｅｓｓを用いて、輝度の大きいものに重み付けを行う。重み付けは以下の式で行なう。また、本重み付け処理を行うか行わないかは、ユーザが予め設定可能である。
【００７３】
0003897370.tif 000008
８．１
ステップ４で求め座標にあらわしたホワイト点（Ｘ１，Ｙ１）（Ｘ２，Ｙ２）が所定範囲内にないものとステップ５（３）式で判別されたならば、同座標点を所定範囲枠上に移動し、ＷＢ’、Ｗｒ’を新たに求め直す。
【００７４】
８．２
この色クリップされたサンプルポイントの総数をＳＮ２とし、色クリップによって求められる積分値をＷｂ’，Ｇｒ’，Ｇｂ’，Ｗｒ’とする。
【００７５】
（ｓｔｅｐ９）
９．１
ステップ６及び７で得られた全てのサンプルポイントグループに対して、以下の式を用いて、白判別範囲内の積分値（ＳＷｂ，ＳＧｒ，ＳＧｂ，ＳＷｒ）を求める。
【００７６】
ＳＷｂ＝ＳＷｂ＋ＧｐＷｂ＊ＧｐＷｅｉｇｈｔ
ＳＧｒ＝ＳＧｒ＋ＧｐＧｒ＊ＧｐＷｅｉｇｈｔ
ＳＧｂ＝ＳＧｂ＋ＧｐＧｂ＊ＧｐＷｅｉｇｈｔ
ＳＷｒ＝ＳＷｒ＋ＧｐＷｒ＊ＧｐＷｅｉｇｈｔ
９．２
また、同時に白とみなされたサンプルポイント数ＳＮ１を求める。
【００７７】
ＳＮ１＝ＳＮ１＋ＧｐＮｕｍｂｅｒ
（ｓｔｅｐ１０）
サンプル数（ＳＮ１＋ＳＮ２）が０または所定以上得られていなければ、ホワイトバランス調整データとして、所定の色温度（例えば５０００Ｋ）のホワイトバランス調整値を用いる。
【００７８】
（ｓｔｅｐ１１）
白撮影時の平均輝度レベルとしての、
ＳＹ＝（ＳＷｂ＋ＳＧｒ＋ＳＧｂ＋ＳＷｒ）／４
を求め、この平均輝度レベルに対する各色の積分値の比率を求める。
【００７９】
ｇｗｂ＝ＳＹ／（２＊ＳＷｂ）
ｇｇｒ＝ＳＹ／（２＊ＳＧｒ）
ｇｇｂ＝ＳＹ／（２＊ＳＧｂ）
ｇｗｒ＝ＳＹ／（２＊ＳＷｒ）
（ｓｔｅｐ１２）
クリップ時の平均輝度レベルとしての
ＳＹ’＝（ＳＷｂ’＋ＳＧｒ’＋ＳＧｂ’＋ＳＷｒ’）／４
を求め、この平均輝度レベルに対する各色の積分値の比率を求める。
【００８０】
ｇｗｂ’＝ＳＹ’／（２＊ＳＷｂ’）
ｇｇｒ’＝ＳＹ’／（２＊ＳＧｒ’）
ｇｇｂ’＝ＳＹ’／（２＊ＳＧｂ’）
ｇｗｒ’＝  ＳＹ’／（２＊ＳＷｒ’）
（ｓｔｅｐ１３）
ステップ１１及び１２で得られた、各色の積分値の比率と、白判別範囲内の積分サンプル数ＳＮ１と色クリップによる積分サンプル数ＳＮ２より、ホワイトバランス調整データ（ｗｗｂ，ｗｇｒ，ｗｇｂ，ｗｗｒ）を作る。
【００８１】
例えば、
0003897370.tif 000009
のような処理を施す。これらの値をホワイトバランス調整データとして記憶する。
【００８２】
上記処理で得られたホワイトバランス調整データを、撮像素子から得られた画素毎の信号値にかけることでホワイトバランスをとることができる。以上、本実施例はフィルタが４色の場合を考えたが、３色の場合でも同様の操作でホワイトバランス調整データを得ることができるのは明白である。
【００８３】
（実施例３）
図１４は本発明の実施例３のホワイトバランスの処理フローチャートの１部分であり、図２におけるステップ６に相当する部分である。ここは、ホワイトバランスグループを作成した後、グループに重み付けをする部分であるが、本実施例は、この重み付けに、撮影時の照度情報を用いることを特徴とする。この照度情報とは例えばＥＶ値でありフラッシュＯｎＯｆｆの情報である。
【００８４】
カメラ側から情報としてＥＶ値をもらい、ＥＶ値が大きい場合は外で撮影（太陽光）したものである場合が大きいので、図１５に示す（ａ）のように白座標範囲を限定する。また、逆にＥＶ値が小さいのは夕日、もしくは人工光と限定し、図１５（ｂ）のように白座標範囲を限定する。また、フラッシュがＯＮのときには図１５（ｃ）のように白座標範囲を限定する。ここで、サンプルポイントグループすべてに対し、以下のように重み付けを行なう。つまり、限定座標範囲にあるホワイトバランスグループの重みを増す。
【００８５】
0003897370.tif 000010
このような重み付けを行なうことで、白の輝度の低い場合にも、より好ましいホワイトバランスを行なうことができ、また、限定座標範囲に入らない点が白である場合でも、重み付けによる白グループ選択を行っているため、ホワイトバランスがおおきくずれることはない。
【００８６】
また、本実施例における重み付けは実施例２におけるステップ７に用いても、また、実施例１及び実施例２の重み付けの手法と組み合わせて用いても、さしつかえない。
【００８７】
【発明の効果】
以上説明したように、本発明によれば、ホワイトバランスを良好に調整できる撮像装置を提供することができる。
すなわち、本発明では、全画面のうち任意の数に間引かれた参照ブロックに、画像のエッジか含まれるか否かによって参照ブロックが白色判定に適しているか判断しているため、例えば、少数画素のブロックからであっても、被写体の色温度を正確にかつ高速に求めることが出来る。
【図面の簡単な説明】
【図１】  第１の実施例のホワイトバランス処理のフローチャートである。
【図２】  第１の実施例のホワイトバランス処理のフローチャートである。
【図３】  第１の実施例のホワイトバランス処理のフローチャートである。
【図４】  第１の実施例のＷＢ検出回路を用いた電子カメラの信号処理ブロック図である。
【図５】  撮像素子の色フィルタ配列パターンを示した説明図である。
【図６】  ホワイトバランス処理に用いるホワイトバランス座標を示した説明図である。
【図７】  サンプルポイントグループの各パラメータを示した説明図である。
【図８】  第２の実施例のＷＢ検出回路を用いた電子カメラの信号処理ブロック図である。
【図９】  第２の実施例のホワイトバランス処理のフローチャートである。
【図１０】  第２の実施例のホワイトバランス処理のフローチャートである。
【図１１】  第２の実施例の撮像素子の読み出し手法を示した説明図である。
【図１２】  白判別曲線範囲幅の決定手法を示した説明図である。
【図１３】  第２の実施例における白判別範囲座標を示した説明図である。
【図１４】  第３の実施例のホワイトバランスの処理の一部分を示すフローチャートである。
【図１５】  第３の実施例の白座標範囲の決定の説明図である。
【図１６】  従来例のデジタル電子カメラのブロック図である。
【図１７】  従来例のブロック図である。
【図１８】  従来例のホワイトバランス制御の説明図である。
【図１】
0003897370.tif 000011
【図２】
0003897370.tif 000012
【図３】
0003897370.tif 000013
【図４】
0003897370.tif 000014
【図５】
0003897370.tif 000015
【図６】
0003897370.tif 000016
【図７】
0003897370.tif 000017
【図８】
0003897370.tif 000018
【図９】
0003897370.tif 000019
【図１０】
0003897370.tif 000020
【図１１】
0003897370.tif 000021
【図１２】
0003897370.tif 000022
【図１３】
0003897370.tif 000023
【図１４】
0003897370.tif 000024
【図１５】
0003897370.tif 000025
【図１６】
0003897370.tif 000026
【図１７】
0003897370.tif 000027
【図１８】
0003897370.tif 000028