(57)【特許請求の範囲】
【請求項１】
レンズを通過した光を受光して異なる対象を撮像する複数の撮像素子を含む撮像装置であって、
前記各撮像素子が取得した、前記レンズを通過した光が受光される領域内から得られる画像に基づき、該各撮像素子を光に露出する露出時間と、該各撮像素子の光に対する感度を表す感度値とを算出する算出部と、
所定の露出時間および該所定の露出時間に対応する感度値を補正するための補正情報を記憶する記憶部と、
前記算出部により算出された露出時間が前記所定の露出時間に該当する場合に、前記記憶部に記憶された前記補正情報に基づき、前記算出部により算出された前記露出時間と前記感度値とを補正する補正部と、
前記補正部により補正された前記露出時間と前記感度値とを、前記各撮像素子を制御するための設定値として該各撮像素子に対して設定する、または前記算出部により算出された露出時間が前記所定の露出時間に該当しない場合に、前記算出された露出時間と前記感度値とを前記各撮像素子を制御するための設定値として該各撮像素子に対して設定する設定部と、
前記各撮像素子に対して設定された前記設定値を用いて、前記各撮像素子を同時に露光するように制御する制御部と、
前記各撮像素子が取得した画像を合成する合成処理部とを含む、撮像装置。
【請求項２】
前記補正情報は、前記所定の露出時間と、補正後の露出時間と、前記感度値を補正するための補正値とを対応付けた対応表であり、
前記補正部は、前記所定の露出時間に対応する前記補正後の露出時間と前記補正値とを取得し、前記算出部により算出された前記露出時間を前記補正後の露出時間に補正し、前記算出部により算出された前記感度値に前記補正値を加算することにより補正を行う、請求項１に記載の撮像装置。
【請求項３】
前記算出部は、前記各撮像素子に対して設定された設定値に基づき、被写体の明るさを表す測光値を算出する測光値算出部と、前記測光値算出部により算出された前記測光値から前記各撮像素子を光に露出する度合いを表す露出値を算出する露出値算出部と、前記露出値算出部により算出された前記露出値に対応した前記露出時間と前記感度値とを算出する設定値算出部とを含む、請求項１または２に記載の撮像装置。
【請求項４】
前記算出部は、前記各撮像素子により取得された画像を、複数の領域に分割する領域分割部と、前記領域分割部により分割された各前記領域につき、各前記画像を構成する複数の画素の画素値を用いて前記各撮像素子の露出を評価するための評価値を算出する評価値算出部と、前記評価値算出部により算出された前記評価値に基づき、前記測光値の調整を行う測光値調整部とを含む、請求項３に記載の撮像装置。
【請求項５】
レンズを通過した光を受光して異なる対象を撮像する複数の撮像素子を含む撮像装置を制御する処理を該撮像装置に実行させるためのプログラムであって、該撮像装置は、前記各撮像素子を光に露出する所定の露出時間および該各撮像素子の光に対する感度を表す該所定の露出時間に対応する感度値を補正するための補正情報を記憶する記憶部を備え、
前記各撮像素子が取得した、前記レンズを通過した光が受光される領域内から得られる画像に基づき、前記露出時間と前記感度値とを算出するステップと、
算出された露出時間が前記所定の露出時間に該当する場合に、前記記憶部に記憶された前記補正情報に基づき、算出された前記露出時間と前記感度値とを補正するステップと、
補正された前記露出時間と前記感度値とを、前記各撮像素子を制御するための設定値として該各撮像素子に対して設定する、または前記算出するステップで算出された露出時間が前記所定の露出時間に該当しない場合に、前記算出された露出時間と前記感度値とを前記各撮像素子を制御するための設定値として該各撮像素子に対して設定するステップと、
前記各撮像素子に対して設定された前記設定値を用いて、前記各撮像素子を同時に露光するように制御するステップと、
前記各撮像素子が取得した画像を合成するステップとを実行させる、プログラム。
【請求項６】
レンズを通過した光を受光して異なる対象を撮像する複数の撮像素子を含む撮像装置を制御する方法であって、
前記撮像装置は、前記各撮像素子を光に露出する所定の露出時間および該各撮像素子の光に対する感度を表す該所定の露出時間に対応する感度値を補正するための補正情報を記憶する記憶部を備え、
前記各撮像素子が取得した、前記レンズを通過した光が受光される領域内から得られる画像に基づき、前記露出時間と前記感度値とを算出するステップと、
算出された露出時間が前記所定の露出時間に該当する場合に、前記記憶部に記憶された前記補正情報に基づき、算出された前記露出時間と前記感度値とを補正するステップと、
補正された前記露出時間と前記感度値とを、前記各撮像素子を制御するための設定値として該各撮像素子に対して設定する、または前記算出するステップで算出された露出時間が前記所定の露出時間に該当しない場合に、前記算出された露出時間と前記感度値とを前記各撮像素子を制御するための設定値として該各撮像素子に対して設定するステップと、
前記各撮像素子に対して設定された前記設定値を用いて、前記各撮像素子を同時に露光するように制御するステップと、
前記各撮像素子が取得した画像を合成するステップとを含む、制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置を制御する制御システム、その制御システムを備えた撮像装置、制御方法およびその方法をコンピュータに実行させるためのプログラムに関する。
【背景技術】
【０００２】
撮像装置としてのカメラは、CMOS(Complementary Metal Oxide Semiconductor)イメージセンサ等の撮像素子を備え、撮像素子により入力された光を画像信号に変換する。そして、カメラは、その画像信号から取得した輝度値に基づき、適正露出になる露出値を算出し、その露出値からプログラム線図に従ってシャッタスピードや絞り値等の設定値の調整を行う。通常、カメラには、この調整を自動で行う自動露出制御機能(AE)が設けられている。
【０００３】
ここで、輝度値は、画像の明るさの度合いを表す値であり、露出は、撮像素子を光にさらすことをいい、適正露出は、画像が人間から見て自然な明るさや色で表現される露出をいう。露出値は、撮像素子を光に露出する度合いを表す値であり、シャッタスピードは、撮像素子を光に露出し、また、光を遮断するために開閉可能なシャッタを開き、撮像素子を光にさらす時間（露出時間）である。絞り値は、撮像素子に写る像の明るさを表す値で、F値とも呼ばれる。プログラム線図は、露出値とシャッタスピードおよび絞り値とを対応付けた対応表である。
【０００４】
AEでは、被写体の輝度が高くなると、シャッタスピードを速くし、絞りを小さくする制御を行う。カメラには、低コストで提供するために、絞り機構を搭載していないものもある。このような場合、シャッタスピードを変えることにより露出制御を行っている（例えば、特許文献１、２参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
例えば、動画を撮像する場合、連続的な繋がりが重要であるため、フレーム間での露出差に違和感が出ないように、細かく露出制御を行う必要がある。一般的に、CMOSイメージセンサのシャッタスピード分解能は、シャッタスピードが高速側にいくほど粗くなる。しかしながら、従来の技術では、被写体の輝度が高い環境下においてシャッタスピードを制御して露出を合わせることができず、精度良く露出制御を行うことができないといった問題があった。
【０００６】
そこで、精度良く露出制御を行うことができるシステム、装置、方法等の提供が望まれていた。
【課題を解決するための手段】
【０００７】
本発明は、上記課題に鑑みなされたものであり、撮像装置を制御する制御システムであって、撮像装置が取得した画像に基づき、撮像装置が備える撮像素子を光に露出する露出時間と該撮像素子の光に対する感度を表す感度値とを算出する算出部と、所定の露出時間および該所定の露出時間に対応する感度値を補正するための補正情報を記憶する記憶部と、算出部により算出された露出時間が所定の露出時間に該当する場合に、記憶部に記憶された補正情報に基づき、算出部により算出された露出時間と感度値とを補正する補正部と、補正部により補正された露出時間と感度値とを、撮像装置を制御するための設定値として該撮像装置に対して設定する設定部とを含む、制御システムが提供される。
【発明の効果】
【０００８】
本発明によれば、精度良く露出制御を行うことが可能となる。
【図面の簡単な説明】
【０００９】
【図１】撮像装置の外観図および撮像装置により取得される画像を例示した図。
【図２】撮像装置のハードウェア構成を示した図。
【図３】図２に示す撮像装置により実施される処理の流れを示したフロー図。
【図４】撮像装置に実装される制御システムの機能ブロック図。
【図５】撮像装置により撮像前のモニタリング時の自動露出(AE)処理の流れを示したフローチャート。
【図６】画像を複数のブロックに分割する例を示した図。
【図７】AEテーブルを例示した図。
【図８】プログラム線図を例示した図。
【図９】シャッタスピードとISO感度とを算出する処理の流れを示したフローチャート。
【図１０】図９に示す処理において参照される補正情報を例示した図。
【発明を実施するための形態】
【００１０】
図１は、撮像装置の外観図およびその撮像装置により取得される画像を例示した図である。図１では、撮像装置として全天球撮像カメラを例示しているが、これに限られるものではなく、デジタルカメラ、ビデオカメラ等であってもよい。また、撮像装置を搭載した機器であってもよく、そのような機器として、携帯電話、スマートフォン、ノートPC、タブレットPC、PDA(Personal Digital Assistant)等を挙げることができる。
【００１１】
全天球撮像カメラ１０は、撮像位置から全方位を撮像することができるように、１８０°を超える画角をもつ２つの魚眼レンズ１１、１２と、それぞれに対応する図示しない２つの撮像素子とを備えている。ここでは、魚眼レンズ１１、１２および撮像素子をそれぞれ２つずつ備える構成を例示しているが、これに限られるものではなく、３つ以上備える構成であってもよい。なお、画角とは、魚眼レンズ１１、１２を用いて撮像できる範囲を角度で表したものである。
【００１２】
魚眼レンズ１１、１２は、撮像した画像の中心からの距離と光の入射角度が比例する等距離射影方式を採用することができる。撮像素子としては、入射された光を電気信号に変換するCCD(Charge Coupled Device)イメージセンサやCMOSイメージセンサ等を用いることができる。２つの撮像素子は、撮像した画像に、重複する画像領域としての重複領域が含まれるように、全方位を撮像する。
【００１３】
撮像は、撮影者が撮像SW１３を押下し、それをトリガーとして、２つの撮像素子を同時に露光することにより行われる。２つの撮像素子は、受光した光を電気信号に変換することにより画像を取得する。取得した画像は、魚眼レンズ１１、１２を使用して得られた画像であるため、魚眼画像と呼ばれる。２つの撮像素子によって取得された２つの魚眼画像は、その後の画像処理において、画像変換が行われ、重複領域で結合されて、全天球画像が生成される。
【００１４】
全天球撮像カメラ１０は、生成した全天球画像のデータを格納し、ユーザからの要求を受けて、図示しないPC等の表示手段を備える出力装置へ出力し、その表示手段に表示させることができる。また、全天球撮像カメラ１０は、生成した全天球画像を、図示しないプリンタやMFP(Multi Function Peripheral)等の出力装置に出力し、印刷出力することもできる。また、出力装置としてMFPやPCへ出力し、FAX送信やメール送信することも可能である。
【００１５】
図１には、全天球撮像カメラ１０により撮像された撮影画像として２つの魚眼画像も例示している。各魚眼画像は、カメラA、Bで撮像された画像を示し、カメラBで撮像された魚眼画像には、太陽といった高輝度物体がシーンとして含まれている。このため、カメラBの撮像素子には、フレアと呼ばれる白くぼやけた画像が生じ、２つの魚眼画像に明るさの違いが生じている。２つの魚眼画像は、それぞれの画像の境界部分にある適当な物体の画像を基に結合して合成画像を生成する。
【００１６】
画像によっては、フレアが高輝度物体を中心に撮像素子全体に広がる場合があり、また、境界部分に適当な物体の画像がない場合もある。このような場合でも、これまでに知られた方法により画像補正や画像処理を行い、上記の合成画像を生成することができる。この方法については、本発明とは直接関係がないので、ここではその説明を省略する。
【００１７】
図２は、全天球撮像カメラ１０のハードウェア構成を示した図である。全天球撮像カメラ１０は、鏡胴ユニット２０を備え、鏡胴ユニット２０には、レンズ２１、２２からなる光学系と、撮像素子２３、２４とが含まれる。レンズ２１、２２は、被写体からの光を集め、撮像素子２３、２４へ入射する。撮像素子２３、２４は、入射された光を電気信号に変換する。撮像素子２３、２４は、カメラ本体に設けられる後述するプロセッサ３０内にあるCPU３１からの制御指令により制御される。図２では、撮像素子２３、２４として、CMOSが使用されている。
【００１８】
ROMとして使用されるNAND FLASH３２は、CPU３１が解読可能なコードで記述されたプログラムや制御を行うために使用される設定値等が格納されている。SW３３は、全天球撮像カメラ１０の電源をONにするための電源スイッチで、電源がONにされると、上記プログラムがCPU３１により図示しないメインメモリに読み出され、実行される。CPU３１は、上記プログラムを実行してカメラ内の各部の動作を制御するとともに、その制御に必要なデータ等をRAM３４と、プロセッサ３０内にある図示しないローカルSRAMとに一時的に保存する。ROMは、書き換え可能なフラッシュROMを使用することで、プログラムや設定値等を変更することができ、機能のバージョンアップを容易に行うことができるので好ましい。
【００１９】
プロセッサ３０は、Image Signal Processor(ISP)４０、４１を備える。ISP４０、４１は、撮像素子２３、２４から出力された画像データに対してホワイトバランス処理やガンマ補正処理を行う。ホワイトバランス処理は、太陽光や蛍光灯等の光源の種類に応じて、白い部分を白色として表現するためにゲインを掛ける処理である。ガンマ補正処理は、出力装置の特性を考慮し、出力が線形性を保つように入力信号に対して行う補正処理である。また、ISP４０、４１は、画像データに対してフィルタリング処理によって輝度値や色差値等を抽出することにより輝度情報としての輝度データや色差情報としての色差データへの変換を行う。なお、色差は、２つの色の差を定量化したものである。
【００２０】
全天球撮像カメラ１０は、SDRAM３５、３軸加速度センサ３６を備える。SDRAM３５は、ISP４０、４１により処理を行う前に、また、後述する歪曲補正および合成処理を実施する前に画像データを一時的に保存する。３軸加速度センサ３６は、全天球撮像カメラ１０の加速度を計測する。計測された加速度は、カメラの傾きや天地方向を決定するために使用される。
【００２１】
プロセッサ３０は、歪曲補正・合成処理部４２を備え、合成処理において、撮像素子２３、２４から出力され、ISP４０、４１により処理された２つの画像データを合成し、合成画像データを生成する。そして、歪曲補正・合成処理部４２は、３軸加速度センサ３６からの情報を利用して、歪曲補正と同時に天地補正を行い、傾きを補正した合成画像を生成する。歪曲補正では、例えば、変換テーブルを用い、魚眼画像を二次元の平面画像に変換される。
【００２２】
プロセッサ３０は、顔検出部４３を備え、傾きを補正した合成画像を用い、顔検出を行い、顔の位置を特定する。特定した顔の位置は、撮像時に焦点（ピント）を合わせるために使用される。SDRAM３５は、MEMC４４を介してARB MEMC４５に接続され、３軸加速度センサ３６は、直接、歪曲補正・合成処理部４２に接続される。MEMC４４は、SDRAM３５からの画像データの読み出し、SDRAM３５への画像データの書き込みを制御するコントローラである。ARB MEMC４５は、画像データのやりとりを調停するコントローラである。
【００２３】
ISP４０、４１、歪曲補正・合成処理部４２、顔検出部４３とARB MEMC４５との間には、DMAC４６が設けられ、CPU３１を介さずに直接画像データが転送されるようになっている。ARB MEMC４５は、DMAC４６、Imaging Processing(IP)ブロック４７を介して画像データ転送部４８へ画像データ等を送る。IPブロック４７は、画像データに対して各種の画像処理を施す。画像データ転送部４８は、RAM３４からのデータの読み出し、RAM３４へのデータの書き込みを制御するSDRAMC４９と接続される。SDRAMC４９は、ブリッジ５０、メモリカード制御ブロック５１、USBブロック５２、CPU３１と接続される。
【００２４】
メモリカード制御ブロック５１は、画像データを記録するメモリカードを差し込み、メモリカードからのデータの読み出し、データの書き込みを行うメモリカードスロット３７と、NAND FLASH３２とに接続される。メモリカード制御ブロック５１は、それらへのデータの読み書きを制御する。USBブロック５２は、PC等の外部機器とUSBコネクタ３８を介して接続し、その外部機器とUSB通信を行う。プロセッサ３０には、図示しない内蔵メモリが接続され、メモリカードスロット３７にメモリカードが装着されていない場合でも、撮像して得られた画像の画像データを記憶することができるようになっている。
【００２５】
プロセッサ３０は、シリアルブロックSPI５３、JPEGCODECブロック５４、H.264 codecブロック５５、RESIZEブロック５６を備える。シリアルブロックSPI５３は、PC等の外部機器とWi-Fi等の無線ネットワークインタフェース３９を介してシリアル通信を行う。JPEGCODECブロック５４は、JPEG圧縮・伸張を行うためのコーディックブロックで、H.264 codecブロック５５は、H.264動画圧縮・伸張を行うためのコーディックブロックである。RESIZEブロック５６は、画像データの画像サイズを補間処理によって拡大または縮小を行うためのブロックである。
【００２６】
プロセッサ３０は、さらに、SW３３からのON/OFFの指令を受け付け、全天球撮像カメラ１０の電源をON/OFFを行うペリフェラルブロック５７、各部への電源供給を制御する電源コントローラ５８を備える。また、プロセッサ３０は、音声を記録し、再生する音声記録・再生ユニット５９を備える。音声記録・再生ユニット５９には、ユーザが音声信号を入力するマイク６０と、記録された音声信号を出力するスピーカ６１とが接続される。音声記録・再生ユニット５９は、マイク６０により入力された音声信号を増幅するマイクAMPと、増幅された音声信号を記録する音声記録回路とを含む。また、音声記録・再生ユニット５９は、記録された音声信号をスピーカ６１から出力できる信号に変換する音声再生回路と、変換された音声信号を増幅し、スピーカ６１を駆動するためのオーディオAMPとを含む。この音声記録・再生ユニット５９は、CPU３１の制御の下で動作する。
【００２７】
なお、SDRAM３５や図示しない内蔵メモリ等に保存される画像データとしては、ISP４０、４１によりホワイトバランス設定およびガンマ設定が行われた状態のRAW-RGB画像データ、フィルタリング処理された後のYUV画像データが挙げられる。また、JPEGCODECブロック５４でJPEG圧縮されたJPEG画像データ等が挙げられる。
【００２８】
また、プロセッサ３０は、LCDドライバ６２と呼ばれるLCDモニタ６３を駆動するドライブ回路を備えている。LCDドライバ６２は、CPU３１からの指令を、LCDモニタ６３に画像データや現在の状態（ステータス）を表示するための信号に変換する。
【００２９】
図３は、図２に示す全天球撮像カメラ１０により実施される処理の流れを示したフロー図である。撮像素子２３をセンサAとし、撮像素子２４をセンサBとし、センサAに接続されるISP４０をISP1-A、ISP2-Aとし、センサBに接続されるISP４１をISP1-B、ISP2-Bとして説明する。センサAから出力された画像データは、ISP1-Aに入力され、センサBから出力された画像データは、ISP1-Bに入力される。ISP1-AおよびISP1-Bでは、OB補正、欠陥画素補正、リニア補正、シェーディング補正、領域分割平均処理を実施する。
【００３０】
OB補正は、オプティカルブラック補正で、この補正処理では、オプティカルブラック領域の出力信号を黒の基準レベルとして取得し、画像データの有効画素領域の出力信号を補正する。
【００３１】
センサA、Bには多数の画素が配列され、これは、半導体基板上に多数のフォトダイオード等の感光素子を形成することにより製造される。この製造にあたり、半導体基板に不純物が混入する等の原因により局所的に画素値の取り込みが不能な欠陥画素が発生する場合がある。こういった欠陥画素に対して適切な画素値を与えるために、欠陥画素補正が行われる。なお、欠陥画素補正では、欠陥画素に隣接した複数の画素からの合成信号に基づいてその欠陥画素の画素値を補正する。
【００３２】
リニア補正では、欠陥画素補正が行われた画像データを、線形性を有する画像データへ変換する。このリニア補正は、RGB毎に施される。
【００３３】
センサA、Bの面上では、光学系や撮像系の特性等により輝度ムラが生じる。シェーディング補正は、この輝度ムラに対して一様な明るさの画像となるように、有効画素領域の出力信号に対して所定の補正係数を乗じてその歪みを補正する。シェーディング補正では、RGBの色毎に異なる補正係数を乗じることで領域毎の感度補正を行うことができる。
【００３４】
領域分割平均処理では、有効画素領域を所定サイズの大きさからなるブロックに分割する。このブロックは、後述するAE処理において平均輝度を算出するために使用される。
【００３５】
これらの処理が行われた後の画像データは、DRAMに保存される。なお、各センサA、Bは、独立な簡易AE処理機能を有しており、各センサA、Bが単独で適正露出に設定することができるようになっている。各センサA、Bの露出条件の変化が小さくなり、安定してきた場合は、両眼の画像の画像境界部分の明るさが合うように、領域分割平均処理により得られた後述するエリア積算値を用い、各センサA、Bを適正露出に設定する。
【００３６】
ISP1-A、ISP1-Bによる処理が終了したところで、ISP2-A、ISP2-Bによる処理が実行される。ISP2-A、ISP2-Bでは、WB Gain処理、ガンマ補正処理、ベイヤー補間処理、YUV変換処理、YCFLT処理、色補正処理が実施され、その結果はDRAMに保存される。
【００３７】
被写体からの光量を蓄積するCMOSのフォトダイオード上には、画素毎に赤(R)、緑(G)、青(B)のいずれか１色のカラーフィルタが貼付されている。フィルタの色によって透過する光量が変わってくるため、フォトダイオードに蓄積される電荷量も異なってくる。最も高い感度をもつ色はGであり、R、BはGの約半分である。そこで、WB Gain処理（ホワイトバランス処理）では、撮像された画像中の白色を白く見せるために、RとBに対してゲインを掛ける処理を行う。また、物の色は、光源の種類（太陽や蛍光灯等）によってその色も変わってくるため、光源の種類が変わっても白色を白く見せるようにゲインを変更し、制御する機能を備えている。
【００３８】
ディスプレイ等の出力装置には、出力装置へ入力される入力信号と、表示するために出力する出力信号との関係が非線形な曲線で表され、非線形な入出力変換を行う装置がある。このような非線形の出力の場合、明るさに階調性がなく、画像が暗くなるため、人がその画像を正しく見ることができなくなる。そこで、ガンマ補正処理では、出力装置の特性を考慮し、出力が線形性を保つように予め入力信号に対して処理を行う。
【００３９】
CMOSはベイヤー配列と呼ばれる配列で、１画素にRGBのいずれか１色のカラーフィルタが貼付され、出力されるRAWデータは１画素に１色の情報しかない。RAWデータから画像として見るためには、１画素にRGBの３色の情報が必要である。ベイヤー補間処理では、不足する２色の情報を得るために、周辺の画素から補間する補間処理を行う。
【００４０】
RAWデータは、RGBの３色によるRGBデータ形式である。YUV変換処理では、RGBデータ形式の画像データを、YUVと呼ばれる輝度(Y)、色差(UV)からなる色空間をもつYUVデータ形式へ変換する。
【００４１】
YCFLT処理は、エッジ強調処理であり、画像の輝度信号からエッジ部分を抽出し、抽出したエッジに対してゲインを掛け、それと並行して画像のノイズをローパスフィルタ(LPF)により除去する。そして、エッジ強調処理では、ゲインを掛けた後のエッジのデータと、LPF処理後の画像データとを加算する処理を行う。
【００４２】
色補正処理は、彩度設定、色相設定、部分的な色相変更設定、色抑圧設定等を行う。彩度設定は、色の濃さを決定するパラメータを設定する処理で、UV色空間を示すものである。
【００４３】
DRAMに保存された画像データは、クロップ処理が施される。クロップ処理は、画像の中心領域を切り抜き、サムネイル画像を生成する処理である。切り抜かれた画像は、正則画像と呼ばれ、その正則画像データは、図２に示す歪曲補正・合成処理部４２へ送られる。この歪曲補正・合成処理部４２で３軸加速度センサ３６からの情報に基づき、傾き補正である天地補正が行われる。そして、JPEGCODECブロック５４により例えば０．１６の圧縮係数にてJPEG圧縮される。このデータは、DRAMに保存され、タグ付けが行われる。
【００４４】
また、このデータは、メモリカード制御ブロック５１を介してメモリカードスロット３７に装着されたメモリカードに保存される。なお、スマートフォン等の通信端末へ転送する場合は、シリアルブロックSPI５３および無線ネットワークインタフェース３９を介し、Wi-Fi等の無線LAN、Bluetooth（登録商標）赤外線通信を利用し、無線通信により転送することができる。
【００４５】
これまで全天球撮像カメラ１０の構成およびカメラ内で実行される処理について簡単に説明してきた。従来のカメラでは、上述したようにシャッタスピードを制御して細かく露出制御を行うことができなかった。これでは、動画を撮像する場合、フレーム間での露出差に違和感が出てしまい、繋がりのない映像になってしまう。そこで、この全天球撮像カメラ１０は、これを解決するために、図４に示すような機能部を備える制御システムが設けられる。
【００４６】
図４は、全天球撮像カメラ１０に実装される制御システムの機能ブロック図である。ここでは、制御システムが全天球撮像カメラ１０に実装されたものとしているが、全天球撮像カメラ１０の外部の別の機器とすることもできるし、ネットワークに接続されるサーバ装置等に実装されていてもよい。制御システムが備える各機能部は、CPU３１がプログラムを実行することにより実現される。以下、全天球撮像カメラ１０を、単にカメラとして説明する。
【００４７】
制御システム１００は、機能部として、算出部１０１と、記憶部１０２と、補正部１０３と、設定部１０４とを含んで構成される。カメラは、撮像素子を備え、撮像素子が被写体からの光を取り込み、それを電気信号に変換して被写体の画像を取得する。なお、カメラは、撮像前のモニタリング時には一定のフレームレートで被写体の画像を取得し続ける。算出部１０１は、カメラの制御および処理に関して設定された、カメラを制御するための設定値を、該カメラから取得し、取得した設定値に基づき、被写体の明るさを表す測光値を算出する。算出された測光値は、被写体輝度値とされる。算出部１０１は、この測光値を算出するための測光値算出部を含む。
【００４８】
算出部１０１は、算出した測光値から、撮像素子を光に露出する度合いを表す露出値を算出する。このため、算出部１０１は、この露出値を算出するための露出値算出部も含む。露出値は、後述するプログラム線図により、適正露出にするための、撮像素子を光に露出する露出時間を表すシャッタスピード、撮像素子の光に対する感度を表す感度値としてのISO感度と対応付けられている。このため、プログラム線図を用いることで、露出値から適正露出にするためのシャッタスピードとISO感度とを求めることができる。算出部１０１は、算出した露出値からシャッタスピードとISO感度とを上記の設定値として算出する。このため、算出部１０１は、これら設定値を算出するための設定値算出部も含む。
【００４９】
このカメラは、レンズを通って撮像素子上に写る像の明るさを調整する絞りを備えていないため、算出部１０１は、上記のシャッタスピードとISO感度を算出することができる。しかしながら、絞りを備えるカメラを用いる場合は、算出部１０１は、その明るさを調整する度合いを表す絞り値（Ｆ値）も算出することができる。
【００５０】
ちなみに、絞り値が大きい場合は、レンズを通る光量が少なくなる。シャッタスピードが速い場合は、露出時間が短くなる。このため、動いている被写体をぶれずに撮像することができる。ISO感度を上げると、撮像素子で変換された電気信号が増幅され、画像を明るくすることができる。このため、絞り値を一定にしてISO感度を２倍にすると、画像が明るくなるので、シャッタスピードを２倍にして露出時間を短くすれば、適正露出に調整することができる。
【００５１】
記憶部１０２は、所定のシャッタスピードと、そのシャッタスピードに対応するISO感度を補正するための補正情報を記憶する。補正情報の詳細については後述する。補正部１０３は、算出部１０１により算出されたシャッタスピードが、記憶部１０２に記憶された補正情報で指定されているシャッタスピードのいずれかに該当するかを判断する。補正部１０３は、該当すると判断した場合、記憶部１０２に記憶された補正情報に基づき、算出部１０１により算出されたシャッタスピードとISO感度とを補正する。
【００５２】
設定部１０４は、補正部１０３により補正されたシャッタスピードとISO感度とを設定値としてカメラに設定し、カメラの露出制御を行う。カメラは、設定された補正後のシャッタスピードおよびISO感度に調整して被写体の撮像を行う。
【００５３】
CMOSイメージセンサのシャッタスピード分解能は、上述したように高速側で粗くなるため、従来の制御では、被写体の輝度が高い環境下でシャッタスピードを制御して適正な露出にすることができなかった。しかしながら、上記のようにシャッタスピードとISO感度とを補正し、それらを設定値としてカメラに設定することで、細かい露出制御が可能となり、被写体の輝度が高い環境下でも適正な露出にすることが可能になる。
【００５４】
カメラの各機能部が行う詳細な処理の内容について、図５に示すフローチャートを参照して説明する。図５は、撮像前のモニタリング時における一連のAE処理の流れを示したフローチャートである。AE処理は、ステップ５００から開始し、ステップ５０５では、シャッタスピードとISO感度の初期値を、センサA、Bに対して設定する。設定する値は、センサA、Bで共通の値である。例えば、簡易AE処理機能を使用し、適正露出になるようにこれらの値を設定することができる。なお、設定する値には、Apex形式の値が用いられる。Apex形式は、単位系がばらばらのものを同じ尺度で考えられるようにした形式である。このため、加算や減算等の演算が可能となる。
【００５５】
算出部１０１が測光値である被写体輝度値Bvと、露出値Evとを算出する。これらの算出には、シャッタスピードTvと、ISO感度Svとを用い、下記式１により算出する。式１中、Avは、絞り値であり、この例では、カメラとして絞りを備えていない全天球撮像カメラ１０を使用するので、Avの値は固定となる。また、0x50は、Svの基準値であり、例えばISO100のときのSvの値とされる。ちなみに、Bv、Ev、Av、0x50のいずれも、Apex形式の値である。
【００５６】
【数１】
0005843027.tif 000002
【００５７】
ステップ５１０では、カメラにより画像のRAW-RGBデータである検波値が取得されるのを待つ。したがって、検波値が取得されるまでステップ５１０の判断が繰り返される。この検波値の取得はフレーム毎に行われる。ステップ５１５では、設定されたTv、Svが反映された検波値であるかどうかを判断する。反映された検波値でない場合は、ステップ５１０へ戻り、再び検波値の取得を待ち、検波値を取得する。反映された検波値かどうかは、各センサの露出条件の変化が小さくなり、安定したかどうかにより判断することができる。反映された検波値であると判断された場合、ステップ５２０へ進む。なお、ここで反映された検波値であるかどうかを判断することで、反映された検波値と判断されるまで後述するエリア積算値の算出等の処理をくり返し行う必要がなくなり、計算負荷を軽減することができる。
【００５８】
ステップ５２０では、算出部１０１は、取得した検波値からセンサA、Bの各々につき、エリア積算値を算出する。エリア積算値は、以下のようにして算出することができる。まず、図６に示す魚眼画像のRAW-RGBデータから水平１６×垂直１６の複数の領域であるブロックにより等分割を行う。このため、算出部１０１は、複数の領域に分割を行う領域分割部を含むことができる。なお、RAW-RGBデータは、画像を構成する画素の画素値としてのRGB値を含む。次に、分割された各ブロックに対してRGB値を積算する。そして、ブロック単位でRGB値から下記式２により輝度値（Y値）を求め、このY値をエリア積算値とする。なお、エリア積算値として使用する魚眼画像の部分は、図１に示す遮光されていない円形内側部分とされる。式２中、Rは、RGB値におけるR値、Gは、RGB値におけるG値、Bは、RGB値におけるB値である。
【００５９】
【数２】
0005843027.tif 000003
【００６０】
ここでは、ブロックの分割数を１６×１６＝２５６としたが、これに限定されるものではない。分割数は、少ないほど計算処理を少なくし、計算時間を短縮できるので好ましいが、分割数が少なすぎると、計算精度が低下するので、自然数n×nに分割するとき、nは４以上とされる。また、n×nのように等分割であることを必ずしも要するものではないが、全ての分割したブロックが等面積かつ同じ形状に分割されてなることが好ましい。
【００６１】
エリア積算値の算出は、撮像した画像を上記のように等分割したブロックを用いて行う。例えば、撮像した画像が約１０００万画素である場合、各ブロックは、約１０００／２５６＝約３．９万画素を有することになる。各画素は、対応する被写体部分のR、G、B成分の情報をもち、例えば１２ビットの情報（０〜２５５）として記録され、利用される。このことから、各ブロックは、約３．９万個のR、G、B成分の情報を含んでいる。エリア積算値は、各ブロックがもつ約３．９万個のR、G、B成分の情報を、R、G、B成分の各々につき、積算して算出する。
【００６２】
ちなみに、この例で使用されるCMOSは、R、G、Bの各画素の比率がR：G：B＝１：２：１となっているため、各ブロックのR画素は約０．９７５万画素、G画素は約１．９５万画素、B画素は約０．９７５万画素となる。
【００６３】
再び図５を参照して、ステップ５２５では、算出部１０１は、エリア積算値を積算したRGB値の数（積算数）で除してAE評価値を算出する。このAE評価値は、撮像素子の露出を評価するための評価値であり、後の露出演算に使用される。このため、算出部１０１は、この評価値を算出するための評価値算出部を含むことができる。
【００６４】
ステップ５３０では、一定の値以下になるセンサAとセンサBのAE評価値を平均し、AEテーブルを基に適正露出との差分（ΔEv）を算出する。一定の値以下としているのは、誤差のあるAE評価値を、平均を計算する際に使用しないようにするためである。
【００６５】
AEテーブルは、図７に示すように、AE評価値に対応する適正露出との差分（ΔEv）を表したテーブルである。例えば、上記で平均したAE評価値が９２０であった場合、AEテーブルからΔEvが＋１と求められる。この＋１は、適正露出から１Ev明るいことを示している。なお、AE評価値がAEテーブルに示された２つの値の間にある場合は、線形補間によりΔEvを算出する。
【００６６】
また、AE評価値が５８未満あるいは３６８０を超える場合は、ΔEvはAEテーブル内の最小値である−３もしくは最大値である＋３にクリップする。したがって、AE評価値が５０でも、２５でも、ΔEvは−３と算出し、AE評価値が３６８１でも、５０００でも、ΔEvは＋３と算出する。
【００６７】
再び図５を参照して、ステップ５３５では、前回算出したBvにΔEvを加算し、被写体の輝度値であるBvを更新する。算出部１０１は、この更新を行うために測光値調整部を含むことができる。算出部１０１は、この更新したBvを基に、上記式１を使用して露出値を算出する。例えばΔEvが０である場合、適正露出と判断し、ΔEvが０となるEvを算出する。ステップ５４０では、算出したEvを用い、例えば図８に示すプログラム線図に従って露光条件、すなわちシャッタスピードTv、ISO感度Svを算出する。そして、補正部１０３が補正を行った後、設定部１０４が、補正後のTv、Svを、センサA、Bの両方に設定する。
【００６８】
ステップ５４５では、モニタリングが終了したかを判断する。モニタリングは、撮像前のシャッタが開かれ、撮像素子へ光が入射されている状態であるため、撮像が開始されることにより、また、カメラの電源がOFFにされることにより終了する。モニタリングが終了していない場合は、ステップ５１０へ戻り、ステップ５１０からステップ５４０までの処理を繰り返す。一方、モニタリングが終了した場合は、ステップ５５０へ進み、このAE処理を終了する。
【００６９】
モニタリング時には、設定値としての上記Tv、Svの算出、設定が繰り返し行われ、適正露出になるように、その設定値が調整される。
【００７０】
ステップ５４０では、例えば算出したEvが９であった場合、図８に示すプログラム線図のEv９から斜めの線が太線と交差する点のシャッタスピードTv７、ISO感度Sv５を、それぞれの値として算出する。ちなみに、図８中、Ev、Tv、Svの横に示される９、７、５という数値がApex形式で表した値である。また、Tvの下側に示される分数は、Apex形式で表していない元のシャッタスピードの値であり、Svの右側に示される数値は、Apex形式で表していない元のISO感度の値である。
【００７１】
図５に示すステップ５４０のTv、Svの算出、設定について、図９に示すフローチャートを参照して詳細に説明する。ステップ９００からこの処理を開始し、ステップ９０５では、算出部１０１が、ステップ５３５で更新したBvから図８に示すプログラム線図に従ってTv、Svを算出する。算出方法については上記で説明したので、ここではその説明を省略する。
【００７２】
ステップ９１０では、補正部１０３が、算出されたTvが上記の補正情報としての補間テーブルのTvのいずれかに該当するかを判断する。補間テーブルの一例を、図１０に示す。補間テーブルは、入力フィールドと出力フィールドとを有し、入力フィールドには、補正前のTvが設定され、出力フィールドには、補正後のTv、それに対応するSv補正値が設定される。したがって、補間テーブルは、これらの値を対応付けた対応表である。なお、これらの値は、予め試験を行う等して得られた最適な値を設定することができる。
【００７３】
補正前のTvには、補正が必要とされるシャッタスピードの、例えば高速側の所定の値が設定される。図１０では、カメラが１／１６分解能をもつものとし、0x10、0x20、0x30、…、0xC0、…を１／２、１／４、１／８、…、１／４０００、…のシャッタスピードとした場合の所定の値が設定されている。ちなみに、入力フィールドの0xBFは１／３９００に相当する。
【００７４】
例えば、算出されたTvが0xBFであった場合、この補間テーブルに従えば、Tvを0xC0に補正し、算出されたSvに＋１する補正を行う。＋１とは、算出されたSvがISO100であれば１／１６段階上の感度であるISO104に、ISO200であればISO208にすることすることを意味する。したがって、＋２の場合は、算出されたSvがISO100であれば２／１６段階上の感度であるISO109となる。
【００７５】
上記の例でいえば、算出されたTvが0xBFである場合、0xCOに変更する。これにより、シャッタスピードが速くなるため、被写体の明るさは暗くなる。そこで、対応するSvを＋１してISO感度を上げて被写体の明るさを明るくすることで、適正な明るさに調整する。
【００７６】
ステップ９０５で算出されるTvの値は、カメラが１／１６分解能をもつため、0xB1や0xB9等の値として得られ、その値は、必ずしもシャッタスピードとして設定することができる値とは限らない。例えば、シャッタスピードとして設定可能な１／２９００秒(0xB7)と１／４０００秒(0xCO)との間の場合もある。その間の値は、設定することができないので、使用することができない。このような使用することができないシャッタスピードを補間テーブルに設定し、補正を行うようにすることで、細かい露出制御を実現することができる。ここでは、補間テーブルを使用した例について説明したが、これに限られるものではなく、補正前のTvと補正後のTvとの関係を表した変換式等によって補正後のTvを求めてもよい。
【００７７】
ステップ９１０で補間テーブルの入力Tvのいずれかに該当する場合、ステップ９１５へ進み、補間テーブルに従って、算出したTvから補正後Tv、Sv補正値を取得する。ステップ９２０では、取得したTv、Sv補正値を用いて、算出したTv、Svの補正を行う。補正が終了したところで、また、ステップ９１０で補間テーブルの入力Tvのいずれにも該当しない場合、ステップ９２５へ進む。
【００７８】
ステップ９２５では、補正により得られたTv、Sv、もしくは算出されたTv、Svを設定値としてセンサA、Bに設定し、ステップ９３０でこの処理を終了する。カメラが撮像を行う場合、この設定されたTv、Svを使用して被写体の撮像が行われることになる。
【００７９】
被写体の撮像時には、さらに適正露出になるように、上記のガンマ補正で使用するガンマ値を調整し、または上記のホワイトバランス処理で使用するゲイン値を調整する等して、画像の輝度情報を調整することができる。
【００８０】
これまで本発明を、制御システム、撮像装置、制御方法として上述した実施の形態をもって説明してきたが、本発明は上述した実施の形態に限定されるものではない。本発明は、他の実施の形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。したがって、本発明は、制御方法をコンピュータに実行させるためのプログラムやそのプログラムが記録された記録媒体、そのプログラムを、ネットワークを介して提供するサーバ装置等も提供することができるものである。
【符号の説明】
【００８１】
１０…全天球撮像カメラ、１１、１２…魚眼レンズ、１３…SW、２０…鏡胴ユニット、２１、２２…レンズ、２３、２４…撮像素子、３０…プロセッサ、３１…CPU、３２…NAND FLASH、３３…SW、３４…RAM、３５…SDRAM、３６…３軸加速度センサ、３７…メモリカードスロット、３８…USBコネクタ、３９…無線ネットワークインタフェース、４０、４１…ISP、４２…歪曲補正・合成処理部、４３…顔検出部、４４…MEMC、４５…ARB MEMC、４６…DMAC、４７…IPブロック、４８…画像データ転送部、４９…SDRAMC、５０…ブリッジ、５１…メモリカード制御ブロック、５２…USBブロック、５３…シリアルブロックSPI、５４…JPEGCODECブロック、５５…H.264 codecブロック、５６…RESIZEブロック、５７…ペリフェラルブロック、５８…電源コントローラ、５９…音声記録・再生ユニット、６０…マイク、６１…スピーカ、６２…LCDドライバ、６３…LCDモニタ、１００…制御システム、１０１…算出部、１０２…記憶部、１０３…補正部、１０４…設定部
【先行技術文献】
【特許文献】
【００８２】
【特許文献１】特開平２−２８８５６０号公報
【特許文献２】特許第３７７８１１４号公報
【要約】
【課題】  精度良く露出制御を行うことができるシステム等を提供する。
【解決手段】  制御システム１００は、撮像装置が取得した画像に基づき、撮像装置が備える撮像素子を光に露出する露出時間と該撮像素子の光に対する感度を表す感度値とを算出する算出部１０１と、所定範囲の露出時間および該所定範囲の露出時間に対応する感度値を補正するための補正情報を記憶する記憶部１０２と、算出部１０１により算出された露出時間が所定範囲内である場合に、記憶部１０２に記憶された補正情報に基づき、算出部１０１により算出された露出時間と感度値とを補正する補正部１０２と、補正部１０２により補正された露出時間と感度値とを、撮像装置を制御するための設定値として該撮像装置に対して設定する設定部１０３とを含む。
【選択図】  図４【図１】
0005843027.tif 000004
【図２】
0005843027.tif 000005
【図３】
0005843027.tif 000006
【図４】
0005843027.tif 000007
【図５】
0005843027.tif 000008
【図６】
0005843027.tif 000009
【図７】
0005843027.tif 000010
【図８】
0005843027.tif 000011
【図９】
0005843027.tif 000012
【図１０】
0005843027.tif 000013