JP2019125933A - 像振れ補正装置、撮像装置、像振れ補正装置の制御方法およびプログラム - Google Patents
像振れ補正装置、撮像装置、像振れ補正装置の制御方法およびプログラム Download PDFInfo
- Publication number
- JP2019125933A JP2019125933A JP2018005808A JP2018005808A JP2019125933A JP 2019125933 A JP2019125933 A JP 2019125933A JP 2018005808 A JP2018005808 A JP 2018005808A JP 2018005808 A JP2018005808 A JP 2018005808A JP 2019125933 A JP2019125933 A JP 2019125933A
- Authority
- JP
- Japan
- Prior art keywords
- subject
- image
- motion vector
- detection
- detection range
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Adjustment Of Camera Lenses (AREA)
- Studio Devices (AREA)
- Image Analysis (AREA)
Abstract
【課題】小さい被写体の動きベクトルの検出を高精度に行う像振れ補正装置を提供する。【解決手段】被写体動きベクトル量算出部は、被写体の大きさが所定の大きさより小さいか否かを判定するS501。所定の大きさより小さいと判定された場合には、動きベクトルの検出範囲を縮小しS503、縮小したテンプレート枠において取得した動きベクトルの中でエラーベクトル個数を参照しS505、エラーベクトル個数が所定の閾値より多い場合、間引きなしの画像で動きベクトルの検出を行うS506。【選択図】図5
Description
本発明は、像振れ補正装置、撮像装置、像振れ補正装置の制御方法およびプログラムに関する。
移動している被写体のスピード感を表現する撮影技術として流し撮りがある。流し撮りでは、撮影者が被写体の動きに合わせてカメラをパンニングすることにより、移動している被写体は静止させて、背景は流すよう撮影する。一般的な流し撮りは、撮影したい被写体の移動速度に合わせて露光時間を通常より長めに調節することで撮影を行う。特許文献1は、流し撮り撮影時には背景の流し量を十分に確保できるような露光時間での撮影を行う技術を開示している。
流し撮り撮影においては、パンニング速度が速すぎたり遅すぎたりすることで、被写体の移動速度とパンニング速度の間に差が発生してしまうと、被写体までぶれた画像になってしまう恐れがある。そこで、ユーザの流し撮り撮影の補助を行う技術として、シフトレンズの駆動により被写体の移動速度とパンニング速度の差を吸収する技術(以下、流し撮りアシスト機能という)が提案されている。特許文献2は、被写体の速度とカメラを振る速度との差分を検出し、当該差分に相当する補正量に応じてシフトレンズを移動させて流し撮り撮影を行う技術を開示している。
流し撮りでは、静止させる被写体と流す背景部分とを区別する必要がある。画面の動きベクトルから被写体と背景を判別する方法として、ヒストグラムを用いた判別手法が提案されている。特許文献3は、特定個所から得られた動きベクトルを検出して特定個所の動きを検出する場合に、過去に入力画像の各部に設定した特徴点で検出される動きベクトルをヒストグラム化して分類した分類情報を参照する技術を開示している。
しかしながら、特許文献1〜3の技術では、小さな被写体に対しては動きベクトルを検出する参照ブロックがわずかしか割り当たらないため、被写体に対する動きベクトルの信頼度が低くなってしまう。また、小さな被写体の動きベクトルを検出するためにベクトル検出枠を増やすと、動きベクトル量の算出処理に時間が掛かってしまう。また、小さな被写体の動きベクトルを検出するためにテンプレート枠を縮小すると、被写体ベクトルではなくエラーベクトルが増加してしまう場合がある。
本発明は、小さい被写体の動きベクトルの検出を高精度に行う像振れ補正装置を提供することを目的とする。
上記課題を解決するために、本発明の像振れ補正装置は、被写体の大きさを判定する被写体判定手段と、前記被写体判定手段の判定結果に応じて、動きベクトルを検出する検出範囲を設定する検出範囲設定手段と、前記検出範囲設定手段が設定した検出範囲で複数の画像から動きベクトルの検出を行う検出手段と、を備える。前記被写体判定手段が被写体の大きさが所定の大きさより小さいと判定した場合、前記検出範囲設定手段は、前記検出範囲を縮小し、前記検出手段は、間引きなしの画像で動きベクトルの検出を行う。
本発明によれば、小さい被写体の動きベクトルの検出を高精度に行う像振れ補正装置を提供することができる。
図1は、撮像装置1の構成を示す図である。撮像装置1の一例としてレンズ交換式のデジタルカメラの説明を行うが、これに限られるものではない。撮像装置1は、交換レンズ100とカメラ本体部120を備える。交換レンズ100はカメラ本体部120に着脱可能である。また、本実施形態の撮像装置1は、流し撮りを支援する流し撮りアシスト機能を有している。流し撮りアシストの設定が行われた場合の制御モードを、「流し撮りアシストモード」という。
交換レンズ100は、撮影レンズユニット101、ズームエンコーダ105、位置センサ106、角速度センサ111、アンプ112、レンズ制御部113、ドライバ114、アンプ115およびマウント接点部116を備える。撮影レンズユニット101は、主撮像光学系102、焦点距離を変更可能なズームレンズ103および像振れ補正用のシフトレンズ104を備える撮像光学系である。シフトレンズ104は、被写体からの光の結像位置を変更することにより像振れを補正する補正レンズの役目をもつレンズ群である。シフトレンズ104を撮影レンズユニット101の光軸と垂直な方向に移動させることで、撮像装置1の振れによる像の振れを光学的に補正できる。
ズームエンコーダ105は、ズームレンズ103の位置を検出する。位置センサ106は、シフトレンズ104の位置を検出する。アンプ115は、位置センサ106の出力を増幅し、レンズ制御部113に出力する。ドライバ114は、レンズ制御部113による制御に応じて、シフトレンズ104を駆動する。角速度センサ111は、撮像装置1の振れを検出する。角速度センサ111は、撮像装置1の振れを検出する振れ検出手段であり、例えば、ジャイロセンサである。撮像装置1の振れを検出することで、流し撮りにおける撮像装置1のパンニングを検出することができる。アンプ112は、角速度センサ111の出力を増幅し、レンズ制御部113に出力する。マウント接点部116は、カメラ本体部120のマウント接点部161と接続される。
レンズ制御部113は、レンズシステム制御用のマイクロコンピュータである。レンズ制御部は、像振れ補正制御部117および流し撮り制御部118を備える。像振れ補正制御部117は、像振れ補正用の制御を行う。流し撮り制御部118は、流し撮りアシスト用の制御を行う。レンズ制御部113は、ドライバ114を介してシフトレンズ104の駆動を制御することで、像振れ補正や流し撮りアシストを行う。なお、像振れ補正では、例えば横方向と縦方向といった、直交する2軸に関して振れの検出および補正が行われるが、2軸に関して同じ構成であるため、本実施形態では1軸分についてのみ説明する。また、レンズ制御部113は、その他にもフォーカスレンズの移動による焦点調節制御や絞り制御等も行うが、図示上の簡略化のため省略する。
このように、本実施形態の撮像装置1は、光学素子(シフトレンズ104)を光軸と直交する方向に移動させて像振れ補正を行う像振れ補正装置を備える。なお、像振れ補正の方法は、補正素子としてシフトレンズ104を光軸と直交する方向に移動させる方法だけではなく、補正素子として後述する撮像素子122を光軸と直交する方向に移動させる方法であってもよい。
カメラ本体部120は、シャッタ121、撮像素子122、AFE123、カメラ信号処理回路124、TG125、カメラ制御部132、ドライバ133、モーター134、一次記憶装置135を備える。さらに、カメラ本体部120は、記録媒体171、表示部172、操作部131、マウント接点部161を備える。
シャッタ121は、非撮影時には撮像素子122を遮光し、撮影時には開いて撮像素子122へ光線を導く。シャッタ121の駆動により、露光時間を制御することができる。撮像素子122は、例えばCMOS(相補型金属酸化膜半導体)型イメージセンサ等であり、撮像光学系を通して結像される被写体からの光を受光し、光電変換により電気信号を出力する。AFE123は、アナログ信号処理回路であり、撮像素子122の出力信号を処理してカメラ信号処理回路124に出力する。TG125は、撮像素子122やAFE123の動作タイミングを設定するタイミングジェネレータである。
カメラ信号処理回路124は、動きベクトル検出部141および画像処理部142を備える。動きベクトル検出部141は、撮像素子122の出力に基づいて被写体の動きを検出する。具体的には、撮影した画像をもとにベクトル検出枠の動きベクトル量の算出を行う。画像処理部142は、現像処理を行う。画像処理部142は、現像した画像を記録媒体171に記録したり、表示部172に表示したりする。
記録媒体171は、フラッシュメモリ等のカメラ本体部に着脱可能な記録媒体であり、画像データ等を記録する。表示部172は、LCD(液晶表示装置)等の表示デバイスを有し、カメラの撮影モードに関する情報、操作画面、撮影した画像等を表示する。操作部131は、電源スイッチ、レリーズスイッチ、切り替えスイッチ等を備える。ユーザは切り替えスイッチを操作して、流し撮りアシストモードに設定可能である。
カメラ制御部132は、カメラシステム制御用のマイクロコンピュータを備え、撮像システムの各構成部を制御する。カメラ制御部132は、シャッタ制御部151、被写体角速度算出部(以下、角速度算出部という)153、被写体動きベクトル量算出部(以下、ベクトル量算出部という)154およびメイン制御部152を備える。シャッタ制御部151は、シャッタ121を制御する。角速度算出部153は、被写体の角速度を算出する。ベクトル量算出部154は、複数の画像から被写体の動きベクトル量を検出する。メイン制御部152は、シャッタ制御部151、角速度算出部153およびベクトル量算出部154を制御する。
モーター134は、シャッタ121駆動用のモーターである。ドライバ133は、シャッタ動作を行わせるためのモーター134を駆動する。シャッタ制御部151は、ドライバ133およびモーター134を介してシャッタ121を制御する。一次記憶装置135は、一時的なデータを記憶し、カメラ制御部132の作業用に使われる。一次記憶装置135は、例えばRAMのような揮発性装置である。マウント接点部161は、交換レンズ100のマウント接点部116と接続される。レンズ制御部113とカメラ制御部132は、マウント接点部116および161を介して通信を行なう。
操作部131において撮像装置1の電源がONされると、撮像装置1の状態変化をカメラ制御部132が検出する。そして、撮像装置1の電源が入れられたことを検出したカメラ制御部132の制御により、カメラ本体部120の各回路への電源供給および初期設定が行われ、交換レンズ100への電源供給が行われる。電源が供給された交換レンズ100では、レンズ制御部113の制御により、交換レンズ100内の初期設定が行われる。そして、レンズ制御部113とカメラ制御部132との間で所定のタイミングで通信が開始される。通信は必要なタイミングで適宜行われ、レンズ制御部113からカメラ制御部132への通信では、交換レンズ100の識別情報、交換レンズ100の焦点距離情報、角速度情報等が送受信される。一方、カメラ制御部132からレンズ制御部113への通信では、カメラ本体部120の状態、撮影設定等が送受信される。
ユーザは操作部131の切り替えスイッチを操作することにより、通常モードと流し撮りアシストモードを変更することができる。通常モードとは、流し撮りアシストモードの設定が行われていないモードである。通常モードが選択された場合、交換レンズ100内では角速度センサ111が、手ブレ等により撮像装置1に加わる振れを検出する。像振れ補正制御部117は角速度センサ111による検出信号を用いてシフトレンズ104の駆動制御を行う。これにより、像振れ補正動作が行われ、撮像画像の像振れが低減される。
一方、流し撮りアシストモードが選択された場合、カメラ制御部132は、カメラ本体部120の制御を流し撮りアシストモードの制御に切り替える。また、カメラ制御部132は、流し撮りアシストモードへの切り替えを示す情報を、レンズ制御部113へと送信する。レンズ制御部113は、交換レンズ100の制御を流し撮りアシストモードの制御に切り替える。流し撮りアシストモードの詳細は、後述する。
ユーザは操作部131の撮影ボタン(レリーズスイッチ)を操作することにより、撮像を行う。撮影ボタンが押下されると、撮像素子122は、撮像光学系を通して結像される被写体からの光を受光し、光電変換により電気信号を出力する。本実施形態の撮像素子122は、高画素を有している。高画素を有する撮像素子を用いて高フレームレートの動画撮影やリアルタイムビュー表示を実現するための手法として、間引き手法が知られている。間引き手法では、撮像素子の駆動方式を切り替えて、水平または垂直方向に特定周期で画素を読み飛ばすことで撮像素子の出力を低画素化し、データレートを下げることで高フレームレートでの画像信号処理を実現している。
<流し撮りアシスト処理>
まず、流し撮りアシストモードでの撮影時におけるメイン制御部152の処理について、図2を用いて説明する。図2は、流し撮りアシスト処理を示すフローチャートである。本処理は、例えば、流し撮りアシストモードが選択された状態で、撮影者が操作部131の撮影ボタンを半押し(SW1がON)したタイミングで開始される。
まず、流し撮りアシストモードでの撮影時におけるメイン制御部152の処理について、図2を用いて説明する。図2は、流し撮りアシスト処理を示すフローチャートである。本処理は、例えば、流し撮りアシストモードが選択された状態で、撮影者が操作部131の撮影ボタンを半押し(SW1がON)したタイミングで開始される。
S201で、メイン制御部152は、ベクトル量算出部154に対し、被写体動きベクトル量の算出開始要求を送信する。ベクトル量算出部154は、算出開始要求を受信すると、被写体動きベクトル量の算出を開始する。ベクトル量算出部154による被写体動きベクトル量算出処理については、図5を用いて後述する。
S202で、メイン制御部152は、撮影ボタンが全押し(SW2がON)されたかどうかを検出している。撮影ボタンが全押しされたと判断した場合は、被写体動きベクトル量の取得のためS203へと進む。一方、撮影ボタンが全押しされていないと判断した場合は、S202へと戻り、撮影ボタンが全押しされるまでS202の処理を繰り返す。
S202で、メイン制御部152は、撮影ボタンが全押し(SW2がON)されたかどうかを検出している。撮影ボタンが全押しされたと判断した場合は、被写体動きベクトル量の取得のためS203へと進む。一方、撮影ボタンが全押しされていないと判断した場合は、S202へと戻り、撮影ボタンが全押しされるまでS202の処理を繰り返す。
S203で、メイン制御部152は、ベクトル量算出部154に対し、被写体動きベクトル量の取得要求を送信する。ベクトル量算出部154は、被写体動きベクトル量の取得要求を受信すると、メイン制御部152に対し最新の被写体の動きベクトル量を動きベクトル結果として送信する。メイン制御部152は、被写体動きベクトル量の取得要求に対する応答として、動きベクトル結果である被写体の動きベクトル量を取得する。
S204で、メイン制御部152は、角速度算出部153にシフトレンズ104の駆動量の算出を要求する。角速度算出部153は、動きベクトル結果に基づいて被写体の角速度を算出し、被写体の動きベクトル量が0になるように補正するためのシフトレンズ104の駆動量(補正量)を算出する。
流し撮りアシストによる補正について、図3を用いて説明する。図3は、流し撮りアシストの動作イメージを示す図である。被写体の角速度が30deg/sec、撮像装置1のパンニング角速度が24deg/secだった場合は、その差の6deg/secを流し撮りアシスト機能で補助する必要がある。流し撮りアシストでは、取得した画像内の被写体の動きベクトルによって差分の6deg/secを検出し、角速度センサ111によって撮像装置1のパンニング速度の24deg/secを検出する。それらを加算するとこで、被写体の角速度である30deg/secを算出する。次に撮影を行う際には、検出された被写体の角速度の30deg/secからカメラのパンニング速度の24deg/secとの差分の6deg/secを用いて補正量を算出する。例えば、露光時間が0.5秒だとすると、シフトレンズ104で補正する量は6deg/sec×0.5sec=3degと求まる。
被写体の角速度の算出方法を、図4を用いて説明する。図4は、被写体の角速度の算出方法を示す図である。被写体がt秒の間に点Aから点Bへ移動し、それに応じて撮像素子122上に結像した被写体像も点Cから点Dへと移動している。ここで、点Cと点Dとの距離をv[pixel]、焦点距離をf[mm]、センサの画素ピッチをp[μm/pixel]とすると、被写体の角速度ω[rad/sec]は以下の式(1)で表わされる。
S205で、メイン制御部152は、S204で算出したシフトレンズ104の駆動量をレンズ制御部113に送信し、シフトレンズ104の駆動を要求する。また、メイン制御部152は、ドライバ133に対し、シャッタ121を開き、所定時間で閉じるように要求する。
S206で、メイン制御部152は、カメラ信号処理回路124に対し撮像素子122が露光したデータを現像し、記録媒体171に記録するように要求し、本処理を終了する。すなわち、S205およびS206でメイン制御部152は、シフトレンズ104を駆動しながら撮影を行う。
S206で、メイン制御部152は、カメラ信号処理回路124に対し撮像素子122が露光したデータを現像し、記録媒体171に記録するように要求し、本処理を終了する。すなわち、S205およびS206でメイン制御部152は、シフトレンズ104を駆動しながら撮影を行う。
(第1実施形態)
<被写体動きベクトル量算出処理>
次に、第1実施形態におけるベクトル量算出部154の被写体動きベクトル量算出処理について、図5を用いて説明する。図5は、被写体動きベクトル量算出処理を示すフローチャートである。本処理は、メイン制御部152からの算出開始要求(S201)を受信したタイミングで開始される。
<被写体動きベクトル量算出処理>
次に、第1実施形態におけるベクトル量算出部154の被写体動きベクトル量算出処理について、図5を用いて説明する。図5は、被写体動きベクトル量算出処理を示すフローチャートである。本処理は、メイン制御部152からの算出開始要求(S201)を受信したタイミングで開始される。
S501で、ベクトル量算出部154は、被写体判定処理を実行する。被写体判定処理については、図7を用いて後述する。
S502で、ベクトル量算出部154は、被写体判定処理の結果、被写体の大きさが所定の大きさより小さい(以下、小被写体)か否かを判定する。具体的には、S501の被写体判定処理の結果として取得した後述する小被写体フラグを参照する。S501において、小被写体であると判定された場合には小被写体フラグにTRUEが設定され、小被写体でないと判定された場合には小被写体フラグにFALSEが設定されている。小被写体であると判定した場合は、小被写体に対しテンプレート枠(動きベクトルの検出範囲)の変更を行うため、S503へと進む。一方、小被写体ではないと判定した場合は、本処理を終了する。
S502で、ベクトル量算出部154は、被写体判定処理の結果、被写体の大きさが所定の大きさより小さい(以下、小被写体)か否かを判定する。具体的には、S501の被写体判定処理の結果として取得した後述する小被写体フラグを参照する。S501において、小被写体であると判定された場合には小被写体フラグにTRUEが設定され、小被写体でないと判定された場合には小被写体フラグにFALSEが設定されている。小被写体であると判定した場合は、小被写体に対しテンプレート枠(動きベクトルの検出範囲)の変更を行うため、S503へと進む。一方、小被写体ではないと判定した場合は、本処理を終了する。
S503で、ベクトル量算出部154は、テンプレート枠変更処理を実行する。テンプレート枠変更処理については、図9を用いて後述する。
S504で、ベクトル量算出部154は、被写体検出に成功したか否かを判定する。具体的には、テンプレート枠変更処理の結果として取得した後述する被写体検出成功フラグを参照する。なお、被写体検出に成功した場合は、被写体検出成功フラグにTRUEが設定され、被写体検出に成功しなかった場合は、被写体検出成功フラグにFALSEが設定される。被写体検出に成功したと判定した場合は、本処理を終了する。一方、被写体検出に成功しなかったと判定した場合は、S505へ進む。
S504で、ベクトル量算出部154は、被写体検出に成功したか否かを判定する。具体的には、テンプレート枠変更処理の結果として取得した後述する被写体検出成功フラグを参照する。なお、被写体検出に成功した場合は、被写体検出成功フラグにTRUEが設定され、被写体検出に成功しなかった場合は、被写体検出成功フラグにFALSEが設定される。被写体検出に成功したと判定した場合は、本処理を終了する。一方、被写体検出に成功しなかったと判定した場合は、S505へ進む。
S505で、S503のテンプレート枠変更処理の後に取得した動きベクトルの中でエラーと判定されたエラーベクトル個数を参照し、エラーベクトル個数が閾値γより多いか否か判定する。エラーベクトルの個数が閾値γより多いと、被写体の動きベクトルの信頼度が低くなる。エラーベクトル個数が閾値γより多い場合は、間引きなしの画像をもとに被写体ベクトルを検出するため、S506に進む。一方、エラーベクトル個数が閾値γ以下の場合は、被写体の再検索を実施するためにS501に戻る。なお、閾値γは、被写体の大きさ、被写体の色情報、撮像装置1から被写体までの距離および露出状態のいずれかに応じて設定される
S506で、ベクトル量算出部154は、間引きなし画像の被写体ベクトル検出処理を実行して処理を終了する。間引きなし画像の被写体ベクトル検出処理については、図13を用いて後述する。
このように、通常のベクトル検出は間引きありの画像で行われるが、本実施形態では、被写体が所定の大きさより小さい場合にテンプレート枠を縮小する。そして、間引きありの画像に対して縮小したテンプレート枠で行ったベクトル検出の結果、検出した動きベクトルの信頼度が低かった場合に、間引きなし画像でのベクトル検出を行う。
このように、通常のベクトル検出は間引きありの画像で行われるが、本実施形態では、被写体が所定の大きさより小さい場合にテンプレート枠を縮小する。そして、間引きありの画像に対して縮小したテンプレート枠で行ったベクトル検出の結果、検出した動きベクトルの信頼度が低かった場合に、間引きなし画像でのベクトル検出を行う。
<被写体判定処理>
S501の被写体判定処理について説明する。まず、小被写体であるか否かの判別方法について、図6を用いて詳述する。図6は、大きい被写体と小被写体のヒストグラムを示す図である。図6(A)は、像面上の被写体が大きい場合を図示している。一方、図6(B)は、像面上の被写体が小さい場合を図示している。ベクトル検出枠601は、動きベクトル量を検出する参照ブロックである。テンプレート枠602は、ベクトル検出枠601の集合であり、動きベクトルの検出範囲を示している。本実施形態においてテンプレート枠602は、7×5のベクトル検出枠601を有している。テンプレート枠602は、像面603および像面604の全面もしくは端部を除く大部分に配置されている。
S501の被写体判定処理について説明する。まず、小被写体であるか否かの判別方法について、図6を用いて詳述する。図6は、大きい被写体と小被写体のヒストグラムを示す図である。図6(A)は、像面上の被写体が大きい場合を図示している。一方、図6(B)は、像面上の被写体が小さい場合を図示している。ベクトル検出枠601は、動きベクトル量を検出する参照ブロックである。テンプレート枠602は、ベクトル検出枠601の集合であり、動きベクトルの検出範囲を示している。本実施形態においてテンプレート枠602は、7×5のベクトル検出枠601を有している。テンプレート枠602は、像面603および像面604の全面もしくは端部を除く大部分に配置されている。
ヒストグラム605は、像面603の被写体の動きベクトル量の検出結果をヒストグラムにした例である。一方、ヒストグラム606は、像面604の被写体の動きベクトル量の検出結果をヒストグラムにした例である。横軸が動きベクトル量、縦軸が同一の動きベクトル量の個数(以下、ベクトル個数)を示している。ない、ヒストグラム605およびヒストグラム606には、図の簡略化のため背景の動きベクトル量は省略し、被写体の動きベクトル量のみ図示している。
図6(A)に示される通り、被写体が大きい場合は、被写体に割り当たるベクトル検出枠601が多くなる。被写体のベクトル個数を多く取得できるため、被写体の動きベクトル量の信頼度が高くなる。一方、図6(B)に示される通り、被写体が小さい場合は、被写体に割り当たるベクトル検出枠601が少なくなる。図6(B)では、枠607内のベクトル検出枠601のみが動きベクトル量を検出している。取得できる被写体の動きベクトルの個数が少ないため、被写体の動きベクトル量の信頼度が低くなる。
被写体の動きベクトルの信頼度が高い場合、すなわち、被写体のベクトル個数が多い場合は、現在のテンプレート枠602のままでよい。一方、被写体の動きベクトルの信頼度が低い場合、すなわち、被写体のベクトル個数が少ない小被写体の場合は、現在のテンプレート枠602よりさらに小さいテンプレート枠にテンプレート枠を縮小する必要がある。テンプレート枠の変更が必要な小被写体であるか否かは、被写体のベクトル個数が閾値α未満か否かで判定する。ヒストグラム605に示されるように、被写体のベクトル個数が閾値α以上の場合は、小被写体ではないと判定する。一方、ヒストグラム606に示されるように、被写体のベクトル個数が閾値α未満である場合は、小被写体であると判定する。
このとき、被写体のベクトル個数が閾値α未満の場合に小被写体であると判定すると、被写体が大きいにも関わらず、小被写体であると判別されるケースがある。例えば、低コントラストの被写体の場合が考えられる。動きベクトル量を検出する処理はブロックマッチングなどを用いて行うため、低コントラストだと動きベクトル量を検出できずエラーとなり、閾値α以上の被写体のベクトル個数を取得できないケースがある。そのため、被写体のベクトル個数が閾値α未満の場合に小被写体であると判別すると、被写体が大きいにも関わらず、小被写体であると判別されることになる。
そこで、小被写体であるか否かの判定に、被写体のベクトル個数に加えて背景のベクトル個数も用いる。被写体が大きい場合は、背景のベクトル個数が少なくなる。一方、被写体が小さい場合は、背景のベクトル個数が多くなる。そのため、背景のベクトル個数が閾値β以上である場合は、小被写体であると判定することが可能である。一方、背景のベクトル個数が閾値β未満である場合は、大きい被写体であると判定する。
ここで、背景のベクトル個数を判定に用いる場合、被写体と背景の動きベクトル量を判別する必要がある。背景の動きベクトル量は撮像装置の動きベクトル量と同じになるため、背景の動きベクトル量の判別が可能である。具体的には、レンズ制御部113の角速度センサ111から撮像装置1の動きベクトル量を取得し、ヒストグラムの動きベクトル量と比較することで、被写体と背景の動きベクトル量を判別することが可能である。
さらに、小被写体である場合、図6の枠607に示すように被写体の動きベクトル量は固まって存在するという特徴がある。よって、被写体の動きベクトル量を検出したベクトル検出枠601(以下、被写体ポイントという)が所定の範囲(以下、小被写体判定範囲という)内であれば小被写体であると判定することができる。以下、被写体ポイントの範囲を被写体範囲という。被写体および背景のベクトル個数を用いた判定に加え、被写体範囲を用いた判定を行うことで、小被写体であるか否かの判定の精度を向上させることができる。
具体的には、それぞれの被写体ポイントの中心位置(X,Y)の中から最小値(X,Y)と最大値(X,Y)を求め「サイズ(X,Y)= 最大値(X,Y)− 最小値(X,Y)」として求めたサイズ(X,Y)を被写体範囲とする。そして、被写体範囲のサイズ(X,Y)と予め規定した小被写体判定範囲のサイズ(X,Y)を比較し、小被写体判定範囲内であれば、小被写体であると判定する。また、被写体範囲の情報として、サイズ(X,Y)の他に被写体範囲の中心位置(X,Y)を保持する。
次に、被写体判定処理の流れについて、図7のフローチャートを用いて説明する。図7は、被写体判定処理を示すフローチャートである。
S701で、ベクトル量算出部154は、動きベクトル検出部141に対し、画素間引きありで読み出した画素データに対して像面上の全体にテンプレート枠を配置するよう要求する。ここで、テンプレート枠は、図6と同様に7×5のベクトル検出枠を設定することにする。
S701で、ベクトル量算出部154は、動きベクトル検出部141に対し、画素間引きありで読み出した画素データに対して像面上の全体にテンプレート枠を配置するよう要求する。ここで、テンプレート枠は、図6と同様に7×5のベクトル検出枠を設定することにする。
S702で、ベクトル量算出部154は、動きベクトル検出部141からテンプレート枠に配置されたベクトル検出枠の動きベクトル量を取得し、ヒストグラムを作成する。ここで、ヒストグラムは、図6と同様に横軸が動きベクトル量で縦がベクトル個数となるヒストグラムを作成ことにする。そしてベクトル量算出部154は、被写体と背景の動きベクトル量と被写体のエラーベクトルを判別し一次記憶装置135に保持する。
S703で、ベクトル量算出部154は、ヒストグラムに基づいて、被写体のベクトル個数が閾値α未満であるか否かを判定する。被写体のベクトル個数が閾値α未満であると判定した場合は、小被写体である可能性が高いので背景のベクトル個数を調べるため、S704へと進む。一方、被写体のベクトル個数が閾値α以上であると判定した場合は、被写体が大きいと判断し、S709へと進む。
S704で、ベクトル量算出部154は、ヒストグラムから背景のベクトル個数が閾値β以上であるか否かを判定する。背景のベクトル個数が閾値β以上であると判定した場合は、小被写体である可能性が高いので、被写体範囲の情報を生成するS705へと進む。一方、背景のベクトル個数が閾値β未満であると判定した場合は、被写体が大きいと判断し、S708へと進む。
S705で、ベクトル量算出部154は、被写体範囲の情報を生成する。ここで、被写体ポイントを調べるのに使用する被写体の動きベクトル量は、閾値α未満の中でベクトル個数の一番多い被写体の動きベクトル量とする。また、このとき、被写体範囲の情報は後述するテンプレート枠変更処理でも使用するため、一次記憶装置135に被写体範囲の情報として保持する。被写体範囲の情報としては、サイズ(X,Y)の他に被写体範囲の中心位置(X,Y)を保持する。
S706で、ベクトル量算出部154は、被写体範囲が小被写体判定範囲内か否かを判定する。具体的には、被写体範囲のサイズ(X,Y)と予め規定した小被写体判定範囲のサイズ(X,Y)を比較する。被写体範囲が小被写体判定範囲内と判定した場合は、S707に進む。一方、被写体範囲が小被写体判定範囲内ではないと判定した場合は、S708に進む。
S707で、ベクトル量算出部154は、メイン制御部152から取得要求があった際の動きベクトル結果を一次記憶装置135に保持する。なお、後述するテンプレート枠変更処理で被写体の動きベクトルの信頼度を高めるが、現時点で確定している被写体の動きベクトル量を動きベクトル結果として保持することとする。すなわち、S707で保持する動きベクトル結果は、S705で被写体ポイントを調べるのに使用した被写体の動きベクトル量とする。
S710で、ベクトル量算出部154は、被写体判定処理の結果として、小被写体だと判断したため、小被写体フラグをTRUEに設定し処理を終了する。このように、本実施形態では、被写体の動きベクトルの個数が閾値未満であり、かつ、背景の動きベクトルの個数が閾値以上であり、さらに、被写体範囲が小被写体判定範囲内である場合に、被写体の大きさが所定の大きさより小さいと判定する
S710で、ベクトル量算出部154は、被写体判定処理の結果として、小被写体だと判断したため、小被写体フラグをTRUEに設定し処理を終了する。このように、本実施形態では、被写体の動きベクトルの個数が閾値未満であり、かつ、背景の動きベクトルの個数が閾値以上であり、さらに、被写体範囲が小被写体判定範囲内である場合に、被写体の大きさが所定の大きさより小さいと判定する
S708およびS709は、被写体が大きいと判断した場合の処理である。S708で、ベクトル量算出部154は、被写体は大きいが低コントラストだと判断し、閾値α未満の被写体のベクトル個数の中で、被写体のベクトル個数が一番多い被写体の動きベクトル量を動きベクトル結果として一次記憶装置135に保持する。S709で、ベクトル量算出部154は、被写体が大きいと判断し、被写体のベクトル個数が閾値α以上の被写体の動きベクトル量を動きベクトル結果として一次記憶装置135に保持する。
S711で、ベクトル量算出部154は、被写体判定処理の結果として、小被写体でないと判断したため、小被写体フラグをFALSEに設定し処理を終了する。
S711で、ベクトル量算出部154は、被写体判定処理の結果として、小被写体でないと判断したため、小被写体フラグをFALSEに設定し処理を終了する。
<テンプレート枠変更処理>
次に、S503のテンプレート枠変更処理について説明する。テンプレート枠変更処理、すなわち動きベクトルの検出範囲設定処理では、検出範囲を縮小させ、縮小した検出範囲を被写体に応じた位置に設定する。
まず、テンプレート枠のサイズを変更する方法について、図8を用いて詳述する。図8(A)は、テンプレート枠の縮小を説明する図である。図8(B)は、テンプレート枠の縮小とヒストグラムの関係を説明する図である。
次に、S503のテンプレート枠変更処理について説明する。テンプレート枠変更処理、すなわち動きベクトルの検出範囲設定処理では、検出範囲を縮小させ、縮小した検出範囲を被写体に応じた位置に設定する。
まず、テンプレート枠のサイズを変更する方法について、図8を用いて詳述する。図8(A)は、テンプレート枠の縮小を説明する図である。図8(B)は、テンプレート枠の縮小とヒストグラムの関係を説明する図である。
図8(A)では、像面上のテンプレート枠を、枠801、枠802、枠803と段階的に縮小している。図8(B)は、図8(A)に示されるテンプレート枠の縮小による動きベクトル量のヒストグラムの変化を示している。ヒストグラム804は枠801、ヒストグラム805は枠802、ヒストグラム806は枠803で検出した動きベクトル量のヒストグラムである。また、増加量807および増加量808は、ヒストグラム804の被写体のベクトル個数からの増加量を示している。図8(B)に示されるように、テンプレート枠を縮小することで、被写体のベクトル個数を多く取得でき、被写体の動きベクトルの信頼度が高くなる。
次に、テンプレート枠の位置を変更する方法について詳述する。流し撮り撮影においては、撮影者が被写体の動きに合わせてパンニングをするが、被写体がテンプレート枠外となる可能性がある。そのため、被写体範囲の中心位置(X,Y)に基づいて、テンプレート枠の中心が被写体範囲の中心位置(X,Y)に来るようにテンプレート枠の位置を変更する。テンプレート枠の位置の変更により、被写体がテンプレート枠外となることを防ぐことができる。
次に、テンプレート枠変更処理の流れについて、図9のフローチャートを用いて説明する。図9は、テンプレート枠変更処理を示すフローチャートである。
S901で、ベクトル量算出部154は、一次記憶装置135に保持されている被写体範囲の情報を取得する。被写体範囲の情報は、S705で一次記憶装置135に保存された、被写体範囲のサイズ(X,Y)情報と被写体範囲の中心位置(X,Y)である。
S901で、ベクトル量算出部154は、一次記憶装置135に保持されている被写体範囲の情報を取得する。被写体範囲の情報は、S705で一次記憶装置135に保存された、被写体範囲のサイズ(X,Y)情報と被写体範囲の中心位置(X,Y)である。
S902で、ベクトル量算出部154は、動きベクトル検出部141に対し、テンプレート枠を縮小するようにテンプレート枠の変更を要求する。ここでは、縮小率を1/2とするが、縮小率はこれに限られるものではなく、例えば、テンプレート枠の縮小率を1/3、1/4としてもよい。また、被写体範囲のサイズ(X,Y)となるような縮小率にしてもよい。
S903で、ベクトル量算出部154は、S901で取得した被写体範囲の中心位置(X,Y)にテンプレート枠の中心位置(X,Y)を移動するように動きベクトル検出部141に要求する。
S904で、ベクトル量算出部154は、動きベクトル検出部141からテンプレート枠に配置されたベクトル検出枠の動きベクトル量を取得し、ヒストグラムを作成する。
S904で、ベクトル量算出部154は、動きベクトル検出部141からテンプレート枠に配置されたベクトル検出枠の動きベクトル量を取得し、ヒストグラムを作成する。
S905で、ベクトル量算出部154は、作成したヒストグラムに基づいて、被写体のベクトル個数が増加したか否かを判定する。被写体のベクトル個数が増加したと判定した場合は、被写体範囲の情報を生成するS906へと進む。一方、被写体のベクトル個数が増加しなかったと判定した場合は、被写体の動きベクトル量を検出できなかったと判断し、S910へと進む。
S906で、ベクトル量算出部154は、増加した被写体のベクトル個数の動きベクトル量を動きベクトル結果として保持する。
S907で、ベクトル量算出部154は、増加した被写体のベクトル個数の動きベクトル量に対する被写体範囲の情報を生成し、一次記憶装置135に保持する。
S907で、ベクトル量算出部154は、増加した被写体のベクトル個数の動きベクトル量に対する被写体範囲の情報を生成し、一次記憶装置135に保持する。
S908で、ベクトル量算出部154は、S904で作成したヒストグラムに基づいて、被写体のベクトル個数が閾値α以上であるか否かを判定する。被写体のベクトル個数が閾値α以上であると判定した場合は、被写体検出に成功したと判断し、S909へと進む。一方、被写体のベクトル個数が閾値α未満であると判定した場合は、テンプレート枠をさらに縮小するために、S901へと戻る。
S909で、ベクトル量算出部154は、テンプレート枠の変更により被写体検出に成功したと判断したため、被写体検出成功フラグをTRUEに設定し、処理を終了する。
S910で、ベクトル量算出部154は、テンプレート枠を変更しても被写体検出に成功しなかったと判断したため、被写体検出成功フラグをFALSEに設定し、処理を終了する。
S910で、ベクトル量算出部154は、テンプレート枠を変更しても被写体検出に成功しなかったと判断したため、被写体検出成功フラグをFALSEに設定し、処理を終了する。
このように、テンプレート枠を縮小させることで、被写体のベクトル個数を多く取得でき、被写体の動きベクトルの信頼度が向上させることができる。しかしながら、被写体に合わせてテンプレート枠を縮小させても十分に被写体のベクトル個数が増加しない被写体(以下、苦手被写体という)もある。テンプレート枠を縮小させても十分に被写体のベクトル個数が増加しないと、検出した動きベクトルの信頼度が低いままである。苦手被写体の例として、低コントラストと繰り返しパターンが挙げられる。低コントラスト被写体では、ベクトル検出枠とその周辺にコントラストがなく、どの位置でも高い相関値が得られてしまうためにベクトルを誤って検出してしまう恐れがある。繰り返しパターン被写体では、ベクトル検出枠とその周辺に高周波で高コントラストなパターンが含まれている場合に、相関値の高い位置が周期的に得られることでベクトルを誤って検出してしまう恐れがある。そこで、誤検出につながるベクトル検出結果をエラーと判定して無効化する手法が用いられる。
<間引きなし画像の被写体ベクトル検出処理>
次に、S506の間引きなし画像の被写体ベクトル検出処理について説明する。まず、間引きなし画像の被写体ベクトルの検出方法について、図10、図11を用いて詳述する。図10は、苦手被写体に対するテンプレート枠の縮小とヒストグラムの関係を示す図である。
次に、S506の間引きなし画像の被写体ベクトル検出処理について説明する。まず、間引きなし画像の被写体ベクトルの検出方法について、図10、図11を用いて詳述する。図10は、苦手被写体に対するテンプレート枠の縮小とヒストグラムの関係を示す図である。
図10(A)は、苦手被写体に対して像面上のテンプレート枠を枠1001、枠1002、枠1003の段階で縮小した様子を図示している。図10(B)は、テンプレート枠の縮小による動きベクトル量のヒストグラムの変化を示している。ヒストグラム1004は枠1001、ヒストグラム1005は枠1002、ヒストグラム1006枠1003で検出した動きベクトル量のヒストグラムである。エラーベクトル1007およびエラーベクトル1008は、被写体の動きベクトルではなく、ベクトル検出でエラー判定となったベクトルのベクトル個数を示している。エラーベクトル1007とエラーベクトル1008を比較すると、テンプレート枠を縮小することで被写体ベクトルではなくエラーベクトルが増加し、期待どおりに被写体の動きベクトルの信頼度を高めることができていないことが分かる。
図11は、間引きあり画像と間引きなし画像のベクトル検出を説明する図である。図11(A)は、被写体の低コントラスト部分にベクトル検出枠1101が存在する様子を示している。図11(B)は、撮像素子で水平または垂直方向に画素データを間引いた間引きあり画像1102と、間引きをされていない間引きなし画像1103とのベクトル検出のエラー判定結果の違いを示している。
間引きあり画像1102、間引きなし画像1103で示される範囲をベクトル探索範囲とする。間引きあり画像1102では、ベクトル検出に必要なデータ量が少なく、ベクトル探索範囲の中でベクトル検出枠1101とその周辺1104とのコントラストが低くなりベクトル検出でエラー判定されやすくなる。一方、間引きなし画像1103では、被写体を構成するデータ量が増えるため、ベクトル探索範囲の中でベクトル検出枠1101とその周辺1104とのコントラストが高くなりやすく、ベクトル検出でエラー判定される可能性が低くなる。すなわち、間引きなし画像1103は間引きあり画像1102に比べてコントラストが高くなりやすく、ベクトル検出のエラー判定となる確率は下がる。
このように、小被写体でありかつベクトル検出をしにくい苦手被写体に対しては、間引きなし画像でベクトル検出することで、被写体の動きベクトルの信頼度を高めることができる。ただし、像面上のすべての画素データを間引きなしで取得すると処理時間が増加し、連続的に流し撮り撮影処理を実行することができない。そのため、ベクトル検出したい被写体範囲の画素データのみを間引きなしで取得して、テンプレート枠を配置する必要がある。
次に、被写体の間引きなし画像にテンプレート枠を設定する方法について、図12を用いて詳述する。図12は、間引きなし画像範囲へのテンプレート枠の配置方法を説明する図である。図12(A)の被写体範囲1201は、被写体範囲の情報に基づいて設定された被写体範囲を示している。
図12(B)の間引きなし画像範囲1202は、間引きなし画像で設定される間引きなし画像範囲を示している。間引きなし画像範囲1202には、被写体範囲1201の中心位置(X,Y)を間引きなし画像の中心とし、中心位置(X,Y)に対して予め規定した間引きなし画像取得可能サイズ(X,Y)の範囲が設定される。間引きなし画像取得可能サイズ(X,Y)は、撮像素子からの間引きなし画像取得が流し撮り撮影処理に必要とされる所定時間以内に収まるよう設定される。これにより、間引きなし画像による被写体動きベクトル検出処理と連続的な流し撮り撮影処理の実行を両立させることができる。なお、間引きなし画像範囲の設定はこれに限られるものではなく、被写体の移動方向に応じて水平垂直サイズの割合を変更してもよいし、被写体距離や速度に応じて画像取得可能範囲の増減を変更してもよい。
図12(C)は、間引きなし画像範囲1202にテンプレート枠1202を配置した様子を示している。テンプレート枠1202は、間引きなし画像範囲1202の全体に配置されてもよいし、間引きなし画像範囲1202内の一部に配置されてもよい。
次に、間引きなし画像の被写体ベクトル検出処理の流れについて、図13を用いて説明する。図13は、間引きなし画像の被写体ベクトル検出処理を示すフローチャートである。
S1301で、ベクトル量算出部154は、間引きなし画像範囲を算出する。例えば、被写体範囲の中心位置(X,Y)を間引きなし画像の中心とし、予め規定した間引きなし画像取得可能サイズ(X,Y)の範囲を間引きなし画像範囲とする。
S1302で、ベクトル量算出部154は、動きベクトル検出部141に対し、S1301で算出した間引きなし画像範囲にテンプレート枠を配置するよう要求する。ここで、テンプレート枠として例えば、図6と同様に7×5のベクトル検出枠を設定することにする。
S1301で、ベクトル量算出部154は、間引きなし画像範囲を算出する。例えば、被写体範囲の中心位置(X,Y)を間引きなし画像の中心とし、予め規定した間引きなし画像取得可能サイズ(X,Y)の範囲を間引きなし画像範囲とする。
S1302で、ベクトル量算出部154は、動きベクトル検出部141に対し、S1301で算出した間引きなし画像範囲にテンプレート枠を配置するよう要求する。ここで、テンプレート枠として例えば、図6と同様に7×5のベクトル検出枠を設定することにする。
S1303で、ベクトル量算出部154は、動きベクトル検出部141からテンプレート枠に配置されたベクトル検出枠の動きベクトル量を取得し、ヒストグラムを作成する。ここで、ヒストグラムは、図6と同様に横軸が動きベクトル量で縦がベクトル個数となるヒストグラムを作成ことにする。また、被写体と背景の動きベクトル量と被エラーベクトルを、一次記憶装置135に保持する。
S1304で、ベクトル量算出部154は、間引きなし画像でベクトル検出を行ったことで、間引きあり画像のベクトル検出に比べ被写体のベクトル個数が増加したか否かを判定する。被写体のベクトル個数が増加したと判定した場合はS1305へと進む。一方、被写体のベクトル個数が増加しなかったと判定した場合は処理を終了する。
S1305で、ベクトル量算出部154は、増加した被写体のベクトル個数に対する動きベクトル量を動きベクトル結果として一次記憶装置135に保持して処理を終了する。
S1305で、ベクトル量算出部154は、増加した被写体のベクトル個数に対する動きベクトル量を動きベクトル結果として一次記憶装置135に保持して処理を終了する。
以上説明したように、本実施形態によれば、小被写体でかつベクトル検出をしにくい苦手被写体に対しても、小被写体の間引きなし画像にテンプレート枠を配置して被写体の動きベクトルを検出することで、被写体の動きベクトルの信頼度を高めることができる。これにより、流し撮りアシストモードの撮影時における被写体ブレの補正精度を向上させることを可能にした撮像装置を提供することができる。なお、上記の実施形態では、エラーベクトルの個数が閾値より多い場合に、間引きなし画像を用いて被写体の動きベクトル検出を行っているが、エラーベクトルの個数の判定処理を行わないようにしてもよい。すなわち、被写体が小被写体と判定された場合、テンプレート枠を縮小するとともに間引きなし画像を用いた動きベクトル検出に切替える。このような制御を行うことで、被写体の動きベクトルの信頼度を高めるとともに、パンニング中のエラーベクトルの個数の増減による間引きなし画像と間引きあり画像の切替えを抑制することができる。
(第2実施形態)
第1実施形態では、エラーベクトルの個数が閾値より多い場合に、間引きなし画像を用いて被写体の動きベクトル検出を行った。しかしながら、間引きなし画像を用いて被写体の動きベクトル検出行う際に、画像範囲が小さいと被写体の動きベクトルが正確に検出できない場合がある。
第1実施形態では、エラーベクトルの個数が閾値より多い場合に、間引きなし画像を用いて被写体の動きベクトル検出を行った。しかしながら、間引きなし画像を用いて被写体の動きベクトル検出行う際に、画像範囲が小さいと被写体の動きベクトルが正確に検出できない場合がある。
図14は、間引きなし画像と間引きあり画像のサーチエリアの関係を示す図である。図14(A)は、テンプレート枠を縮小した後の間引きあり画像のサーチエリア1401について説明する図である。一方、図14(B)は、比較的小さな間引きなし画像のサーチエリア1402について説明する図である。間引きなし画像のサーチエリア1402およびベクトル検出枠1404は、間引きあり画像のサーチエリア1401およびベクトル検出枠1403に比べ小さい。被写体の速度及び撮影者のパンニング速度が一定であれば、被写体の動きベクトル量は間引きなしと間引きありで変化しないため、動きベクトル量1405は、図14(A)と図14(B)で同一である。
間引きあり画像の場合、動きベクトル量1405は、サーチエリア1401の範囲内となるため、動きベクトル量の検出が可能である。一方、間引きなし画像の場合、動きベクトル量1405は、サーチエリア1402の範囲外となるため、動きベクトル量の検出ができずにエラーとなり、被写体の動きベクトル量が取得できなくなる。すなわち、被写体の動きベクトル量が大きい場合に間引きなし画像でベクトル検出すると、被写体の動きベクトル量を取得できない。そこで、本実施形態では、小被写体の動きベクトル量が小さいと判断した場合、すなわち、パンニング速度が被写体の速度に近いと判断した場合のみ、間引きなし画像のベクトル検出を実行させることとする。
<被写体動きベクトル量算出処理>
第2実施形態における被写体動きベクトル量算出処理について、図15を用いて説明する。図15は、第2実施形態における被写体動きベクトル量算出処理を示すフローチャートである。なお、S1501〜705、S1507は、第1実施形態のS501〜306と同じステップであるため、その説明を省略し、S1506について説明する。
第2実施形態における被写体動きベクトル量算出処理について、図15を用いて説明する。図15は、第2実施形態における被写体動きベクトル量算出処理を示すフローチャートである。なお、S1501〜705、S1507は、第1実施形態のS501〜306と同じステップであるため、その説明を省略し、S1506について説明する。
S1506で、ベクトル量算出部154は、被写体の動きベクトル量が閾値θ未満か否かを判定する。なお閾値θは、0近辺の値とする。被写体の動きベクトル量が閾値θ未満と判定した場合は、間引きなし画像で被写体ベクトルを検出するため、S1507へ進む。一方、被写体の動きベクトル量が閾値θ未満でないと判定した場合は、間引きなし画像でのベクトル検出を実行せず、S1501へ戻る。なお、過去数フレームのヒストグラムを作成し、被写体の動きベクトル量の平均値から閾値θ未満か否かを判定するようにしてもよい。
以上説明したように、本実施形態によれば、被写体の動きベクトル量に応じて間引きなし画像での動きベクトル検出を実行するか否かを判定することで動きベクトルの非検出を防ぎ、被写体の動きベクトルの信頼度を高めることができる。これにより、これにより、流し撮りアシストモードの撮影時における被写体ブレの補正精度を向上させることを可能にした撮像装置を提供することができる。また、被写体の動きベクトル量がサーチエリアに比して大きく被写体の動きベクトル量を取得できない場合に、間引きなし画像を用いた被写体の動きベクトル検出を行うことを回避することができるため、演算量や電力の消費を抑制することができる。なお、上記の2つの実施形態では、間引きあり画像と間引きなし画像との切替えを行っているが、第1の間引き率である第1の画像と、第1の間引き率よりも間引き率が低い第2の間引き率である第2の画像との切替えを行うようにしてもよい。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。
132 カメラ制御部
141 動きベクトル検出部
152 メイン制御部
154 被写体動きベクトル量算出部
141 動きベクトル検出部
152 メイン制御部
154 被写体動きベクトル量算出部
Claims (15)
- 被写体の大きさを判定する被写体判定手段と、
前記被写体判定手段の判定結果に応じて、動きベクトルを検出する検出範囲を設定する検出範囲設定手段と、
前記検出範囲設定手段が設定した検出範囲で複数の画像から動きベクトルの検出を行う検出手段と、を備え、
前記被写体判定手段が被写体の大きさが所定の大きさより小さいと判定した場合、前記検出範囲設定手段は、前記検出範囲を縮小し、前記検出手段は、間引きなしの画像で動きベクトルの検出を行う
ことを特徴とする像振れ補正装置。 - 前記検出手段は、前記被写体判定手段が被写体の大きさが所定の大きさより小さいと判定した場合、縮小した検出範囲で行った間引きあり画像での動きベクトルの検出において、検出した動きベクトルの信頼度が低い場合、間引きなしの画像で動きベクトルの検出を行う
ことを特徴とする請求項1に記載の像振れ補正装置。 - 前記検出手段は、縮小した検出範囲で行った間引きあり画像での動きベクトルの検出において、検出した動きベクトルのうちエラーと判定されたベクトルの個数が第1の閾値より多い場合、検出した動きベクトルの信頼度が低いと判定し、間引きなしの画像で動きベクトルの検出を行う
ことを特徴とする請求項2に記載の像振れ補正装置。 - 前記検出手段は、縮小した検出範囲で行った間引きあり画像での動きベクトルの検出において、検出した動きベクトルのうちエラーと判定されたベクトルの個数が第1の閾値より多く、かつ、被写体の動きベクトル量が第2の閾値未満であった場合、間引きなしの画像で動きベクトルの検出を行う
ことを特徴とすることを特徴とする請求項2または請求項3に記載の像振れ補正装置。 - 前記第1の閾値は、被写体の大きさ、被写体の色情報、被写体までの距離および露出状態のいずれかに応じて設定される
ことを特徴とする請求項3または請求項4に記載の像振れ補正装置。 - 前記検出範囲設定手段は、前記被写体判定手段が被写体の大きさが所定の大きさより小さいと判定した場合、前記検出範囲を縮小し、前記被写体の位置に応じて縮小した前記検出範囲を配置する
ことを特徴とする請求項1乃至5のいずれか1項に記載の像振れ補正装置。 - 前記被写体判定手段は、検出した動きベクトルのうち、被写体の動きベクトルの個数が第3の閾値未満であり、かつ、背景の動きベクトルの個数が第4の閾値以上である場合に、前記被写体の大きさが所定の大きさより小さいと判定する
ことを特徴とする請求項2乃至5のいずれか1項に記載の像振れ補正装置。 - 前記被写体判定手段は、検出した動きベクトルのうち、被写体の動きベクトルの個数が第3の閾値未満であり、かつ、背景の動きベクトルの個数が第4の閾値以上であり、さらに、前記被写体の範囲が所定の範囲内である場合に、前記被写体の大きさが所定の大きさより小さいと判定する
ことを特徴とする請求項2乃至5のいずれか1項に記載の像振れ補正装置。 - 前記検出範囲は複数のベクトル検出枠の集合であり、前記検出手段による動きベクトルの検出は前記ベクトル検出枠ごとに行われ、
前記被写体の範囲は、被写体の動きベクトル量が検出された前記ベクトル検出枠の範囲であり、
前記検出範囲設定手段は、前記ベクトル検出枠の大きさを縮小することで前記検出範囲を縮小し、縮小した前記検出範囲の中心と前記被写体の範囲の中心が重なるよう前記検出範囲を配置する
ことを特徴とする請求項8に記載の像振れ補正装置。 - 前記検出範囲設定手段は、被写体の動きベクトルの個数が第3の閾値以上になるまで前記検出範囲を縮小する
ことを特徴とする請求項7乃至9のいずれか1項に記載の像振れ補正装置。 - 前記検出手段が検出した動きベクトルのうち被写体の動きベクトルに基づいて像振れ補正制御を行う制御手段をさらに備える
ことを特徴とする請求項1乃至10のいずれか1項に記載の像振れ補正装置。 - 撮像素子を有する撮像手段と、
請求項1乃至11のいずれか1項に記載の像振れ補正装置と、を備える
ことを特徴とする撮像装置。 - 前記撮像手段により撮像される画像を取得する取得手段をさらに備え、
前記間引きあり画像は、前記撮像素子から画素間引きありの駆動で取得した画像であり、前記間引きなし画像は、前記撮像素子から画素間引きしない駆動で取得した画像であり、
前記取得手段は、前記間引きなし画像として、被写体を含んだ所定の大きさの画像を取得する
ことを特徴とする請求項12に記載の撮像装置。 - 像振れ補正装置の制御方法であって、
被写体の大きさを判定する被写体判定工程と、
前記被写体判定工程における判定結果に応じて、動きベクトルを検出する検出範囲を設定する検出範囲設定工程と、
前記検出範囲設定工程で設定した検出範囲で複数の画像から動きベクトルの検出を行う検出工程と、を有し、
前記被写体判定工程において被写体の大きさが所定の大きさより小さいと判定した場合、前記検出範囲設定工程で、前記検出範囲を縮小し、前記検出工程で、間引きなしの画像で動きベクトルの検出を行う
ことを特徴とする像振れ補正装置の制御方法。 - 請求項1乃至11のいずれか1項に記載の像振れ補正装置の各手段としてコンピュータを機能させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018005808A JP2019125933A (ja) | 2018-01-17 | 2018-01-17 | 像振れ補正装置、撮像装置、像振れ補正装置の制御方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018005808A JP2019125933A (ja) | 2018-01-17 | 2018-01-17 | 像振れ補正装置、撮像装置、像振れ補正装置の制御方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019125933A true JP2019125933A (ja) | 2019-07-25 |
Family
ID=67399535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018005808A Pending JP2019125933A (ja) | 2018-01-17 | 2018-01-17 | 像振れ補正装置、撮像装置、像振れ補正装置の制御方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019125933A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021114288A (ja) * | 2020-01-13 | 2021-08-05 | ターゲット インフォメーション カンパニー リミテッド | 深層学習に基づく馬速計算システム及び方法 |
-
2018
- 2018-01-17 JP JP2018005808A patent/JP2019125933A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021114288A (ja) * | 2020-01-13 | 2021-08-05 | ターゲット インフォメーション カンパニー リミテッド | 深層学習に基づく馬速計算システム及び方法 |
JP7168153B2 (ja) | 2020-01-13 | 2022-11-09 | ターゲット インフォメーション カンパニー リミテッド | 深層学習に基づく馬速計算システム及び方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6700872B2 (ja) | 像振れ補正装置及びその制御方法、撮像装置、プログラム、記憶媒体 | |
US9313419B2 (en) | Image processing apparatus and image pickup apparatus where image processing is applied using an acquired depth map | |
US10148889B2 (en) | Image processing apparatus and control method thereof, image capturing apparatus and storage medium | |
JP6497987B2 (ja) | 画像処理装置及び画像処理方法、プログラム、記憶媒体 | |
US9906708B2 (en) | Imaging apparatus, imaging method, and non-transitory storage medium storing imaging program for controlling an auto-focus scan drive | |
JP2007304280A (ja) | 撮像装置及びその制御方法及びプログラム及び記憶媒体 | |
US10212348B2 (en) | Image processing apparatus, its control method, image capturing apparatus, and storage medium | |
CN107040711B (zh) | 图像稳定设备及其控制方法 | |
JP2016201662A (ja) | 撮像装置およびその制御方法 | |
US11457148B2 (en) | Image processing apparatus, imaging apparatus, and control method | |
JP2017138379A (ja) | 像振れ補正装置およびその制御方法、撮像装置、プログラム、記憶媒体 | |
JP2018146663A (ja) | 像ブレ補正装置およびその制御方法、撮像装置、レンズ装置 | |
US20160360114A1 (en) | Image capturing control apparatus, image capturing apparatus and storage medium storing image capturing control program | |
JP6932531B2 (ja) | 像ブレ補正装置、撮像装置および撮像装置の制御方法 | |
JP2019083364A (ja) | 画像処理装置、撮像装置および制御方法 | |
JP2018137613A (ja) | 画像処理装置、撮像装置および画像処理装置の制御方法 | |
JP2018010165A (ja) | 像振れ補正装置およびその制御方法、ならびに撮像装置 | |
US20180309932A1 (en) | Image stabilization apparatus, image stabilization method, image capturing apparatus, image capturing system and non-transitory storage medium | |
JP2016171541A (ja) | 動きベクトル検出装置、動体角速度算出装置、撮像装置およびレンズ装置 | |
JP2019125933A (ja) | 像振れ補正装置、撮像装置、像振れ補正装置の制御方法およびプログラム | |
US20210235017A1 (en) | Imaging device and control method thereof | |
JP2015233211A (ja) | 撮像装置およびその制御方法ならびにプログラム | |
JP7346076B2 (ja) | 制御装置、レンズ装置、撮像装置、制御方法、および、プログラム | |
JP2017134185A (ja) | 像ブレ補正装置、撮像装置、レンズ装置、像ブレ補正装置の制御方法、プログラム、および、記憶媒体 | |
JP2015102774A (ja) | 撮像装置 |