以下、本発明の実施の形態について図面を参照しながら説明する。
まず、本発明の実施の形態に係る撮像装置について説明する。
図1は、本発明の実施の形態に係る撮像装置のシステム構成図である。
図1において、10は撮像装置1の光学系であり、ズームレンズ11a、焦点調節レンズ11b、シャッタ12、補正レンズユニット11c、絞りユニット13などによって構成される。14は、光学系10の光軸を表す。21は光学像を電気信号に変換する、すなわち光電変換する撮像素子、22は撮像素子21のアナログ信号出力をデジタル信号に変換するA/D変換器である。24は撮像素子21、A/D変換器22、D/A変換器27にクロック信号や制御信号を供給するタイミング発生部であり、メモリ制御部25及びシステム制御部50により制御される。
23は画像処理部であり、A/D変換器22からのデータ或いはメモリ制御部25からのデータに対して所定の画素補間処理や色変換処理やガンマ処理を行う。また、画像処理部23では、撮像した画像データを用いて所定の処理を行い、得られた結果に基づいてシステム制御部50が露光制御部41、フォーカス制御部42に対して制御を行う。つまり、コントラスト方式のAF(オートフォーカス)処理、AE(自動露出)処理等を行う。さらに、画像処理部23では、撮像した画像データを用いて所定の演算処理を行い、得られた演算結果に基づいてAWB(オートホワイトバランス)処理も行うことも可能である。なお、露光制御部の具体的な演算処理については後に詳述する。
25はメモリ制御部であり、A/D変換器22、画像処理部23、タイミング発生部24、画像表示メモリ26、D/A変換器27、圧縮伸張部28、内部メモリ29を制御する。A/D変換器22のデータが画像処理部23、メモリ制御部25を介して、或いはA/D変換器22のデータが直接メモリ制御部25を介して、画像表示メモリ26或いは内部メモリ29に書き込まれる。26は画像表示メモリ、27はD/A変換器である。7はTFT,LCD等から成る画像表示部であり、画像表示メモリ26に書き込まれた表示用の画像データはD/A変換器27を介して画像表示部7により表示される。画像表示部7を用いて撮像した画像データを逐次表示すれば、電子ファインダ機能を実現することが可能である。また、画像表示部7には画像が表示されるだけでなく、画像表示と共に、もしくは画像を表示することなく、撮像装置1の各種設定に関する様々なメニュー項目も表示する。ユーザは画像表示部7に表示されたメニュー項目を、操作スイッチ5を操作しながら適宜選択することにより、指定した項目の設定を変更することができる。
28は適応離散コサイン変換(ADCT)等により画像データを圧縮伸長する圧縮伸長部であり、内部メモリ29に格納された画像を読み込んで圧縮処理或いは伸長処理を行い、処理を終えたデータを内部メモリ29に書き込む。29は撮影した静止画像や動画像を格納するための内部メモリであり、所定枚数の静止画像や所定時間の動画像を格納するのに十分な記憶量を備えている。これにより、複数枚の静止画像を連続して撮影する連写撮影やパノラマ撮影の場合にも、高速かつ大量の画像書き込みを内部メモリ29に対して行うことが可能となる。また、内部メモリ29はシステム制御部50の作業領域としても使用することが可能である。
30は補正レンズユニット制御部であり、通常の撮影時には、振れ検出器33によってカメラの振れ量を検出し、その振れ量に応じて、駆動制御部31、位置検出センサ32によって補正レンズユニット11cを制御し、カメラ振れによる像振れを抑える。振れ検出器33は例えばジャイロセンサを用いて構成されており、位置検出センサ32は例えばホール素子を用いて構成されている。被写体像に存在する輝点を用いて図形を描画するときには、更に不揮発性メモリ46に記録されている軌跡データを処理した上で補正レンズユニット11cを制御する。具体的な処理については後に詳述する。
41はシャッタ12や絞りユニット13を制御する露光制御部であり、ストロボ制御部8を介して制御されるストロボ9と連携することにより、ストロボ撮影にも対応する。42は焦点調節レンズ11bを制御するフォーカス制御部であり、43はズームレンズ11aによってズーミングを制御するズーム制御部であり、44はレンズの前面に配置される保護部材であるバリア2の動作を制御するバリア制御部である。
9はストロボであり、ストロボ制御部8によって制御されることにより、AF補助光の投光機能、ストロボ調光機能にも対応する。50は撮像装置1全体を制御するシステム制御部であり、45はシステム制御部50の動作用の定数、変数、プログラム等を一時的に記憶する揮発性メモリである。
46は電気的に消去・記録可能な不揮発性メモリであり、例えばEEPROM等が用いられる。撮像装置1の動作時に必要な定数、変数、プログラム等を、撮像装置1の非動作時にも失われないように記録している。撮像装置1の動作時には、システム制御部50の呼び出し指示に応じて記録されている定数、変数、プログラム等をシステム制御部50に送る。システム制御部は必要に応じて、呼び出した定数、変数、プログラム等を、適宜利用できるようにメモリ45に展開する。また、上述のように軌跡データも不揮発性メモリ46に記録されている。具体的な記録態様や、利用の仕方については後に詳述する。
47はシステム制御部50でのプログラムの実行に応じて、文字、画像、音声等を用いて動作状態やメッセージ等を表示する液晶表示装置等の表示部である。この表示部47は撮像装置1の操作部近辺の視認し易い位置に単数或いは複数個所設置され、例えばLCDやLEDの組み合わせにより構成されている。また、表示部47は、その一部の機能が光学ファインダ6内に設置されていることもある。表示部47では、例えばシャッタスピードや絞り値、露出補正やストロボ発光の設定などを表示する。
3,4および5はシステム制御部50の各種の動作指示を入力するための操作部であり、スイッチやダイアル、タッチパネル、音声認識装置等の単数或いは複数の組み合わせで構成される。
3はレリーズスイッチであり、具体的には2段階に押し込むことができるように構成されている。ユーザは、1段目までの押し込み操作である半押し操作(SW1のオン)で撮影準備指示を行い、2段目までの押し込み操作である全押し(SW2のオン)操作で撮影指示を行うことができる。撮影準備指示であるSW1のオンで、システム制御部50は、AF(オートフォーカス)処理や、AE(自動露出)処理などの撮影準備動作を行うように制御する。そして、撮影指示であるSW2のオンで、システム制御部50は、露光制御部41を介してシャッタ12や絞りユニット13を駆動して、被写体画像を撮像素子21により取り込む制御を行う。具体的には、撮像素子21を蓄積状態にして、シャッタ12を開閉駆動することで被写体像を露光する。このシャッタ12の開閉の間が露光時間、すなわちシャッタスピードとなる。シャッタ12が閉状態に戻って撮像素子21の電荷蓄積を終了した後に、蓄積された電荷を信号として読み出す。システム制御部50およびメモリ制御部25は、撮像素子21から読み出した信号を、A/D変換器22、画像処理部23、圧縮伸張部28および内部メモリ29を用いて一連の現像処理や画像処理を行って画像データを生成する。そして、生成された画像データは、撮像装置1側のインターフェース51とコネクタ52、および着脱可能である記録媒体60側のコネクタ61とインタフェース62を介して、記録媒体60の記録部63に画像ファイルとして記録される。記録部63としては、ハードディスクやフラッシュメモリなどの、複数枚の画像データを記録するのに十分な容量を有するものが適している。なお、53は撮像装置1に対して記録媒体60が装着されているか否かを検出する記録媒体着脱検出部である。
手振れ補正がオンに設定されているときには、補正レンズユニット制御部30がSW1のオンに合わせて補正レンズユニット11cを動作させて、撮像素子21上で結像される被写体像の、ユーザの手振れに起因して生じる振れを軽減する。
更に、軌跡描画モードに設定されているときには、補正レンズユニット制御部30は、SW2のオン後の露光時間に指定された図形を描くように、補正レンズユニット11cを駆動する。
4はモードダイアルスイッチであり、電源オフ、撮影モード(通常の撮影モード、軌跡描画モード等)、再生モード、PC接続モード等の各機能モードを切り換えて設定することができる。5は各種ボタンやタッチパネル等からなる操作スイッチであり、メニューボタン、セットボタン、ストロボ設定ボタン等が設けられている。
手振れ補正のオンもしくはオフの設定をするためには、手振れ補正設定のために設けられた、例えばスライドスイッチから成る操作スイッチ5を操作する。
また、軌跡描画機能をオンにする場合には、モードダイヤル4を軌跡描画モードに切り換えた後、画像表示部7に表示される描画メニューを、例えば十字キーから成る操作スイッチ5により選択して設定する。具体的な表示等については後述する。
6は光学ファインダであり、直接的に被写体を確認することが可能である。この場合、画像表示部7による電子ファインダ機能を使用すること無しに、光学ファインダ6のみを用いて撮影を行える。また、光学ファインダ6内には表示部47の一部を配設して、例えば、シャッタスピードや絞り値などを確認できるようにしても良い。
48は電源制御部であり、電池検出回路、DC/DCコンバータ、通電するブロックを切り換えるスイッチ回路等により構成されている。そして、電池の装着の有無、電池の種類、電池残量の検出を行い検出結果をシステム制御部50に送る。また、システム制御部50の指示に基づいて、必要な電力を適宜撮像装置1の各部へ供給する。
70は供給電源であり、コネクタ71と撮像装置1側のコネクタ49を介して、電源部72の電力を撮像装置1側に供給する。電源部72は、アルカリ電池やリチウム電池等の一次電池、またはNiCd電池やNiMH電池やLi電池等の二次電池、ACアダプター等のいずれか、もしくはこれらの組合わせにより構成される。
54は通信制御部であり、USBやIEEE1394、LAN、無線通信等の各種通信機能をサポートする。55は、通信部54により撮像装置1を他の機器と接続するためのコネクタ、あるいは無線通信をするためのアンテナである。
次に、図2から図4を用いて軌跡描画モードおよび軌跡描画機能について説明する。
軌跡描画モードは、夕暮れ時や夜間など背景が暗いシーンの中に遠くの街灯などの点光源(輝点)が存在する場合に、撮像素子21の露光時間中に補正レンズユニット11cを駆動して、その点光源で予定した軌跡(輝線)を描くモードである。
図2は、通常の撮影モード設定時(軌跡描画機能オフ)と、軌跡描画モード設定時(軌跡描画機能オン)とで得られる画像を比較する概略図である。
図2(a)は、通常の撮影モード設定で撮影したときに得られる画像の例である。主たる被写体である人物が撮像装置1から比較的近い位置におり、その背景は夜景であって街灯などによる点光源がいくつか存在する。この画像の例は、少なくとも露光時には手振れ補正を行いつつ、露光中のあるタイミングでストロボ9を発光させて人物を照射したものである。このように撮影すると、ストロボ9の照射範囲内に存在する人物は、ストロボ光が反射して明るく写り、ストロボ9の照射範囲外の遠景は、自ら発光する点光源(ここでは街灯)のみが撮像素子21まで到達して写ることになる。ただし、遠景の街灯は撮像装置1に対して照度としては小さいので、いわゆるスローシャッタでなければ被写体像として写らない。そのため、ここでは手振れ補正をオンにして、点光源が点として写るようにしている。
図2(b)は、図2(a)と同じ構図で、軌跡描画モード設定で撮影したときに得られる画像の例を表している。ここでは、ユーザが予め星型を描画図形として選択していたものとする。撮像素子が露光の状態にある期間、すなわち露光中において、手振れ補正の目標値に星型を描画するための目標値を重畳して補正レンズユニット11cを駆動すると、背景の点光源は撮像素子21上で星型を描いて写ることになる。一方、人物はストロボ9により照射される。ストロボ9の発光時間は撮像素子21の露光時間に対して十分に短く、また、人物はストロボ発光時以外は何ら照射光を受けることのない低照度下に存在しているので、ほぼストロボ光が反射した像だけが撮像素子21に届いて静止したように写る。すると、図2(b)のように、1枚の画像に、点光源である街灯については星型を描いて写り、人物は静止して写るこということになる。
図2(b)では星型の例を示したが、予め定められた複数の図形やサイズから、ユーザの選択により任意の図形やサイズを選択することができる。
図3は、ユーザによる軌跡図形やサイズの選択等を説明するための図である。具体的には、モードダイヤル4で軌跡描画モードが選択されているときに、メニュー呼び出しのための操作スイッチ5が操作された場合に表示される画像表示部7のメニュー画面である。
301は現在表示されているメニュー項目が、撮影に関する項目であることを示すためのアイコンタブである。この他に再生に関する項目であることを示すためのタブ302と、撮影/再生以外の設定項目であることを示すためのタブ303があり、これらは、操作スイッチ5の一部である十字キーのうち、左右キーの操作により移動および選択が可能である。
軌跡図形やサイズの選択については、撮影モードのひとつである軌跡描画モードに関する項目であるので、撮影に関するアイコンタブ301が選択されたときにメニュー項目として表示される。
304から307は軌跡描画モードに関するメニュー項目である。それぞれのメニュー項目は、操作スイッチ5の一部である十字キーのうち、上下キーの操作により移動および選択が可能である。撮影に関するメニュー項目はこれら以外にも多数存在し、同様に上下キーを操作することで、メニュー項目はスクロールされて新たな項目が表示される。現在表示されているメニュー項目が、全体のメニュー項目に対してどのくらいの位置にあたるかを示すために、全体を示すためのバー308aと、バー308a上に重ねられた、位置を示すためのバー308bが表示されている。
304は、軌跡描画モードにおいて、同時に手振れ補正を行うか否かを選択するための、「手振れ補正」のメニュー項目である。手振れ補正設定のために別途設けられたスライドスイッチ(操作スイッチ5)で、手振れ補正がオフにされていたとしても、軌跡描画モードが選択されたときには自動的にオンにしたいときなどのために用意されている。これは、軌跡描画モードでは原則としてスローシャッタで撮影することが多いために、手持ち撮影では手振れが起きやすく、軌跡の描画とともに手振れ補正を行ったほうがきれいな図形が描けるからである。逆に、スライドスイッチでは手振れ補正がオンになっていても、撮像装置1を三脚に固定して軌跡描画をさせる場合には、むしろ手振れ補正機能が邪魔になることがある。このようなときには、予めこのメニュー項目で手振れ補正を「切」に選択しておけばよい。なお、図では「入」が選択されている様子を表している。
305は、軌跡描画モードで点光源を利用して描かせたい図形を選択するための、「図形選択」のメニュー項目である。図3においては、上下キーによりこの項目が選択されて太枠表示され、アクティブとなっている様子を示している。さらに、メニュー項目がハイライト表示された状態でセットボタン(操作スイッチ5)を操作すると、それぞれの図形が左右キーで選択できる状態になる。図3では、この選択できる状態を表している。また、それぞれの図形はアイコンで表示されている。現在選択されている図形のアイコンは網掛けされた状態で表示され、図3では星型が選択されていることを示す。また、ここに表示された星型、ハート型、円型以外にも選択可能な図形が用意されている。左向きの三角アイコンはさらに左側に隠れて選択可能な図形が存在することを表し、同様に、右向きの三角アイコンはさらに右側に隠れて選択可能な図形が存在することを表している。隠れて選択可能な図形としては、例えば、ダイヤやスペードがあっても良い。ユーザは左右キーを操作することで網掛け部を移動させ、所望の図形を選択することができる。
306は、図形選択で選択した図形を、どれくらいの大きさで撮影画像中に描かせたいかを選択するための、「図形サイズ」のメニュー項目である。図3の例では「小」、「中」、「大」が選択できるようになっており、ここでは「中」が選択されている様子を示している。
307は、図形選択で選択した図形の、どの点を描画の開始点とするかを選択するための、「描画始点」のメニュー項目である。例えば、「図形選択」で円型が選択されたときに、補正レンズユニット11cを、「下」→「上」→「下」と一周させるのか、「上」→「下」→「上」と一周させるかによって、描かれる円とストロボ照射される被写体との相対的な位置関係が変わってくる。従って、描画の開始点をユーザの意図によって選択できるようにしている。ここでは「上」、「下」、「右」、「左」が選択可能なように用意されており、図では「下」が選択されている様子を表している。なお、出力される画像と、撮像素子21上に結像される被写体像とでは、上下左右が逆の関係になるので、メニューにおける「上」、「下」、「右」、「左」は、補正レンズユニット11cの始動位置としては「下」、「上」、「左」、「右」に対応することになる。また、選択される図形によっては、「上」、「下」、「右」、「左」に対応する位置が明確ではない場合があるが、これは後に説明する軌跡データに予めどの位置が「上」、「下」、「右」、「左」に対応するかが定義付けられている。
図3では、モードダイヤル4で軌跡描画モードが選択されているときに呼び出されるメニュー画面について説明したが、これ以外のモードが選択されているときには、304から307のメニュー項目はグレーアウトされ、選択ができないようにされる。
次に、描画始点の設定について図4を用いて更に説明する。
図4は、描画始点の違いにより、撮影画像としてどのような差が生じるかを説明する図である。
図4(a)において、中央の点401は背景の輝点を示している。そして、撮像装置1の近くに手をかざして、背景の輝点との位置関係が図4(a)の関係になるように構図を決めて撮影する場合について述べる。低照度下でかざされた手はストロボ9の照射範囲内に存在する。なお、ここでは描画する図形として、「図形選択」メニューで「ハート型」が選択されているものとする。
図4(b)は、描画始点として「下」が選択されているときに得られる画像を表すものである。描画始点を「下」にすると、ハート型の最下点から描画が開始されるため、図4(a)での輝点の位置よりも上側に輝線の描画が行われることになる。従って、描画されるハートは、あたかもかざされた手に乗ったように写し込まれる。
一方、描画始点として「上」が選択されているときには、図4(c)のような撮影画像が得られる。描画始点を「上」にすると、ハート型の上部の一点から描画を開始するため、ハート型は図4(a)での輝点の位置よりも下側に輝線の描画が行われることになる。従って、かざされた手とハート型が重なった画像となる。
次に、不揮発性メモリ46に記録されている軌跡データについて、図5を用いて説明する。
図5は、軌跡データの記録形式を概念的に説明するための図である。
軌跡データは、メニュー画面でユーザによって選択された設定に従って、補正レンズユニット11cを駆動させるためのデータである。システム制御部50が不揮発性メモリ46から、ユーザによって選択された図形の軌跡データを読み出し、その他の図形サイズや描画始点といった設定項目や、露出情報などと共に駆動制御部31に送る。駆動制御部を構成する軌跡制御部31g(後述)は、これらの情報を受け取り、描画を行うために必要な補正レンズユニット11cの移動量を演算する。
図5(a)は、軌跡データの格納ルールを示す図である。ある図形を示す軌跡データは配列構造を持ち、先頭アドレスにはその軌跡データがいずれの図形を示すデータであるのかを示す「図形情報」が格納されている。従って、システム制御部50は、ユーザによって選択された図形をこの図形情報と照合し、一致するものを読み出す。
そして、次に「描画始点アドレス」が格納されている。これは、ユーザに選択された描画始点が「上」、「下」、「右」、「左」のいずれかによって、どの座標データから使用するかを示すものである。
「描画始点アドレス」の次には「描画軌跡長」が格納されている。これは、その図形の軌跡の長さに相当する。すなわち、選択された図形を描き終わるまでに、補正レンズユニット11cをどれだけ動かさなければならないかがこの情報から演算される。したがって、この「描画軌跡長」に基づいて、その図形を描くのに要する時間、すなわち最適な露光時間を決定することができる。
露光時間よりも軌跡描画時間(図形を描くために補正レンズユニット11cを動かす必要がある時間)の方が短ければ、図形を描き終わった後も露光状態が続くことになるので、その図形の終端部分で滲み(高輝度の部分)を生じることになる。また、選択された図形を一回りして描き終わっても留まることなく、さらに二回り目、三回り目をした場合に、開始点と終了点が一致していないときに露光時間が終了すると、一つの図形内に輝度の高い軌跡部分と、低い軌跡部分を生じさせることになる。
逆に、露光時間の方が軌跡描画時間よりも短ければ、その図形を描ききる前に露光時間が終了することになるので、途中で途切れた未完成の図形が撮影画像として表れることになる。
従って、露光時間は、選択された図形を一回りして描く時間、もしくは整数回まわって描く時間である軌跡描画時間と一致することが好ましい。具体的な露光時間の算出と露出条件の決定に関しては、後に詳述する。
「描画軌跡長」の次からは、必要な数だけ座標値が格納されている。座標値は座標1、座標2、座標3…と続き、補正レンズユニット11cは、順番にこれらに対応する位置に駆動されることで、選択された図形をトレースすることになる。矢印は補正レンズユニット11cが次に移動される位置に対応する座標を概念的に示すものである。描画開始時には、描画始点アドレスに従って矢印がセットされる。その後は順次インクリメントされて(矢印が次の座標アドレスへセットされて)座標値が読み出される。
なお、この軌跡データはメニュー項目「図形サイズ」で選択される「中」を基準に作成されている。従って、「図形サイズ」で「中」が選択されている場合には、軌跡データに記述された座標値に従って補正レンズユニット11cの目標値を設定すればよい。
「大」が選択されている場合には、描画軌跡長を2倍に換算して露光時間等を算出し、更に、補正レンズユニット11cの移動に関しては、矢印が示す座標値を2倍に換算する。座標値を読み出すサンプリング周期を、補正レンズユニット11cを駆動するサンプリング周期の1/2倍(読み出す時間の間隔を駆動する時間の間隔の2倍)とし、座標値を読み出さないタイミングの座標値は前後の座標値の中間値とする。つまり、補正レンズユニット11cを駆動するサンプリングについては、2回に1回座標値を読み出すサンプリングに同期し、このときは軌跡データから2倍に換算した座標値が目標値に用いられる。そして、同期していないときには前後の換算座標値の中間値(補間座標)が目標値に用いられることになる。このようにすることで、補正レンズユニット11cは、座標(0,0)を基準とした2倍の大きさの軌跡を、同じ駆動速度で、2倍の時間をかけて移動することができる。
「小」が選択されている場合には、「大」が選択されている場合の逆の関係になる。つまり、描画軌跡長を1/2倍に換算して露光時間等を算出し、更に、補正レンズユニット11cの移動に関しては、矢印が示す座標値を1/2倍に換算する。座標値を読み出すサンプリング周期を、補正レンズユニット11cを駆動するサンプリング周期の2倍(読み出す時間の間隔を駆動する時間の間隔の1/2倍)とし、補正レンズユニット11cを駆動しないタイミングの座標値は利用せずに無視するものとする。つまり、座標値を読み出すサンプリングについては、2回に1回補正レンズユニット11cを駆動するサンプリングと同期するが、このときは軌跡データから1/2倍に換算した座標値が目標値として用いられ、同期していないときには用いられないことになる。(もちろん、目標値として用いられないタイミングでは、読み出しを行わないように構成しても良い。)このようにすることで、補正レンズユニット11cは、座標(0,0)を基準とした1/2倍の大きさの軌跡を、同じ駆動速度で、1/2倍の時間で移動することができる。
なお、ここでは基準として格納されている軌跡データをサイズ「中」とし、2倍、1/2倍のサイズに関する例を示したが、線形補間的にこの方法を適用すれば2倍、1/2倍以外の倍率であっても設定することができる。また、基準として格納されてる軌跡データとしては、最小のサイズに対応する座標データを持っていても、逆に最大のサイズに対応する座標データを持っていても良い。
図5(b)および図5(c)は、軌跡データの格納ルールを具体的な図形に適用した場合を示す図であり、図5(b)は星型を、図5(c)はハート型を示す図である。それぞれ記述されている値は図5(a)に対応する。例えば図5(b)においては、「図形情報」として先頭アドレスに「星型」が、「描画始点アドレス」として、「上」が選択されたときには「座標1」から読み出し、「下」が選択されたときには「座標20」から読み出すといった情報が記述されている。「描画軌跡長」として「100」が、「座標1」、「座標2」…として、「0、−10」、「2、−13」…が記述されている。「描画始点」のメニュー項目で「上」が選択されている場合には、描画始点アドレスとして「上:座標1」が指示されているので、初期値として矢印を座標1にセットされる。そして、「図形サイズ」として「中」が選択されていれば、座標1から最後の座標まで順に矢印がインクリメントされてセットされ、補正レンズユニット11cを駆動するためのデータとして用いられる。「描画始点」のメニュー項目で「下」が選択されている場合には、描画始点アドレスとして「下:座標20」が指示されているので、初期値として矢印を座標20(不図示)にセットされる。そして、座標20から最後の座標まで順に矢印がインクリメントされてセットされ、さらに座標1にジャンプして座標19まで同様にインクリメントされて、補正レンズユニット11cを駆動するためのデータとして用いられる。選択された図形を2回り、3回りして描く場合には、これを2回、3回と繰り返せばよい。また、「図形サイズ」として「大」または「小」が選択されているときは、前述のルールに従って読み出される。
「描画開始アドレス」は、例えば円型のように「上」、「下」、「右」、「左」の位置が幾何学的に明確である場合には、その座標値を対応させて定義付ければよい。しかし、星型や、ハート型については、例えば「右」や「左」は図形の重心に対して必ずしも明確な特徴点を有しない。このような場合は、比較的近くに存在する特徴点である頂点や変極点、または左右方向に最大値、最小値をとるような点を定義付けすればよい。これは、描画軌跡を開始する点として、ユーザが感覚的に認識しやすいからである。
次に、図6を用いて駆動制御部31の内部構成とこれに関連する構成について説明する。図6はこれらの構成をブロック図を用いて示す図である。
まず、モードダイヤル4が軌跡描画モード以外の撮影モードに設定され、スライドスイッチ(操作スイッチ5)で手振れ補正がオンとされている場合について説明する。
振れ検出器33によって検出された信号は、フィルタ31aやアンプ31bによって必要な信号のみ抽出され、A/D変換器31cによってアナログ値からデジタル値に変換される。そして、演算器31dで積分処理されることにより、ユーザの手振れ量に応じた、補正レンズユニット11cを駆動するための第1の移動目標量が演算され、そのまま駆動目標位置演算部31iに入力される。
補正レンズユニット11cの位置検出センサ32によって検出された信号は、アンプ31eにて増幅され、A/D変換器31fを介して補正レンズユニット11cの位置信号として駆動目標位置演算部31iに入力される。
駆動目標位置演算部31iは、これら入力される信号を用いて、フィードバック制御を行う。駆動目標位置演算部31iでは、システム制御部50より入力されるズームレンズ11aの位置情報を用いて算出される敏感度等を考慮して、補正レンズユニット11cの移動目標位置を算出する。そして、算出された移動目標位置に従って、駆動ドライバ31jは補正レンズユニット11cのコイルに通電し、補正レンズ(後述の補正レンズ800)を光軸と直交する平面内で移動させて目標位置に到達するように駆動する。
これら一連の動作を高速かつ周期的に繰り返すことにより、ユーザの手振れによって撮像装置1が振れても、撮像素子21上で結像する被写体像はほぼ静止した状態を保つことができ、手振れの影響の軽減された撮影画像を得ることが可能となる。
次に、モードダイヤル4が軌跡描画モードに設定され、「手振れ補正」のメニュー項目304で、手振れ補正が「入」とされている場合について説明する。
振れ検出器33で検出された信号が入力されて、演算器31dで第1の移動目標量が演算されるまでは、上記の通常の手振れ補正の信号処理と同様である。
軌跡描画モードで図形を描くときには、上述の軌跡データがシステム制御部50より軌跡制御部31gに入力される。同時にシステム制御部からは、ユーザによって設定された描画サイズと描画始点の情報が入力され、軌跡制御部31gは、上述のように描画始点のアドレスのセットや、描画サイズに応じた拡大/縮小の演算を行う。そして、補正レンズユニット11cを駆動する周期で、描画のための移動目標量としての第2の移動目標量を演算/生成する。
描画を行うための駆動を開始するタイミングは、シャッタが開いたタイミングに同期する。具体的には、露光制御部41からのタイミング信号が、システム制御部50を介して、軌跡制御部31gに入力されることにより、同期が実現される。
演算器31dより出力されるユーザの手振れ量に応じた移動量である第1の移動目標量と、軌跡制御部31gより出力される描画のための移動量である第2の移動目標量は、加算器31hで加算された後、駆動目標位置演算部31iに入力される。駆動目標位置演算部31iでは、入力された第1の移動目標量と第2の移動目標量の合算量と、A/D変換器31fより入力された補正レンズユニット11cの現在位置から、補正レンズユニット11cの移動目標位置を算出する。そして、算出された移動目標位置に従って、駆動ドライバ31jは補正レンズユニット11cのコイルに通電し、補正レンズ(後述の補正レンズ800)を光軸と直交する平面内で移動させて目標位置に到達するように駆動する。
これら一連の動作を撮像素子21の露光時間中に行うことにより、ユーザの手振れの影響を軽減しつつ、選択された図形を設定に従って描画することが可能となる。
次に、モードダイヤル4が軌跡描画モードに設定され、「手振れ補正」のメニュー項目304で、手振れ補正が「切」とされている場合について説明する。
この場合は、システム制御部50の指示により演算器31dの出力が0とされ、振れ検出器からの影響を除去する。従って、駆動目標位置演算部31iへの入力は第2の移動目標量のみとなる。駆動目標位置演算部31iでは、入力された第2の移動目標量と、A/D変換器31fより入力された補正レンズユニット11cの現在位置から、補正レンズユニット11cの移動目標位置を算出する。そして、算出された移動目標位置に従って、駆動ドライバ31jは補正レンズユニット11cのコイルに通電し、補正レンズ(後述の補正レンズ800)を光軸と直交する平面内で移動させて目標位置に到達するように駆動する。
これら一連の動作を撮像素子21の露光時間中に行うことにより、選択された図形を設定に従って描画することが可能となる。このように制御を行うことは、複雑な図形や大きなサイズの図形を描かせる場合であって、露光時間が長くなるような場合に、三脚で撮像装置1を固定して撮影する状況下で有効である。
上記の説明においては、光軸14に対して垂直な面内で移動する補正レンズユニット11cの、平面内の2軸分の駆動をまとめて説明しているが、2軸で移動させるためには各軸方向のそれぞれに上記各要素を有するものとする。
図7は、図6を用いて説明した、モードダイヤル4が軌跡描画モードに設定され、「手振れ補正」のメニュー項目304で、手振れ補正が「入」とされている場合における、補正レンズユニット11cの動作を概略的に説明するための図である。横軸は撮像素子21の露光開始からの時間の経過を表し、縦軸は光軸中心からの移動量を表す。なお、補正レンズユニット11cは、光軸14に対して垂直な面内で移動するので、2軸の方向を有するが、ここでは簡単のため、1軸方向の動作について説明する。
図7(a)は、被写体像が撮像素子21上で振れることなく、光軸14を中心として結像するように、ユーザの手振れに応答して、補正レンズユニット11cを駆動した場合を表す図である。すなわち、通常の手振れ補正制御による駆動であり、第1の移動目標量のみに基づいて駆動ドライバ31jを制御したときの状態を示したものである。
図7(b)は、軌跡制御部31gが出力する第2の移動目標量のみに基づいて駆動ドライバ31jを制御したときの状態を示した図である。すなわち、補正レンズユニット11cは、軌跡データに基づいて軌跡制御部31gが出力する軌跡を描くこととなる。
なお、ここでは説明のため軌跡データは、
x軸方向に
x=αsin(ωt) …(1)
x軸と直交するy軸方向に、
y=αcos(ωt)−α …(2)
となるように、量子化されて座標値に換算されて与えられ、
露光時間は、
0≦t≦2π/ω …(3)
となるように与えられているものとする。すなわち、補正レンズユニット11cが、露光時間中に、(0,0)を始点として、(0、−α)を中心する半径αの円軌跡を1周描くように軌跡データと露光時間が与えられているものとする。したがって、図7(b)は、このx軸の軌跡データに従って補正レンズユニット11cを駆動した場合の、x軸方向の移動量を表す図である。
図7(c)は、図7(a)で示した第1の移動目標量、および図7(b)で示した第2の移動目標量を足し合わせた移動目標量に基づいて、駆動ドライバ31jを制御した場合を示した図である。
図7(c)に示す補正レンズユニット11cの移動を行うことで、手振れは第1の移動目標量の効果により補正され、かつ、第2の移動目標量に従って撮像素子21上で設定された図形を描くことが可能となる。
次に、補正レンズユニット11cの駆動機構について図8を用いて説明する。図8は、補正レンズユニット11cの補正レンズ800を移動させる機構を概略的に示す図である。
図8(a)において、801はレンズを保持する可動枠、800は補正レンズ、803は鏡筒に取り付けられた固定部、804は可動枠上の支持/案内部、805は支持/案内部と同軸に取り付けられたバネを示す。また、806a、806bは固定部に取り付けられたコイル、807a、807bは可動枠に取り付けられたマグネットを示す。図8(b)は図8(a)に示した手振れ補正機構の右側面図である。図8(b)において、810、812は図8(a)には図示しないヨークである。811は図8(a)には図示しない可動部の位置を検出するセンサである。具体的には、位置検出センサ32を構成する要素であり、センサとしてはホール素子が用いられている。図8(c)は図8(a)の802矢視図である。可動枠801は支持/案内部804によって固定部803に対して平面運動可能に案内支持されている。図8(c)では、長円形の案内溝813の中に円形の支持/案内部804が挿入されている。手振れ補正機構は、3箇所とも同一の構造とすることによって、撮像光学系10の光軸14の方向には拘束され、光軸14に直行する平面上では運動させることができる。可動枠801上には、手振れ補正レンズ800及び駆動用のマグネット807a、807bが取り付けられている。また、可動枠801は支持/案内部804と同軸に取り付けられたバネ805によって弾性支持されており、駆動力が発生していないときは手振れ補正レンズ800の中心が光軸14に略一致するように配置されている。駆動部分は図8(b)に示すようにマグネット807aの両側をヨークで挟み込み、片側にコイル806aを備えた構成をしている。駆動部分の原理は図9を用いて説明する。
図9(a)、(b)は、図8(a)に示す点線808を断面として駆動回路部分を抜粋した矢視図である。駆動用マグネット807aは2極で厚み方向に着磁されている。更に、マグネット807aの着磁方向の両側にはヨーク810、812が設けられており、多くの磁束は外に漏れることなく、図9(a)の図中に示すような矢印方向の磁界を発生させている。この状態でコイル806aに通電すると、コイル806a上の領域901と902には、それぞれ反対方向の電流が流れる。一方、磁界の方向も反対であるため、フレミング左手の法則によって同一方向の力が発生する。このときコイルが固定されているため、作用反作用の法則によって可動部に取り付けられたマグネット807aが力を受けて駆動される。駆動力はコイル806aの電流に比例し、コイル806aに流す電流の向きを反対方向にすることによって、マグネット807aが受ける駆動力も反対にすることができる。駆動力が発生すると、可動部がバネ805によって弾性支持されているので、バネ力と釣り合う点まで変位する。つまり、コイル806aの電流を適切に制御することによって、可動部の位置を制御することができる。
更に、ヨーク810上にはホール素子811が取り付けられており、図9(b)に示すように、コイル806aに電流を印加することにより発生した駆動力によってマグネット807aが変位すると、ホール素子811上の磁気バランスも変化する。そのため、ホール素子811の信号を得ることによって、マグネット807aの位置を検出することが可能となる。
図8、図9では、可動部にマグネットが配置され、固定部にコイルが配置されたムービングマグネット方式での実施形態を例示した。しかしながら、本実施例は、可動部にコイルが配置され、固定部にマグネットが配置されたムービングコイルについても適用可能である。
次に、本実施の形態に係る撮像装置の撮像動作について説明する。
図10〜図12は、本実施の形態に係る撮像装置の撮像動作のフローチャートである。なお、図3を用いて説明したメニュー画面等により、種々の動作の実行/不実行が予めユーザの設定によって決定されているものとする。
図10において、ステップS1001では、モードダイヤル4で軌跡描画モードが設定されているか否かを確認する。軌跡描画モードでないときは通常の撮影モードが設定されている(軌跡描画機能オフ)ものとして、ステップS1002へ進む。
ここでは、まず、通常の撮影モードが設定されている場合について説明する。
ステップS1002では、ユーザの手振れ量が所定量よりも大きいか否かを判別する。
ステップS1002の判別の結果、ユーザの手振れ量が所定量よりも大きいときは(ステップS1002でYES)、後述するステップS1006で手振れを補正するための補正レンズユニット11cの駆動を開始してもユーザの手振れを完全に補正することができないため、手振れが発生していることを警告する警告表示を画像表示部7に表示する(図13、ステップS1003)。これにより、ユーザは手振れが発生していることを把握でき、ユーザが手振れを軽減させることによって、撮影画像のブレを防止することができる。
ステップS1002の判別の結果、ユーザの手振れ量が所定量以下のとき(ステップS1002でNO)、及びステップS1003で画像表示部7に警告表示を表示した後に、ステップS1004に進む。
ステップS1004はレリーズスイッチ3のSW1の入力待機状態である。ステップS1004でSW1がオンされると、ステップS1005において、システム制御部50はスライドスイッチ(操作スイッチ5)により手振れ補正がオンに設定されているかを確認する。手振れ補正がオンに設定されていれば、ステップS1006で手振れを補正するための補正レンズユニット11cの駆動を開始する。すなわち、図7(a)を用いて説明した通常の手振れ補正制御による駆動を開始する。
ステップS1006で手振れを補正するための補正レンズユニット11cの駆動を開始した後、もしくはステップS1005で手振れ補正がオフに設定されていると判断された場合には補正レンズユニット11cを駆動することなく、ステップS1007に進む。
ステップS1007では、システム制御部50およびフォーカス制御部42で焦点調節レンズ11bを制御することにより、AF(オートフォーカス)を実行する。具体的には、焦点調節レンズ11bを微小量駆動させつつ連続的に取り込んだ被写体画像のコントラストをシステム制御部50で検出し、コントラストが最も高くなる位置を合焦位置とする公知のコントラスト方式を用いる。
次に、ステップS1008では、システム制御部50がAE(自動露出)処理を行う。具体的には、オートフォーカス実行時に得られる被写体画像を用いて、メインになると想定される被写体、例えば画面中央付近の被写体が適正露出となるように、シャッタスピード、絞り値および撮像素子21の出力ゲインであるISO感度を演算し決定する。
このAE処理は被写体の測光と、露出演算の2段階からなる。被写体の測光としては、オートフォーカス実行時に得られる1枚の被写体画像を複数の領域に分割し、それぞれの輝度値に重み付け等の処理をして平均輝度値を算出することにより行われる。露出演算では、測光結果である平均輝度値と目標輝度値の差分を演算し、この演算結果に基づいて、シャッタスピード、絞り値およびISO感度を決定する。
撮影モードとしては、全自動モード、絞り優先モード、シャッタスピード優先モードが用意されている。全自動モードは、システム制御部50がシャッタスピード、絞り値およびISO感度を任意に決定する。具体的には、予め不揮発性メモリ46に用意されたプログラム線図に則って決定する。このプログラム線図は、例えば被写体輝度が小さい(暗い)場合には、できるだけ手振れを起こさないシャッタスピードと、開放に近い絞り値および高いISO感度となるように考慮されている。絞り優先モードの場合には、ユーザが指定した絞り値を維持するように、プログラム線図に則ってシャッタスピードとISO感度を調整する。シャッタスピード優先モードの場合には、ユーザが指定したシャッタスピードを維持するように、プログラム線図に則って被写体輝度に合わせて絞り値とISO感度を調整する。
ステップS1008でAE処理を行った後、ステップS1009では、レリーズスイッチ3のSW2の入力を待つ。ステップS1004のSW1オンから所定時間内にSW2がオンされない場合には、再度ステップS1004まで戻り、SW1オンの入力待機状態となる。
ステップS1009でSW2がオンされると、ステップS1010で、システム制御部50はストロボ制御部8を介してストロボ9の調光発光を行う。なお、ステップS1008のAE処理で被写体輝度が十分大きい(明るい)と判断されれば、ストロボを発光させる必要がないが、ここでは説明のため被写体輝度が小さくストロボを発光させる必要がある場合について説明する。
ステップS1011では、ステップS1010で調光発光を行った結果を受け、システム制御部50は、その反射量から本発光量を演算する。具体的には、本発光をさせたときに撮像素子21で飽和画素が生じないように(白飛びしないように)調整される。
ステップS1012では、露光制御部41がシステム制御部50の指示を受けて、撮像素子21が露光状態となるように、シャッタ12を開き、絞りユニット13を定められた絞り値に従って絞り込むことにより、露光を開始する。
そして、ステップS1013では、所定のタイミングで、ステップS1011で演算された本発光量に従って、ストロボ制御部8がストロボ9を発光する。
次に、ステップS1008で定められたシャッタスピードに応じた露光時間が経過したら、ステップS1014で、露光制御部41はシャッタ12を閉じ、絞りを開放状態に戻す。撮像素子21の露光が終了すると、ステップS1015では、図1を用いて説明したように画像処理を行い、ステップS1016では、処理された画像ファイルを記録媒体60へ記録し、通常の撮影モードによる一連の撮影動作を終了する。
次に、ステップS1001において、モードダイヤル4で軌跡描画モードが設定されていると判断した場合について説明する。軌跡描画モード(軌跡描画機能オン)であるときは、ステップS1015へ進む。
図11において、ステップS1017では、システム制御部50がメモリ45に記憶されている警告フラグのクリア等の初期化を行う。
続くステップS1018では、ステップS1002と同様に、ユーザの手振れ量が所定量よりも大きいか否かを判別する。
ステップS1018の判別の結果、ユーザの手振れ量が所定量よりも大きいときは(ステップS1018でYES)、後述するステップS1022で手振れを補正するための補正レンズユニット11cの駆動を開始してもユーザの手振れを完全に補正することができないため、手振れが発生していることを警告する警告表示を画像表示部7に表示する(図13、ステップS1019)。これにより、ユーザは手振れが発生していることを把握でき、ユーザが手振れを軽減させることによって、撮影画像のブレを防止することができる。
ステップS1018の判別の結果、ユーザの手振れ量が所定量以下のとき(ステップS1018でNO)、及びステップS1019で画像表示部7に警告表示を表示した後に、ステップS1020に進む。
ステップS1020は、ステップS1004と同様に、レリーズスイッチ3のSW1の入力待機状態である。ステップS1020でSW1がオンされると、ステップS1021において、システム制御部50は手振れ補正のメニュー項目304で、手振れ補正を行うように設定されているかを確認する。ここでは、ステップS1005と異なり、図3を用いて説明したように、スライドスイッチ(操作スイッチ5)による手振れ補正の設定に関わらず、メニュー項目304による設定に従う。
手振れ補正がオンに設定されていれば、ステップS1022で手振れを補正するための補正レンズユニット11cの駆動を開始する。すなわち図7(a)を用いて説明した通常の手振れ補正制御による駆動を開始する。
ステップS1022で手振れを補正するための補正レンズユニット11cの駆動を開始した後、もしくはステップS1021で手振れ補正がオフに設定されていると判断された場合には補正レンズユニット11cを駆動することなく、ステップS1023に進む。
ステップS1023では、ステップS1007と同様に、システム制御部50およびフォーカス制御部42で焦点調節レンズ11bを制御することにより、AF(オートフォーカス)を実行する。
ステップS1023でAFを実行すると、次にAE処理を行う(ステップS1024)。ここでのAE処理は、軌跡描画モード時のAE処理であり、被写体の測光と露出演算の2段階からなる。以下、それぞれを分けて説明する。
まず、被写体の測光を行う。被写体の測光は、ステップS1008で説明した測光と同様に、オートフォーカス実行時に得られる1枚の被写体画像を複数の領域に分割し、それぞれの輝度値に重み付け等の処理をして平均輝度値を算出することにより行われる。また、被写体の測光は、軌跡描画を適切に行うために、被写体中の点光源(輝点)の輝度に特に着目して行われてもよい。具体的には、図15(a)に示すように、オートフォーカス実行時に得られる1枚の被写体画像を複数の領域に分割し、最も輝度値の大きい領域a1の輝度値のみに基づいて平均輝度値を算出することにより行われてもよい。また、図15(b)に示すように、オートフォーカス実行時に得られる1枚の被写体画像を複数の領域に分割し、輝度値の大きい複数の領域a2〜a7の輝度値に基づいて平均輝度値を算出することにより行われてもよい。
次に、露出演算を行うが、測光結果である平均輝度値と目標輝度値の差分を演算し、この演算結果に基づいて、シャッタスピード、絞り値およびISO感度を決定するという原則はステップS1008のAE処理と同様である。ただし、決定の仕方が撮影モードとして用意されている、全自動モード、絞り優先モード、シャッタスピード優先モードのそれぞれで異なる。
現在の撮影モードが全自動モードである場合、システム制御部50は、図形選択のメニュー項目である305で選択されている図形に対応する軌跡データを不揮発性メモリ46から読み出し、その軌跡データの中から描画軌跡長を取得する。
描画軌跡長を取得すると、まず、シャッタスピードを決定する。具体的には、取得した描画軌跡長を図形サイズのメニュー項目である306で選択されているサイズに応じて変換する。「大」が選択されていれば2倍に換算し、「中」が選択されていればそのままとし、「小」が選択されていれば1/2倍に換算する。そして、例えば描画をさせようとする輝点の輝度に応じて決定される周回回数(選択された図形を露光時間中に何周させて描くか)を更に掛けて、補正レンズ800の移動距離を決定する。この移動距離を予め定められている補正レンズ800が駆動される速度で除することにより、選択された図形を選択されたサイズで描くための時間を求める。この時間がシャッタスピードとして定められる。
このようにシャッタスピードが決定されると、ユーザが選択した図形を、途中で途切れることなく、また、滲みやムラを生じることなく描くことができる。
シャッタスピードが決定されると、このシャッタスピードと、測光演算結果に基づいて、メインになると想定される被写体、例えば画面中央付近の被写体が適正露出となるように絞り値とISO感度が決定される。
ここで、軌跡描画モードとして基準となる適正露出は、ステップS1008で通常の撮影モードとして基準となる適正露出に対して、例えば1段程度アンダーに設定される。これは、次の理由による。
軌跡描画モードが想定するシーンの一つとして図2で示したように、背景に点光源が存在し、ストロボ9の照射範囲内に人物が存在する場合に、人物はストロボ発光時以外は照射光をほとんど受けない。しかしながら、人物が完全に照射光を受けない状況は現実的には少なく、実際は何らかの照明下に存在することが多い。軌跡描画モードではシャッタスピードが長く(長秒時に)なることが多いので、人物にわずかでも光があたっていると、補正レンズユニット11cの駆動により、さらには被写体である人物の揺れにより、人物の部分が全体的にブレや滲みのある画像となってしまう。ここで、例えば1段絞り込んだりISO感度を落とすことにより、このブレや滲みを相対的に暗くすることができる。一方、ストロボの発光量は調光発光により適切に設定され、かつ照射時間は極めて短時間であるので、ストロボ光により照射された期間の像は、適正な明るさであって、ブレや滲みを生じない像となることが期待できる。
具体的には、システム制御部50は、通常の撮影モードで、1/8秒、F2.0、ISO400が適正露出と判断される場合は、同一シーンで軌跡描画モードのときは、1/8秒、F4.0、ISO400、もしくは1/8秒、F2.0、ISO200を適正露出と判断する。なお、アンダーにする段数は1段に限られるものではなく、1/2段や1/3段などの段数でもよい。また、被写体測光時に、人物と思われる被写体(画角中央付近の被写体)の輝度を測っておいて、システム制御部がこの輝度に応じてアンダーにする段数を変化させるように構成してもよい。
現在の撮影モードが絞り優先モードである場合、システム制御部50は、図形選択のメニュー項目である305で選択されている図形に対応する軌跡データを不揮発性メモリ46から読み出し、その軌跡データの中から描画軌跡長を取得する。
描画軌跡長を取得すると、すでに絞り値はユーザによって指定されているので、ここではシャッタスピードとISO感度を決定する。このとき、まず、シャッタスピードを決定する。具体的には、取得した描画軌跡長を図形サイズのメニュー項目である306で選択されているサイズに応じて変換する。「大」が選択されていれば2倍に換算し、「中」が選択されていればそのままとし、「小」が選択されていれば1/2倍に換算する。そして、例えば描画をさせようとする輝点の輝度に応じて決定される周回回数(選択された図形を露光時間中に何周させて描くか)を更に掛けて、補正レンズ800の移動距離を決定する。この移動距離を予め定められている補正レンズ800が駆動される速度で除することにより、選択された図形を選択されたサイズで描くための時間を求める。この時間がシャッタスピードとして定められる。
このようにシャッタスピードが決定されると、ユーザが選択した図形を、途中で途切れることなく、また、滲みやムラを生じることなく描くことができる。
シャッタスピードが決定されると、このシャッタスピードと、指示された絞り値と、測光演算結果に基づいて、メインになると想定される被写体、例えば画面中央付近の被写体が適正露出となるようにISO感度が決定される。
ここで、軌跡描画モードとして基準となる適正露出は、ステップS1008で通常の撮影モードとして基準となる適正露出に対して、例えば1段程度アンダーに設定される。
具体的には、システム制御部50は、通常の撮影モードで、1/8秒、F4.0、ISO400が適正露出と判断される場合は、軌跡描画モードのとき、絞り値F4.0が指定されシャッタスピードが1/8秒と決定されると、ISO200が適正露出と判断される。
現在の撮影モードがシャッタスピード優先モードである場合、シャッタスピード優先モードでは、ユーザがシャッタスピードを指示している。したがって、軌跡データの中から描画軌跡長を取得することはしない。この場合は、ユーザが指定したシャッタスピードと、選択された図形を選択されたサイズで描く時間とが一致しないことがあり、途中で途切れたり重複して描かれることになるが、ユーザが指定したシャッタスピードに従うものとする。そして、測光演算結果に基づいて、メインになると想定される被写体、例えば画面中央付近の被写体が適正露出となるように絞り値とISO感度が決定される。ここで、軌跡描画モードとして基準となる適正露出は、ステップS1008で通常の撮影モードとして基準となる適正露出に対して、例えば1段程度アンダーに設定される。
ステップS1024でAE処理が実行されて、シャッタスピード、絞り値およびISO感度が決定されると、ステップS1025に進む。
続くステップS1025では、ステップS1024における被写体の測光時に算出された平均輝度値が所定値よりも大きいか否かを判別する。
ステップS1025の判別の結果、平均輝度値が所定値以下のときは(ステップS1025でNO)、オートフォーカス実行時に得られる1枚の被写体画像中に所定の大きさの輝点があるか否かを判別する(ステップS1026)。輝点の大きさは、例えば、図15(a)及び図15(b)を用いて説明した輝度値の大きい領域中の輝度の高い画素の位置から算出される。具体的には、図16に示すように、図中網掛け部分が輝点とすると、輝点の大きさとしての輝点の半径Rは下記式1から算出される。
また、輝点の位置としての横座標Xは下記式2から算出され、縦座標Yは下記式3から算出される。
ステップS1026の判別の結果、所定の大きさの輝点があるときは(ステップS1026でYES)、当該輝点の輝度が所定の輝度よりも高いか否かを判別する(ステップS1027)。
ステップS1027の判別の結果、輝点の輝度が所定の輝度よりも高いときは(ステップS1027でYES)、オートフォーカス実行時に得られた合焦位置がストロボ9が照射するストロボ光の到達位置よりも遠いか否かを判別する(ステップS1028)。
ステップS1028の判別の結果、合焦位置がストロボ光の到達位置以内であるときは(ステップS1028でNO)、ステップS1029で、輝点の大きさや位置等の輝点情報(位置データ)を内部メモリ29に被写体画像の画像データと関連付けて記録して、ステップS1032に進む。
ステップS1025の判別の結果、平均輝度値が所定値よりも大きいときは(ステップS1025でYES)、点光源(輝点)以外の被写体の輝度も高いため、軌跡描画が適切に行えないので、軌跡描画を行わないことを警告する警告表示を画像表示部7に表示する(図14、ステップS1030)。
また、ステップS1026の判別の結果、所定の大きさの輝点がないときは(ステップS1026でYES)、軌跡を明確に描けないため、軌跡描画が適切に行えないので、軌跡描画を行わないことを警告する警告表示を画像表示部7に表示する(図14、ステップS1030)。
また、ステップS1027の判別の結果、輝点の輝度が所定の輝度以下のときは(ステップS1027でYES)、軌跡を明確に描けないため、軌跡描画が適切に行えないので、軌跡描画を行わないことを警告する警告表示を画像表示部7に表示する(図14、ステップS1030)。
また、ステップS1028の判別の結果、合焦位置がストロボ光の到達位置よりも遠いときは(ステップS1028でYES)、主被写体が良好に撮影できないため、軌跡描画が適切に行えても不良画像となるので、軌跡描画を行わないことを警告する警告表示を画像表示部7に表示する(図14、ステップS1030)。
ステップS1030で画像表示部7に警告表示が表示されると、ステップS1031では、システム制御部50はメモリ45に記憶されている警告フラグをオンにして、ステップS1032に進む。
ステップS1032では、レリーズスイッチ3のSW2の入力を待つ。ステップS1020のSW1オンから所定時間内にSW2がオンされない場合には、再度ステップS1020まで戻り、SW1オンの入力待機状態となる。
ステップS1032でSW2がオンされると、図12において、ステップS1033で、システム制御部50はストロボ制御部8を介してストロボ9の調光発光を行う。
ステップS1034では、ステップS1033で調光発光を行った結果を受け、システム制御部50は、その反射量から本発光量を演算する。具体的には、本発光をさせたときに撮像素子21で飽和画素が生じないように(白飛びしないように)調整される。
ステップS1035では、露光制御部41がシステム制御部50の指示を受けて、撮像素子21が露光状態となるように、シャッタ12を開き、絞りユニット13を定められた絞り値に従って絞り込むことにより、露光を開始する。
続くステップS1036では、システム制御部50はメモリ45に記憶されている警告フラグがオンであるか否かを判別する。
ステップS1036の判別の結果、警告フラグがオンでないときは(ステップS1036でNO)、ステップS1037に進み、警告フラグがオンであるときは(ステップS1036でYES)、ステップS1013に進む。これにより、軌跡描画が適切に行える場合においてのみ、後述するステップS1037の軌跡駆動を行うので、軌跡描画が不適切に行われるのを予め防止することができる。
ステップS1037では、撮像素子21の露光と同時に駆動制御部31がシステム制御部50から必要な情報を受け取って、補正レンズユニット11cを動作させて、軌跡駆動を開始する。具体的には、駆動制御部31は、システム制御部からユーザによって選択された図形の軌跡データを受け取り、同じくユーザによって選択されたサイズを受け取って、軌跡データの座標値を上述のように変換する。そして、軌跡データから描画始点アドレスを取得し、ユーザによって選択された描画始点に対応する座標値から描画が開始されるようにセットする。駆動制御部31は、ステップS1022で手振れ補正駆動を開始している場合は、すでに補正レンズユニット11cを動作させている(図7(a)に相当する動作)。この場合、ステップS1037では、ステップS1035の露光開始と共に、描画始点としてセットされた座標値に応じた第2の移動目標量を、ユーザの手振れ量に応じた第1の移動目標量に加算することで、補正レンズユニット11cの移動目標量とする。駆動制御部31は、この移動目標量に従って補正レンズユニット11cを駆動する。これを、軌跡データに従って順次座標値をインクリメントし、サンプリング周期に同期して移動目標量を更新していくことにより、ユーザの手振れを補正しつつ、選択された図形を選択されたサイズで描くことが可能になる(図7(c)に相当する動作)。
そして、ステップS1038では、所定のタイミングで、ステップS1034で演算された本発光量に従って、ストロボ制御部8がストロボ9を発光する。
ストロボ本発光後、ステップS1039で図形の描画が完了し、駆動制御部31は描画のための軌跡駆動を終了する。これと同時にステップS1040で露光制御部41はシャッタ12を閉じ、絞りを開放状態に戻す。ただし、全自動モードおよび絞り優先モードでは選択された図形を適切に描けるようにシャッタスピードが設定されているが、シャッタスピード優先モードにおいては、図形の描画完了と露光の終了とが一致するとは限らない。シャッタスピード優先モードでは、場合によっては描画が完了する前に駆動制御部31は描画のための軌跡駆動を終了する。
撮像素子21の露光が終了すると、ステップS1041では、図1を用いて説明したように画像処理を行う。ただし、ここで適用される入力輝度値に対する出力輝度値を規定するγ曲線は、ステップS1015において通常の撮影モードで適用されるγ曲線と異なる。
軌跡描画モードにおけるγ補正について説明する。上述のように、軌跡描画モードが想定するシーンの一つとして図2で示したように、背景に点光源が存在し、ストロボ9の照射範囲内に人物が存在する場合に、人物はストロボ発光時以外は照射光をほとんど受けない。しかしながら、人物が完全に照射光を受けない状況は現実的には少なく、実際は何らかの照明下に存在することが多い。軌跡描画モードではシャッタスピードが長く(長秒時に)なることが多いので、人物にわずかでも光があたっていると、補正レンズユニット11cの駆動により、さらには被写体である人物の揺れにより、人物の部分が全体的にブレや滲みのある画像となってしまう。すると、点光源によって描いた輝線が、このブレや滲みと重畳してしまい、鮮明にならない場合がある。そこで、軌跡描画モードでは、輝度の高い輝線と、薄暗く表れるブレや滲みとの間でコントラストを明確にするために、通常の撮影モードにおけるγ補正とは異なるγ補正を施す。具体的には、低輝度の被写体は相対的に目立たなくし、高輝度の被写体は強調されるようなγ曲線を用いたγ補正を行う。
図18(a)は、通常の撮影モードで適用されるγ曲線の一例を示す図であり、図18(b)は、軌跡描画モードで適用されるγ曲線の一例を示す図である。通常の撮影モードに比べ、軌跡描画モードでは輝線を鮮明にするために、低輝度側の入力信号に対する出力信号を十分に下げ、高輝度側の入力信号に対する出力信号を相対的に上げている。このように変化させることで、低輝度側の被写体に対して高輝度側の被写体が強調され、画像全体としてコントラストが高くなる。
図12に戻り、ステップS1042では、処理された画像ファイルを記録媒体60へ記録する。同時に、当該画像ファイルの情報管理領域にステップS1029で内部メモリ29に記録した輝点の大きさや位置等の輝点情報を書き込む。画像ファイルの情報管理領域としては、例えば画像ファイルをExif形式で作成する場合、撮影条件を記録する領域が該当する。画像ファイルの情報管理領域に書き込まれる輝点情報の一例を図17に示す。この輝点情報は、ユーザが選択した被写体画像の大きさの情報、及び被写体画像の画像データの任意の位置を基準とした輝点の位置座標の情報を含む。なお、被写体画像に複数個の輝点が存在する場合には、輝点情報はそれぞれの輝点の位置座標の情報を含む。以上で、軌跡描画モードによる一連の撮影動作を終了する。
なお、本実施の形態においては、オートフォーカス時に取得する画像を用いて輝点の位置を検出したが、これに限られるものではなく、実際に軌跡駆動を行って撮影を行う画像でない画像であれば良い。例えば、電子ファインダ画像として逐次取得される画像を用いても良い。
次に、本実施の形態に係る撮像装置の再生動作について説明する。
図19は、本実施の形態に係る撮像装置の再生動作のフローチャートである。なお、図10〜図12を用いて説明した撮影動作が予めユーザによって実行されているものとする。
図19において、モードダイヤル4が再生モードに設定されると、まず、メモリ制御部25は、内部メモリ29に記録されている被写体画像の画像ファイルを画像表示メモリ26に読み込む(ステップS1901)。
次いで、画像表示部7は、画像表示メモリ26に書き込まれた被写体画像の画像データに基づいて被写体画像を表示する(ステップS1902)。
次いで、画像表示メモリ26に書き込まれた被写体画像の画像ファイルに輝点情報があるか否かを判別する(ステップS1903)。
ステップS1903の判別の結果、輝点情報があるときは(ステップS1903でYES)、画像表示部7は、輝点情報に含まれる輝点の大きさや位置の情報に基づいて、被写体画像に含まれる輝点を囲う枠fを重畳した被写体画像を表示する(図20、ステップS1904)。
次いで、ユーザにより枠を移動する操作が行われたか否かを判別する(ステップS1905)。
ステップS1905の判別の結果、枠を移動する操作が行われたときは(ステップS1905でYES)、画像表示部7は、輝点情報に含まれる他の輝点の大きさや位置の情報に基づいて、被写体画像に含まれる他の輝点を囲う枠(図示しない)を重畳した被写体画像を表示して(ステップS1906)、ステップS1905に戻る。
ステップS1905の判別の結果、枠を移動する操作が行われないときは(ステップS1905でNO)、ユーザにより枠に囲まれた被写体画像を拡大する操作が行われたか否かを判別する(ステップS1907)。
ステップS1907の判別の結果、枠に囲まれた被写体画像を拡大する操作が行われたときは(ステップS1907でYES)、ステップS1908で、画像表示部7は、図21に示すように枠に囲まれた被写体画像の拡大表示を行い、ステップS1909に進む。
ステップS1909では、ユーザにより枠に囲まれた被写体画像の拡大表示を解除する操作が行われたか否かを判別する。
ステップS1909の判別の結果、拡大表示を解除する操作が行われたときは(ステップS1909でYES)、ステップS1904に戻り、拡大表示を解除する操作が行われないときは(ステップS1909でNO)、ステップS1909の判別を繰り返す。
ステップS1903の判別の結果、輝点情報がないとき(ステップS1903でNO)、及びステップS1907の判別の結果、枠に囲まれた被写体画像を拡大する操作が行われないときは(ステップS1907でYES)、モードダイヤル4が再生モード以外に設定される等のユーザによる終了操作が行われたか否かを判別する(ステップS1910)。
ステップS1910の判別の結果、ユーザによる終了操作が行われないときは(ステップS1910でNO)、ステップS1910の判別を繰り返し、ユーザによる終了操作が行われたときは(ステップS1910でYES)、再生モードによる一連の再生動作を終了する。
図19の再生動作によれば、内部メモリ29に記録された被写体画像の画像データ及び輝点情報に基づいて被写体画像に含まれる輝点の拡大表示を行うので(ステップS1908)、被写体像に含まれる輝点の描画処理による効果を容易に確認することができる。
上記の実施の形態においては、光学系10に補正レンズユニット11cを配置し、これを駆動することにより、撮像素子21上で結像される被写体像について、ユーザの手振れに起因して生じる振れを軽減すると共に、露光時間に指定された図形を描くように制御した。
しかし、ユーザの手振れに起因して生じる振れを軽減すると共に、露光時間に指定された図形を描く構成は、これに限られるものではない。例えば、撮像素子21が光軸14に対して直交する方向に2次元的にシフト移動するように構成しても、同様の作用を得ることができる。具体的には、撮像素子21が2軸方向に摺動するように2本のガイドバーを設け、撮像素子側にコイル、固定側にマグネットを配置して、その反発力を利用して位置制御を行えば良い。
また、本発明の目的は、以下の処理を実行することによって達成される。即ち、上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれる。
更に、前述した実施の形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行う場合である。