(57)【特許請求の範囲】
【請求項１】
撮影光学系を通過した被写体像を撮像素子にて撮像する撮像装置であって、
前記撮像装置の動きが主被写体の動きに追従するように、前記撮像装置の動きを検出する角速度検出手段から得られる角速度情報および前記撮像素子で検出された映像信号より主被写体像の動きベクトルを検出する動きベクトル検出手段から得られる動きベクトル情報に基づいて算出された前記主被写体像の角速度情報を用いて前記撮影光学系の光軸に対して直交する方向に光学素子を制御する制御手段と、
記録用撮影のための露光期間前に複数の異なるタイミングで検出された前記動きベクトル情報を用いて算出された、前記露光期間前の前記主被写体像の角加速度情報に基づいて、前記露光期間中の前記主被写体像の角速度情報に関する予測情報を算出する算出手段とを有し、
前記制御手段は、前記主被写体が静止し、背景が流れている撮影画像を取得する流し撮りモードにおいて、前記露光期間中に前記予測情報を用いて前記光学素子を制御し、
前記制御手段は、前記流し撮りモードとは異なる撮影モードにおいて、前記露光期間中に前記予測情報を用いないで前記光学素子を制御することを特徴とする撮像装置。
【請求項２】
前記算出手段は、
前記撮像装置から前記主被写体までの距離情報と、
前記露光期間の開始時刻とを用いて前記予測情報を算出することを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記算出手段は、前記露光期間が所定値よりも長い場合は前記光学素子を制御する前記予測情報の数を増加させることを特徴とする請求項１または２に記載の撮像装置。
【請求項４】
前記制御手段は、前記流し撮りモードとは異なる撮影モードである像振れ補正モードにおいて、前記光学素子を前記撮影光学系の光軸と直交する方向に移動させることで、カメラ振れに起因する前記撮像装置の振れによる前記被写体の像のぶれを補正することを特徴とする請求項１に記載の撮像装置。
【請求項５】
撮影光学系を通過した被写体像を撮像素子にて撮像する撮像装置であって、
主被写体が静止し、背景が流れている撮影画像を取得する流し撮りモードにおいて、前記撮像装置の動きが前記主被写体の動きに追従するように、前記撮像装置の動きを検出する角速度検出手段から得られる角速度情報および前記撮像素子で検出された映像信号より主被写体像の動きベクトルを検出する動きベクトル検出手段から得られる動きベクトル情報に基づいて算出された前記主被写体像の角速度情報を用いて前記撮影光学系の光軸に対して直交する方向に光学素子を制御する制御手段と、
記録用撮影のための露光期間前に複数の異なるタイミングで検出された前記動きベクトル情報を用いて算出された、前記露光期間前の前記主被写体像の角加速度情報に基づいて、前記露光期間中の前記主被写体像の角速度情報に関する予測情報を算出する算出手段とを有し、
前記制御手段は、前記露光期間中に前記予測情報及び前記露光期間中の前記撮像装置の動きを検出する前記角速度検出手段から得られる角速度情報を用いて前記光学素子を制御することを特徴とする撮像装置。
【請求項６】
撮影光学系を通過した被写体像を撮像素子にて撮像する撮像装置であって、
主被写体が静止し、背景が流れている撮影画像を取得する流し撮りモードにおいて、前記撮像装置の動きが前記主被写体の動きに追従するように、前記撮像装置の動きを検出する角速度検出手段から得られる角速度情報および前記撮像素子で検出された映像信号より主被写体像の動きベクトルを検出する動きベクトル検出手段から得られる動きベクト情報に基づいて算出された前記主被写体像の角速度情報を用いて前記撮影光学系の光軸に対して直交する方向に光学素子を制御する制御手段と、
記録用撮影のための露光期間前に複数の異なるタイミングで検出された前記動きベクトル情報を用いて算出された、前記露光期間前の前記主被写体像の角加速度情報に基づいて、前記露光期間中の前記主被写体像の角速度情報に関する予測情報を算出する算出手段とを有し、
前記撮像素子は、前記被写体像を検出して前記被写体の撮影映像を生成することを特徴とする撮像装置。
【請求項７】
撮影光学系を通過した被写体像を撮像素子にて撮像する撮像装置の制御方法であって、
前記撮像装置の動きが主被写体の動きに追従するように、前記撮像装置の動きを検出する角速度検出手段から得られる角速度情報および前記撮像素子で検出された映像信号より主被写体像の動きベクトルを検出する動きベクトル検出手段から得られる動きベクトル情報に基づいて算出された前記主被写体像の角速度情報を用いて前記撮影光学系の光軸に対して直交する方向に光学素子を制御するステップと、
記録用撮影のための露光期間前に複数の異なるタイミングで検出された前記動きベクトル情報を用いて算出された、前記露光期間前の前記主被写体像の角加速度情報に基づいて、前記露光期間中の前記主被写体像の角速度情報に関する予測情報を算出するステップとを有し、
前記制御するステップは、前記主被写体が静止し、背景が流れている撮影画像を取得する流し撮りモードにおいて、前記露光期間中に前記予測情報を用いて前記光学素子を制御し、
前記制御するステップは、前記流し撮りモードとは異なる撮影モードにおいて、前記露光期間中に前記予測情報を用いないで前記光学素子を制御することを特徴とする撮像装置の制御方法。
【請求項８】
撮影光学系を通過した被写体像を撮像素子にて撮像する撮像装置の制御方法であって、
主被写体が静止し、背景が流れている撮影画像を取得する流し撮りモードにおいて、前記撮像装置の動きが前記主被写体の動きに追従するように、前記撮像装置の動きを検出する角速度検出手段から得られる角速度情報および前記撮像素子で検出された映像信号より主被写体像の動きベクトルを検出する動きベクトル検出手段から得られる動きベクトル情報に基づいて算出された前記主被写体像の角速度情報を用いて前記撮影光学系の光軸に対して直交する方向に光学素子を制御するステップと、
記録用撮影のための露光期間前に複数の異なるタイミングで検出された前記動きベクトル情報を用いて算出された、前記露光期間前の前記主被写体像の角加速度情報に基づいて、前記露光期間中の前記主被写体像の角速度情報に関する予測情報を算出するステップとを有し、
前記制御するステップは、前記露光期間中に前記予測情報及び前記露光期間中の前記撮像装置の動きを検出する前記角速度検出手段から得られる角速度情報を用いて前記光学素子を制御することを特徴とする撮像装置の制御方法。
【請求項９】
撮影光学系を通過した被写体像を撮像素子にて撮像する撮像装置の制御方法であって、
主被写体が静止し、背景が流れている撮影画像を取得する流し撮りモードにおいて、前記撮像装置の動きが前記主被写体の動きに追従するように、前記撮像装置の動きを検出する角速度検出手段から得られる角速度情報および前記撮像素子で検出された映像信号より主被写体像の動きベクトルを検出する動きベクトル検出手段から得られる動きベクトル情報に基づいて算出された前記主被写体像の角速度情報を用いて前記撮影光学系の光軸に対して直交する方向に光学素子を制御するステップと、
記録用撮影のための露光期間前に複数の異なるタイミングで検出された前記動きベクトル情報を用いて算出された、前記露光期間前の前記主被写体像の角速度情報に基づいて、前記露光期間中の前記主被写体像の角速度情報に関する予測情報を算出するステップとを有し、
前記撮像素子は、前記被写体像を検出して前記被写体の撮影画像を生成することを特徴とする撮像装置の制御方法。
【請求項１０】
撮影光学系を通過した被写体像を撮像素子にて撮像する撮像装置のコンピュータに、
前記撮像装置の動きが主被写体の動きに追従するように、前記撮像装置の動きを検出する角速度検出手段から得られる角速度情報および前記撮像素子で検出された映像信号より主被写体像の動きベクトルを検出する動きベクトル検出手段から得られる動きベクトル情報に基づいて算出された前記主被写体像の角速度情報を用いて前記撮影光学系の光軸に対して直交する方向に光学素子を制御させ、
記録用撮影のための露光期間前に複数の異なるタイミングで検出された前記動きベクトル情報を用いて算出された、前記露光期間前の前記主被写体像の角加速度情報に基づいて、前記露光期間中の前記主被写体像の角速度情報に関する予測情報を算出させ、
前記主被写体が静止し、背景が流れている撮影画像を取得する流し撮りモードにおいて、前記露光期間中は、前記予測情報を用いて前記光学素子を制御させ、
前記流し撮りモードとは異なる撮影モードにおいて、前記露光期間中は、前記予測情報を用いないで前記光学素子を制御させることを特徴とする撮像装置の制御プログラム。
【請求項１１】
撮影光学系を通過した被写体像を撮像素子にて撮像する撮像装置のコンピュータに、
主被写体が静止し、背景が流れている撮影画像を取得する流し撮りモードにおいて、前記撮像装置の動きが前記主被写体の動きに追従するように、前記撮像装置の動きを検出する角速度検出手段から得られる角速度情報および前記撮像素子で検出された映像信号より主被写体像の動きベクトルを検出する動きベクトル検出手段から得られる動きベクトル情報に基づいて算出された前記主被写体像の角速度情報を用いて前記撮影光学系の光軸に対して直交する方向に光学素子を制御させ、
記録用撮影のための露光期間前に複数の異なるタイミングで検出された前記動きベクトル情報を用いて算出された、前記露光期間前の前記主被写体像の角加速度情報に基づいて、前記露光期間中の前記主被写体像の角速度情報に関する予測情報を算出させ、
前記露光期間中は、前記予測情報及び前記露光期間中の前記撮像装置の動きを検出する前記角速度検出手段から得られる角速度情報を用いて前記光学素子を制御させることを特徴とする撮像装置の制御プログラム。
【請求項１２】
撮影光学系を通過した被写体像を撮像素子にて撮像する撮像装置のコンピュータに、
主被写体が静止し、背景が流れている撮影画像を取得する流し撮りモードにおいて、前記撮像装置の動きが前記主被写体の動きに追従するように、前記撮像装置の動きを検出する角速度検出手段から得られる角速度情報および前記撮像素子で検出された映像信号より主被写体像の動きベクトルを検出する動きベクトル検出手段から得られる動きベクトル情報に基づいて算出された前記主被写体像の角速度情報を用いて前記撮影光学系の光軸に対して直交する方向に光学素子を制御させ、
記録用撮影のための露光期間前に複数の異なるタイミングで検出された前記動きベクトル情報を用いて算出された、前記露光期間前の前記主被写体像の角加速度情報に基づいて、前記露光期間中の前記主被写体像の角速度情報に関する予測情報を算出させ、
前記撮像素子は、前記被写体像を検出して前記被写体の撮影画像を生成させることを特徴とする撮像装置の制御プログラム。
【請求項１３】
請求項１０から１２のいずれか一項に記載の撮像装置の制御プログラムを記憶している、コンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、いわゆる流し撮りにおける画像のぶれを低減する技術に関する。
【背景技術】
【０００２】
動いている被写体のスピード感を表現するための流し撮りは、撮影者が被写体の動きに合わせて撮像装置（カメラ）をパンニングすることにより、被写体が静止して背景が流れている画像を取得する撮影技法である。ただし、流し撮りにおいて、撮影者によるカメラのパンニング速度が被写体の動きの速度に対して速すぎたり遅すぎたりすると、被写体像がぶれた画像になる。
【０００３】
特許文献１には、撮影（露光）前に算出したカメラに対する被写体の角速度と角速度センサから得た撮影中のカメラの角速度とに基づいて、撮影中に光学系の一部または撮像素子を移動させて被写体像のぶれを補正するカメラが開示されている。このカメラでは、カメラに対する被写体の相対的な角速度（以下、相対被写体角速度という）を、時間的に連続した画像から検出した被写体像の像面上での変位量と角速度センサからの出力とを用いて算出する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０４−１６３５３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１にて開示されたカメラでは、相対被写体角速度がぶれ補正を行う撮影中において一定に維持されていることが前提となっている。しかしながら、等速直線運動をしている被写体（例えば、電車）であっても、その進行方向に直交する方向に位置するカメラから測定する相対被写体角速度は変化（加速や減速）する。そして、相対被写体角速度の測定時と実際の撮影時との間にタイムラグがある場合にそのタイムラグ中における相対被写体角速度の変化を無視すると、撮影時におけるぶれ補正を正しく行うことができない。      
【０００６】
本発明は、カメラから測定する被写体の動きの速度が変化する場合でも被写体像のぶれが少ない良好な流し撮りを行えるようにした撮像装置を提供する。
【課題を解決するための手段】
【０００７】
本発明の一側面としての撮像装置およびその制御方法は、前記撮像装置の動きが主被写体の動きに追従するように、前記撮像装置の動きを検出する角速度検出手段から得られる角速度情報および撮像素子で検出された映像信号より主被写体像の動きベクトルを検出する動きベクトル検出手段から得られる動きベクトル情報に基づいて算出された主被写体像の角速度情報を用いて撮影光学系の光軸に対して直交する方向に光学素子を制御し、記録用撮影のための露光期間前に複数の異なるタイミングで検出された動きベクトル情報を用いて算出された、露光期間前の主被写体像の角加速度情報に基づいて、露光期間中の主被写体像の角速度情報に関する予測情報を算出する。そして、主被写体が静止し、背景が流れている撮影画像を取得する流し撮りモードにおいて、露光期間中は、予測情報を用いて光学素子を制御し、流し撮りモードとは異なる撮影モードにおいて、露光期間中は、予測情報を用いないで光学素子を制御することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、被写体の動きが変化する場合でも、被写体像のぶれが少ない良好な流し撮りが行われるようにシフト素子の駆動を制御することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施例１であるカメラにおける角速度決定処理を示すフローチャート。
【図２】実施例１のカメラにおける流し撮り処理を示すフローチャート。
【図３】実施例１のカメラの構成を示すブロック図。
【図４】実施例１のカメラにおける防振システムの構成を示すブロック図。
【図５】実施例１のカメラにおけるパンニング制御を示すフローチャート。
【図６】実施例１のカメラにおける流し撮りアシストモードでのシフト駆動制御システムの構成を示すブロック図。
【図７】実施例１のカメラにおけるパンニング判定閾値を説明する図。
【図８】実施例１における相対被写体角速度とその変化（角加速度）を示すグラフ。
【図９】実施例１における相対被写体角速度を説明する図。
【図１０】実施例１における特異点を説明する図。
【図１１】実施例１における０度特異点の判定を説明する図。
【図１２】本発明の実施例２のカメラにおける角速度決定処理を示すフローチャート。
【図１３】実施例２における２地点の距離と角度を説明する図。
【図１４】本発明の実施例３のカメラにおける流し撮りアシスト処理を示すフローチャート。
【図１５】本発明の実施例４のレンズ交換式カメラシステムの構成を示すブロック図。
【図１６】実施例４の交換レンズにおける流し撮りアシスト制御システムの構成を示すブロック図。
【図１７】実施例４におけるカメラ側での流し撮りアシスト処理を示すフローチャート。
【図１８】実施例４における交換レンズ側での流し撮りアシスト処理を示すフローチャート。
【図１９】本発明の実施例５であるレンズ交換式カメラシステムのカメラ側での流し撮りアシスト処理を示すフローチャート。
【図２０】実施例５における交換レンズ側での流し撮りアシスト処理を示すフローチャート。
【図２１】実施例５の変形例におけるカメラ側での流し撮りアシスト処理を示すフローチャート。
【図２２】上記変形例における交換レンズ側での流し撮りアシスト処理を示すフローチャート。
【発明を実施するための形態】
【００１１】
以下、本発明の実施例について図面を参照しながら説明する。
【実施例１】
【００１２】
図３には、本発明の実施例１である光学機器としてのレンズ一体型カメラ（以下、単にカメラという）１００の構成を示している。
【００１３】
カメラ１００は、被写体からの光を結像させる撮影光学系である撮影レンズユニット１０１を備えている。撮影レンズユニット１０１は、主レンズ系１０２と、撮影レンズユニット１０１の光軸が延びる光軸方向に移動して焦点距離を変更するズームレンズ１０３と、光軸方向に移動して焦点調節を行う不図示のフォーカスレンズとを含む。さらに、撮影レンズユニット１０１は、その一部を構成する光学素子としてシフトレンズ１０４を含む。シフトレンズ１０４は、ユーザがカメラ１００をパンニングにより向きを変化させながら動く被写体を撮影する流し撮りにおいて被写体像のぶれを低減する流し撮りアシストのために光軸に対して直交する方向に移動（シフト）可能なシフト素子である。また、シフトレンズ１０４は、手振れによるカメラ１００の振れに起因する被写体像のぶれを光軸に対して直交する方向にシフトすることで光学的に補正する防振機能も有する。
【００１４】
また、カメラ１００は、ズームエンコーダ１０５と、シフト位置センサ１０６と、角速度センサ１０７と、角速度アンプ１０８と、カメラ制御用マイクロコンピュータ１３０と、シフトドライバ１０９と、シフト位置アンプ１１０とを備えている。
【００１５】
ズームエンコーダ１０５は、ズームレンズ１０３の光軸方向での位置を検出する。シフト位置センサ１０６は、シフトレンズ１０４のシフト方向での位置を検出する。角速度センサ１０７は、第１の動き検出手段として、光軸に対して直交する方向におけるカメラ１００の動きの速度である角速度（角速度情報）を検出する。角速度アンプ１０８は、角速度センサ１０７からの出力を増幅する。
【００１６】
カメラ制御用マイクロコンピュータ（以下、カメラマイコンという）１３０は、カメラ１００の全体の動作を制御する。シフトドライバ１０９は、ボイスコイルモータ等のシフトアクチュエータとその駆動回路とを含み、シフトアクチュエータを駆動することでシフトレンズ１０４をシフトさせる。シフト位置アンプ１１０は、シフト位置センサ１０６からの出力を増幅する。
【００１７】
さらに、カメラ１００は、シャッター１１１と、撮像素子１１２と、アナログ信号処理回路１１３と、カメラ信号処理回路１１４と、タイミングジェネレータ１１５と、操作スイッチ群１１６と、シャッターモータ１１７と、シャッタドライバ１１８とを備えている。
【００１８】
撮像素子１１２は、ＣＭＯＳセンサやＣＣＤセンサ等の光電変換素子により構成され、撮影レンズユニット１０１により形成された被写体像を光電変換してアナログ電気信号を出力する。シャッター１１１は、撮像素子１１２の露光期間を制御する。
【００１９】
アナログ信号処理回路（ＡＦＥ）１１３は、撮像素子１１２から出力されたアナログ信号を増幅し、さらに増幅後のアナログ信号をデジタル信号としての撮像信号に変換してカメラ信号処理回路１１４に出力する。
【００２０】
カメラ信号処理回路１１４は、撮像信号に対して各種画像処理を行うことで映像信号（撮影映像）を生成する。撮影映像（またはこれから取り出された静止画像）は、カメラ１００に対して着脱が可能なメモリカード１１９に記録されたり、液晶パネル等の表示素子により構成されるモニタ（以下、ＬＣＤという）１２０に表示されたりする。
【００２１】
タイミングジェネレータ１１５は、撮像素子１１２やアナログ信号処理回路１１３の動作タイミングを設定する。操作スイッチ群１１６は、電源スイッチ、レリーズスイッチ、モード選択スイッチ等の各種スイッチやダイヤルを含む。本実施例のカメラ１００では、モード選択スイッチの操作を通じて、流し撮りアシストモードと通常撮影モードとの切り替えが可能である。シャッターモータ１１７は、シャッタードライバ１１８により駆動され、シャッター１１１にチャージ動作（閉動作）を行わせる。
【００２２】
カメラ信号処理回路１１４は、映像信号を構成するフレーム画像間で動きベクトルを検出する動きベクトル検出部１３５を含む。
【００２３】
また、カメラマイコン１３０は、防振制御部１３１と、流し撮り制御部１３２と、シャッター制御部１３３と、被写体角速度算出部１３４とを含む。被写体角速度算出部１３４は算出手段に相当し、流し撮り制御部１３２は制御手段に相当する。
【００２４】
防振制御部１３１は、カメラ振れに起因する被写体像のぶれを補正（低減）するためにシフトレンズ１０４のシフト駆動を制御する手振れ補正制御（防振制御）を行う。
【００２５】
流し撮り制御部１３２は、流し撮りアシストのためにシフトレンズ１０４のシフト駆動の制御を行う。
【００２６】
シャッター制御部１３３は、シャッタードライバ１１８を通じて不図示のレリーズ電磁マグネットへの通電を解除してチャージ状態のシャッター１１１を開動作させ、またシャッターモータ１１７を制御してシャッター１１１のチャージ動作を行わせる。
【００２７】
被写体角速度算出部１３４は、撮影対象である被写体のカメラ１００に対する測定により得られる角速度（測定速度）としての相対被写体角速度を算出する。カメラマイコン１３０は、その他、フォーカスレンズ制御や絞り制御等も行う。  
【００２８】
操作スイッチ群１１６の電源スイッチがＯＮ操作されてカメラ１００の電源が投入されると、カメラマイコン１３０は、カメラ１００内の上記各部への電源供給を開始するとともに、必要な初期設定を行う。
【００２９】
流し撮りアシストモードではない通常撮影モードでは、角速度センサ１０７によってカメラ振れが検出され、その検出結果に応じて防振制御部１３１がシフトレンズ１０４をシフト駆動することで手振れによる像振れが補正される。
【００３０】
図４には、カメラ１００における防振システムの構成を示している。図４において、図３に示した構成要素と共通する構成要素には図３と同符号を付してそれらの説明を省略する。また、実際の防振システムはシフトレンズ１０４を横方向（ヨー方向）と縦方向（ピッチ方向）にシフトさせるための２系統が設けられるが、これらの構成は同じであるため、図４には１系統の構成のみを示している。
【００３１】
角速度Ａ／Ｄ変換器４０１は、角速度センサ１０７（角速度アンプ１０８）から出力される角速度信号（アナログ信号）をデジタル信号としての角速度データに変換してフィルタ演算部４０２に出力する。角速度データに対するサンプリングは、手振れの周波数に対応する１〜１０ｋＨｚ程度の周波数で行われる。
【００３２】
フィルタ演算部４０２は、ハイパスフィルタ（ＨＰＦ）により構成され、角速度データに含まれるオフセット成分を除去したり、後述するパンニング制御部４０７からの指令に応じてＨＰＦのカットオフ周波数を変更したりする。第１の積分器４０３は、シフトレンズ１０４の目標シフト位置のデータである目標位置データを生成するために、角速度データを角変位データに変換する。
【００３３】
シフト位置Ａ／Ｄ変換器４０６は、シフト位置センサ１０６（シフト位置アンプ１１０）から出力されるシフト位置信号（アナログ信号）をデジタル信号としてのシフト位置データに変換する。第１の加算器４０４は、シフトレンズ１０４の目標位置データから現在のシフト位置データを減算することで、シフトレンズ１０４の駆動量データを算出する。    
【００３４】
ＰＷＭ出力部４０５は、算出された駆動量データをシフトドライバ１０９に出力する。シフトドライバ１０９は、駆動量データに基づいてシフトアクチュエータを駆動してシフトレンズ１０４を目標シフト位置にシフトさせる。
【００３５】
パンニング制御部４０７は、角速度センサ１０７（角速度Ａ／Ｄ変換器４０１）から得られる角速度データから、カメラ１００がパンニングされたか否かを判定する。パンニング制御部４０７は、カメラ１００がパンニングされたと判定した場合は、フィルタ演算部４０２のカットオフ周波数を変更するとともに第１の積分器４０３の出力調整を行う。
【００３６】
図５には、パンニング制御部４０７により行われるパンニング制御の例を示している。パンニング制御部４０７（つまりはカメラマイコン１３０）は、コンピュータプログラムであるパンニング制御プログラムに従ってこのパンニング制御を行う。
【００３７】
ステップＳ５０１において、パンニング制御部４０７は、角速度Ａ／Ｄ変換器４０１から取り込んだ角速度データの平均値（所定サンプリング回数分の平均値であり、以下、角速度平均値という）が所定値αよりも大きいか否かを判定する。パンニング制御部４０７は、角速度平均値が所定値α以下である場合はパンニングが行われていないと判定し、ステップＳ５０７に進む。一方、角速度平均値が所定値αより大きい場合はステップＳ５０２に進み、角速度平均値が所定値β（＞α）より大きいか否かを判定する。そして、角速度平均値が所定値β以下である場合は、パンニング制御部４０７は、低速でのパンニングが行われていると判定してステップＳ５０６に進む。また、角速度平均値が所定値βより大きい場合は、パンニング制御部４０７は、高速でのパンニングが行われていると判定してステップＳ５０３に進む。
【００３８】
ステップＳ５０３では、パンニング制御部４０７は、フィルタ演算部４０２のＨＰＦのカットオフ周波数を最大値に設定する。さらに、ステップＳ５０４では、防振制御を強制的にＯＦＦ（非実行状態）にする。高速パンニング時に防振制御をＯＦＦにするのは、高速パンニングを大きな手振れとして扱ってシフトレンズ１０４をシフトさせると、シフトレンズ１０４がそのシフト端に到達した時点で撮影映像が大きく動いて撮影者に違和感を与えるためである。また、高速パンニングが行われている場合にはパンニングによる撮影映像の動きが大きく、手振れによる像振れが現れても撮影者にほとんど違和感を与えることはないためである。そして、ＨＰＦのカットオフ周波数を最大値に設定した上で次のステップにてシフトレンズ１０４を徐々に停止させることで、防振制御ＯＦＦに伴い急に手振れによる像振れが現れて撮影者に違和感を与えることを回避することができる。
【００３９】
防振制御をＯＦＦしたパンニング制御部４０７は、ステップＳ５０５において、第１の積分器４０３の出力を現在の角変位データから徐々に初期位置データに変更する。これにより、シフトレンズ１０４を徐々に初期位置（シフトレンズ１０４の光軸が撮影レンズユニット１０１の光軸に一致する位置）に戻す。
【００４０】
また、低速パンニングを判定したパンニング制御部４０７は、ステップＳ５０６において、角速度データの大きさに応じてフィルタ演算部４０２のＨＰＦのカットオフ周波数を設定する。低速パンニング時には手振れによる像振れが目立ちやすいので、これを補正する必要があるためである。カットオフ周波数は、パンニングに対する撮影映像の追従性を不自然にならない程度に保ちながら、手振れによる像振れを補正することができるように設定される。この後、パンニング制御部４０７は、ステップＳ５０８に進み、防振制御をＯＮ（実行状態）にする。
【００４１】
角速度平均値が所定値α以下である（パンニングが行われていない）と判定してステップＳ５０７に進んだパンニング制御部４０７は、フィルタ演算部４０２のＨＰＦのカットオフ周波数を通常時の値に設定する。そして、パンニング制御部４０７は、ステップＳ５０８に進み、防振制御をＯＮにする。
【００４２】
図７には、パンニング時の横方向の角速度データと所定値α，βとの関係を示している。図中の７０１がサンプリングされた角速度データである。カメラ１００が右方向にパンニングされた場合には＋方向の角速度データが得られ、左方向にパンニングされた場合は−方向の角速度データが得られている。図７の例では、右方向への高速（急峻）パンニングと、左右方向への低速パンニングとが検出されている。
【００４３】
図７から分かるように、パンニング中は角速度データが初期値（０）から大きく外れる。このため、このデータを積分してシフトレンズ１０４の目標位置データを算出すると、ＤＣ的なオフセット成分によって第１の積分器４０３の出力が非常に大きな値となり、制御不能状態になる。したがって、パンニングが検出された場合はＨＰＦのカットオフ周波数を高く設定することにより、ＤＣ成分をカットすることが必要となる。高速パンニングがなされた場合は、このような状態が特に顕著に現れるため、よりカットオフ周波数を高くすることで第１の積分器４０３の出力が増大しないようにする。
【００４４】
以上のようにパンニング制御が行われることで、パンニング中でも違和感の少ない撮影映像を生成することができる。
【００４５】
図３において、操作スイッチ群１１６のモード選択スイッチの操作により流し撮りアシストモードが設定されると、カメラ信号処理回路１１４内の動きベクトル検出部１３５が、撮影映像における前後フレーム画像間において被写体像の動きベクトルを検出する。検出された動きベクトルは、カメラマイコン１３０内の流し撮り制御部１３２に入力される。また、これと同時に、流し撮り制御部１３２は、角速度センサ１０７（角速度アンプ１０８）からの角速度信号（第１の動き情報）を受信する。
【００４６】
流し撮り中に動きベクトル検出部１３５から出力される動きベクトルには、撮影対象である主被写体像の動きベクトルと流れている背景像の動きベクトルとがある。これらの動きベクトルのうち、より小さい動き量を示す動きベクトルが主被写体像の動きベクトルとなり、この動きベクトル（第２の動き情報）が１フレーム期間での主被写体像の像面上、すなわち撮像素子上での変位（動き）を示す。
【００４７】
一方、角速度センサ１０７から出力される角速度データは、カメラ１００のパンニング速度（流し撮り速度）に対応している。このため、この角速度データと、１フレーム期間での主被写体像の像面上での変位量および撮影レンズユニット１０１の焦点距離から算出される角速度との差分を算出すると、カメラ１００に対する主被写体の角速度（以下、相対被写体角速度という）が得られる。
【００４８】
被写体角速度算出部１３４は、フレーム画像を生成するタイミングごとに、すなわちフレーム周期でこの相対被写体角速度を算出（取得）する。また、被写体角速度算出部１３４は、算出した相対被写体角速度とこれを算出した算出時刻（取得時刻）の組の情報を流し撮り制御部１３２に送出する。
【００４９】
図６には、流し撮りアシストモードでのシフトレンズ１０４のシフト駆動制御を行うシフト駆動制御システムの構成を示している。図６において、図３および図４に示した構成要素と共通する構成要素には図３および図４と同符号を付してそれらの説明は省略する。
【００５０】
流し撮り制御部１３２は、カメラ情報取得部６０１と、角速度データ出力部６０２と、被写体角速度決定部６０３と、第２の加算器６０４と、第２の積分器６０５とを含む。
【００５１】
カメラ情報取得部６０１は、操作スイッチ群１１６から、モード選択スイッチの操作によって流し撮りアシストモードが設定されたことを示す流し撮り設定情報と、レリーズスイッチの操作によって撮影が指示されたことを示すレリーズ情報とを取得する。角速度データ出力部６０２は、所定タイミングで角速度データをサンプリングして被写体角速度算出部１３４に出力する。
【００５２】
被写体角速度決定部６０３は、記録用撮影前（静止画記録のための撮像素子１１２の露光前）に被写体角速度算出部１３４が算出した相対被写体角速度とその算出時刻の組の情報を取得し、これを角速度履歴として保持（蓄積）する。なお、以下の説明では、露光とは記録用撮影を意味する。そして、被写体角速度決定部６０３は、その露光前（露光期間前）の角速度履歴を用いて、露光期間中（撮影中）のカメラ１００に対する被写体の推定された角速度（予測情報）である相対被写体角速度を算出等により取得する。こうして被写体角速度決定部６０３は、取得した露光期間中の相対被写体角速度を、流し撮りアシストにおける露光期間中のシフトレンズ１０４のシフト駆動の制御に用いる相対被写体角速度として決定する。
【００５３】
第２の加算器６０４は、角速度センサ１０７からの角速度データと被写体角速度決定部６０３にて決定された露光期間中の相対被写体角速度との差分を算出する。第２の積分器６０５は、露光期間中のみ積分動作を行う。設定変更部６０６は、カメラ情報取得部６０１からの流し撮りアシストモードの設定情報の通知に応じてパンニング制御部４０７の設定を変更する。
【００５４】
操作スイッチ群１１６のモード選択スイッチの操作により流し撮りアシストモードが設定されると、カメラ情報取得部６０１は、流し撮り設定情報を設定変更部６０６に通知する。設定変更部６０６は、流し撮り設定情報の通知に応じて、撮影者が高速パンニングを行い易くするために、パンニング制御部４０７における所定値α，βを変更する。
【００５５】
また、第２の加算器６０４は、角速度センサ１０７からの角速度データと被写体角速度決定部６０３からの相対被写体角速度との差を計算し、その結果を第２の積分器６０５に送出する。
【００５６】
第２の積分器６０５は、カメラ情報取得部６０１からのレリーズ情報に応じて、露光期間中に上記差の積分動作を開始する。第２の積分器６０５は、露光期間以外の期間においてはシフトレンズ１０４の位置が初期位置となる値を出力する。なお、露光期間の終了時にシフトレンズ１０４がその時点での位置から初期位置まで短時間でシフトしても問題はない。すなわち、露光期間の終了直後は撮像素子１１２からのアナログ信号の読み出し時間であるため、ＬＣＤ１２０上では撮影映像の表示は行われないので、シフトレンズ１０４のシフトによる撮影映像の動きは問題にならない。
【００５７】
第２の積分器６０５の出力は、第１の加算器４０４において、第１の積分器４０３の出力に加算され、その加算値に対してシフト位置センサ１０６（シフト位置Ａ／Ｄ変換器４０６）からのシフトレンズ１０４のシフト位置データが減算される。これにより、シフトレンズ１０４の駆動量データが算出される。
【００５８】
流し撮りアシストモード設定中に、実際に撮影者により高速パンニングによる流し撮りが行われると、パンニング制御部４０７はすぐにパンニング制御を開始するとともに、図５のステップＳ５０４で説明したように防振制御をＯＦＦする。パンニング制御により、シフトレンズ１０４は、カメラ１００のパンニングによる角速度とカメラ１００に対する主被写体（以下、単に被写体という）の角速度である相対被写体角速度との差分に対応する被写体像の像面上での変位量を補正する。このため、流し撮り失敗の原因となる露光期間中のカメラ１００のパンニング速度と被写体の動き速度との差分がシフトレンズ１０４のシフト駆動により相殺され、その結果、流し撮りが成功する。
【００５９】
ここで、被写体角速度決定部６０３は、露光前において被写体角速度算出部１３４から取得して蓄積した角速度履歴を用いて露光期間中の相対被写体角速度を決定するが、その際にレリーズタイムラグの時間と露光期間を考慮する。
【００６０】
例えば、等速直線運動をしている被写体をその進行方向に直交する方向に位置するカメラ１００で流し撮りする場合には、カメラ１００から測定する被写体の角速度は連続的に変化する。このため、被写体の角速度は、その検出時と露光期間中とでは同じにならない。したがって、この角速度の変化（つまりは加速度）を考慮しないと、シフトレンズ１０４のシフト駆動による上記補正を良好に行うことができない。
【００６１】
図８には、図９に示すように等速直線運動をしている被写体（電車）の角速度を該被写体の進行方向に直交する方向に位置するカメラ１００から測定したときの角速度の変化を示している。図９において、被写体は左から右に向かって速度ｖで等速直線運動をしている。点Ａは被写体の等速直線運動による移動軌跡上においてカメラ１００からの距離が最短となる位置（以下、原点という）であり、Ｌはカメラ１００から原点Ａまでの距離（移動軌跡までの最短距離）である。θはカメラ１００から原点Ａに向かう方向、すなわち被写体の進行方向に直交する方向に対してカメラ１００から被写体への方向がなす角度（つまりはカメラ１００の向き：以下、パンニング角度という）であり、原点Ａより右側がプラスで左側がマイナスとする。
【００６２】
図８中の横軸は、図９中の被写体が原点Ａに位置するときを０度としたパンニング角度θを示し、中央の縦軸は被写体の角速度を示している。実線のグラフが角速度の変化を示す。また、右側の縦軸は角加速度を示し、破線のグラフが角加速度の変化を示す。ここにいう角加速度の変化は、カメラの位置を基準とした被写体の位置に対応する被写体の角加速度の変化である。図８は、カメラ１００から原点Ａまでの最短距離が２０ｍで、被写体が速度６０ｋｍ／ｈで等速直線運動をしている場合の角速度と角加速度を示している。
【００６３】
図８において、被写体が原点Ａを通過する際（θ＝０度）に角速度が最大で、角加速度が０になる。また、θ＝＋３０度で角加速度が最大となり、θ＝−３０度で角加速度が最小になる。なお、このパンニング角度θと角加速度および角加速度との関係は、上述した最短距離や被写体の速度に依存しない。
【００６４】
図２のフローチャートには、カメラマイコン１３０が流し撮りアシストモードで行う流し撮りアシスト処理を示している。この処理は、カメラマイコン１３０がコンピュータプログラムである流し撮りアシスト制御プログラムに従って実行する。ユーザは、カメラ１００をパンニングしながら動く被写体を追う。
【００６５】
ステップＳ２０１において、カメラマイコン１３０は、レリーズスイッチが半押し操作された（ＳＷ１ＯＮ）か否かを判定する。ＳＷ１ＯＮの場合は、カメラマイコン１３０はステップＳ２０２に進み、時間計測カウンタをインクリメントし、ステップＳ２０４に進む。ＳＷ１ＯＮでない場合は、カメラマイコン１３０はステップＳ２０３に進み、時間計測カウンタをリセットして、ステップＳ２０１に戻る。
【００６６】
ステップＳ２０４では、カメラマイコン１３０は、被写体角速度算出部１３４により相対被写体角速度（図では単に被写体角速度と記す）がすでに算出されているか否かを確認する。算出されている場合は、カメラマイコン１３０は、ステップＳ２０５に進み、時間計測カウンタが所定時間Ｔに達したか否かを確認する。相対被写体角速度がまだ算出されていない場合および相対被写体角速度がすでに算出されていても時間計測カウンタが所定時間Ｔに達している（露光期間が所定時間Ｔより長い）場合は、カメラマイコン１３０はステップＳ２０６に進む。
【００６７】
ステップＳ２０６では、カメラマイコン１３０は、被写体角速度算出部１３４に相対被写体角速度を算出させる（第１の処理）。これにより、後述するＳＷ２ＯＮに応じて開始される露光の前に被写体角速度算出部１３４に相対被写体角速度を算出させ、被写体角速度決定部６０３に角速度履歴を取得させる。
【００６８】
時間計測カウンタが所定時間Ｔに達している場合に相対被写体角速度を算出し直させるのは、所定時間Ｔ内で被写体の速度が変化する可能性を考慮するためである。被写体角速度算出部１３４が算出した相対被写体角速度は、その算出ごとに、流し撮り制御部１３２の被写体角速度決定部６０３に送出される。ステップＳ２０５にて時間計測カウンタがまだ所定時間Ｔに達していない場合は、カメラマイコン１３０はステップＳ２０８に進む。
【００６９】
ステップＳ２０６の後のステップＳ２０７では、カメラマイコン１３０は、被写体角速度決定部６０３に、露光期間中の相対被写体角速度を決定させる。ここでの処理（第２の処理である角速度決定処理）の詳細については後述する。そして、ステップＳ２０８に進む。
【００７０】
ステップＳ２０８では、カメラマイコン１３０は、レリーズスイッチが全押し操作（ＳＷ２ＯＮ）されたか否かを判定する。ＳＷ２ＯＮでない場合は、カメラマイコン１３０はステップＳ２０１に戻る。一方、ＳＷ２ＯＮである場合は、カメラマイコン１３０はステップＳ２０９に進み、シャッター制御部１３３を通じてシャッター１１１を開動作させて露光を開始させる。
【００７１】
さらに、カメラマイコン１３０は、ステップＳ２１０において、流し撮り制御部１３２に、ステップＳ２０７で決定された相対被写体角速度に応じたシフトレンズ１０４のシフト駆動の制御を行わせる。これにより、被写体像の像面上での変位量を補正する流し撮りアシストを行う。この際、図５のステップＳ５０２でパンニングが高速パンニングと判定された場合は、カメラマイコン１３０は、防振制御部１３１を通じてシフトレンズ１０４を手振れによる像振れを補正するためにシフト駆動する。
【００７２】
続いてステップＳ２１１は、カメラマイコン１３０は、露光が完了したか否かを判定し、完了した場合はステップＳ２１２に進み、未完了であればステップＳ２１０に戻る。
【００７３】
ステップＳ２１２では、カメラマイコン１３０は、再びＳＷ２ＯＮか否かを判定し、ＳＷ２ＯＮの場合はステップＳ２０９に戻って次の露光（連写の次のコマの撮影）を行う。一方、ＳＷ２ＯＮでない場合はステップＳ２０１に戻る。
【００７４】
図１のフローチャートには、被写体角速度決定部６０３が図２のステップＳ２０７にて行う角速度決定処理の詳細を示している。被写体角速度決定部６０３（つまりはカメラマイコン１３０）は上記流し撮りアシスト制御プログラムの一部に従ってこの処理を実行する。
【００７５】
ステップＳ１０１において、カメラマイコン１３０から相対被写体角速度の決定を指示された被写体角速度決定部６０３は、それまでに被写体角速度算出部１３４から取得して蓄積した露光前の角速度履歴を読み出す。
【００７６】
そして、ステップＳ１０２において、被写体角速度決定部６０３は、読み出した角速度履歴に含まれる複数の相対被写体角速度と算出時刻の組から角速度の特異点を検出する。本実施例における角速度の特異点では、その角速度の時間変化率である角加速度にパンニング角度θ＝０度、＋３０度および−３０度に示すような３種類の特定の変化が生じる。      
【００７７】
被写体角速度決定部６０３は、角速度履歴において隣接する２つの算出時刻での相対被写体角速度の差分を該２つの算出時刻の間の時間で除算することにより角加速度（角加速度情報）を算出する。被写体角速度決定部６０３は、この角加速度の算出を複数の隣接算出時刻に対して行って角加速度の時間変化を求める。そして、被写体角速度決定部６０３は、時間変化する角加速度において、プラスの極大値（θ＝＋３０度での増加から減少への変化）とマイナスの極大値（θ＝−３０度での減少から増加への変化）を検出する処理を行う。また、被写体角速度決定部６０３は、角加速度におけるプラスからマイナスへの変化（θ＝０度での正と負のうち一方から他方への変化）も検出する。
【００７８】
ステップＳ１０３では、被写体角速度決定部６０３は、上記特異点の検出処理により検出した特異点の数が２つ以上であるか否かを判定する。つまり、特異点として、θ＝０度、＋３０度および−３０度のうち「０度、＋３０度および−３０度」、「３０度および０度」もしくは「０度と−３０度」に相当する特異点が検出されたか否かを判定する。特異点が２つ以上検出された場合は被写体角速度決定部６０３はステップＳ１０４に進み、そうでなければステップＳ１０５に進む。
【００７９】
ステップＳ１０４では、被写体角速度決定部６０３は、以下の式（１）を用いて露光期間中の相対被写体角速度ωを算出（決定）する。
【００８０】
【数１】
0006529430.tif 000002
【００８１】
式（１）において、ｔ３０は、被写体がθ＝＋３０度とθ＝−３０度のうち検出された特異点に対応する位置からθ＝０度の位置まで動くのに要した時間である。また、ｔｃは、被写体がθ＝０度の位置を通過した時点から最後に露光前の相対被写体角速度が検出された時点（レリーズ情報が入力される直前）までの時間である。ｔｌａｇは、最後に露光前の相対被写体角速度が検出された時点から露光期間の中間点までの時間である。なお、以下の説明では露光期間の中間点を露光期間の半分の時点として説明するが、露光期間中の時点であれば半分の時点でなくてもよい。
【００８２】
図１０には、ｔ３０が被写体がθ＝０度の位置からθ＝＋３０度の位置まで動くのに要した時間である場合のｔ３０、ｔｃおよびｔｌａｇを示している。
【００８３】
式（１）の導出について、図９を用いて説明する。ｖは被写体速度、Ｌは被写体の移動軌跡とカメラとの最短距離、ｔは被写体の移動軌跡とカメラとの最短距離地点までの移動にかかる時間である。被写体の角速度ωはθの時間微分であるので、以下を求める。
【００８４】
【数２】
0006529430.tif 000003
【００８５】
図９より、
【００８６】
【数３】
0006529430.tif 000004
【００８７】
となる。ここで、
【００８８】
【数４】
0006529430.tif 000005
【００８９】
として、arctan(u)をｕで微分し再度ｕで展開すると、
【００９０】
【数５】
0006529430.tif 000006
【００９１】
となる。ここで、ｕのｔ微分は、
【００９２】
【数６】
0006529430.tif 000007
【００９３】
となり、これを微分の連鎖律にあてはめると、
【００９４】
【数７】
0006529430.tif 000008
【００９５】
となる。
図１０におけるＬを求めると、
【００９６】
【数８】
0006529430.tif 000009
【００９７】
となり、このＬとｔ＝ｔｃ＋ｔｌａｇをωに式に適用すると式（１）となる。
【００９８】
ステップＳ１０５では、被写体角速度決定部６０３は、θ＝＋３０度の特異点が判明しているか否かを判定し、判明していればステップＳ１０６に、判明していなければステップＳ１０７に進む。
【００９９】
ステップＳ１０６では、被写体角速度決定部６０３は、式（２）を用いて露光期間中の相対被写体角速度ωを算出する。すなわち、被写体角速度決定部６０３は、まず角速度履歴における最新の２つの算出時刻にて算出された相対被写体角速度の差分（ωｎ−ωｎ−１）を求める。次に、被写体角速度決定部６０３は、被写体が露光期間の中間点での位置まで動くのに要する時間ｔｌａｇを用いて相対被写体角速度（ωｎ−ωｎ−１）ｔｌａｇ／ｔｆを求める。さらに、被写体角速度決定部６０３は、求めた相対被写体速度に対して１以下の重みｗによる重み付けを行って最終的な露光期間中の相対被写体角速度ωを算出（決定）する。
【０１００】
【数９】
0006529430.tif 000010
【０１０１】
式（２）において、ωｎは最新の算出時刻にて算出された角速度であり、ωｎ−１は最新より１つ前の算出時刻にて算出された角速度である。また、ｔｆはωｎ−１が算出された算出時刻とωｎが算出された算出時刻との間の時間である。
【０１０２】
ステップＳ１０７では、被写体角速度決定部６０３は、θ＝０度の特異点が判明しているか否かを判定し、判明していればステップＳ１０８に、判明していなければステップＳ１１１に進む。
【０１０３】
ステップＳ１０８では、被写体角速度決定部６０３は、角速度履歴として、θ＝０度を対称点（対称の中心点）として露光期間の中間点での相対被写体角速度に対して対称となる相対被写体角速度（以下、対称履歴角速度という）が存在するか否かを判定する。対称履歴角速度が存在する場合は被写体角速度決定部６０３はステップＳ１０９に進み、対称履歴角速度が存在しない場合はステップＳ１１０に進む。
【０１０４】
図１１には、対称履歴角速度を示している。角速度履歴が蓄積された期間を、ここでは履歴蓄積期間という。図中に示す履歴蓄積期間１は、θ＝０度の原点Ａよりも右側においてｔｌａｇ＋ｔｃよりも短いため、対称履歴角速度は存在しない。一方、履歴蓄積期間２は、原点Ａよりも右側においてｔｌａｇ＋ｔｃより長いため、対称履歴角速度が存在する。
【０１０５】
ステップＳ１０９では、被写体角速度決定部６０３は、対称履歴角速度を露光期間中の相対被写体角速度として決定する。
【０１０６】
ステップＳ１１０では、被写体角速度決定部６０３は、重みｗを１以上とした式（２）を用いて露光期間中の相対被写体角速度ωを決定する。
【０１０７】
ステップＳ１１１では、被写体角速度決定部６０３は、θ＝−３０度の特異点が判明しているか否かを判定し、判明していればステップＳ１１２に、判明していなければステップＳ１１３に進む。
【０１０８】
ステップＳ１１２では、被写体角速度決定部６０３は、重みｗを１以下とした式（２）を用いて露光期間中の相対被写体角速度ωを決定する。
【０１０９】
ステップＳ１１３では、被写体角速度決定部６０３は、重みｗを１とした式（２）を用いて露光期間中の相対被写体角速度ωを決定する。
【０１１０】
本実施例によれば、カメラ１００から測定する被写体の角速度が変化する場合でも被写体像のぶれが少ない良好な流し撮りを可能とする流し撮りアシストを実現することができる。
【実施例２】
【０１１１】
次に、本発明の実施例２である光学機器としてのカメラについて説明する。本実施例のカメラの構成は実施例１のカメラ１００と共通である。このため、本実施例では、カメラの構成要素に実施例１と同符号を付す。
【０１１２】
実施例１では、被写体角速度算出部１３４から相対被写体角速度とこれを算出した算出時刻を流し撮り制御部１３２に送出し、流し撮り制御部１３２はこれらの組を角速度履歴として蓄積する場合について説明した。実施例２では、相対被写体角速度と算出時刻に加え、該算出時刻での被写体距離（距離情報）と前回の相対被写体角速度の算出時刻からの図９に示した角度θの変化量も流し撮り制御部１３２に送出し、流し撮り制御部１３２はこれらの組を角速度履歴として蓄積する。被写体距離は、撮影レンズユニット１０１におけるズームレンズ１０３および不図示のフォーカスレンズの位置等の情報から算出することができる。角度θの変化量は、角速度データを積分することで算出することができる。本実施例では、被写体距離を取得するためにオートフォーカス動作を行って、動く被写体に対して撮影レンズユニット１０１の合焦状態を維持し、被写体が動いても正確な被写体距離を算出する。また、被写体とカメラの両方にＧＰＳを装備させ、位置情報を取得することで被写体距離を取得してもよい。
【０１１３】
図１２のフローチャートには、本実施例において被写体角速度決定部６０３が行う角速度決定処理（第２の処理）を示している。被写体角速度決定部６０３（つまりはカメラマイコン１３０）は、実施例１で説明した流し撮りアシスト制御プログラムの一部に従ってこの処理を実行する。
【０１１４】
ステップＳ６０１において、カメラマイコン１３０から相対被写体角速度の決定を指示された被写体角速度決定部６０３は、それまでに被写体角速度算出部１３４から取得して蓄積した露光前の角速度履歴を読み出す。
【０１１５】
ステップＳ６０２において、被写体角速度決定部６０３は、読み出した角速度履歴に含まれる複数の相対被写体角速度と算出時刻の組から被写体の角速度の時間変化率である角加速度を求めて被写体が等速直線運動を行っているか否かを判断する。具体的には、角加速度が図８に示した角加速度のグラフと同等の時間変化を示しているか否かを判定する。被写体が等速直線運動を行っている場合は被写体角速度決定部６０３はステップＳ６０３に進み、被写体が等速直線運動を行っていなければステップＳ６０４に進む。
【０１１６】
ステップＳ６０３では、被写体角速度決定部６０３は、角速度履歴における最新の２つの算出時刻での被写体距離とそれらの算出時刻間での角度θの変化量とを用いて、以下の式（３）〜（８）により露光期間中の相対被写体角速度ωを算出する。
【０１１７】
【数１０】
0006529430.tif 000011
【０１１８】
式（３）〜（８）内の記号について図１３を用いて説明する。Ｌとｖはそれぞれ、図９にも示したように、本実施例のカメラ１００′から被写体の等速直線運動の移動軌跡までの最短距離（原点Ａまでの距離）および被写体の等速直線運動の速度である。ｔは被写体が原点Ａを通過した時点から露光期間の中間点までの時間である。ｍはある時点（相対被写体角速度の算出時刻）での被写体距離であり、ｎはｍより前の時点（前回の相対被写体角速度の算出時刻）での被写体距離である。Δθは被写体距離がｎである時点（以下、第１の時点という）での角度θから被写体距離がｍである時点（以下、第２の時点という）での角度θへの変化量である。Ｄは第１の時点から第２の時点までの被写体の移動距離であり、ｔｆは第１の時点から第２の時点までの時間である。ｔｌａｇは、第２の時点から露光期間の中間点までの時間である。
図１３（ａ）は、式（７）において、
【０１１９】
【数１１】
0006529430.tif 000012
【０１２０】
の場合を示しており、図１３（ｂ）は、式（７）において、
【０１２１】
【数１２】
0006529430.tif 000013
【０１２２】
の場合を示している。また、図１３（ｃ）は、式（８）においてｍ≦ｎの場合を示しており、図１３（ｄ）はｍ＞ｎの場合を示している。
【０１２３】
ここで、式（４）の求め方を図１３で説明する。（ａ）〜（ｄ）すべてにおいて辺ｍｓｉｎθと辺Ｄからなる三角形と辺Ｌと辺ｎからなる三角形の相似関係（ｍｓｉｎθ：Ｄ＝Ｌ：ｎ）により求めることができる。また、式（６）の求め方について図１３で説明する。（ａ）〜（ｄ）すべてにおいて辺ｍｓｉｎθと辺Ｄからなる三角形の三平方の定理で求めることができる。（ａ）〜（ｃ）に関しては、
【０１２４】
【数１３】
0006529430.tif 000014
【０１２５】
から導出することができる。（ｄ）に関しては、
【０１２６】
【数１４】
0006529430.tif 000015
【０１２７】
から導出することができる。
【０１２８】
ステップＳ６０４では、被写体角速度決定部６０３は、実施例１で説明した式（２）を用いて重みｗを１として露光期間中の相対被写体角速度ωを決定する。
【０１２９】
本実施例によれば、任意の２時点の被写体距離とその間の角度θの変化量Δθを取得することで、露光期間中の相対被写体角速度ωを求めることができる。これにより、カメラ１００′から測定する被写体の角速度が変化する場合でも被写体像のぶれが少ない良好な流し撮りを可能とする流し撮りアシストを実現することができる。
【実施例３】
【０１３０】
次に、本発明の実施例３である光学機器としてのカメラについて説明する。本実施例のカメラの構成は実施例１のカメラ１００と共通である。このため、本実施例では、カメラの構成要素に実施例１と同符号を付す。
【０１３１】
実施例１，２では、露光期間中の相対被写体角速度を露光前に１回のみ算出し、その算出結果に基づいて流し撮りアシストを行う場合について説明した。この場合、露光期間が短ければ問題はないが、露光期間が長くなるとその露光期間内での相対被写体角速度の変化によって良好な流し撮りアシストを行うことができなくなる。本実施例では、露光期間中においても該露光期間中の相対被写体角速度を順次算出（順次更新）し、最新の算出結果の変化に応じたシフトレンズ１０４のシフト駆動の制御を行うことで、露光期間が長い場合でも良好な流し撮りアシストを可能とする。
【０１３２】
図１４のフローチャートには、本実施例においてカメラマイコン１３０が流し撮りアシストモードで行う流し撮りアシスト処理を示している。この処理は、カメラマイコン１３０がコンピュータプログラムである流し撮りアシスト処理プログラムに従って実行する。図１４において、実施例１にて図２に示したフローチャートに含まれるステップと同じステップには図２と同ステップ番号を付して説明に代える。
【０１３３】
本実施例では、カメラマイコン１３０は、実施例１と同様に、ステップＳ２０６において被写体角速度算出部１３４に相対被写体角速度を算出させる（第１の処理）。そして、次のステップＳ７０１では、被写体角速度決定部６０３に、ステップＳ２０６で算出された相対被写体角度とその算出時刻の組の情報を角速度履歴として保持させる。なお、実施例２の相対被写体角度の算出方法を用いる場合は、上記情報に併せて被写体距離と前回の相対被写体角速度の算出時からの角度θの変化量の情報も被写体角速度決定部６０３に角速度履歴として保持させる。
【０１３４】
また、カメラマイコン１３０は、ステップＳ２０９で露光を開始した後である露光期間中（記録用撮影中）のステップＳ７０２において、被写体角速度決定部６０３に露光期間中の相対被写体角速度を算出（決定）させる（第２の処理）。カメラマイコン１３０は、このステップＳ７０２の処理をステップＳ２１１で露光が完了するまで周期的に繰り返して相対被写体角速度を順次更新する。そして、カメラマイコン１３０は、ステップＳ２１０において、流し撮り制御部１３２に、ステップＳ７０２で相対被写体角速度が決定されるごとその相対被写体角速度に応じたシフトレンズ１０４のシフト駆動の制御を行わせる。
【０１３５】
本実施例では、露光期間中にも相対被写体角速度を繰り返し算出し、これらに基づいて流し撮りアシストを行う。つまり、露光期間が所定時間よりも長い場合は、算出する相対被写体角速度（予測情報）の数を増加させる。このため、露光期間が長い場合でも被写体像のぶれが少ない良好な流し撮りアシストを行うことができる。
【実施例４】
【０１３６】
次に、図１５を用いて、本発明の実施例４であるレンズ交換式カメラシステムについて説明する。交換レンズ１４０は、レンズ交換型カメラ１４１に対して取り外し可能に装着される。図１５において、図３に示した実施例１のカメラ１００と共通する構成要素には実施例１と同符号を付してそれらの説明は省略する。
【０１３７】
本実施例では、実施例１において１つのカメラマイコン１３０で行う複数の処理を、カメラ１４１内のカメラマイコン１４４と交換レンズ１４０内のレンズマイコン１４２とで分担して行う。レンズマイコン１４２とカメラマイコン１４４は、交換レンズ１４０に設けられたマウント接点部１４６とカメラ１４１に設けられたマウント接点部１４７を通じて、情報伝達のためにシリアル通信を行う。カメラマイコン１４４はシャッター制御部１３３と被写体角速度算出部１３４を有し、レンズマイコン１４２は防振制御部１３１と流し撮り制御部１３２′とを有する。流し撮り制御部１３２′は、カメラマイコン１４４（被写体角速度算出部１３４）からシリアル通信により情報を受信する点で実施例１の流し撮り制御部１３２と異なる。本実施例では、交換レンズ１４０に設けられたレンズマイコン１４２が制御手段に相当し、算出手段としての被写体角速度算出部１３４はカメラマイコン１４４に含まれる。
【０１３８】
図１６には、本実施例において流し撮りアシストモードでのシフトレンズ１０４のシフト駆動制御を行うために交換レンズ１４０に設けられたシフト駆動制御システムの構成を示している。図１６において、図６に示した構成要素と共通する構成要素には図６と同符号を付してそれらの説明は省略する。
【０１３９】
流し撮り制御部１３２′は、カメラ情報取得部６１１と、角速度データ出力部６１２と、被写体角速度決定部６１３と、第２の加算器６０４と、第２の積分器６０５とを含む。
【０１４０】
カメラ情報取得部６１１は、通信制御部６１４を介して、カメラマイコン１４４から実施例１で説明した流し撮り設定情報とレリーズ情報とを取得する。
【０１４１】
角速度データ出力部６１２は、所定タイミングで角速度データをサンプリングし、通信制御部６１４を介してカメラマイコン１４４内の被写体角速度算出部１３４に送信する。
【０１４２】
被写体角速度決定部６１３は、カメラマイコン１４４内の被写体角速度算出部１３４から送信される情報を、通信制御部６１４を介して受信する。その情報は、露光前に被写体角速度算出部１３４が算出した相対被写体角速度とその算出時刻（取得時刻）から本情報の通信時刻までの遅延時間との組の情報である。被写体角速度決定部６１３は、取得した遅延時間をレンズマイコン１４２内での時刻としての算出時刻に変換し、この算出時刻と取得した相対被写体角速度の組の情報を角速度履歴として保持（蓄積）する。そして、被写体角速度決定部６１３は、その露光前の角速度履歴を用いて露光期間中の相対被写体角速度を決定（推定）する。
【０１４３】
図１７のフローチャートには、カメラマイコン１４４が流し撮りアシストモードで行う流し撮りアシスト処理を示している。この処理は、カメラマイコン１４４がコンピュータプログラムであるカメラ側流し撮りアシスト処理プログラムに従って実行する。図１７において、実施例１にて図２に示したフローチャートに含まれるステップと同じステップには図２と同ステップ番号を付して説明に代える。
【０１４４】
ステップＳ２０６では、カメラマイコン１４４は、被写体角速度算出部１３４に相対被写体角速度を算出させる（第１の処理）。そして、カメラマイコン１４４は、ステップＳ８０１において、算出された相対被写体角速度とその算出時刻から現時点までの遅延時間の組の情報をレンズマイコン１４２に送信する。
【０１４５】
そして、ステップＳ２０８でＳＷ２ＯＮとなると、カメラマイコン１４４は、ステップＳ８０２において、露光開始のタイミング情報をレンズマイコン１４２に送信し、ステップＳ８０３で露光を行う。さらに、露光が終了すると、カメラマイコン１４４は、ステップＳ８０３にて露光終了のタイミング情報をレンズマイコン１４２に送信する。この後、カメラマイコン１４４は、ステップＳ２１２に進む。
【０１４６】
図１８のフローチャートには、レンズマイコン１４２が流し撮りアシストモードで行う流し撮りアシスト処理を示している。この処理は、レンズマイコン１４２がコンピュータプログラムであるレンズ側流し撮りアシスト処理プログラムに従って実行する。
【０１４７】
ステップＳ９０１において、レンズマイコン１４２は、カメラマイコン１４４から相対被写体角速度と遅延時間の組の情報を受信したか否かを判定し、受信した場合はステップＳ９０２に進み、受信していない場合は本ステップの処理を繰り返す。
【０１４８】
ステップＳ９０２では、レンズマイコン１４２は、受信した相対被写体角速度を保持する。
【０１４９】
次に、ステップＳ９０３では、レンズマイコン１４２は、ステップＳ９０１で受信した遅延時間から、レンズマイコン１４２内での時刻としての相対被写体角速度の算出時刻を計算し、その算出時間と相対被写体角速度との組の情報を角速度履歴として保持する。
【０１５０】
ステップＳ９０４では、レンズマイコン１４２は、露光期間の中間点での相対被写体角速度を決定する（第２の処理）。この決定は、実施例１にて図１のフローチャートを用いて説明した角速度決定処理により行う。また、カメラマイコン１４４から被写体距離と角度θの変化量の情報を受信することにより、実施例２にて図１２を用いて説明した角速度決定処理により行ってもよい。
【０１５１】
続いてステップＳ９０５では、レンズマイコン１４２は、カメラマイコン１４４から露光開始のタイミング情報を受信したか否かを判定し、受信した場合はステップＳ９０６に進み、受信していない場合はステップＳ９０１に戻る。
【０１５２】
ステップＳ９０６では、レンズマイコン１４２は、実施例１にて図２に示したステップＳ２１０と同様に流し撮り制御部１３２′を通じてシフトレンズ１０４を被写体像の像面上での変位量を補正するようにシフト駆動して流し撮りアシストを行う。この際、実施例１にて図５に示したステップＳ５０２と同様にパンニングが高速パンニングと判定された場合は、レンズマイコン１４２は、防振制御部１３１を通じてシフトレンズ１０４を手振れによる像振れを補正するためにシフト駆動する。
【０１５３】
そして、ステップＳ９０７では、レンズマイコン１４２は、カメラマイコン１４４から露光終了のタイミング情報を受信したか否かを判定し、受信した場合はステップＳ９０１に戻り、受信していない場合はステップＳ９０６に戻って流し撮りアシストを継続する。
【０１５４】
本実施例によれば、実施例１または実施例２で説明したカメラでの流し撮りアシストと同様の流し撮りアシストをレンズ交換式カメラシステムにおいて行うことができる。
【０１５５】
交換レンズ１４０に実施例３で説明したのと同様の流し撮りアシストを行わせる場合には、図１８のステップＳ９０４での処理をステップＳ９０６の前に行い、ステップＳ９０７で露光終了のタイミング情報を受信していない場合にステップＳ９０４に戻ればよい。
【０１５６】
なお、本実施例では、カメラマイコン１４４からレンズマイコン１４２に相対被写体角速度の算出時刻から通信時刻までの遅延時間を送信して、レンズマイコン１４２が該遅延時刻から自身の側での算出時刻を計算する場合について説明した。しかし、レンズマイコン１４２とカメラマイコン１４４の時刻を予め合わせておき、カメラマイコン１４４からレンズマイコン１４２に相対被写体角速度とその算出時刻を送信するようにしてもよい。
【実施例５】
【０１５７】
次に、本発明の実施例５であるあるレンズ交換式カメラシステムについて説明する。本実施例において、図１５および図６に示した実施例４の交換レンズ１４０およびカメラ１４１と共通する構成要素には実施例４と同符号を付してそれらの説明は省略する。
【０１５８】
実施例４ではレンズマイコン１４２が露光期間中の相対被写体角速度を算出する場合について説明したが、実施例５ではカメラマイコン１４４が露光期間中の相対被写体角速度を算出する。より詳しくは、カメラマイコン１４４は、露光開始までのタイムラグを考慮した露光期間中の相対被写体角速度を補正サンプリング分のリストとして作成し、該リストをレンズマイコン１４２に送信する。
【０１５９】
図１９のフローチャートには、カメラマイコン１４４が流し撮りアシストモードで行う流し撮りアシスト処理を示している。この処理は、カメラマイコン１４４がコンピュータプログラムであるカメラ側流し撮りアシスト処理プログラムに従って実行する。図１９において、実施例４にて図１７に示したフローチャートに含まれるステップと同じステップにはそれらと同ステップ番号を付して説明に代える。
【０１６０】
ステップＳ１００１では、カメラマイコン１４４は、ステップＳ２０６（第１の処理）において算出された相対被写体角速度を保持する。
【０１６１】
そして、次のステップＳ１００２では、カメラマイコン１４４は、実施例１にて図２を用いて説明したステップＳ２０７と同様の処理を行って露光期間中の相対被写体角速度を算出する（第２の処理）。ただし、本ステップでは、カメラマイコン１４４は、露光期間中における流し撮りアシストのためのシフトレンズ１０４の所定周期での駆動タイミングごとの相対被写体角速度を算出し、全駆動タイミングでの複数の相対被写体角速度を含むリストを作成する。そして、このリストをレンズマイコン１４２に送信する。
【０１６２】
例えば、露光期間が１／１００秒で、シフトレンズ１０４の駆動の周期が１ｋＨｚである場合は、シフトレンズ１０４は露光期間内で１０回駆動される。このため、カメラマイコン１４４は、この１０回の駆動における駆動タイミングごとの相対被写体角速度を算出し、算出した１０個の相対被写体角速度をリストにしてレンズマイコン１４２に送信する。
【０１６３】
本実施例では、露光期間中の相対被写体角速度の算出およびリストの作成を、カメラマイコン１４４内の被写体角速度算出部１３４が行う。つまり、本実施例では、カメラマイコン１４４が算出手段に相当し、レンズマイコン１４２は制御手段に相当する。
【０１６４】
図２０には、レンズマイコン１４２が流し撮りアシストモードで行う流し撮りアシスト処理を示している。この処理は、レンズマイコン１４２がコンピュータプログラムである流し撮りアシスト処理プログラムに従って実行する。図２０において、実施例４にて図１８に示したフローチャートに含まれるステップと同じステップには図１８と同ステップ番号を付して説明に代える。
【０１６５】
ステップＳ１１０１では、レンズマイコン１４２は、カメラマイコン１４４から露光期間中の相対被写体角速度のリストを受信したか否かを判定し、受信した場合はステップＳ９０５に進み、受信していない場合は本ステップの処理を繰り返す。
【０１６６】
ステップＳ９０５にてカメラマイコン１４４から露光開始のタイミング情報を受信したレンズマイコン１４２は、ステップＳ１１０２において、ステップＳ１１０１で受信したリストからシフトレンズ１０４の駆動タイミングごとの相対被写体角速度を読み出す。そして、先の駆動タイミングでの相対被写体角速度から順に、使用する相対被写体角速度として決定する。
【０１６７】
次のステップＳ１１０３では、レンズマイコン１４２は、流し撮り制御部１３２′に、ステップＳ１１０２で決定された相対被写体角速度に応じたシフトレンズ１０４のシフト駆動の制御を行わせる。この際、シフトレンズ１０４の駆動タイミングごとに、ステップＳ１１０２で決定された通りの順で使用される相対被写体角速度が変更される。すなわち、露光中における相対被写体角速度が順次更新される。
【０１６８】
また、この際、実施例１にて図５に示したステップＳ５０２と同様にパンニングが高速パンニングと判定された場合は、レンズマイコン１４２は、防振制御部１３１を通じてシフトレンズ１０４を手振れによる像振れを補正するためにシフト駆動する。レンズマイコン１４２は、以上の処理を露光終了（ステップＳ９０７）まで繰り返す。これにより、露光中の被写体角速度の変化に対応することができる。
【０１６９】
また、本実施例では露光期間中の被写体角速度のリストをデータとして受け渡しているが、露光開始時の相対被写体角速度と角加速度を受け渡すことで同様に露光中の相対被写体角速度の変化に対応することができる。図２１には、本実施例の変形例として、カメラマイコン１４４が流し撮りアシストモードで行う流し撮りアシスト処理を示している。図２１において、図１９に示した処理と同じ処理については同ステップ番号を付して説明に代える。
【０１７０】
ステップＳ２０６で算出した相対被写体角速度をステップＳ１００１で保持したカメラマイコン１４４は、ステップＳ１２０２において、図１９のステップＳ１００２と同様にして複数の相対被写体角速度を算出する。そして、カメラマイコン１４４は、該複数の相対被写体角速度を用いて露光開始時の相対被写体角速度とカメラ１００に対する被写体の動きの予測情報としての推定加速度である相対角加速度とを算出し、これらの情報をカメラマイコン１４４に送信する。この後、カメラマイコン１４４はステップＳ２０８以降の処理に進む。
【０１７１】
図２２には、本変形例においてレンズマイコン１４２が流し撮りアシストモードで行う流し撮りアシスト処理を示している。図２２において、図２０に示した処理と同じ処理については同ステップ番号を付して説明に代える。
【０１７２】
ステップＳ１３０１では、レンズマイコン１４２は、カメラマイコン１４４から露光開始時の相対被写体角速度と相対角加速度の情報を受信したか否かを判定し、受信した場合はステップＳ９０５に進み、受信していない場合は本ステップの処理を繰り返す。
【０１７３】
ステップＳ９０５で露光が開始されたと判定したレンズマイコン１４２は、ステップＳ１３０２に進む。ステップＳ１３０２では、カメラマイコン１４４は、受信した露光開始時の相対被写体角速度と相対角加速度および露光開始時刻からの経過時間とを用いて、シフトレンズ１０４の所定周期での駆動タイミング（補正タイミング）ごとの相対被写体角速度を決定する。
【０１７４】
そして、次のステップＳ１１０３では、レンズマイコン１４２は、流し撮り制御部１３２′に、ステップＳ１３０２で決定された各補正タイミングの相対被写体角速度に応じて、補正タイミングごとにシフトレンズ１０４のシフト駆動の制御を行わせる。こうして露光期間中の相対被写体角速度が順次更新される。また、この際、実施例１にて図５に示したステップＳ５０２と同様にパンニングが高速パンニングと判定された場合は、レンズマイコン１４２は、防振制御部１３１を通じてシフトレンズ１０４を手振れによる像振れを補正するためにシフト駆動する。レンズマイコン１４２は、以上の処理を露光終了（ステップＳ９０７）まで繰り返す。これにより、露光中の被写体角速度の変化に対応することができる。
【０１７５】
本実施例によれば、露光期間中に相対被写体角速度が変化しても、被写体像のぶれが少ない良好な流し撮りアシストをレンズ交換式カメラシステムにおいて行うことができる。
【０１７６】
上述した各実施例では、流し撮りアシストおよび手振れによる像振れの補正を撮影レンズユニット１０１の一部を構成するシフトレンズ１０４をシフトさせることで行う場合について説明した。しかし、撮影レンズユニットの全体をシフトさせてもよいし、撮像素子１１２をシフト素子として用いてこれをシフトさせてもよい。
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【０１７７】
以上説明した各実施例は代表的な例にすぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。
【符号の説明】
【０１７８】
１００  カメラ
１０１  撮影レンズユニット
１０４  シフトレンズ
１０７  角速度センサ
１１２  撮像素子
１３０  カメラマイコン
１３２  流し撮り制御部
１３４  被写体角度算出部
【図１】
0006529430.tif 000016
【図２】
0006529430.tif 000017
【図３】
0006529430.tif 000018
【図４】
0006529430.tif 000019
【図５】
0006529430.tif 000020
【図６】
0006529430.tif 000021
【図７】
0006529430.tif 000022
【図８】
0006529430.tif 000023
【図９】
0006529430.tif 000024
【図１０】
0006529430.tif 000025
【図１１】
0006529430.tif 000026
【図１２】
0006529430.tif 000027
【図１３】
0006529430.tif 000028
【図１４】
0006529430.tif 000029
【図１５】
0006529430.tif 000030
【図１６】
0006529430.tif 000031
【図１７】
0006529430.tif 000032
【図１８】
0006529430.tif 000033
【図１９】
0006529430.tif 000034
【図２０】
0006529430.tif 000035
【図２１】
0006529430.tif 000036
【図２２】
0006529430.tif 000037