(57)【特許請求の範囲】
【請求項１】
移動する被写体の撮像において撮像光学系の光軸に対してシフト可能なシフト素子のシフト駆動を制御するシフト素子制御装置であって、
撮像により生成された動画像のうち前記被写体の画像を含む被写体領域において検出された動きベクトルから前記シフト素子のシフト駆動量を算出する算出手段と、
前記シフト駆動量に応じた前記シフト駆動の制御を行う制御手段とを有し、
前記算出手段は、前記動画像における複数の前記被写体領域にて検出された互いに大きさが異なる複数の動きベクトルのそれぞれに対して前記シフト駆動量を算出し、
前記制御手段は、算出された複数の前記シフト駆動量のそれぞれに応じた前記シフト駆動を、複数回の静止画撮像における撮像ごとに順次行い、
前記制御手段は、前記複数の被写体領域にて検出された前記動きベクトルのうち出現頻度がより多い動きベクトルに対して算出された前記シフト駆動量に応じた前記シフト駆動をより先に行うことを特徴とするシフト素子制御装置。
【請求項２】
前記制御手段は、前記複数の被写体領域のうち撮像画面におけるフォーカシング領域により近い被写体領域にて検出された前記動きベクトルに対して算出された前記シフト駆動量に応じた前記シフト駆動をより先に行うことを特徴とする請求項１に記載のシフト素子制御装置。
【請求項３】
前記制御手段は、前記動画像における前記複数の被写体領域の位置と該複数の被写体領域において検出された前記動きベクトルの大きさとから、順次行う前記シフト駆動の順序を設定することを特徴とする請求項１または２に記載のシフト素子制御装置。
【請求項４】
移動する被写体の撮像において撮像光学系の光軸に対してシフト可能なシフト素子のシフト駆動を制御するシフト素子制御装置であって、
撮像により生成された動画像のうち前記被写体の画像を含む被写体領域において検出された動きベクトルから前記シフト素子のシフト駆動量を算出する算出手段と、
前記シフト駆動量に応じた前記シフト駆動の制御を行う制御手段とを有し、
前記算出手段は、前記動画像における複数の前記被写体領域にて検出された互いに大きさが異なる複数の動きベクトルのそれぞれに対して前記シフト駆動量を算出し、
前記制御手段は、算出された複数の前記シフト駆動量のそれぞれに応じた前記シフト駆動を、複数回の静止画撮像における撮像ごとに順次行い、
前記制御手段は、前記複数の被写体領域のうち撮像画面におけるフォーカシング領域により近い被写体領域にて検出された前記動きベクトルに対して算出された前記シフト駆動量に応じた前記シフト駆動をより先に行うことを特徴とするシフト素子制御装置。
【請求項５】
移動する被写体の撮像において撮像光学系の光軸に対してシフト可能なシフト素子のシフト駆動を制御するシフト素子制御装置であって、
撮像により生成された動画像のうち前記被写体の画像を含む被写体領域において検出された動きベクトルから前記シフト素子のシフト駆動量を算出する算出手段と、
前記シフト駆動量に応じた前記シフト駆動の制御を行う制御手段とを有し、
前記算出手段は、前記動画像における複数の前記被写体領域にて検出された互いに大きさが異なる複数の動きベクトルのそれぞれに対して前記シフト駆動量を算出し、
前記制御手段は、算出された複数の前記シフト駆動量のそれぞれに応じた前記シフト駆動を、複数回の静止画撮像における撮像ごとに順次行い、
前記制御手段は、前記動画像における前記複数の被写体領域の位置と該複数の被写体領域において検出された前記動きベクトルの大きさとから、順次行う前記シフト駆動の順序を設定することを特徴とするシフト素子制御装置。
【請求項６】
前記制御手段は、前記複数の被写体領域の位置と該複数の被写体領域において検出された前記動きベクトルの大きさとから、前記複数回の静止画撮像の完了前に前記複数の被写体領域のうち特定の被写体領域が撮像画面から外れると判定した場合は、該特定の被写体領域の前記動きベクトルに対して算出された前記シフト駆動量に応じた前記シフト駆動から先に行うことを特徴とする請求項５に記載のシフト素子制御装置。
【請求項７】
請求項１から６のいずれか一項に記載のシフト素子制御装置と、
前記シフト素子、前記被写体の撮像による画像生成を行う撮像手段および前記被写体領域にて前記動きベクトルを検出する検出手段のうち少なくとも１つとを有することを特徴とする光学機器。
【請求項８】
移動する被写体の撮像において撮像光学系の光軸に対してシフト可能なシフト素子のシフト駆動をコンピュータに制御させるコンピュータプログラムであり、
前記コンピュータに、撮像により生成された動画像のうち前記被写体の画像を含む被写体領域において検出された動きベクトルから前記シフト素子のシフト駆動量を算出させ、該シフト駆動量に応じた前記シフト駆動の制御を行わせるシフト素子制御プログラムであって、
前記コンピュータに、
前記動画像における複数の前記被写体領域にて検出された互いに大きさが異なる複数の動きベクトルのそれぞれに対して前記シフト駆動量を算出させ、
算出された複数の前記シフト駆動量のそれぞれに応じた前記シフト駆動を、複数回の静止画撮像における撮像ごとに順次行わせ、
前記複数の被写体領域にて検出された前記動きベクトルのうち出現頻度がより多い動きベクトルに対して算出された前記シフト駆動量に応じた前記シフト駆動をより先に行わせることを特徴とするシフト素子制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光学機器におけるいわゆる流し撮りアシスト機能を制御する技術に関する。
【背景技術】
【０００２】
移動している被写体のスピード感を表現する撮影技術として、ユーザが被写体の動きに合わせて撮像装置（以下、カメラという）をパンニングすることで移動被写体を撮像画面内で静止させ、背景が流れるように撮影する流し撮りがある。そして、パンニング速度が変動しても良好な流し撮りを行えるように、撮像画像中の被写体の動き（動きベクトル）を検出し、その動きを小さくするように撮像光学系内のシフトレンズを光軸に対してシフトさせる流し撮りアシスト機能を有するカメラがある。
【０００３】
特許文献１には、振れセンサによるカメラ振れの検出結果と撮像画像中の被写体の動きベクトルから被写体を画像中央に位置させるためのレンズシフト量を算出し、該シフト量だけシフトレンズを光軸に対してシフトさせる流し撮りアシスト方法が開示されている。被写体の動きベクトルは、予め決められた被写体領域内で検出される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−３１７８４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１にて開示されたように撮像画像から検出した動きベクトルを用いてシフトレンズをシフトさせる方法には、以下のような問題がある。すなわち、撮像画像内に複数の被写体の画像が存在し、それらの動きベクトルがそれぞれ検出された場合に、ユーザが撮像したい（静止させたい）主被写体とは異なる被写体の動きベクトルに応じてシフトレンズの制御が行われるおそれがある。この場合、主被写体が撮像画像内で静止しないだけでなく、撮像画面から外れてしまうおそれもある。
【０００６】
本発明は、主被写体を含む複数の被写体が存在する場合でも、主被写体に対する良好な流し撮りが行われた撮像画像が得られるようにしたシフト素子制御装置および光学機器等を提供する。
【課題を解決するための手段】
【０００７】
本発明の一側面としてのシフト素子制御装置は、移動する被写体の撮像において撮像光学系の光軸に対してシフト可能なシフト素子のシフト駆動を制御する。該シフト素子制御装置は、撮像により生成された動画像のうち被写体の画像を含む被写体領域において検出された動きベクトルからシフト素子のシフト駆動量を算出する算出手段と、シフト駆動量に応じたシフト駆動の制御を行う制御手段とを有する。算出手段は、動画像における複数の被写体領域にて検出された互いに大きさが異なる複数の動きベクトルのそれぞれに対してシフト駆動量を算出する。そして、制御手段は、算出された複数のシフト駆動量のそれぞれに応じたシフト駆動を、複数回の静止画撮像における撮像ごとに順次行い、制御手段は、複数の被写体領域にて検出された動きベクトルのうち出現頻度がより多い動きベクトルに対して算出された前記シフト駆動量に応じたシフト駆動をより先に行うことを特徴とする。
【０００８】
なお、上記シフト素子制御装置と、シフト素子、被写体の撮像による画像生成を行う撮像手段および被写体領域にて動きベクトルを検出する検出手段のうち少なくとも１つとを有する光学機器も、本発明の他の一側面を構成する。
【０００９】
さらに、本発明の他の一側面としてのシフト素子制御プログラムは、移動する被写体の撮像において撮像光学系の光軸に対してシフト可能なシフト素子のシフト駆動をコンピュータに制御させるコンピュータプログラムであり、コンピュータに、撮像により生成された動画像のうち被写体の画像を含む被写体領域において検出された動きベクトルからシフト素子のシフト駆動量を算出させ、該シフト駆動量に応じたシフト駆動の制御を行わせる。そして、該シフト素子制御プログラムは、コンピュータに、動画像における複数の被写体領域にて検出された互いに大きさが異なる複数の動きベクトルのそれぞれに対してシフト駆動量を算出させ、算出された複数のシフト駆動量のそれぞれに応じたシフト駆動を、複数回の静止画撮像における撮像ごとに順次行わせ、複数の被写体領域にて検出された動きベクトルのうち出現頻度がより多い動きベクトルに対して算出されたシフト駆動量に応じたシフト駆動をより先に行わせることを特徴とする。
【発明の効果】
【００１０】
本発明では、複数の被写体領域にて検出された動きベクトルのそれぞれから算出されたシフト駆動量に応じたシフト駆動を撮像ごとに順次行わせる。これにより、主被写体を含む複数の被写体が存在する場合でも、主被写体に対して良好に流し撮りアシストが行われた静止画像を得ることができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施例１である撮像装置の構成を示すブロック図。
【図２】実施例１の撮像装置による流し撮りアシスト連続撮像処理を示すフローチャート。
【図３】実施例１における流し撮りアシスト処理を示すフローチャート。
【図４】実施例１において動きベクトルのヒストグラムを作成する方法を示す図。
【図５】上記動きベクトルのヒストグラムを示す図。
【図６】実施例１において被写体の角速度の算出方法を示す図。
【図７】本発明の実施例２である撮像装置において行われる流し撮りアシスト連続撮像処理を示すフローチャート。
【図８】実施例１の流し撮りアシスト連続撮像処理により取得された撮影画像を示す図。
【図９】実施例１における補正ベクトルの方向の決定方法を示す図。
【発明を実施するための形態】
【００１２】
以下、本発明の実施例について、図面を参照しながら説明する。
【実施例１】
【００１３】
図１には、本発明の実施例１である光学機器としての撮像装置の構成を示している。図１において、１００は交換レンズであり、１２０は交換レンズ１００が取り外し可能に装着される撮像装置（以下、カメラという）である。
【００１４】
交換レンズ１００は、撮像光学系１０１を有する。撮像光学系１０１は、主光学系１０２と、撮像光学系１０１の光軸が延びる方向である光軸方向に移動して撮像光学系１０１の焦点距離を変更する変倍レンズ群１０３とを含む。また、撮像光学系１０１は、光軸に直交する方向に移動可能(シフト可能)なシフト素子としてのシフトレンズ群１０４を含む。
【００１５】
シフトレンズ群１０４は、手振れ等によるカメラ１２０の振れ(以下、カメラ振れという)に起因する像振れを光学的に補正（低減）するためにシフト駆動される。このときのシフト駆動を防振駆動という。また、シフトレンズ群１０４は、動く被写体を流し撮りするユーザによってカメラ１２０のパンニングが行われた際に該流し撮りをアシストするためにシフト駆動される。このときのシフト駆動を、流し撮りアシスト駆動という。流し撮りアシスト駆動の制御については後述する。
【００１６】
交換レンズ１００は、変倍レンズ群１０３の位置を検出するズームエンコーダ１０５と、シフトレンズ群１０４をシフト駆動するシフトドライバ１１４と、シフトレンズ群１０４のシフト方向での位置（シフト位置）を検出するシフト位置センサ１０６とを有する。シフトドライバ１１４は、ボイスコイルモータ等のアクチュエータと、これを動作させるドライバ回路とにより構成される。
【００１７】
交換レンズ１００は、手振れやパンニング等によるカメラ１２０の動きの角速度を検出する動き検出手段としての角速度センサ１１１を有する。角速度センサ１１１の出力は、アンプ１１２により増幅されてレンズマイクロコンピュータ（以下、レンズマイコンという）１１３に入力される。また、シフト位置センサ１０６の出力は、アンプ１１５により増幅されてレンズマイコン１１３に入力される。
【００１８】
レンズマイコン１１３は、角速度センサ１１１により検出された角速度とシフト位置センサ１０６からの出力により検出されるシフト位置とに応じてシフトドライバ１１４を制御することで、シフトレンズ群１０４の防振駆動を制御する。また、レンズマイコン１１３は、後述するカメラマイコン１３２から、シフトレンズ群１０４のシフト方向とシフト駆動量の情報（以下、シフト制御情報という）を受け取る。そして、レンズマイコン１１３は、シフト制御情報とシフト位置センサ１０６からの出力により検出されるシフト位置とに応じてシフトドライバ１１４を制御することで、シフトレンズ群１０４の流し撮りアシスト駆動を制御する。
【００１９】
なお、実際のシフトレンズ群１０４のシフト駆動は、このシフトレンズ群１０４を横（ヨー）方向と縦（ピッチ）方向である互いに直交する２つのシフト方向に行われ、シフト方向ごとに角速度センサ１１１やシフトドライバ１１４が設けられている。ただし、これらシフト方向ごとの角速度センサ１１１およびシフトドライバ１１４はそれぞれ同じ構成を有するため、図１では１つのシフト方向に対して設けられた角速度センサ１１１およびシフトドライバ１１４のみを示している。
【００２０】
さらに、レンズマイコン１１３は、防振駆動を制御する防振制御部１１７と、流し撮りアシスト駆動を制御する流し撮りアシスト制御部１１８とを有する。これらの他に、レンズマイコン１１３は、撮像光学系１０１に含まれる不図示のフォーカスレンズや絞りの駆動を制御する。
【００２１】
交換レンズ１００は、カメラ１２０に対してバヨネット結合されるレンズマウントを有し、該レンズマウントにはマウント接点部１１６が設けられている。
【００２２】
カメラ１２０は、シャッタ１２１と、ＣＭＯＳセンサ等の撮像素子１２２とを有する。撮像素子１２２は、撮像光学系１０１により形成された被写体像を光電変換（撮像）する。シャッタ１２１は、撮像素子１２２の露光量を制御する。カメラ１２０は、アナログ信号処理回路１２３と、カメラ信号処理回路１２４と、撮像素子１２２およびアナログ信号処理回路１２３の動作タイミングを設定するタイミングジェネレータ１２５とを有する。アナログ信号処理回路１２３は、撮像素子１２２から出力されるアナログ信号をデジタル信号に変換し、該デジタル信号に対して各種画像処理を行うことで撮像画像（動画像や静止画像）を生成する。撮像素子１２２およびアナログ信号処理回路１２３により、被写体の撮像による画像生成を行う撮像手段が構成される。
【００２３】
また、カメラ１２０は、電源スイッチ、レリーズ（撮像準備／記録）スイッチおよび各種撮影モード設定スイッチ等を含む操作スイッチ１３１と、カメラ１２０全体の動作を制御するカメラマイクロコンピュータ（以下、カメラマイコンという）１３２とを有する。さらに、カメラ１２０は、シャッタ１２１のチャージを行うシャッタモータ１３４と、これを駆動するシャッタドライバ１３３とを有している。
【００２４】
また、カメラ１２０は、記録用の撮像画像を半導体メモリや光ディスク等の記録媒体に記録する記録部１７１と、撮像画像（記録されない動画像であるライブビュー映像も含む）を表示する液晶パネル等の表示部（以下、ＬＣＤという）１７２とを有する。
【００２５】
カメラ１２０は、前述したように交換レンズ１００がバヨネット結合されるカメラマウントを有し、該カメラマウントには、レンズマウントのマウント接点部１１６と電気的に接続されるマウント接点部１６１が設けられている。カメラマイコン１３２とレンズマイコン１１３は、これらマウント接点部１６１，１１６を介して相互に通信（例えば、シリアル通信）を行ったり、カメラ１２０から交換レンズ１００への電源供給を行ったりする。
【００２６】
カメラ信号処理回路１２４は、被写体抽出部１４２と動きベクトル検出部（検出手段）１４１とを有する。被写体抽出部１４２は、ライブビュー映像内から被写体の画像を含む画像領域である被写体領域を抽出する。動きベクトル検出部１４１は、被写体領域内で動きベクトルを検出する。
【００２７】
カメラマイコン１３２は、シャッタドライバ１３３を通じてシャッタ１２１を制御するシャッタ制御部１５１と、後述する流し撮りアシスト連続撮像処理を行う流し撮りアシスト制御部１５２と、被写体の角速度を算出する被写体角速度算出部１５３とを有する。
【００２８】
図１において、操作スイッチ１３１の電源スイッチがユーザにより操作されてカメラ１２０の電源がＯＮされると、その状態変化をカメラマイコン１３２が検出する。そして、カメラマイコン１３２の制御によりカメラ１２０内の各部への電源供給が開始されるとともに、該各部の初期設定が行われる。また、交換レンズ１００への電源供給も開始され、レンズマイコン１１３の制御によって交換レンズ１００内の初期設定が行われる。この際、カメラマイコン１３２とレンズマイコン１１３との間での通信も開始される。この通信において、カメラマイコン１３２からレンズマイコン１１３へはカメラ１２０の状態や撮像に関する設定（例えば、流し撮りアシストモードの設定／非設定）状態等を示す情報が送信される。また、レンズマイコン１１３からカメラマイコン１３２に、撮像光学系１０１の焦点距離その他の光学情報が送信される。
【００２９】
流し撮りアシストモードが設定されていない通常撮像モードにおいては、レンズマイコン１１３は、角速度センサ１１１により検出された角速度に基づいて、防振制御部１１７を通じてシフトレンズ群１０４の防振駆動を制御する。一方、流し撮りアシストモードでは、レンズマイコン１１３は、前述したカメラマイコン１３２からのシフト制御情報に応じて、流し撮りアシスト制御部１１８を通じてシフトレンズ群１０４の流し撮りアシスト駆動を制御する。
【００３０】
以下、シフトレンズ群１０４の流し撮りアシスト駆動の制御について説明する。図２のフローチャートには、カメラマイコン１３２（流し撮りアシスト制御部１５２）が行う流し撮りアシスト連続撮像処理の流れを示している。シフト素子制御装置（算出手段および制御手段）としてのカメラマイコン１３２は、コンピュータプログラムとしての流し撮りアシスト連続撮像処理プログラム（シフト素子制御プログラムを含む）に従って本処理を実行する。本処理は、ユーザが撮像を希望する主被写体を含む複数の被写体が互いに異なる速度で同方向に移動するシーンをユーザがカメラ１２０をパンニングしながら流し撮りする際に、流し撮りアシスト処理を行いつつ複数回の静止画撮像（連続撮像）を行う処理である。また、フローチャートにおける「Ｓ」はステップを意味する。
【００３１】
ユーザによって操作スイッチ１３１内のレリーズスイッチの半押し操作（撮像準備指示）がされると、Ｓ２０１において、カメラマイコン１３２は、被写体抽出部１４２にライブビュー映像内で被写体領域を抽出させる。被写体抽出部１４２は、例えば、色検出やエッジ検出等による物追跡や被写体認識といった様々な方法によって被写体領域を抽出する。本実施例では、複数の被写体領域が抽出された場合について説明する。なお、半押し操作に応じて、カメラマイコン１３２は、撮像準備処理として、オートフォーカスや測光を行って被写体にピントを合わせるとともに、絞り値やシャッタ速度の設定を行う。
【００３２】
次に、Ｓ２０２において、カメラマイコン１３２は、動きベクトル検出部１４１にＳ２０１で抽出された被写体領域内の複数点の動きベクトルを検出させる。動きベクトル検出部１４１は、ライブビュー映像を構成する前後のフレーム画像間でのブロックマッチングを用いた方法等、公知の方法で動きベクトルを検出する。そして、カメラマイコン１３２は、検出された複数の動きベクトルのヒストグラムを作成する。
【００３３】
図４（ａ）には、Ｓ２０１で被写体抽出部１４２がライブビュー映像から抽出した複数（３つ）の被写体領域４０１のそれぞれに含まれる被写体Ａ、被写体Ｂおよび被写体Ｃを示している。以下の説明において、被写体Ａ，Ｂ，Ｃを含む被写体領域４０１をそれぞれ、被写体領域Ａ、被写体領域Ｂおよび被写体領域Ｃともいう。
【００３４】
また、図４（ｂ）には、動きベクトル検出部１４１がライブビュー映像内で動きベクトルを検出可能な複数の小領域である参照ブロック４０２を示している。本実施例では、撮像画面内に８×８＝６４個の参照ブロック４０２を配置している。動きベクトル検出部１４１は、これら６４個の参照ブロック４０２のうち被写体領域Ａ，Ｂ，Ｃに重なる複数の検出ブロック４０３において動きベクトルを検出する。各検出ブロック４０３から延びる矢印（→）は、その検出ブロック４０３で検出された動きベクトルの方向と大きさ（速度）を示している。なお、本実施例では、被写体Ａ，Ｂ，Ｃが同方向に移動しているシーンを撮像するため、全ての検出ブロック４０３で検出された動きベクトルの方向が同じで、大きさが異なる。
【００３５】
図５には、被写体領域４０１ごとの動きベクトルの出現頻度を示すヒストグラムを示している。ヒストグラムにおける各ビン（ｂｉｎ）は、同じまたは同じとみなせる範囲の大きさ（量）の動きベクトルの出現頻度（個数）を示している。横軸は動きベクトル量であり、縦軸は出現頻度である。
【００３６】
５０１は被写体Ａの動きベクトルのヒストグラム（３つのビンで示す：以下、同様）であり、５０２は被写体Ｂの動きベクトルのヒストグラムである。５０３は被写体Ｃの動きベクトルのヒストグラムである。被写体領域Ａ，Ｂ，Ｃで得られた動きベクトル量（それぞれ３つのビンの横軸方向での位置）は順に大、中、小と互いに差を有する。また、被写体領域Ａ，Ｂ，Ｃで得られた動きベクトルの出現頻度は順に中、大、小と互いに差を有する。
【００３７】
次に、Ｓ２０３において、カメラマイコン１３２は、ユーザによる操作スイッチ１３１内のレリーズスイッチの全押し操作（撮像記録指示）が行われたか否かを判定する。全押し操作が行われていない場合は、カメラマイコン１３２はＳ２０１およびＳ２０２の処理を繰り返す。一方、全押し操作が行われた場合は、カメラマイコン１３２は、撮像記録処理を行うためにＳ２０４に進む。
【００３８】
Ｓ２０４では、カメラマイコン１３２は、Ｓ２０１で抽出された被写体領域Ａ，Ｂ，Ｃのうち動きベクトル補正処理を行う対象となる被写体領域（以下、補正対象被写体領域という）をＳ２０２で作成したヒストグラムに基づいて決定する。具体的には、まずカメラマイコン１３２は、撮像画面内である割合またはある面積値以上の大きさを有する被写体領域やユーザが選択したフォーカシング領域であるＡＦ領域に重なる又は近い被写体領域等、様々な条件によって補正対象被写体領域を決定する。ここでは、このＳ２０４にて複数の被写体領域Ａ，Ｂ，Ｃが補正対象被写体領域として決定されたものとして説明を続ける。
【００３９】
次に、Ｓ２０５では、カメラマイコン１３２は、Ｓ２０４で決定した複数の補正対象被写体領域のうち流し撮りアシスト連続撮像処理において最も優先する第１の補正対象被写体領域を選択する。このために、カメラマイコン１３２は、複数の補正対象被写体領域のヒストグラムにおける動きベクトルの出現頻度の差を比較する。ここで比較する出現頻度は、３つのビンで示される出現頻度の合計値、最頻値および平均値のいずれでもよい。
【００４０】
具体的には、複数の補正対象被写体領域間で動きベクトルの出現頻度の差が所定の閾値を超えるときは、カメラマイコン１３２はＳ２０６に進み、出現頻度が最も多い補正対象被写体領域を第１の補正対象被写体領域として選択する。これは、被写体領域間の動きベクトルの出現頻度に有意な差がある場合は、最も動きベクトルの出現頻度が多い被写体領域がよりユーザが撮像を希望する主被写体を含む蓋然性が高いと考えられるからである。図５の例では、被写体領域Ｂが第１の補正対象被写体領域として選択される。
【００４１】
また、複数の補正対象被写体領域間で動きベクトルの出現頻度の差が所定の閾値を超えないときは、カメラマイコン１３２はＳ２０７に進み、ＡＦ領域の中心に最も近い補正対象被写体領域を第１の補正対象被写体領域として選択する。これは、ヒストグラムからは主被写体を含む被写体領域を判断することが難しいので、ＡＦ領域の中心に近い被写体が主被写体であると推定するためである。図４の例では、被写体領域Ｂが補正対象被写体領域として選択される。
【００４２】
次に、カメラマイコン１３２は、Ｓ２０８において、次のステップで行う流し撮りアシスト処理による補正対象となる動きベクトル量をＳ２０６またはＳ２０７で選択した第１の補正対象被写体領域の動きベクトルのヒストグラムから算出する。補正対象となる動きベクトル量を以下、補正対象動きベクトル量という。例えば、カメラマイコン１３２は、図５に示したヒストグラムにおける各被写体領域の３つのビンの横軸方向の位置で示される動きベクトル量のうち最も頻度が高い動きベクトル量やこれらの動きベクトル量の平均値を補正対象動きベクトル量として算出する。
【００４３】
次に、Ｓ２０９では、カメラマイコン１３２は、第１の補正対象被写体領域の補正対象動きベクトル量を用いた流し撮りアシスト処理を行う。この流し撮りアシスト処理の詳細については後述する。
【００４４】
続いて、Ｓ２１０では、カメラマイコン１３２は、全ての補正対象被写体領域に対する流し撮りアシストが完了したか否かを判定する。全ての補正対象被写体領域に対する流し撮りアシストが完了した場合は、カメラマイコン１３２はＳ２１１に進む。一方、完了していない場合は、カメラマイコン１３２は、Ｓ２０５〜Ｓ２０９を繰り返して新たに選択した第１の補正対象被写体領域に対する流し撮りアシスト処理を行う。こうして、３つの被写体領域Ａ，Ｂ，Ｃにて検出された動きベクトルのうち出現頻度がより多い動きベクトルに対して算出されたシフト駆動量に応じたシフト駆動がより先に順次行われる。
【００４５】
Ｓ２１１では、カメラマイコン１３２は、ユーザによるレリーズスイッチの全押し操作が解除されたか否かを判定する。解除されていない場合は、カメラマイコン１３２はさらにＳ２０５〜Ｓ２０９を繰り返して、もう１回ずつ順次選択される第１の補正対象被写体領域に対する流し撮りアシスト処理を行う。
【００４６】
Ｓ２１１にてレリーズスイッチの全押し操作が解除された場合は、カメラマイコン１３２は、本処理を終了する。
【００４７】
次に、Ｓ２０９でカメラマイコン１３２が行う流し撮りアシスト処理について、図３のフローチャートを用いて説明する。
【００４８】
Ｓ３０１では、カメラマイコン１３２は、像面（撮像素子１２２の撮像面）上での被写体の角速度ωを算出する。そして、算出した角速度ωとＳ２０８で算出した第１の補正対象被写体領域の補正対象動きベクトル量とを用いて、この第１の補正対象被写体領域の動きベクトル量が０になるように補正するためのシフトレンズ群１０４のシフト駆動量を算出する。
【００４９】
本ステップでの被写体の角速度の算出方法について図６を用いて説明する。図６は、被写体がｔ秒間に点Ａから点Ｂに移動し、これに伴って撮像素子１２２の撮像面上に結像した被写体像が点Ｃから点Ｄに移動したことを示している。
【００５０】
点Ｃと点Ｄとの間の距離ν［ｐｉｘｅｌ］とし、撮像光学系１０１の焦点距離をf［ｍｍ］とし、撮像素子１２２の画素ピッチをｐ［μｍ／ｐｉｘｅｌ］とする。このとき、撮像面上での被写体の角速度ω［ｒａｄ／ｓｅｃ］は以下の式（１）で表わされる。
【００５１】
【数１】
0006512907.tif 000002
【００５２】
次に、Ｓ３０２では、カメラマイコン１３２は、Ｓ３０１で算出したシフトレンズ群１０４のシフト駆動量とシフト方向（つまりはシフト制御情報）をレンズマイコン１１３に送信する。さらに、カメラマイコン１３１は、レンズマイコン１１３にシフトレンズ群１０４のシフト駆動（つまりは流し撮りアシスト駆動）を要求する。また、カメラマイコン１３２は、シャッタドライバ１３３を通じて、シャッタ１２１を開き、その後、測光結果により算出した所定時間が経過したときに閉じるように制御する。
【００５３】
次に、Ｓ３０３では、カメラマイコン１３２は、カメラ信号処理回路１２４に撮像素子１２２からの出力を用いて静止画像を生成させ、これを記録部１７１を通じて記録媒体に記録させる。これにより、今回の第１の補正対象被写体領域に含まれる被写体（例えば被写体Ｂ）が静止し、他の被写体（例えばＡ，Ｃ）を含む背景が流れた撮像画像としての静止画像が生成される。
【００５４】
次に、Ｓ３０４で、カメラマイコン１３２は、シフトレンズ群１０４をその光軸が撮像光学系１０１の光軸に一致する位置（中心）にシフト駆動させるようにレンズマイコン１１３に対して要求を送信する。これは、次の静止画撮像での流し撮りアシスト処理においてシフトレンズ群１０４を光軸に直交する面内でのいずれの方向にも大きくシフト駆動することができるようにするためである。
【００５５】
以上説明したように、本実施例では、流し撮りアシスト処理を行う連続撮像において、抽出した複数の被写体領域にてそれぞれ動きベクトルを検出する。そして、被写体領域ごとにその被写体領域で検出された動きベクトルを用いた流し撮りアシスト処理を順次行う。これにより、被写体領域ごとに流し撮りアシスト機能の効果を受けた複数の静止画像が生成される。つまり、主被写体を含めて互いに移動速度が異なる複数の移動被写体が存在するシーンを流し取りアシスト機能を用いて撮像する場合に、主被写体に対して適正に流し撮りアシスト機能の効果を受けた静止画像を確実に取得することができる。
【実施例２】
【００５６】
以下、本発明の実施例２について説明する。本実施例におけるカメラ１２０および交換レンズ１００の構成は実施例１と同じであり、実施例１と共通する構成要素には実施例１と同符号を付して説明に代える。
【００５７】
実施例１では、流し撮りアシスト連続撮像処理において互いに異なる動きベクトルが検出された被写体領域ごとに順次流し撮りアシスト処理を行いながら撮像を繰り返すことで、主被写体に対する流し撮りアシスト機能の効果を受けた撮像画像を確実に取得できた。しかし、ユーザによるカメラ１２０のパンニングの角速度が速すぎたり遅すぎたりすることによって１枚目の撮像画像に存在した被写体が２枚目以降に存在しなくなる場合がある。この場合、存在しなくなった被写体がユーザが撮像を希望する主被写体であった場合にその主被写体を含んだ撮像画像を取得できない可能性がある。
【００５８】
図８には、被写体Ａ，Ｂ，Ｃに対する流し撮りアシスト連続撮像処理によって撮像された１枚目と２枚目の撮像画像（静止画像）の例を示す。図８（ａ）中の太枠８０１は１枚目の撮像画像の外縁を示し、点線８０２は流し撮りアシスト処理の対象となっている被写体領域（第１の補正対象被写体領域）を示す。この被写体領域８０２には被写体Ｂが含まれており、以下の説明ではこの被写体領域８０２を被写体領域Ｂといい、他の被写体Ａ，Ｃを含む被写体領域も同様とする。
【００５９】
図８（ａ）では、被写体領域Ｂで検出される動きベクトルが０になるようにシフトレンズ群１０４をシフト駆動して撮像が行われることで１枚目の撮像画像が取得された様子を示している。しかし、図８（ａ）中の２枚目の撮像画像に示すようにパンニングの角速度が速いと、１枚目に存在した被写体領域Ｃが２枚目の撮像直前の撮像画面内には存在せず、被写体Ｃを含んだ２枚目の撮像画像を取得できない。
【００６０】
また、図８（ｂ）では、被写体領域Ｂで検出される動きベクトルが０になるようにシフトレンズ群１０４をシフト駆動して撮像が行われることで１枚目の撮像画像が取得された様子を示している。しかし、図８（ｂ）中の２枚目の撮像画像に示すようにパンニングの角速度が遅いと、１枚目に存在した被写体領域Ａが２枚目の撮像直前の撮像画面内には存在せず、被写体Ａを含んだ２枚目の撮像画像を取得できない。
【００６１】
このため、本発明の実施例２であるカメラは、撮像画面内での複数の被写体領域の位置とそれらの移動速度に応じて流し撮りアシスト処理の対象とする被写体領域を選択する。そして、全ての被写体領域に対して順次行われる流し撮りアシスト処理を伴う撮像（１回の連続撮像）中にいずれの被写体領域も撮像画面から外れないことを確認した場合には、動きベクトルのヒストグラムをに基づいて処理対象とする被写体領域を選択する。
【００６２】
図７のフローチャートには、カメラマイコン１３２が行う流し撮りアシスト連続撮像処理の流れを示している。カメラマイコン１３２は、コンピュータプログラムとしての流し撮りアシスト連続撮像処理プログラム（シフト素子制御プログラムを含む）に従って本処理を実行する。本処理も、実施例１と同様に、主被写体を含む複数の被写体が互いに異なる速度で同方向に移動するシーンを流し撮りする際に、流し撮りアシスト処理を行いつつ複数回の静止画撮像（連続撮像）を行う処理である。
【００６３】
ユーザによって操作スイッチ１３１内のレリーズスイッチの半押し操作（撮像準備指示）がされると、カメラマイコン１３２は、Ｓ７０１〜Ｓ７０４の処理を行う。Ｓ７０１〜Ｓ７０４の処理は、実施例１にて図２に示したＳ２０１〜Ｓ２０４の処理と同じである。
【００６４】
次に、Ｓ７０５では、カメラマイコン１３２は、Ｓ７０４で決定した複数の補正対象被写体領域のいずれかが１回の連続撮像中、つまりは被写体Ａ，Ｂ，Ｃに対する１回ずつの撮像の完了前に撮像画面の右端から外れるか否かを判定する。このため、カメラマイコン１３２は、被写体領域Ａ，Ｂ，Ｃの撮像画面内での位置を検出するとともに、それらの被写体領域Ａ，Ｂ，Ｃで検出された動きベクトル量が該被写体領域の移動速度を算出する。
【００６５】
図９（ａ）には、パンニング角速度が各被写体の移動速度よりも速い場合の時間経過と被写体（被写体領域）Ａ，Ｂ，Ｃの撮像画面に対する位置関係とを表している。撮像画面の右端（画面右端）の位置をＰｒ［ｐｉｘｅｌ］とし、撮像画面の左端（画面左端）の位置をＰｌ［ｐｉｘｅｌ］とすると、複数の被写体Ａ，Ｂ，Ｃは時間の経過とともに移動速度Ｖ［ｐｉｘｅｌ／ｓｅｃ］で画面右端に近づいていく。
【００６６】
１回の連続撮像における最後の撮像の開始時間をＴ［ｓｅｃ］とし、画面右端に最も近い被写体Ｃの初期位置をＰ０［ｐｉｘｅｌ］とする。このとき、以下の式（２）で表される条件を満足するときに、
【００６７】
【数２】
0006512907.tif 000003
【００６８】
最後の撮像が完了する前に被写体Ｃが画面右端から外れる。したがって、カメラマイコン１３２は、この式（２）の条件を満足するか否かを判定することで、複数の補正対象被写体領域のいずれかが１回の連続撮像中に画面右端から外れるか否かを判定する。いずれかの被写体（特定の被写体領域）が画面右端から外れると判定した場合はＳ７０６に進み、いずれの被写体も画面右端から外れないと判定した場合はＳ７０７に進む。
【００６９】
Ｓ７０６では、カメラマイコン１３２は、ユーザ希望の主被写体である可能性のある画面右端に最も近い被写体Ｃを含む被写体領域Ｃを流し撮りアシスト連続撮像処理において最も優先する第１の補正対象被写体領域として選択する。
【００７０】
一方、Ｓ７０７では、カメラマイコン１３２は、Ｓ７０４で決定した複数の補正対象被写体領域のいずれかが１回の連続撮像中に画面右端から外れるか否かを判定する。
【００７１】
図９（ｂ）には、パンニング角速度が各被写体の移動速度よりも遅い場合の時間経過と被写体（エリア）Ａ，Ｂ，Ｃの撮像画面に対する位置関係とを表している。複数の被写体Ａ，Ｂ，Ｃは時間の経過とともに移動速度Ｖ［ｐｉｘｅｌ／ｓｅｃ］で画面左端Ｐｌ［ｐｉｘｅｌ］に近づいていく。
【００７２】
１回の連続撮像における最後の撮像の開始時間をＴ［ｓｅｃ］とし、画面左端に最も近い被写体Ａの初期位置をＰ０［ｐｉｘｅｌ］とする。このとき、以下の式（３）で表される条件を満足するときに、
【００７３】
【数３】
0006512907.tif 000004
【００７４】
最後の撮像が完了する前に被写体Ａが画面左端から外れる。したがって、カメラマイコン１３２は、この式（３）の条件を満足するか否かを判定することで、複数の補正対象被写体領域のいずれかが１回の連続撮像中に画面左端から外れるか否かを判定する。いずれかの被写体（特定の被写体領域）が画面左端から外れると判定した場合はＳ７０８に進み、いずれの被写体も画面左端から外れないと判定した場合はＳ７０９に進む。
【００７５】
Ｓ７０８では、カメラマイコン１３２は、ユーザ希望の主被写体である可能性のある画面左端に最も近い被写体Ａを含む被写体領域Ａを流し撮りアシスト連続撮像処理において最も優先する第１の補正対象被写体領域として選択する。
【００７６】
また、Ｓ７０９では、カメラマイコン１３２は、図２のＳ２０６と同様に、Ｓ７０２で作成した被写体領域Ａ，Ｂ，Ｃで検出された動きベクトルのヒストグラムから出現頻度が最も多い補正対象被写体領域を第１の補正対象被写体領域として選択する。
【００７７】
Ｓ７０６，Ｓ７０８およびＳ７０９で第１の補正対象被写体領域を選択したカメラマイコン１３２は、Ｓ７１０に進む。Ｓ７１０では、カメラマイコン１３２は、図２のＳ２０７と同様に、次のステップで行う流し撮りアシスト処理による補正対象となる動きベクトル量（補正対象動きベクトル）を、選択した第１の補正対象被写体領域の動きベクトルのヒストグラムから算出する。
【００７８】
そして、Ｓ７１１では、カメラマイコン１３２は、図２のＳ２０９と同様に、第１の補正対象被写体領域の補正対象動きベクトル量を用いた流し撮りアシスト処理を行う。
【００７９】
続いて、Ｓ７１２では、カメラマイコン１３２は、全ての補正対象被写体領域に対する流し撮りアシストが完了したか否かを判定する。全ての補正対象被写体領域に対する流し撮りアシストが完了した場合は、カメラマイコン１３２はＳ７１３に進む。一方、完了していない場合は、カメラマイコン１３２は、Ｓ７０５〜Ｓ７１１を繰り返して新たに選択した第１の補正対象被写体領域に対する流し撮りアシスト処理を行う。
【００８０】
Ｓ７１３では、カメラマイコン１３２は、ユーザによるレリーズスイッチの全押し操作が解除されたか否かを判定する。解除されていない場合は、カメラマイコン１３２はさらにＳ７０５〜Ｓ７１１を繰り返して、もう１回ずつ順次選択される第１の補正対象被写体領域に対する流し撮りアシスト処理を行う。
【００８１】
Ｓ７１２にてレリーズスイッチの全押し操作が解除された場合は、カメラマイコン１３２は、本処理を終了する。
【００８２】
以上説明したように、本実施例では、流し撮りアシスト処理を行う連続撮像において、抽出した複数の被写体領域の撮像画面内での位置と移動速度も検出する。そして、１回の連続撮像（複数回の静止画撮像）の完了前に撮影画面の端に近い被写体領域が撮像画面から外れると判定した場合は、その端近傍の被写体領域に対して優先して（先に）流し撮りアシスト処理を行う。つまり、被写体領域の撮像画面内での位置と移動速度（つまりは動きベクトル量）とに応じて流し撮りアシスト処理の対象とする被写体領域の順序を設定する。これにより、パンニング角速度によって主被写体の可能性のある被写体が存在しない撮像画像が取得されてしまうことを防止でき、主被写体に対して適正に流し撮りアシスト機能の効果を受けた静止画像を確実に取得することができる。
【００８３】
なお、このような被写体領域の撮像画面内での位置と動きベクトル量とに応じた流し撮りアシスト処理の対象とする被写体領域の順序の設定は、上述したように端近傍の被写体領域が撮像画面から外れることを防止すること以外の目的に用いることも可能である。
【００８４】
上記実施例１，２では角速度センサ１１１から得られる角速度の情報を用いることなく流し撮りアシスト処理を行う場合について説明した。しかし、この角速度の変化（つまりはユーザによるパンニングの速度の変化）と補正対象動きベクトル量とを用いてシフトレンズ群１０４のシフト駆動量を算出してもよい。
【００８５】
また、上記各実施例では、シフトレンズ群１０４を光軸に対してシフト駆動することにより流し撮りアシスト機能を実現したが、撮像素子１２２をシフト素子として光軸に対してシフト駆動することにより流し取りアシスト機能を実現してもよい。
【００８６】
さらに、上記各実施例では、カメラ１２０に設けられたカメラマイコン１３２が被写体抽出部１４２および動きベクトル検出部１４１による抽出／検出結果を用いて交換レンズ１００に設けられたシフトレンズ群１０４のシフト駆動を制御する場合について説明した。しかし、交換レンズ１００に設けられたレンズマイコン１１３がシフト素子制御装置として、カメラ１２０から上記抽出／検出結果を受け取ってシフトレンズ群１０４のシフト駆動を制御するように構成してもよい。
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００８７】
以上説明した各実施例は代表的な例にすぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。
【符号の説明】
【００８８】
１０４  シフトレンズ群
１１４  シフトドライバ
１１８  流し撮り制御部
１２０  カメラ（撮像装置）
１２２  撮像素子
１３２  カメラ制御用マイクロコンピュータ
１４１  動きベクトル検出部
１４２  被写体抽出部
１５３  被写体角速度算出部
【図１】
0006512907.tif 000005
【図２】
0006512907.tif 000006
【図３】
0006512907.tif 000007
【図４】
0006512907.tif 000008
【図５】
0006512907.tif 000009
【図６】
0006512907.tif 000010
【図７】
0006512907.tif 000011
【図８】
0006512907.tif 000012
【図９】
0006512907.tif 000013