(57)【特許請求の範囲】
【請求項１】
撮像素子で検出された静止画撮像に用いられる第１の撮像信号の読み出しと、前記第１の撮像信号の読み出し周期よりも短い読み出し周期で読み出される、前記撮像素子と同一の撮像素子で検出された第２の撮像信号の読み出しとを同時に行う画像処理装置であって、
前記第１の撮像信号より生成される静止画の撮像期間内において、前記第２の撮像信号により生成された動きベクトルを用いてカメラ振れに起因する像振れを補正する光学素子を制御する制御手段と、を有することを特徴とする画像処理装置。
【請求項２】
前記撮像素子は、被写体像の受光側に積層された画素部を形成する第１のチップと、前記第１の撮像信号と前記第２の撮像信号を同時に読み出す画素駆動回路が形成された第２のチップと、を有することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記制御手段は、前記動きベクトルの信頼度が所定値より低い場合は、前記光学素子の駆動の制御量を減少させることを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記制御手段は、前記光学素子の位置が所定範囲を超えている場合は、前記光学素子の駆動の制御量を減少させることを特徴とする請求項１または２に記載の画像処理装置。
【請求項５】
前記撮像素子は、設定されたシャッター速度に応じて前記第１の撮像信号を取得する第１のフレームレートおよび前記第２の撮像信号を取得する第２のフレームレートを変更することを特徴とする請求項１から４のいずれか一項に記載の画像処理装置。
【請求項６】
前記撮像素子は、前記動きベクトルに応じて前記第１の撮像信号を取得する第１のフレームレートおよび前記第２の撮像信号を取得する第２のフレームレートを変更することを特徴とする請求項１から５のいずれか一項に記載の画像処理装置。
【請求項７】
前記制御手段は、撮像光学系の焦点距離に応じて前記光学素子の駆動の制御量を減少させることを特徴とする請求項１から６のいずれか一項に記載の画像処理装置。
【請求項８】
撮像素子で検出された静止画撮像に用いられる第１の撮像信号の読み出しと、前記第１の撮像信号の読み出し周期よりも短い読み出し周期で読み出される、前記撮像素子と同一の撮像素子で検出された第２の撮像信号の読み出しとを同時に行える撮像素子と、
請求項１から７のいずれか一項に記載の画像処理装置と、を有することを特徴とする撮像装置。
【請求項９】
撮像素子で検出された静止画撮像に用いられる第１の撮像信号の読み出しと、前記第１の撮像信号の読み出し周期よりも短い読み出し周期で読み出される、前記撮像素子と同一の撮像素子で検出された第２の撮像信号の読み出しとを同時に行える撮像素子を有する撮像装置のコンピュータに画像処理を行わせるコンピュータプログラムであって、
前記画像処理は、
前記第１の撮像信号より生成される静止画の撮像期間内において、前記第２の撮像信号より生成された動きベクトルを用いてカメラ振れに起因する像振れを補正する光学素子を制御することを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、静止画撮像信号と動画撮像信号の同時読み出しを行える撮像素子を用いて流し撮りアシストを行う画像処理装置に関する。
【背景技術】
【０００２】
移動する主被写体を追って撮像装置をパンニングさせながら撮像を行う流し撮りは、主被写体が静止して背景が流れている画像を得る撮像手法である。このような流し撮りでは主被写体の移動に対して正確に撮像装置のパンニングを行わないと、主被写体がぶれた画像が得られる。このため、流し撮り時に撮像装置の補正レンズを光軸に直交する方向（主被写体の移動方向またはその反対方向）に駆動することで、主被写体のぶれを抑制しつつ主被写体の画面中央での撮像を可能とする流し撮りアシスト機能を有する撮像装置が提案されている。
【０００３】
特許文献１にて開示された撮像装置は、静止画撮像前に取得される動画の複数のフレーム画像から検出した主被写体の像面上での移動速度と角速度センサにより検出した撮像装置のパンニング速度と差から主被写体の移動速度を算出する。そして、静止画撮像時に角速度センサにより検出されたパンニング速度と先に算出された主被写体の移動速度との差分を補正レンズにより補正することで、主被写体が静止画の中央に位置するように撮像する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１３９９５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１にて開示された撮像装置では、静止画撮像前に算出した被写体の移動速度に基づいて静止画撮像時に補正レンズを駆動する。この場合、静止画撮像を１回のみ行う場合には良好な流し撮りアシスト効果を期待できる。しかしながら、流し撮りにおいて複数回の静止画撮像を連続して行う場合には、最初の静止画撮像前に算出された主被写体の移動速度に基づいて補正レンズを駆動するために、全ての静止画で良好な流し撮りアシスト効果が得られない場合がある。つまり、流し撮り連続撮像中に被写体の移動速度が変化すると、主被写体がぶれた静止画が得られる。
【０００６】
本発明は、流し撮り連続撮像中に被写体の移動速度が変化した場合でも、全ての静止画において良好な流し撮りアシスト効果が得られるようにした画像処理装置およびこれを備えた撮像装置等を提供する。
【課題を解決するための手段】
【０００７】
本発明の一側面としての画像処理装置は、撮像素子で検出された静止画撮像に用いられる第１の撮像信号の読み出しと、前記第１の撮像信号の読み出し周期よりも短い読み出し周期で読み出される、前記撮像素子と同一の撮像素子で検出された第２の撮像信号の読み出しとを同時に行う。該画像処理装置は、第１の撮像信号より生成される静止画の撮像期間内において、第２の撮像信号により生成された動きベクトルを用いてカメラ振れに起因する像振れを補正する光学素子制御するシフト制御手段とを有することを特徴とする。
【０００８】
なお、撮像素子で検出された静止画撮像に用いられる第１の撮像信号の読み出しと、前記第１の撮像信号の読み出し周期よりも短い読み出し周期で読み出される、前記撮像素子と同一の撮像素子で検出された第２の撮像信号の読み出しとを同時に行える撮像素子と上記画像処理装置とを有する撮像装置も、本発明の他の一側面を構成する。
【０００９】
また、本発明の他の一側面としての撮像制御プログラムは、撮像素子で検出された静止画撮像に用いられる第１の撮像信号の読み出しと、前記第１の撮像信号の読み出し周期よりも短い読み出し周期で読み出される、前記撮像素子と同一の撮像素子で検出された第２の撮像信号の読み出しとを同時に行える撮像素子を有する撮像装置のコンピュータに撮像制御処理を行わせるコンピュータプログラムである。該撮像制御処理は、第１の撮像信号より生成される静止画の撮像期間内において、第２の撮像信号により生成された動きベクトルを用いてカメラ振れに起因する像振れを補正する光学素子を制御することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、流し撮り連続撮像中に被写体の移動速度が変化した場合でも、該流し撮り連続撮像により取得される全ての静止画において良好な流し撮りアシスト効果が得られる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施例１である撮像装置の構成を示すブロック図。
【図２】実施例１の撮像装置に用いられる撮像素子の構成を示す図。
【図３】図２に示す第１のチップにおいて列信号線における画素選択を説明する図。
【図４】撮像画面内の被写体を示す図および動きベクトルの分布を示す図。
【図５】図４に示した動きベクトルのヒストグラムを示す図。
【図６】流し撮りにおける静止画撮像前後の被写体の移動角速度を説明する図。
【図７】流し撮りアシスト機能を説明する図である。
【図８】被写体角速度の補正量に適用するゲインＫを説明する図。
【図９】被写体角速度の演算処理を示すフローチャート。
【発明を実施するための形態】
【００１２】
以下、本発明の実施例について図面を参照しながら説明する。
【実施例１】
【００１３】
図１には、本発明の実施例１である撮像装置（以下、カメラという）の構成を示す。本実施例のカメラは、ユーザの手振れ等によりカメラに加わる振れ（以下、カメラ振れという）による像振れを補正する手振れ補正効果と、ユーザが行う流し撮りをアシストする流し撮りアシスト効果を得るために以下の構成を有する。
【００１４】
振れ検出部（振れ検出手段）１０２は、振動ジャイロ等の角速度センサにより構成され、ユーザの手振れ等によりカメラに加わった振れ（以下、カメラ振れという）の角速度を検出し、該角速度を示す角速度信号（振れ信号）をＡ／Ｄ変換器１０３に出力する。Ａ／Ｄ変換器１０３は、アナログ信号としての角速度信号をデジタル信号に変換し、角速度データとしてＣＰＵ１０１内のＤＣ成分除去フィルタ１０４に供給する。ＤＣ成分除去フィルタ１０４は、角速度データのうち所定周波数より低い周波数成分を遮断して所定周波数より高い周波数成分を通過させるハイパスフィルタである。なお、ＤＣ成分除去フィルタ１０４として、Ａ／Ｄ変換器１０３からの角速度データのうち所定周波数より高い周波数成分を遮断するローパスフィルタを通過した低周波成分を該角速度データから減算する構成を用いてもよい。
【００１５】
撮像光学系１１４は、変倍（ズーム）レンズやフォーカスレンズを含み、後述する補正レンズ１１５とともに被写体像を撮像素子１２５上に結像させる。撮像素子１２５は、ＣＭＯＳセンサ等の光電変換素子であり、マトリックス状に配列された複数の画素を有して画素ごとに被写体像に応じた電圧信号を出力する第１の素子部と、該電圧信号をデジタル信号に変換して撮像信号を出力する第２の素子部とを備えている。撮像素子１２５は、所定のフレームレートで撮像信号を出力する。
【００１６】
シフト素子としての補正レンズ１１５は、光軸に直交する方向に移動（シフト）することで、撮像素子１２５上での被写体像の変位を抑制（補正）する。
【００１７】
ズーム位置検出部１２１は、エンコーダ等により構成され、撮像光学系１１４に含まれる変倍レンズの位置（ズーム位置）を検出し、ズーム位置信号をＣＰＵ１０１内の焦点距離演算部１０５と被写体角速度演算部１１９に出力する。焦点距離演算部１０５は、ズーム位置に基づいて撮像光学系１１４の焦点距離を算出し、補正レンズ１１５をシフト駆動するのに最適な値となるようにＤＣ成分除去フィルタ１０４の出力を補正する。
【００１８】
ＣＰＵ１０１は、Ａ／Ｄ変換器１０３、ＤＣ成分除去フィルタ１０４、焦点距離演算部１０５、積分器１０６、光学補正データ出力制御部１０７、減算器１０８、加算器１０９、被写体角速度演算部１１９および被写体角速度制御部１２０を有する。また、ＣＰＵ１０１は、および被写体追尾制御部１２３、ゲインＫ１２４、制御フィルタ演算部１１０、パルス幅変調部１１１およびＡ／Ｄ変換器１１７を有する。ＣＰＵ１０１は、振れ信号取得手段、動きベクトル取得手段およびシフト制御手段として機能する。
【００１９】
積分器１０６は、焦点距離演算部１０５からの出力を積分して補正レンズ１１５のシフト駆動量を算出する。光学補正データ出力制御部１０７は、補正レンズ１１５が焦点距離演算部１０５によって決定される可動範囲内で駆動されるように、積分器１０６の出力を制限する。
【００２０】
シフト位置検出部１１６は、補正レンズ１１５のシフト位置を検出して、シフト位置信号をＡ／Ｄ変換器１１７に出力する。シフト位置検出部１１６は、例えば、補正レンズ１１５とともにシフトする磁石とこれに対向するように配置されたホールセンサとにより構成される。Ａ／Ｄ変換器１１７は、シフト位置信号をＡ／Ｄ変換してデジタル信号をシフト位置データとして減算器１０８に出力する。減算器１０８は、光学補正データ出力制御部１０７の出力からシフト位置データを減算し、その結果である偏差データを加算器１０９に供給する。
【００２１】
加算器１０９は、減算器１０８からの偏差データ（カメラ振れを補正するための制御量）に、被写体追尾制御部１２３の出力にゲインＫ１２４を乗算した被写体角速度制御量を加算した制御量データを制御フィルタ演算部１１０に供給する。制御フィルタ演算部１１０は、入力された制御量データを所定のゲインで増幅する増幅器と位相補償フィルタとで構成されている。制御フィルタ演算部１１０において、増幅器による増幅と位相補償フィルタによる信号処理とが行われた制御量データは、パルス幅変調部１１１に出力される。
【００２２】
パルス幅変調部１１１は、制御フィルタ演算部１１０から供給された制御量データをＰＷＭ波形に変調して、モータ駆動部１１２に供給する。モータ１１３は、ボイスコイルモータ等により構成され、モータ駆動部１１２によって駆動される。これにより、補正レンズ１１５がシフト駆動される。
【００２３】
補正レンズ１１５のシフト駆動は、シフト位置検出部１１６により検出されたシフト位置（Ａ／Ｄ変換器１１７の出力）と光学補正データ出力制御部１０７の出力との差分である減算器１０８からの出力に応じてフィードバック制御される。
【００２４】
本実施例において、撮像素子１２５は、静止画撮像用の撮像信号（以下、静止画撮像信号という）の読み出しと動画撮像用の撮像信号（以下、動画撮像信号という）の読み出しとを同時に行えるように構成されている。
【００２５】
図２（Ａ）には、撮像素子１２５の全体構成（外観）を示している。図２（Ｂ）は撮像素子１２５の回路構成を示している。
【００２６】
図２（Ａ）において、撮像素子１２５は、画素部を形成する第１のチップ（第１の素子部）２０と、第２のチップ（第２の素子部）２１とを有する。第１のチップ２１は、第２のチップ２１に対して、光入射側（被写体像の受光側）に積層されている。第１のチップ２０は、マトリックス状に配列された複数の画素２０１を有する。第２のチップ２１は、後述する列走査回路２１３ａ，２１３ｂおよび行走査回路２１２等の画素駆動回路が形成された周辺回路部を有する。
【００２７】
このように第１のチップ２０上に画素２０１を形成し、第２のチップ２１に周辺回路部を設けることで、周辺回路部と画素部の製造プロセスを分けることができる。これにより、周辺回路部における配線の線細化、高密度化による高速化および小型化等を図ることができる。
【００２８】
図２（Ｂ）に示すように、第１のチップ２０においてマトリクス状に配列された画素２０１は、水平方向（行方向）においては転送信号線２０３、リセット信号線２０４および行選択信号線２０５に接続されている。また、垂直方向（列方向）においては列信号線２０２ａ，２０２ｂに接続されている。なお、列信号線２０２ａ，２０２ｂのそれぞれは、読み出し行ごとに接続先が異なる。
【００２９】
図示のように、画素２０１のそれぞれは、光電変換素子であるフォトダイオードＰＤと、転送トランジスタＭ１と、リセットトランジスタＭ２と、増幅トランジスタＭ３と、選択トランジスタＭ４と、フローティングディフュージョンＦＤとを有している。なお、図示の例では、トランジスタのそれぞれは、ｎチャンネルＭＯＳＦＥＴ（MOS Field-Effect Transistor）である。
【００３０】
転送トランジスタＭ１、リセットトランジスタＭ２および選択トランジスタＭ４のゲートにはそれぞれ、転送信号線２０３、リセット信号線２０４および行選択信号線２０５が接続されている。これら信号線２０３〜２０５は水平方向に延在しており、これにより同一行の画素が同時に駆動される。これによりライン順次動作型のローリングシャッタまたは全行同時動作型のグローバルシャッタの動作を制御することができる。
【００３１】
さらに、選択トランジスタＭ４のソースには列信号線２０２ａまたは２０２ｂが行単位で接続されている。
【００３２】
フォトダイオードＰＤは、光電変換によって生成された電荷を蓄積する。そして、フォトダイオードＰＤのＰ側が接地され、Ｎ側が転送トランジスタＭ１のソースに接続されている。転送トランジスタＭ１がオンすると、フォトダイオードＰＤの電荷がフローティングディフュージョンＦＤに転送され、フローティングディフュージョンＦＤには寄生容量が存在するので、フローティングディフュージョンＦＤに転送された電荷が蓄積される。
【００３３】
増幅トランジスタＭ３のドレインには電源電圧Ｖｄｄが印加され、そのゲートにはフローティングディフュージョンＦＤに接続されている。増幅トランジスタＭ３は、フローティングディフュージョンＦＤの電荷（つまりは電圧）を増幅して電圧信号に変換する。選択トランジスタＭ４は、信号を読み出す画素を行単位で選択するためのものであり、そのドレインは増幅トランジスタＭ３のソースに接続されている。また、選択トランジスタＭ４のソースは列信号線２０２に接続されている。
【００３４】
選択トランジスタＭ４がオンすると、フローティングディフュージョンＦＤの電圧に対応する電圧信号が列信号線２０２に出力される。リセットトランジスタＭ２のドレインには電源電圧Ｖｄｄが印加され、そのソースはフローティングディフュージョンＦＤに接続されている。リセットトランジスタＭ２のオンによって、フローティングディフュージョンＦＤの電圧は電源電圧Ｖｄｄにリセットされる。
【００３５】
第２のチップ２１には、カラムＡＤＣブロック２１１が備えられており、カラムＡＤＣ２１１は列信号線２０２ａまたは２０２ｂに接続されている。さらに、第２のチップ２１には、行走査回路２１２、列走査回路２１３ａおよび２１３ｂ、切り替えスイッチ２１６、フレームメモリ２１７および動きベクトル検出部１１８が備えられている。
【００３６】
タイミング制御回路２１４は、行走査回路２１２、列走査回路２１３ａ，２１３ｂおよびカラムＡＤＣブロック２１１の動作タイミングを制御する。行走査回路２１２は各行の走査を行い、列走査回路２１３ａ，２１３ｂはそれぞれ各列の走査を行う。
【００３７】
水平信号線２１５ａ，２１５ｂはそれぞれ、列走査回路２１３ａ，２１３ｂで制御されるタイミングに応じてカラムＡＤＣブロック２１１の出力信号（撮像信号）を転送する。
【００３８】
切替えスイッチ２１６は、水平信号線２１５ｂに出力される撮像信号を動きベクトル検出部１１８および信号処理部１２６のいずれか一方に選択的に出力するためのスイッチである。なお、水平信号線２１５ａに転送された撮像信号は信号処理部１２６に出力される。
【００３９】
図３を用いて、第１のチップ２０における列信号線２０２ａまたは２０２ｂによる画素選択を説明する。図３には、６行×８列の画素部が示されており、ここでは各画素はベイヤ配列されている。
【００４０】
撮像素子１２５では、静止画生成に用いられる静止画撮像信号の読み出し（第１の信号読み出し）と動きベクトル検出のために用いられる動画撮像信号の読み出し（第２の信号読み出し）とを同時に行うことができるように、読み出し行を分けている。つまりは、切替えスイッチ２１６を切替え制御して、水平信号線２１５ｂを信号処理部１２６とフレームメモリ２１７とに選択的に接続する。これにより、静止画撮像信号は列信号線２０２ａに出力され、動画撮像信号は列信号線２０２ｂに出力される。
【００４１】
図３において、行番号１および２は静止画撮像信号を出力する画素行（第１の画素群）を示し、行番号３〜８は動きベクトルの検出に用いられる動画撮像信号を出力する画素行（第２の画素群）を示す。図示の例では、読み出し走査が行単位で順次行われて、８行単位で繰り返し読み出し走査が行われる。以下の説明において、撮像素子１２５において静止画撮像信号を出力する動作モードを第１の撮像モードといい、動画撮像信号を出力する動作モードを第２の撮像モードという。
【００４２】
動きベクトル検出のための第２の撮像モードでは、フレームレートを重視するために、垂直方向での同色４画素中の３画素を間引いて残りの１画素のみを出力（読み出し）する。一方、静止画の画質を重視する第１の撮像モードにおいては、垂直方向での同色４画素中の１画素のみを間引いて残りの３画素を加算して出力（読み出し）する。言い換えれば、第１の撮像モードでは、第１の画素群からの出力を第１のフレームレートに対応する第１の読み出し周期で読み出す。一方、第２の撮像モードでは、第２の画素群からの出力を第１のフレームレートより速い第２のフレームレートに対応する、第１の読み出し周期より短い第２の読み出し周期で読み出す。
【００４３】
このように選択行ごとに撮像信号を使い分けることによって、異なる電荷蓄積時間でデータサイズの異なるフレームレートの撮像信号を取得することが可能となる。
【００４４】
列信号線２０２ａ，２０２ｂに出力された電圧信号（アナログ信号）は、図２（Ｂ）に示したカラムＡＤＣブロック２１１においてアナログ信号からデジタル信号としての撮像信号に変換される。カラムＡＤＣブロック２１１からの撮像信号は、列走査回路２１３ａまたは２１３ｂによってカラムＡＤＣブロック２１１から水平信号線２１５ａに読み出される。水平信号２１５ａに読み出された撮像信号は、信号処理部１２６に出力される。
【００４５】
一方、水平信号線２１５ｂに読み出された撮像信号は、切替えスイッチ２１６に出力され、信号処理部１２６またはフレームメモリ２１７に出力される。なお、切替えスイッチ２１６による切り替えはフレーム単位で行われる。
【００４６】
フレームメモリ２１７は、水平信号線２１５ｂから出力された撮像信号を一時的に記憶する。動きベクトル検出部１１８は、現在の映像信号である現フレーム画像に含まれる輝度信号と、フレームメモリ２１７に記憶された１フレーム（またはフィールド前の映像信号である前フレーム画像の画素値（輝度値）に基づいて動きベクトル量を検出する。動きベクトル検出部１１８によって検出された動きベクトルのデータは、ＣＰＵ１０１内のＤＣ成分除去フィルタ１０４に出力される。
【００４７】
フレーム画像間で動きベクトルを検出する方法としては、例えばブロックマッチング法が用いられる。ブロックマッチング法では、基準画像となる現フレーム画像を複数のブロックに分割する。そして、ブロック単位で参照画像としての前フレーム画像との輝度値の差を計算し、この差の絶対値の和が最小となる前フレーム画像内のブロックを探索する。そして、これら互いに対応するブロック間の相対的なずれの大きさと方向をそのブロックの動きベクトルとして検出する。
【００４８】
図４（Ａ）には、現フレーム画像を動きベクトル検出のための複数のブロック４００に分割した状態を示している。図４（Ｂ）は、前フレーム画像とのブロックごとの輝度値の差から得られた動きベクトルを示している。図４（Ａ）に示すように、現フレーム画像内に移動する被写体像（移動体像）４０１が存在する場合、該被写体像の領域における動きベクトルは、図４（Ｂ）に示すように他のブロックの動きベクトルとは方向および大きさが異なる。
【００４９】
このとき、Ｘ方向（画像横方向）とＹ方向（画像縦方向）のヒストグラム（度数分布）は、図５（Ａ）に示すように２つのピークが存在する形となる。これら２つのピークのうちいずれがカメラ振れに応じた動きベクトルでいずれが被写体の移動に応じた動きベクトル（カメラ振れに応じた動きベクトルが重畳されている）かの判定について説明する。
【００５０】
図５（Ｂ）は、フレーム画像内に不動の被写体のみが存在する場合の動きベクトルをヒストグラムで示している。フレーム画像内に不動の被写体のみが存在する場合は、度数０を中心として動きベクトル量が分布するのに対し、移動する被写体がフレーム画像内に存在する場合は、度数０から離れたところに動きベクトル度数のピークがある。つまり、度数０をクロスするカウントが異なる。そこで、０クロスカウンタを設定し、所定値以上の度数ピークであれば、カメラ振れのみに応じた動きベクトルであると判定する。そして、この判定に基づいて、移動する被写体に応じた動きベクトルも判定することができる。
【００５１】
ここで、動きベクトルの情報から被写体の角速度を算出する方法について、図６を用いて説明する。本実施例では、静止画撮像前までの被写体の角速度を算出しておき、静止画撮像時に、静止画撮像前の被写体の角速度とカメラのパンニングの角速度との差分を求めることで、静止画撮像時の被写体の角速度と推定する。
【００５２】
つまり、図６において、時刻ｔ０から時刻ｔ１は静止画撮像前を示している。この静止画撮像前における被写体の角速度６００を、動きベクトル検出部（動きベクトル検出手段）１１８により検出された動きベクトルの大きさを角速度に変換することで求める。また、静止画撮像前におけるカメラの角速度６０１を、振れ検出部（角速度センサ）１０２から得る。これらの２つの角速度６００，６０１を加算すると、静止画撮像前の被写体の角速度を求めることができる。
【００５３】
そして、時刻ｔ＝ｔｎで開始される静止画撮像時には、カメラの角速度６０２と静止画撮像中の被写体の角速度６０３との差分６０４を、補正レンズ１１５により補正すべき角速度（以下、補正角速度という）として求める。
【００５４】
このように、前述した第１および第２の撮像モードでの撮像信号を同時読み出しできない撮像素子を用いると、静止画撮像中に被写体の角速度を得ることができない。このため、静止画撮像中は静止画撮像前に取得した被写体の角速度を用いて求めた補正角速度に基づいて補正レンズ１１５のシフト駆動を制御する。
【００５５】
しかし、流し撮りにおいて連続撮像を行って複数の静止画を取得する場合には、最初の静止画の取得よりも後の静止画の取得時に、該流し撮り連続撮像中の被写体の角速度やカメラのパンニング角速度の変化によって補正角速度に誤差が生じてしまう。
【００５６】
この点、本実施例では、第１および第２の撮像モードでの撮像信号の同時読み出しが可能な撮像素子１２５を用いる。このため、流し撮り連続撮像中において、第１の撮像モードよりも高速な第２のフレームレートで読み出しを行う第２の撮像モードでの撮像信号を用いて動きベクトルを検出し、該動きベクトルから被写体の角速度を算出することができる。したがって、流し撮り連続撮像中に被写体の角速度やカメラのパンニング角速度が変化しても補正角速度に生ずる誤差を小さく抑えることができる。
【００５７】
被写体角速度演算部１１９は、動きベクトル検出部１１８の出力である動きベクトルを被写体の角速度に変換する。ここで、動きベクトルから被写体の角速度への変換について図７を用いて説明する。
【００５８】
図７に示すように、被写体の動きの角変位をθ［ｄｅｇ］とし、被写体距離をＬとし、撮像倍率をβとし、被写体の動き量をＤとすると、（１）式が成り立つ。
【００５９】
Ｄ＝βＬθπ／１８０      ・・・（１）
したがって、被写体の動き速度をＶとし、角速度をωとすると、（２）式が成り立つ。
【００６０】
Ｖ＝βＬωπ／１８０      ・・・（２）
ここで、（２）式をωについて整理すると、（３）式が求まる。
【００６１】
ω＝１８０Ｖ／（βＬπ）  ・・・（３）
被写体角速度演算部１１９は、（３）式を用いて、第２のフレームレートに対応する第２の読み出し周期ごとに動きベクトルから被写体の角速度を算出して、被写体角速度制御部１２０に出力する。
【００６２】
被写体角速度制御部１２０は、所定の演算処理を行った結果を被写体追尾制御部１２３に供給する。被写体角速度制御部１２０は、被写体角速度演算部１１９の出力を、変更可能なゲインで増幅する増幅器および位相補償フィルタで構成されている。
【００６３】
被写体追尾制御部１２３は、ズーム位置検出部１２１、被写体検出部１２２、積分器１０６および被写体角速度制御部１２０の出力から、被写体の角速度の補正量に適用するゲインＫ１２４を調整する。
【００６４】
次に、ゲインＫ１２４の決め方について説明する。ゲインＫ１２４は、加算器１０９にフィードバックされることで補正レンズ１１５の制御量が過補正気味になる場合には減少させる。例えば、動きベクトルの検出が低コントラスト被写体のように動きベクトルを正確に検出できないといった信頼性の低い条件で行われた場合は、Ｋ１２４を１倍よりも小さくして補正レンズ１１５の制御量を減少させる。これは、主被写体の動きベクトルを誤検出した状態での被写体の角速度を補正レンズ１１５にフィードバックすると補正レンズ１１５の制御量が過補正気味になり、かえってぶれた画像が取得されるので、これを防ぐためである。
【００６５】
また、ゲインＫ１２４は補正レンズ１１５のシフト位置に応じて減少させる。図８（Ａ）は、補正レンズ１１５に対するゲインＫ１２４の特性を示している。図８（Ｂ）は、補正レンズ１１５のシフト駆動範囲を示している。本実施例では、静止画撮像前においては手振れ等のカメラ振れに起因する像振れを補正する防振制御を補正レンズ１１５に対して行うので、補正レンズ１１５を常に撮像光学系１１４の光軸中心位置からシフト駆動する。このため、静止画撮像時に被写体追尾制御部１２３の出力を加算して補正レンズ１１５をシフト駆動すると、補正レンズ１１５が駆動限界８０１に達してしまい、制御が不安定となる。これを防ぐために、積分器１０６の出力を用いて補正レンズ１１５のシフト位置を周期ごとに観測し、予め設定された閾値（所定位置）８００を超えて補正レンズ１１５がシフト駆動されている場合はゲインＫ１２４を減少させる。
【００６６】
本実施例では、静止画撮像前の動画（ライブビュー映像）においてカメラ振れによる像振れを補正するように防振制御を行う。しかし、静止画撮像前は補正レンズ１１５を撮像光学系１１４の光軸中心位置８０２に固定しておき、静止画撮像時にのみ防振制御を行ってもよい。
【００６７】
信号処理部１２６は、撮像素子１２５から出力された撮像信号に対して各種処理を行うことで静止画を生成し、画像メモリ１２７に供給する。また、信号処理部１２６は、撮像素子１２５から得られた撮像信号からＮＴＳＣフォーマット等に準拠した映像信号（動画）を生成して画像メモリ１２７に供給する。画像メモリ１２７に供給された静止画や動画は、記録媒体１２８に保存されたり表示デバイス１２９に表示されたりする。
【００６８】
次に、図９のフローチャートを用いて、カメラの起動（電源投入）後に所定の割込み周期で行われる被写体角速度の検出から流し撮りアシストのための補正レンズ１１５のシフト駆動までの撮像制御処理について説明する。コンピュータとしてのＣＰＵ１０１は、コンピュータプログラムである撮像制御プログラムに従って本処理を実行する。
【００６９】
ステップＳ９００では、ＣＰＵ１０１は、カメラにおいて流し撮り撮像モードが設定されているか否かを判定する。流し撮り撮像モードはユーザがスイッチやダイヤル等の入力部材の操作を通じて設定できるようにしてもよいし、カメラ内の振れ検出部１０２を通じたパンニング検出に応じて自動で設定されるようにしてもよい。流し撮り撮像モードが設定されていればステップＳ９０１に進み、設定されていなければ、流し撮りアシストは行わないので、本処理を終了する。この場合は、ＣＰＵ１０１は、カメラ振れに対する防振制御のみを行う。
【００７０】
ステップＳ９０１では、ＣＰＵ１０１は、被写体検出部１２２により被写体の検出が可能か否かを判定する。被写体を検出可能であればステップＳ９０２に進み、検出不可能であればステップＳ９０７に進む。ステップＳ９０７では、ＣＰＵ１０１は、ゲインＫ１２４の設定値を１よりも十分小さい値とし、過補正を防ぐ。
【００７１】
ステップＳ９０２では、ＣＰＵ１０１は、動きベクトル検出部１１８に現フレーム画像と前フレーム画像との間で動きベクトルを検出させ、被写体角速度演算部１１９に上述した（３）式を用いて被写体の移動角を算出させる。その後、ステップＳ９０３に進む。
【００７２】
ステップＳ９０３では、ＣＰＵ１０１は、被写体角速度制御部１２０に、ステップＳ９０２で算出された被写体の角速度に対して増幅器および位相補償フィルタによる処理を行わせて、補正レンズ１１５の適切な制御特性が得られるように調整を行わせる。そして、ステップＳ９０４に進む。
【００７３】
ステップＳ９０４では、ＣＰＵ１０１は、動きベクトルの検出精度、つまりは信頼度が所定値より高いか否かを判定する。信頼度が所定値より高ければステップＳ９０５に進み、信頼度が所定値より低ければステップＳ９０７に進む。前述したように、低コントラスト被写体等のように検出された動きベクトルの信頼度が低い場合は、ゲインＫ１２４を１より十分小さい値に設定し、過補正を防ぐ。
【００７４】
ステップＳ９０５では、ＣＰＵ１０１は、補正レンズ１１５の位置が予め設定した閾値８００以内（所定範囲内）であるか否かを判定する。閾値８００以内であればステップＳ９０６に進む。また、閾値８００を超えていれば、ステップＳ９０７へ進み、ゲインＫを除々に１より小さい値に設定する。これにより、補正レンズ１１５が駆動限界８０１に達することを防ぐ。
【００７５】
ステップＳ９０６では、動きベクトルの信頼性が高く、かつ補正レンズ１１５の位置も閾値８００以内であるので、ＣＰＵ１０１は、ゲインＫ１２４を１倍に設定し、ステップＳ９０８に進む。
【００７６】
ステップＳ９０８では、ＣＰＵ１０１は、振れ検出部１０２の出力から求めたカメラ振れに対する補正レンズ１１５の制御量と、動きベクトルから求めた被写体の角速度に対する補正レンズ１１５の制御量とを加算する。そして、この加算結果を補正レンズ１１５の全制御量として制御フィルタ演算部１１０へ出力させる。これにより、防振制御と流し撮りアシスト制御とが行われる。
【００７７】
以上説明したように、本実施例では、第１および第２の撮像モードでの撮像信号の同時読み出しが可能な撮像素子１２５を用いている。これにより、第２の撮像モードにおいて高速な第２のフレームレートで読み出された撮像信号を用いて動きベクトルを検出し、該動きベクトルから被写体の角速度を算出することができる。したがって、流し撮り連続撮像中において第２のフレームレートに対応する第２の読み出し周期ごとに演算される被写体の角速度を用いた流し撮りアシストを行うことができる。つまり、流し撮り連続撮像中に高精度な被写体の角速度の情報を用いて補正レンズ１１５をフィードバック制御することができるので、流し撮り連続撮像により取得される複数の静止画の全てにおいて良好な流し撮りアシスト効果を得ることができる。
【００７８】
なお、撮像素子１２５は、設定されたシャッター速度に応じて第１および第２のフレームレートを変更できるようにしてもよい。
【００７９】
また、撮像素子１２５は、動きベクトルに応じて第１および第２のフレームレートを変更できるようにしてもよい。
【００８０】
さらに、 ＣＰＵ１０１は、撮像光学系の焦点距離に応じて補正レンズ１１５の駆動の制御量を減少させるようにしてもよい。
【００８１】
また上記実施例では、補正レンズ１１５を撮像光学系１１４の光軸に対してシフトさせることで流し撮りアシストや防振を行う場合について説明した。しかし、撮像素子１２５をシフト素子として光軸に対してシフト可能とすることで流し撮りアシストや防振を行うようにしてもよい。
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００８２】
以上説明した各実施例は代表的な例にすぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。
【符号の説明】
【００８３】
１０１  ＣＰＵ
１０２  振れ検出部
１２５  撮像素子
１１８  動きベクトル検出部
【図１】
0006642991.tif 000002
【図２】
0006642991.tif 000003
【図３】
0006642991.tif 000004
【図４】
0006642991.tif 000005
【図５】
0006642991.tif 000006
【図６】
0006642991.tif 000007
【図７】
0006642991.tif 000008
【図８】
0006642991.tif 000009
【図９】
0006642991.tif 000010