(58)【調査した分野】(Int.Cl.,DB名)
前記非参照領域判定部は、前記分割測光領域内の所定の画素の座標と前記イメージサークル情報とを比較することで、前記分割測光領域の非参照領域判定を行うことを特徴とする請求項1又は2に記載の信号処理装置。
【発明を実施するための形態】
【0017】
以下、添付の図面に従って、本発明を実施するための最良の形態について説明する。なお、この実施の形態により本発明が限定されるものではない。
【0018】
図1に示すように、撮影レンズ100はカメラ本体200に着脱可能な交換レンズであり、カメラ本体200と共に撮像装置300を構成している。
【0019】
撮影レンズ100は、ズーム制御部110と、ズームレンズ111と、フォーカス制御部120と、フォーカスレンズ121と、絞り制御部130と、絞りユニット131と、レンズCPU140と、を備えている。
【0020】
ズームレンズ111及びフォーカスレンズ121はレンズ光学系を構成しており、図中において簡単のためにそれぞれ1枚のレンズで描写しているが、これに限らない。ズームレンズ111及びフォーカスレンズ121はズーム制御部110とフォーカス制御部120とにそれぞれ接続されており、レンズの駆動や位置検出等の制御が行われる。
【0021】
絞りユニット131は、絞り制御部130に接続されている。絞り制御部130は絞りユニット131の絞り値(F値)を制御する。
【0022】
レンズCPU140は、後述するメインCPU240と協働して上述した各種制御部の制御内容を決定し、指示を出す。また、レンズCPU140は撮影レンズ100のズーム位置、フォーカス位置、F値等の撮影条件を各種制御部から取得し、メインCPU240に出力する。また、不図示のメモリ部に格納されたイメージサークル情報やレンズIDを、必要に応じてメインCPU240に出力する。
【0023】
カメラ本体200は、撮像素子210と、信号処理部220と、画像処理部230と、メインCPU240と、記録媒体インターフェース(I/F)241と、ユーザインターフェース(I/F)242と、画像表示部250と、を備えている。
【0024】
撮像素子210は、撮影レンズ100により集光された光線を受光して光電変換し、画像信号を出力する。本実施形態の撮像素子210としては、CMOSイメージセンサが用いられている。撮像素子210の受光面は多数の画素から構成されている。撮像素子210は内部に不図示のゲイン可変アンプ、A/Dコンバータを備えており、画像信号はデジタルデータとして出力される。
【0025】
上述したゲイン可変アンプ、A/Dコンバータを内蔵していない撮像素子210を採用する場合には、これらのデバイスを個別に搭載すればよい。
【0026】
信号処理部220は撮像素子210から読み出された画像信号に対して各種の信号処理を施す。信号処理としては、例えば、画素受光量と出力値との間の線形性を確保するための補正処理や、読み出した画像信号を増幅するための増幅処理がある。
【0027】
信号処理部220はまた、撮像素子210から読み出された画像信号を用いた露出制御処理も行う。この露出制御処理について詳しくは後述する。
【0028】
画像処理部230は、信号処理部220から送られてきた画像信号に対して各種の画像処理を施す。画像処理として、例えば、ホワイトバランス処理、色再現処理、ノイズリダクション処理、JPEG形式やTIFF形式の画像データへの現像処理等がある。
【0029】
メインCPU240は、撮像装置100全体の包括的な制御を行う。例えば、撮像素子210の読み出し制御を行う。メインCPU240が撮像素子210の駆動タイミングを決定する信号を出力することで、画素毎の水平駆動並びに垂直駆動が制御され、各画素からRGBの画像信号が読み出される。
【0030】
メインCPU240はレンズCPU140と電気的に接続されており、協働して撮影レンズ100の制御を行う。ライブビュー画像取得時や通常撮影時には、レンズCPU140からの各種情報を取得して撮影条件の決定に利用する。
【0031】
また、メインCPU240は撮像素子210の各種パラメータについての情報を格納している。格納される情報としては例えば、撮像素子210の各種サイズや有効撮影範囲情報等を含むセンサーサイズ情報がある。メインCPU240は、必要に応じてこれらの各種情報を利用する。
【0032】
さらにメインCPU240は、撮像素子210のセンサーサイズ情報とレンズCPU140から取得したイメージサークル情報とに基づいて、露出制御時に除外する非参照領域の判定も行う。この非参照領域判定について、詳しくは後述する。
【0033】
記録媒体I/F241は、不図示の記録媒体との間でRAWデータや現像後の画像データの記録又は読み出しを行う。この記録媒体は、半導体メモリ等の着脱可能な記録媒体である。
【0034】
ユーザI/F242は、例えば、レリーズボタン、電源ボタン、コマンドダイヤル、十字キー等の操作部材を有しており、ユーザがこれらの操作部材を操作すると、メインCPU240は所定の動作を行う指示を出す。
【0035】
画像表示部250は、撮影画像や不図示の記録媒体から読み出された画像等を表示する。
【0036】
次に、上述した撮像装置300における露出制御処理について説明する。
【0037】
図2は、撮像素子210を用いて分割測光を行う際の複数の測光領域を表した模式図である。本実施例の撮像装置300においては32×32個の領域に分割されて被写体の輝度が測光される。便宜上、各測光領域には(1,1)〜(32,32)までの座標を付してある。本図では測光領域全体の左上1/4に相当する部分のみが示されており、測光領域の(1,1)〜(16,16)までが図示されている。
【0038】
また、本図にはカメラ本体200に装着された撮影レンズ100のイメージサークルが円弧として描かれている。イメージサークルは撮影レンズを介して入射する被写体光束がケラレない範囲を示しており、本実施例の撮像装置300では、撮像素子210の有効撮影範囲の長辺にほぼ内接する円となっている。このイメージサークル内の領域については、被写体からの光束が撮像素子210に届くので撮影が可能となる。
【0039】
一方、イメージサークル外の領域については、撮影レンズ100の機構的な制限により原則的には被写体光束が撮像素子210に届かないため、この領域に存在する画素が露光することはない。この状態で撮影を行うと、露光しない領域がいわゆるケラレとして撮影画像に現れることになる。
【0040】
このケラレを考慮に入れないまま、ケラレが発生している撮影画像データに基づいて露出制御処理を行うと、ケラレ領域を誤って低輝度領域として処理してしまう。その結果、露出制御の精度低下を引き起こす。本発明の撮像装置300では、これらのケラレ領域を非参照領域と判別することでこのような露出精度の低下を防止する。
【0041】
なお、測光領域(撮像素子210)とイメージサークルの大きさの関係は、撮像素子210自体のセンサーサイズによっても変化する。すなわち、本図に示す撮像素子210よりもセンサーサイズの小さな撮像素子を実装した場合には撮像素子210全体に占めるケラレの割合は減少し、センサーサイズの大きな撮像素子を実装した場合にはケラレの割合は増加することになる。
【0042】
上述した撮影レンズ100のイメージサークルに関する情報は、撮影レンズ100内のレンズCPU140に設けられている不図示のメモリ部に予め格納されている。撮影レンズ100が魚眼ズームレンズのように焦点距離によってイメージサークルの大きさが変わるレンズであれば、それらのテーブル形式のデータとして格納しておけばよい。以下の説明においては、これらのイメージサークルに関する情報をまとめてイメージサークル情報と呼ぶこととする。
【0043】
次に、本実施例の撮像装置300における露出制御処理について説明する。
図3は、露出制御処理を行うための主要な構成を説明するブロック図である。本図からわかるように、本実施例の露出制御処理は主に信号処理部210とメインCPU240によって行われ、これらが本発明を実施の信号処理装置を構成している。
【0044】
露出制御処理ブロック260は、信号処理部220を構成する複数の処理ブロックのうちの一つである。露出制御処理ブロック260は内部に、信号変換部261と、輝度ヒストグラム生成部262と、輝度ヒストグラム修正部263と、露出演算部264と、を有している。
【0045】
信号変換部261は、撮像素子210から得られた各画素の出力信号を用いて輝度信号に変換する。詳しくは、画素毎に、RGBの3チャンネルの信号値から輝度値Yを算出する。さらに信号変換部261において、算出された輝度値を上述した複数の分割測光領域毎の代表輝度値に変換する。各測光領域の代表輝度値の算出については、領域内の各画素輝度値の平均値を求めるのが一般的であるが、これに限られない。
【0046】
輝度ヒストグラム生成部262は、算出した各測光領域の代表輝度値に基づいて輝度ヒストグラムを作成する。
【0047】
輝度ヒストグラム修正部263は、輝度ヒストグラム生成部262で作成された輝度ヒストグラムに対して所定の修正を施す。この修正はメインCPU240から得られる非参照領域に関する情報に基づいて行われる。詳しくは後述する。
【0048】
露出演算部264は、修正された輝度ヒストグラムに基づいて公知の露出演算を行う。輝度ヒストグラムを用いた露出演算としては、例えば、ヒストグラムの所定の範囲内に含まれる信号数が最も多くなるように適正露出を設定する制御であったり、ヒストグラムの特定のピークが適正露出になるような制御がある。
【0049】
一方、メインCPU240は露出制御処理に関わる部位として内部に、非参照領域判定部243と、メモリ部244と、を有している。
【0050】
非参照領域判定部243は、撮影レンズ100のイメージサークル情報と撮像素子210のセンサーサイズ情報とを利用して、各測光領域がイメージサークルの外側に位置するかどうかを判定する処理を行う。さらに、イメージサークルの外側の非参照領域と判定された測光領域の数をカウントする処理を行う。
【0051】
非参照領域判定部243で行われるこの判定処理は、イメージサークル情報とセンサーサイズ情報とがあればどのタイミングでも行うことが可能である。
【0052】
メモリ部244は、非参照領域判定部243で算出された非参照領域の数を格納する。格納された情報は必要に応じて信号処理部220の輝度ヒストグラム修正部263に送られる。
【0053】
撮影レンズ100がカメラ本体200に対して固定式である場合には、当初のイメージサークル情報とセンサーサイズ情報との組み合わせが変更されることはない。そのため、生産工場において撮像装置300を組み立てる際に判定処理を行っておき、メモリ部244に格納しておけばよい。撮影レンズ100がズームレンズであったとしても、所定の複数のポジションについてあらかじめ判定処理を行ったものを格納しておけばよい。
【0054】
一方、撮影レンズ100がカメラ本体200に対して交換式である場合には、イメージサークル情報とセンサーサイズ情報の組み合わせがたびたび変更される。この組み合わせが変更されると、場合によっては、
図2で説明したように測光領域と撮影可能領域との大小関係が変化する。すなわち、露光しないケラレ領域の数が変化することになる。これは、異なる種類の魚眼レンズを装着した場合に特に顕著に表れる。
【0055】
そこで、レンズ交換式の場合には、撮影レンズ100を交換したタイミングで非参照領域判定処理を行うことが望ましい。また、レンズの交換は撮像装置300の電源がOFFの状態で行われることが一般的であるので、撮像装置300の電源投入後、電源OFF直前とは異なる種類の撮影レンズ100が装着されたことを検知したタイミングで行うことがより現実的だと言える。
【0056】
以降の説明では、判定処理は撮影レンズ100の交換後初めて電源ONしたときに行われるものとする。
【0057】
次に、上述した非参照領域の判定処理について説明する。
図4は、撮影レンズ100の交換後に初めて電源をON状態にしたときの、非参照領域判定を行う流れを説明するフローチャートである。
【0058】
カメラ本体200のユーザI/F242に設けられた不図示の電源スイッチが操作されて電源がONされると、本フローチャートが開始される。
【0059】
まずステップS101では、メインCPU240において、レンズCPU140から送られてくるレンズIDが変わったか否かを検知する。レンズIDが変わっていたら、それはすなわち撮影レンズ100の交換が行われたことを意味する。
【0060】
例えば、レンズCPU140とメインCPU240との間でレンズIDをやり取りした際に、前回の通信時に記憶されていたレンズIDと異なるIDがやり取りされた場合に、メインCPU240はこれを検知することができる。レンズIDが変わっていた場合にはステップS102に進む。一方、変わらずに同じレンズIDであった場合にはステップS107に進む。
【0061】
次にステップS102では、メインCPU240からの指示により、レンズCPU140からイメージサークル情報が送出される。メインCPU240は受信したイメージサークル情報をメモリ部244に記憶する。
【0062】
次にステップS103では、メインCPU240において、格納されている撮像素子210のセンサーサイズ情報を読み出す。
【0063】
次にステップS104では、メインCPU240内の非参照領域判定部243において、メモリ部244に記憶された各種情報に基づいて非参照領域判定処理が実行される。上述したようにこの判定処理では、分割された各測光領域について、各々が非参照領域に位置するのか否かの判定が行われる。
【0064】
図5は測光領域とイメージサークルとの位置関係を説明するための模式図であり、(a)は一つの測光領域に注目して拡大表示したものである。また、(b)は
図2に示した測光領域に対する非参照領域判定の結果を示す模式図である。
【0065】
この測光領域の非参照領域判定について、
図5(a)を用いて詳しく説明する。本図に示す長方形は一つの分割測光領域を表している。詳しくは、
図2に示した各測光領域のうち、測光領域の一部にイメージサークルが重なったものから一つだけ取り出したものである。本図の測光領域においては、イメージサークルは本測光領域の左側にかかっていることがわかる。
【0066】
また、本図中の矢印は全測光領域の画面の中央方向を示している。この画面中央はイメージサークルの原点でもある。
【0067】
ステップS104において非参照領域判定処理が実行されると、非参照領域判定部243は、各測光領域に含まれる複数の画素のうち、最も画面中央に近い画素(以降では、判定用画素とも呼ぶ)の座標(x,y)を取得する。本図中には、この判定画素を黒丸で強調してある。
【0068】
なお、画素座標の取得に際しては、全ての測光領域を取得対象としてもいいし、画面中央から特定の範囲の像高に位置する測光領域に限定して取得するようにしてもよい。例えば、像高に関して画面を3つの領域に分割して、2番目の領域に位置する画素の座標を取得すればよい。このように取得する測光領域数を限定することで、座標取得に関する処理負荷を軽減することができる。
【0069】
次に、得られた各測光領域の座標を用いて、各測光領域が所定の条件式を満たすか否かを判定する。条件式としては例えば以下のものを用いることができるが、これには限られない。
【0070】
√(X^2+Y^2) > イメージサークル半径
【0071】
ここで、
X:画面中央から判定用画素までの水平距離、
Y:画面中央から判定用画素までの垂直距離、
である。
【0072】
ある測光領域が上記条件式を満たしていれば、当該測光領域の判定用画素がイメージサークルの外側に位置していることがわかる。具体的には、当該測光領域の全体がイメージサークルの外側に位置する場合である。従って、
図5(a)の場合だと当該分割測光領域は上記条件式を満たさず、測光演算時に参照する測光領域ということになる。
【0073】
非参照領域判定部243は、座標を取得した各測光領域について距離を算出して上記条件式による判定を行う。そして、条件式を満たした測光領域に対して非参照領域フラグを設定する。本実施例では、上記の条件式を採用することで、完全にイメージサークルの外側に位置する測光領域のみ非参照領域として設定することとした。
【0074】
図5(b)は、非参照領域判定を行った後の測光領域を示したものである。本図では、非参照領域のフラグが立った分割測光領域を黒く表示している。
【0075】
なお、判定用画素の距離情報をあらかじめメモリ部244に記憶しておくようにしてもよい。このようにすることで、距離情報算出に係る処理負荷を軽減することができる。
【0076】
以上で、本ステップの非参照領域判定処理が終了する。
【0077】
次にステップS105では、非参照領域判定部243において、ステップS104で非参照領域フラグの立った分割測光領域の数をカウントする。本図で示した例においては、非参照領域は356個(89個×4)となった。
【0078】
次にステップS106では、メモリ部244において、非参照領域判定部243がステップS105でカウントした最終的な非参照領域数を保存する。
【0079】
イメージサークルの外側に位置する測光領域である非参照領域の数の保存が完了すると、本フローチャートが終了する。フローチャートが終了すると、撮像装置300は待機状態に入る。
【0080】
一方、ステップS107では、IDが変更されていない撮影レンズ100に対応する非参照領域数が、すでにメモリ部244に保存されているか否かが判定される。保存されていなかった場合には、新たに非参照領域判定処理を行う必要があるので、ステップS102に進む。
【0081】
対応する非参照領域数がメモリ部244に保存されていた場合には、同じレンズに対して再度判定処理を行う必要はないので、本フローチャートが終了する。
【0082】
なお、非参照画素の判定方法は上記のものに限られない。例えば、条件式を上述したものの両辺を2乗したものに置き換えてもよい。この式を用いることで平方根の計算がなくなるので処理負荷を軽減することができる。
【0083】
また、測光領域内の判定用画素の位置を最も画面中央に近い画素としてもよい。この場合、測光領域全体がイメージサークルの外側にあるもののみ非参照領域として設定されることになるので、上述した実施例と比較して非参照領域の数は減少する。いずれの場合を選ぶかについては、処理負荷や露出制御精度等に応じて選択すればよい。
【0084】
続いて、保存した非参照領域の数を用いた露出制御処理について説明する。
図6は、本実施形態の撮像装置300におけるライブビュー動作時の主要なフローチャートである。
【0085】
撮像装置300への電源ON操作等によりライブビュー動作が開始されると、ステップS201では撮像素子210の露光が開始される。露光により撮像素子210の各画素において被写体光束の光電変換が行われ、被写体光束に対応した1フレーム分の画素信号が生成される。
【0086】
次にステップS202では、露光により得られた1フレーム分の画素信号が撮像素子210から出力される。この段階では、各画素信号はRGBの3種類で構成されている。
【0087】
次にステップS203では、出力されたRGB画素信号が露出制御処理ブロック260内の信号変換部261に送られ、そこで輝度信号Yに変換される。そして信号変換部261は、本フレームにおける各分割測光領域の代表値としての輝度信号Yを決定し、出力する。
【0088】
次にステップS204では、輝度ヒストグラム生成部262において、決定された各分割測光領域の輝度信号Yについて、所定の輝度レベル毎の測光領域の数をカウントすることで本フレームの輝度ヒストグラムを生成する。
【0089】
図7(a)は本フレームの輝度ヒストグラムの一例を示している。本図からもわかるように、現時点では非参照領域も含めた領域についての輝度ヒストグラムとなっているため、左端に位置する最低輝度部分の数が突出してしまっている。このまま露出制御処理を行なえば、不自然な仕上がりとなってしまう。
【0090】
そこで、本発明の撮像装置300では、この輝度ヒストグラムに修正を加える。
【0091】
ステップS205では、輝度ヒストグラム修正部263において、生成された輝度ヒストグラムの修正が行われる。具体的には、メインCPU240内のメモリ部244に格納されている非参照領域数を読み出し、輝度ヒストグラムの最低輝度部分から非参照領域数の分だけ減算する。
【0092】
図7(b)は本フレームの修正後の輝度ヒストグラムの一例を示している。本図中の最低輝度部分で斜線が引かれている分が、減算された非参照領域数を表している。
【0093】
次にステップS206では、露出演算部264において、修正後の輝度ヒストグラムに基づいて公知の露出演算処理が行われる。これにより、適切な露出のフレームを取得するための撮影条件が決定され、次フレームのライブビュー画像取得時に利用される。その後、ライブビュー画像のフレームデータは後段の画像処理部230に送られて適宜必要な処理が施される。
【0094】
ライブビュー動作中は所定のフレームレートで順次上記フローが繰り返されるので、撮像処理等の割り込みが入らない限り、ステップS206が終了するとステップS201に戻る。
【0095】
なお、上記フローチャートではライブビュー動作における露出制御処理に対して本発明を適用したが、例えば通常の撮像処理に対して適用することも可能であることは言うまでもない。
【0096】
以上で説明したように、本発明に記載の信号処理装置によれば、分割測光領域がケラレ等による非参照領域であるか否かを判定し、非参照領域と判定された領域数を輝度ヒストグラムから減算することとしたので、複雑な演算をすることなく精度のよい露出制御処理が可能となる。