JP6671994B2 - 撮像装置およびその制御方法、プログラム、記憶媒体 - Google Patents

撮像装置およびその制御方法、プログラム、記憶媒体 Download PDF

Info

Publication number
JP6671994B2
JP6671994B2 JP2016017752A JP2016017752A JP6671994B2 JP 6671994 B2 JP6671994 B2 JP 6671994B2 JP 2016017752 A JP2016017752 A JP 2016017752A JP 2016017752 A JP2016017752 A JP 2016017752A JP 6671994 B2 JP6671994 B2 JP 6671994B2
Authority
JP
Japan
Prior art keywords
motion vector
subject
image
vector
interest
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.)
Active
Application number
JP2016017752A
Other languages
English (en)
Other versions
JP2017138379A (ja
JP2017138379A5 (ja
Inventor
祐三 青山
祐三 青山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2016017752A priority Critical patent/JP6671994B2/ja
Priority to US15/421,622 priority patent/US10212347B2/en
Publication of JP2017138379A publication Critical patent/JP2017138379A/ja
Publication of JP2017138379A5 publication Critical patent/JP2017138379A5/ja
Application granted granted Critical
Publication of JP6671994B2 publication Critical patent/JP6671994B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/683Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • H04N23/6811Motion detection based on the image signal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/165Detection; Localisation; Normalisation using facial parts and geometric relationships
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • H04N23/6812Motion detection based on additional sensors, e.g. acceleration sensors

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Geometry (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Studio Devices (AREA)
  • Adjustment Of Camera Lenses (AREA)
  • Image Analysis (AREA)

Description

本発明は、撮像装置に関し、特にユーザの流し撮り撮影の補助を行う像振れ補正装置に関する。
ユーザ(撮影者)の流し撮り撮影の補助を行う技術として、像振れ補正装置を用いる手法が従来から提案されている。
特許文献1では、流し撮り手ブレ補正モードにおいて、撮像画面内で検出された被写体の数あるいはサイズのうち少なくとも一方に基づいて自動レリーズ時間および露光時間を算出する技術について開示がある。
特許文献2では、ジャイロセンサのブレ検出と画像の動きベクトルから被写体の角速度を検出し、検出された角速度から被写体を画像中央に位置させるための補正量を算出し、光軸シフトレンズの移動で補正して流し撮り撮影を行う技術について開示がある。
特許文献3では、画面の動きベクトルから被写体と背景を判別するために、入力画像の各部に設定した特徴点で検出される動きベクトルをヒストグラム化して分類する技術について開示がある。この特許文献3では、特定個所から得られた動きベクトルを検出して特定個所の動きを検出する場合に、過去の分類結果を示す分類情報を各特徴点に設定し、この分類情報を参考にして動きベクトルを分類している。
特開2010−245774号公報 特開2006−317848号公報 特開2007−336235号公報
しかしながら、上述の特許文献に開示された従来技術では、求められた被写体の角速度は、被写体のある一部分に相当するが、必ずしもそれが撮影者が止めたい場所であるとは限らない。なぜなら、被写体の角速度は画角内で必ずしも一意の値を持たないからである。前提として流し撮り撮影を補助する像振れ補正装置で対象とする被写体は等速直線運動に限定している。ここで、等速直線運動する被写体の角速度は一定ではないことがわかっている。図22に等速直線運動する被写体の時間と角速度の関係を示したグラフを示す。図22に示すとおり、時刻が0のときの角速度が最大になる。これは時刻が0のときに被写体と撮影者との距離が最短になることと被写体の軌跡と撮影者の視線が直交するため被写体の速度が見かけ上最大になることを示している。また、図22に示すとおり、時刻が経つにつれて角速度は小さくなっていく。これは時刻が経つにつれて被写体と撮影者の距離が離れていくことと被写体の見かけ上の速度が小さくなっていくことを示している。次に、図22の点線で示したある時刻のカメラの画角を図23に示す。図23はある時刻における画角内の像高と角速度の関係を示したグラフである。従来技術では、動きベクトルの検出位置を画角内に一様に設定し、被写体と背景を判別し、像高に依らずそれぞれのベクトルを平均化することで被写体および背景の動きベクトルを算出する。このようにして算出された動きベクトルから求められた被写体の角速度はおおよそ画角中心の角速度になることが多い。一方、例えば撮影者が被写体の左側に測距位置を設けていた場合には流し撮りにおいて撮影者が被写体の動きを止めたいと希望するのは測距位置だと考えられる。つまり、被写体の角速度として算出すべきなのは測距位置の角速度である。しかしながら、従来の方法では、測距位置の角速度を求めることはできず、結果として撮影者が止めたいと思われる場所がぶれた画像が得られてしまう。さらに測距位置にコントラストの低い被写体や繰り返しパターンを含む被写体があると動きベクトルを正しく検出できないために、さらに画像のぶれ具合が大きくなってしまう。
そこで、本発明の目的は、上記課題を鑑み、流し撮り撮影の補助に有利な撮像制御を実現することである。
本発明の一側面としての撮像装置は、該撮像装置のパンニング速度を検出するパンニング検出手段と、第1方向、及び、該第1方向と直交する第2方向に配列された複数の検出枠が撮像面に設定された撮像手段により取得される複数の画像から動きベクトルを検出するベクトル検出手段と、前記検出枠から得られる動きベクトルのうち被写体の動きベクトルを判定する判定手段と、前記画像のうち使用者が着目する着目点を特定する特定手段と、前記画像のうち前記被写体の動きベクトル及び前記着目点に応じた画像領域を設定し、前記画像領域に基づいて、前記被写体の移動速度と前記撮像装置のパンニング速度の差を補正するように、光学素子を駆動する制御手段と、前記被写体の動きベクトルに基づいて前記被写体の移動方向を算出する算出手段と、を有し、前記制御手段は、前記第1方向と前記移動方向との間の角度が前記第2方向と前記移動方向との間の角度より小さい場合に、前記第1方向より前記第2方向に個数が多く連続した検出枠から得られる動きベクトルに基づいて前記光学素子を駆動することを特徴とする。
本発明によれば、流し撮り撮影の補助に有利な像振れ補正制御を実現することができる。
本発明の実施形態に共通する被写体動きベクトル算出部のブロック構成図である。 本発明の実施形態に共通する撮像装置のブロック構成図である。 本発明の実施形態に共通する動きベクトル検出部のブロック構成図である。 本発明の実施形態に共通する動きベクトル解析部のブロック構成図である。 本発明の実施形態に共通する注目画像位置算出部のブロック構成図である。 本発明の実施形態に共通する流し撮りアシスト処理のフローチャートである。 本発明の実施形態に共通する被写体角速度算出処理のフローチャートである。 本発明の実施形態に共通する動きベクトル解析処理のフローチャートである。 本発明の実施形態に共通する被写体分布検出処理のフローチャートである。 本発明の実施形態に共通する角速度とベクトル量の関係を示す図である。 本発明の実施形態に共通する動きベクトルの検出イメージを示す図である。 本発明の実施形態に共通する動きベクトルの検出結果を示す表である。 本発明の実施形態に共通する度数分布のイメージを示す図である。 本発明の実施形体に共通する注目画像位置算出処理のフローチャートである。 第一の実施例における注目画像の決定方法を示す図である。 本発明の実施形態に共通する注目画像位置の検出イメージを示す図である。 第一の実施例における対象ベクトル判定処理のフローチャートである。 第一の実施例における対象ベクトル判定処理のフローチャートである。 第一の実施例における対象ベクトル判定のイメージを示す図である。 第二の実施例における注目画像の決定方法を示す図である。 第二の実施例における対象ベクトル判定のイメージを示す図である。 等速直線運動する被写体の時間と角速度の関係を示したグラフである。 画角内の像高と角速度の関係を示したグラフである。
以下に、本発明の好ましい実施の形態を、添付の図面に基づいて詳細に説明する。
本発明の第1の実施例による、動きベクトル検出装置について説明する。
まず、図2は本発明の実施形態に共通する撮像装置のブロック構成図である。撮像装置100は、デジタルカメラ、デジタルビデオカメラのようなカメラはもとより、カメラ機能付き携帯電話、カメラ付きコンピュータなど、カメラ機能を備える任意の電子機器であっても良い。光学系101は、レンズ、シャッター、絞りから構成されており、CPU103の制御によって被写体からの光を撮像素子102に結像させる。また、光学系101は、ユーザの流し撮り撮影の補助を行う際に用いられる像振れ補正レンズ(光学素子)を備えている。撮像素子102(撮像手段)は、CCDイメージセンサ、CMOSイメージセンサなどで構成され、光学系101を通って結像した光を画像信号に変換する。
ジャイロセンサなどの角速度センサ105は、撮像装置100の移動量を表す角速度を検出し、電気信号として変換してCPU103へ伝達する。なお、角速度センサ105は光学系101に含めてもよい。CPU103は、入力された信号や予め記憶されたプログラムに従い、撮像装置100を構成する各部を制御することで、撮像装置100の機能を実現させる。一次記憶装置104は、例えばRAMのような揮発性装置であり、一時的なデータを記憶し、CPU103の作業用に使われる。また、一次記憶装置104に記憶されている情報は、画像処理装置106で利用されたり、記録媒体107へ記録されたりもする。二次記憶装置108は、例えばEEPROMのような不揮発性記憶装置であり、撮像装置100を制御するためのプログラム(ファームウェア)や各種の設定情報を記憶し、CPU103によって利用される。
記録媒体107は、一次記憶装置104に記憶されている、撮影により得られた画像のデータなどを記録する。なお、記録媒体107は、例えば半導体メモリカードのように撮像装置100から取り外し可能であり、記録されたデータはパーソナルコンピュータなどに装着してデータを読み出すことが可能である。つまり、撮像装置100は、記録媒体107の着脱機構及び読み書き機能を有する。表示部109は、撮影時のビューファインダー画像の表示、撮影した画像の表示、対話的な操作のためのGUI画像などの表示を行う。操作部110は、ユーザの操作を受け付けてCPU103へ入力情報を伝達する入力デバイス群であり、例えばボタン、レバー、タッチパネル等はもちろん、音声や視線などを用いた入力機器であっても良い。
なお、本実施形態の撮像装置100は、画像処理装置106が撮像画像に適用する画像処理のパターンを複数有し、パターンを撮像モードとして操作部110から設定可能である。画像処理装置106は、いわゆる現像処理と呼ばれる画像処理をはじめ、撮影モードに応じた色調の調整なども行う。なお、画像処理装置106の機能の少なくとも一部は、CPU103がソフトウェア的に実現しても良い。
ここで、流し撮り撮影を行う際に、被写体の移動速度と撮影者のパンニング速度の差を吸収するように像振れ補正レンズを駆動させる像振れ補正装置(以下、流し撮りアシスト装置とも呼ぶ)におけるCPU103の処理について説明する。図6は流し撮りアシスト機能を実現するための処理を示したフローチャートである。CPU103は操作部110からの入力、例えば電源ボタンやライブビュー開始指示等を受けて本処理を開始する。
まず、CPU103はステップS1で光学系101および撮像素子102を制御し画像を取得する。取得された画像は一時記憶装置104へ保存される。また画像処理装置106によって処理され表示部109へ転送されることでビューファインダー画像として表示される。
次に、CPU103はステップS2で被写体の角速度を算出する。算出された角速度は光学系101に転送され被写体のぶれを補正する際に使用される。なお、ステップS2で角速度の算出に利用された検出枠の位置を表示部109に表示させてもよい。
次に、CPU103はステップS3で撮影するかどうかの判断を行う。なお、撮影するかどうかの判断は操作部110によってユーザからの撮影指示が出されているかによって判断してもよい。また、CPU103が撮像素子102から得られた画像を解析した結果を用いて判断してもよい。
撮影を行うと判断した場合、CPU103はステップS4で露光およびブレ補正を行う。露光ではCPU103は光学系101を制御することによって光学系101を通って撮像素子102に取り込まれる光量を調節する。ブレ補正では、CPU103が角速度センサ105から取得した角速度とステップS2で算出された被写体の角速度の差分から被写体のブレがなくなるように光学系101を制御する。すなわち、CPU103は、被写体の動きベクトル(または角速度)に基づいて、光学素子(ここでは、像振れ補正レンズ)を駆動して像振れ補正制御を行う制御手段として機能する。本実施例では、ユーザが流し撮り撮影を行っている際に、該流し撮り撮影の補助を行うためにも像振れ補正制御が実行される。なお、光学系101が角速度センサを備えている場合、ブレ補正は光学系101が自ら制御してもよい。
また、本実施形態では、像振れ補正として、像振れ補正レンズを光軸に垂直な面内で移動させる、いわゆる光学防振を用いている。しかし、本発明の像振れ補正は光学防振に限らず、撮像素子を光軸に垂直な面内で移動させることで振れ補正を行ってもよい。また、撮像素子が出力する各撮影フレームの切り出し位置を変更することで振れの影響を軽減させる電子防振を用いてもよい。さらに、それらの組み合わせで補正を行ってもよい。すなわち、像振れ補正を行うために駆動される光学素子は、像振れ補正レンズであってもよいし、撮像素子であってもよいし、その両方であってもよい。
次に、露光が終了するとCPU103はステップS5で画像処理装置106を制御し、撮像素子102から得られた画像の現像処理を行う。
次に、CPU103はステップS6で現像処理された画像を記憶媒体107に保存し、ステップS1に戻る。
一方、ステップS3で撮影を行わないと判断した場合、CPU103はステップS3で撮影を行うと判断するまで、ステップS1とステップS2の処理を繰り返す。
ここで、図7を用いてステップS2におけるCPU103の被写体角速度算出処理について説明する。図7は被写体角速度算出処理のフローチャートを示している。
まず、被写体角速度算出処理が実行されると、CPU103はステップS7で撮像素子102から得られた画像を用いて動きベクトルの算出を行い、動きベクトル情報として一時記憶装置104に保存する。
次に、CPU103はステップS8で角速度センサ105から角速度情報の取得を行い、一時記憶装置104に保存する。
次に、CPU103はステップS9で光学系101から焦点距離情報の取得を行い、一時記憶装置104に保存する。
次に、CPU103はステップS10で動きベクトル解析を行う。動きベクトル解析処理では、ステップS8で得られた角速度情報とステップS9で得られた焦点距離情報を用いて、ステップS7で得られた動きベクトル情報から被写体動きベクトル情報を作成する。
次に、CPU103はステップS11で被写体動きベクトル算出を行う。被写体動きベクトル算出処理ではステップS10で得られた被写体動きベクトル情報と測距位置情報から被写体動きベクトルを算出する。
次に、CPU103はステップS12で注目画像位置算出を行う。注目画像位置算出処理ではステップS1で得られた画像とステップS7で得られた動きベクトル情報と測距位置情報から注目画像位置を算出する。
最後に、CPU103はステップS13でステップS11で得られた被写体動きベクトルを角速度に変換し、角速度情報とあわせて被写体角速度を算出する。
ここで、図3を用いてステップS7における動きベクトル算出処理について説明する。図3はステップS7の動きベクトル算出を行うための動きベクトル検出部103aのブロック図を示している。動きベクトル検出部103aは、CPU103の内部に設けられ、撮像素子102により取得される複数の画像から動きベクトルを検出する検出手段としての機能を有する。
まず、現フレーム200はある時刻にステップS1において撮像素子102によって得られた画像である。現フレーム200は次の前フレーム204として一時記憶装置104に保存され、次フレームの処理に用いられる。
一方、前フレーム201はある時刻より1フレーム前にステップS1において撮像素子102によって得られた画像である。前フレーム201は次の前フレームとして一時記憶装置104に保存されており、CPU103がステップS7で動きベクトルの算出を行う際に一時記憶装置104から読み出される。
次に、動きベクトル算出部202は現フレーム200と前フレーム201を受け取り、フレーム間の動きベクトルを算出する。
最後に、動きベクトル算出部202によって算出された動きベクトルは動きベクトル情報203として一時記憶装置104に保存される。
ここで、図11と図12を用いて動きベクトル算出部202の処理について説明する。図11は一般的なテンプレートマッチング法を用いた動きベクトルの検出方法を示している。また、図12は、検出された動きベクトルの結果の例を示している。
まず、図11(A)に示すとおり、前フレーム画像において画面内に水平に8個、垂直に8個の計64個のテンプレート枠を配置し、各テンプレート枠内の画像をテンプレート画像として取得する。
次に、図11(B)に示すとおり、現フレーム画像においてサーチ範囲を設定する。サーチ範囲の中心はテンプレート枠の中心に一致するように設定する。動きベクトルは設定されたサーチ範囲内のうち左上から右下に向けて1画素ずつテンプレート画像と現フレームを比較し、もっとも相関値の高い位置を検索することで得られる。
なお、テンプレート枠のサイズや配置する枠の数、サーチ範囲の大きさはステップS7が実行されるときにCPU103が二次記憶装置108から読み出した値を設定してもよい。もしくは二次記憶装置108から読み出した値を初期値として設定しておき、それ以後はステップS7が実行されるたびに値を変更してもよい。また、本実施例では水平方向の枠の配置において、枠と枠の間に隙間を空けたが、このような配置方法に限定するものではなく、例えば、垂直方向と同様に隙間を空けないように配置してもよいし、もしくは垂直方向も隙間を空けて配置してもよい。
一方、図12に示された枠番号はベクトルが検出されたテンプレート枠を示しており、左上から順に番号が振られている。図11で例に挙げたテンプレート枠の場合、枠番号は50となる。
また、水平動きベクトルと垂直動きベクトルは前フレーム画像で設定されたテンプレート枠の位置と現フレーム画像で最も相関値の高い位置との差分によって得られた数値であり、水平と垂直それぞれで算出される。ベクトル量の単位はpixelであり、8ビット固定小数点で表される。最大値はサーチ範囲の大きさで決まっており、本実施例では±96ピクセルとする。符号は移動した方向を示しており、水平方向は左に移動しているので正の数値を取り、動きベクトル量は4.5pixelである。また垂直方向は下に移動しているので負の数値を取り、動きベクトル量は−3.25pixelである。
最後に、エラー番号はベクトル検出が正常に行われたかどうかを示しており、0は正常終了を意味している。例えば、枠番号51ではエラー番号が1となっている。これは低コントラストによって検出できなかったことを示している。低コントラストはテンプレート画像もしくはサーチ範囲にコントラストがなく、どの位置でも相関値が高く得られてしまうために発生する。一方、枠番号52ではエラー番号が2となっている。これは繰り返しパターンを検出したことを示している。繰り返しパターンはテンプレート枠およびサーチ範囲に高周波な高コントラストなパターンが含まれている場合に、相関値の高い位置が周期的に得られることで発生する。
次に図10を用いてステップS13におけるベクトルから角速度への変換について説明する。図10は被写体の動きと撮像素子102における被写体位置の動きとの関係を示している。
まず、ステップS11で算出されたベクトル量をdとし、撮像素子102の位置A’をステップS11で算出されたベクトルの検出された位置とする。また、撮像素子102の位置B’を位置A’がdだけ移動した位置とすると、角度A’OB’は角度A’OC’と角度B’OC’との差分で求められ、atan(Xa/f)−atan((Xa−d)/f)と表せる。なお、C’は撮像素子102の中心位置、Xaは位置A’から位置C’までの距離を表している。
次に、前フレーム画像を取得してから現フレーム画像を取得するまでの時間をTとする。ちなみに、Tの逆数はフレームレートとなる。このとき、角速度は角度の時間変化量であるので、被写体の角速度ωは角度A’OB’÷Tと表せる。
ここから動きベクトル量dから角速度ωへの変換式は以下の式1のように表せる。
次に、図8および図4を用いてステップS10におけるCPU103の動きベクトル解析処理について説明する。図8は動きベクトル解析処理のフローチャートである。また、図4は動きベクトル解析部103bのブロック図である。動きベクトル解析部103bは、CPU103の内部に設けられ、動きベクトル検出部103aにより検出された動きベクトルのうち背景とは別の被写体(主被写体)の動きベクトルを判定する判定手段としての機能を有する。
まず、動きベクトル解析処理が実行されるとCPU103はステップS14で度数分布作成を行う。このとき、CPU103は一時記憶装置104から動きベクトル情報203を読み出し、度数分布生成部300に入力する。度数分布生成部300では入力された動きベクトル情報からエラー情報を読み取って、正常終了した動きベクトルのみを抽出する。抽出された動きベクトル情報から水平および垂直動きベクトル量を読み取って、それぞれの方向で度数分布を生成する。度数分布生成部300によって生成された度数分布情報301はCPU103によって一時記憶装置104に保存される。
次に、CPU103はステップS15で角速度情報をベクトル量に変換する。このときCPU103は角速度情報焦点距離情報302を一時記憶装置104から読み出し角速度変換部303に入力しパンニング角速度からベクトル量への変換を行う。
次に、CPU103はステップS16で被写体動きベクトル判定を行う。このとき、CPU103は度数分布情報301を一時記憶装置104から読み出し、角速度変換部303で変換されたベクトル量とともに被写体動きベクトル判定部304へ入力する。
最後に、CPU103は被写体動きベクトル判定部304によって作成された被写体動きベクトル情報305を一時記憶装置104に保存し動きベクトル解析処理を終了する。
ここで、図13を用いて度数分布生成部300でのステップS14の度数分布生成処理について説明する。図13は水平方向に移動する被写体にあわせてカメラを水平方向にパンニングさせた時の度数分布の例を示している。
まず、図12で示したとおり動きベクトル量は8ビット固定小数点で表されるが、度数分布を作成する際には小数部を切り捨てる。
次に、符号つきでは扱いにくいため最大値の96を足すことですべて正の値に変換する。
この結果、図13(A)に示すとおり水平動きベクトルから作成した度数分布には被写体の動きベクトルの分布と背景の動きベクトルの分布の2つの分布が現れる。
一方、図13(B)に示すとおり垂直の動きベクトルから作成した度数分布には背景の動きベクトルの分布のみが現れる。
次に、図10を用いて角速度変換部303におけるステップS15の角速度変換処理について説明する。
ここではωをカメラの角速度とする。なお、被写体が静止していると仮定すると被写体の角速度はカメラの角速度と一致する。
次に、前フレーム画像を取得した時刻のある被写体の位置をAとすると、被写体は主点Oを通り撮像素子102の位置A’に結像する。
次に、現フレームを取得した時刻の被写体の位置をBとすると、被写体は主点Oを通り撮像素子102の位置B’に結像する。角速度ωの変換後の動きベクトル量は距離A’B’であり、これをdとする。
このとき、時間Tとカメラの角速度ωから角度AOBはω×Tと表せる。
次に、点Cを光軸と被写体の軌跡の交点とする。また点C’を光軸と撮像素子102の交点とする。なお、ここでの光軸とは被写体の軌跡および撮像素子102に対し垂直で主点Oを通る直線のことである。また、簡単のために、被写体の位置Aと位置Bを通る被写体の軌跡と撮像素子102は並行であると仮定する。このとき、主点Oから点C’までの距離をfとする。ちなみにfは焦点距離を意味している。
次に、点A’の点C’からの距離をXaとする。このとき角度A’OB’は角度A’OC’と角度B’OC’との差分で求められ、atan(Xa/f)−atan((Xa−d)/f)と表せる。
最後に、三角形AOCと三角形A’OC’は相似であり、三角形BOCと三角形B’OC’も相似である。よって角度AOBと角度A’OB’は等しくなるため、カメラの角速度ωから動きベクトル量dへの変換式は以下の式2のように表せる。
次に図9を用いて被写体動きベクトル判定部304におけるステップS16の被写体動きベクトル判定処理について説明する。図9は被写体動きベクトル判定処理のフローチャートを示している。
まず、被写体動きベクトル判定処理が実行されるとCPU103はステップS17で度数分布情報301から背景ピークの検出を行う。背景ピークの検出には角速度変換部303から入力されたカメラのパンニング角速度から変換された動きベクトル量(以後、ジャイロベクトル量と呼称する)を用いる。角速度変換部303で述べたとおり、背景のベクトル量はジャイロベクトル量に相当する。よって、ジャイロベクトル量近傍で閾値を超える度数を持つベクトルを背景ピークとする。なお、角速度センサ105の角速度を検出する精度やタイミングによって背景ピークとジャイロベクトル量は完全に一致するとは限らない。よってジャイロベクトル量を中心としたある範囲を背景の検索範囲とする。検索範囲の広さおよび度数の閾値はあらかじめ二次記憶装置108に保存しておいたものを読み出しして使用してもよい。また、二次記憶装置108に保存しておいたものを初期値として角速度や焦点距離、またはピークからのずれ量に応じて変化させてもよい。
次に、CPU103はステップS18で背景分布検出を行う。図13(A)および図13(B)に示すとおり、背景ベクトルの分布はある広がりを持っている。この広がりはベクトルの検出誤差であったり、度数分布を作成する際に生じる丸め誤差であったりする。よってステップS17で検出された背景ピークから度数分布の左右に度数を調べて、度数分布の度数がある閾値を下回る範囲を背景分布とする。なお、この閾値はあらかじめ二次記憶装置108に保存しておいたものを読み出しして使用してもよい。また、背景ピークの度数に応じて変化させてもよいし、度数分布の総度数に応じて変化させてもよい。
次に、CPU103はステップS19で被写体ピーク検出を行う。ステップS18で背景分布と検出された領域以外についてピークを検索し、そのピークが閾値を超えている場合に被写体ピークとする。なお、閾値はステップS17で使用した閾値を流用してもよいし、別の値を用いてもよい。
最後に、CPU103はステップS20で被写体分布検出を行う。検出方法はステップS18の背景分布検出と同じだが、閾値の設定は背景分布検出と同じ値を用いてもよいし、別の値を設定してもよい。
次に、図1を用いてステップS11における被写体動きベクトル算出処理について説明する。図1は被写体動きベクトル算出部103cのブロック図を示している。被写体動きベクトル算出部103cは、CPU103の内部に設けられ、被写体の動きベクトルのうち、被写体角速度を算出する際の対象となる動きベクトル(被写体ベクトル)を算出する被写体ベクトル算出手段としての機能を有する。
まず、被写体動きベクトル算出処理が実行されると、CPU103は一時記憶装置104から読み出した被写体動きベクトル情報305を移動方向算出部401に入力し、被写体の移動方向を算出する。このように、移動方向算出部401は、主被写体の動きベクトルに基づいて被写体の移動方向を算出する算出手段として機能する。移動方向の算出にはステップS19で検出された水平および垂直の被写体ピークのベクトル量とジャイロベクトル量を用いる。
ここで、水平被写体ピークのベクトル量をVph、垂直被写体ピークのベクトル量をVpv、水平方向のジャイロベクトル量をVoh、垂直方向のジャイロベクトル量をVovとすると移動方向の傾きαは以下の式3で表される。
カメラを右方向にもしくは上方向にパンニングさせたときに角速度の符号が正になるとすると、動きベクトルの符号と逆になるため、式2でピークベクトル量を減算している。
次に、CPU103は一時記憶装置104から読み出した測距位置情報402を注目点判定部403に入力し注目点の判定を行う。本実施例では注目点の位置は入力された測距位置の中心と検出枠座標の中心との距離が最も近い検出枠の中心座標とする。なお、本実施例では注目点判定の入力として測距位置情報402を用いたが、これは注目点判定を測距位置に限定するものではなく、例えば顔検出の結果を入力してもよいし、被写体領域の検出結果を入力してもよい。または、操作部110によって撮影者に位置を入力させてもよい。
次に、CPU103は一時記憶装置104から読み出した被写体動きベクトル情報305と移動方向算出部401で算出された被写体の移動方向および注目点判定部403で判定された注目点を対象ベクトル判定部404に入力し、対象ベクトルを判定する。
最後に、CPU103は対象ベクトル判定部404で判定された対象ベクトルをベクトル平均化処理部405に入力し、対象ベクトルと判定された被写体動きベクトルを平均化することで被写体ベクトル406を算出し、一時記憶装置104へ保存する。
ここで、図5および図15、図16を用いて第一の実施例における、ステップS12の注目画像位置算出処理について説明する。図5は注目画素位置算出部103dのブロック図を示している。注目画素位置算出部103dは、CPU103の内部に設けられ、測距位置情報402を取得することにより、撮像素子102により取得された画像のうち使用者が着目する着目点(以下、注目点ともいう)を特定する特定手段としての機能を有する。図14は注目画像位置算出処理のフローチャートを示している。
注目画像とは注目点判定部403で判定された注目点付近にある類似ベクトル成分で構成される画像を意味する。つまり、注目画像とはユーザが注目したい動きベクトル成分をもつ被写体画像と位置づけることができる。
まず、注目画像位置算出処理が実行されると、CPU103は一時記憶装置104へ保存されている前フレーム201と動きベクトル情報203と測距位置情報402を注目画像判定部306へ入力して前フレーム画像の一部から注目画像を抽出する。
まず、ステップS21で注目ベクトル枠を決定する。本実施例では注目ベクトル枠の位置は入力された測距位置の中心と検出枠座標の中心との距離が最も近い検出枠の中心座標とする。このように、注目画素位置算出部103dは、まずステップS21で測距位置情報402に基づいて注目ベクトル枠を特定する。なお、本実施例では注目点判定の入力として測距位置情報402を用いたが、これは注目点判定を測距位置に限定するものではなく、例えば顔検出の結果を入力してもよい。すなわち、注目画素位置算出部103dは、主被写体の顔位置情報に基づいて注目ベクトル枠を特定してもよい。また、被写体領域の検出結果を入力してもよい。
次に動きベクトル情報203から、注目ベクトル枠で検出された動きベクトルとの差分を算出する。動きベクトルの差は垂直方向と水平方向の両方を用いてもよいし、カメラのパンニング方向のベクトル成分のみを用いてもよい。
図15(A)は、注目ベクトル枠付近の動きベクトルの差分を示す図である。枠内に記載された数値が注目ベクトル枠とのベクトル差を表す。
注目ベクトル枠に隣接する検出枠から類似する動きベクトルを判定し、類似すると判定されたベクトル検出枠を包含する矩形領域を注目画像に設定する。
ステップS22では、第1閾値の動きベクトル差以内である注目画像を決定する。このように、注目画像(画像領域)は、ユーザが注目する注目点に最も近いと判定された位置(注目ベクトル枠)で検出される動きベクトルとの差が第1閾値より小さい動きベクトルを含むように領域が設定される。本実施例では第1閾値を「5」に設定する。
注目ベクトル枠の下方向にあるベクトル検出枠の動きベクトル差が1(<第1閾値)であるため、その検出枠を注目画像に含めた結果を、図15(B)で示している。
注目ベクトル枠の上方向にあるベクトル検出枠はエラー判定されているが、そのさらに上方向にあるベクトル枠のベクトル差は2(<第1閾値)である。このときエラー判定されたベクトル枠は低コントラストのために検出できなかったが動きベクトルの類似度が高いと推定できる、このようなケースではエラー判定されたベクトル枠も注目画像に含める。その結果を図15(C)で示している。
第1閾値以内にあるベクトル検出枠を注目画像にすべて含めると、ステップS23で注目画像の大きさが所定以上であるかを判定する。
注目画像の大きさが所定以下であるときには、ステップS24で、注目画像のマッチング精度を保証するために、第1閾値よりも大きい数値の第2閾値の動きベクトル差以内である注目画像を決定する。このように、第1閾値より小さい動きベクトルを含めるように注目画像を設定した際に、該注目画像の大きさが所定の大きさより小さくなる場合は、動きベクトル差が第1閾値よりも大きな第2閾値より小さい動きベクトルを含めるように注目画像を再設定する。本実施例では第2閾値を「10」に設定する。
図15(D)は、第2閾値以内のベクトル検出枠を包含する矩形となった注目画像を示す。第2閾値以内にあるベクトル検出枠を注目画像にすべて含めると、ステップS25で注目画像の大きさが所定以上であるかを再び判定する。
ステップS25で注目画像の大きさが所定以下のときには、注目画像を使用せずに処理を終了する。
ステップS23およびステップS25で注目画像候補の大きさが所定以上であるときは、一時記憶装置104へ算出された注目画像307を保存する。
以上により前フレームからユーザの注目する類似ベクトルをもつ注目画像が抽出されたので、現フレームの注目画像の位置を算出する。
図16は注目画像位置算出の一連の処理の概要を示す図である。
CPU103は一時記憶装置104へ保存されている注目画像307と現フレーム200をパターンマッチ処理部308に入力して、ステップS26でテンプレートマッチング法を用いて、現フレームの全画像内から注目画像と最も相関の高い位置を算出する。
最後に、最も相関の高い位置を注目画像位置情報309として一時記憶装置104へ保存する。
ここで、図17および図18を用いて、対象ベクトル判定部404における対象ベクトル判定処理について説明する。図17は十分に動きベクトルが検出されているときの対象ベクトル判定処理のフローチャートを示している。
まず、対象ベクトル判定処理が実行されると、CPU103はステップS27で移動方向を判定する。本実施例では、移動方向算出部401で算出された傾きαが1より小さいとき、被写体の移動方向を水平と判定する。そうでなければ、被写体の移動方向は垂直と判定する。
傾きαが1よりも小さい場合、CPU103はステップS28で注目点と設定された検出枠の縦方向に隣接する検出枠を対象に設定する。
一方、傾きαが1よりも大きい場合、CPU103はステップS29で注目点と設定された検出枠と水平方向に隣接する検出枠を対象に設定する。
このように、CPU103は、注目画像(画像領域)における、注目点に最も近い位置(検出枠)に対し水平方向(第1方向)、または、縦方向(第1方向と直交する第2方向)にある検出枠を対象に設定する。具体的に、水平方向と被写体の移動方向との間の角度が縦方向と被写体の移動方向との間の角度より小さい場合は、縦方向にある検出枠を対象に設定する。また、縦方向と被写体の移動方向との間の角度が水平方向と被写体の移動方向との間の角度より小さい場合は、水平方向にある検出枠を対象に設定する。そして、対象として設定された方向にある検出枠から得られる動きベクトル(対象ベクトル)に基づいて像振れ補正制御を行う。
以上のように対象ベクトルを設定することで注目点の被写体の角速度を精度よく算出できる。ただし、一方で低コントラストや繰り返しパターンにより動きベクトルを正しく検出できない場合も考慮する必要がある。
図18では注目点の被写体の動きベクトルを正しく検出できないときの、対象ベクトル判定処理のフローチャートを示している。
まず、対象ベクトル判定処理が実行されると、CPU103はステップS30で注目点と設定された検出枠の周囲が正しくベクトル検出されない被写体かどうかを判定する。この判定方法は、注目点の周囲のエラーベクトル検知数で判断してもよいし、検出枠に対するエラーベクトル率割合で判断してもよく、様々な方法が採用できる。
ステップS30で注目点付近がエラーベクトルと判定されなかったときは、ステップS27からの方法を採用する。
ステップS30で注目点付近がエラーベクトルと判定されたときは、ステップS31で一時記憶装置104へ注目画像位置情報309が保存されているか判断する。注目画像位置情報309が存在しないときは、ステップS27からの方法を採用する。
注目画像位置情報309が存在するときは、ステップS32で注目画像枠内に被写体ベクトルの検出枠があるか判定する。注目画像枠内とは注目画像位置を中心にして注目画像が含まれる画像領域を表す。
ステップS32で、注目画像枠内に被写体ベクトル枠があるとき、ステップS33で注目画像枠内に存在する検出枠を対象に設定する。
ステップS32で、注目画像枠内に被写体ベクトル枠がないとき、ステップS34で前フレームの注目画像位置と現フレームの注目画像位置の差を動きベクトルに算出して対象に設定する。
このように、対象ベクトル判定部404は、注目点の近傍の動きベクトルの信頼性が高いと判定した場合には、注目点と被写体の移動方向から対象ベクトルを判定する。また、注目点の近傍の動きベクトルの信頼性が低いと判定した場合には、被写体の移動方向と注目画像位置情報から対象ベクトルを判定する。
以上で対象ベクトル判定処理が終了する。
図19は対象ベクトル判定の例を示している。
動きベクトルの検出枠が四角形で表わされている。そのうち、ステップS18で背景ベクトルと判定された検出枠を破線で示している。また、ステップS20で被写体ベクトルと判定された検出枠を実線で示している。次に、被写体の移動方向を点線の矢印で示している。図19の例ではαが0であり、被写体の移動方向は右である。次に、注目点判定部403で注目点と判定された位置を星印で示している、注目点付近にエラーベクトル判定された検出枠が存在するような場合には、対象ベクトル判定処理において、ステップS30が実行される。ステップS30では、注目点付近にエラーベクトルが多くあることから、注目画像位置情報を用いて注目画像枠内にある検出枠を対象と設定する。具体的に、図19に示すように、注目点に最も近いと判定された位置(検知枠)から縦方向にある被写体ベクトル検知枠の動きベクトルがエラーベクトルのみである場合は、注目画像における、星印位置に対し水平方向にある検出枠を対象と設定する。設定された検出枠を太枠で示している。最後に、対象と設定された検出枠で検出された動きベクトルを用いて被写体の角速度を求める。そして、CPU103は、この算出された被写体の角速度と角速度センサ105から取得した角速度との差分から被写体のブレがなくなるように像振れ補正処理を行う。
このように、CPU103は、撮像素子102により取得される画像のうち主被写体の動きベクトルおよび注目点に応じた画像領域(注目画像)を設定し、該画像領域に基づいて像振れ補正制御を行っている。より具体的には、主被写体の動きベクトルのうち注目点に最も近い位置(検知枠)で検出される動きベクトルに類似した動きベクトルを有する画像領域を設定し、該画像領域における動きベクトル(対象ベクトル)に基づいて像振れ補正制御を行う。
以上のようにして対象ベクトルを設定することで、注目点の近くに低コントラスト成分や繰り返しパターン成分があり動きベクトルを正しく検出できないときにも、注目点の被写体の角速度を精度よく算出できる。故に、その角速度を用いて流し撮りアシストを行うことで、注目点がぶれない流し撮り画像が得られる。すなわち、撮影者が止めたいと思われる場所がぶれないような流し撮りアシストが可能になる。
ここで、図20を用いて第二の実施例における、ステップS12の注目画像位置算出処理について説明する。
第一の実施例では、水平方向と垂直方向の区別なく注目ベクトル枠のベクトル差のみをもとに注目画像を算出したが、前述のとおり被写体の角速度をより精度よく求めるためには、被写体動き方向と直交する方向に対象ベクトルを設定することで効果がある。
第一の実施例の方法でも、仮に被写体の動きが水平方向であるとした場合、注目ベクトル枠との動きベクトルの差が垂直方向のほうが小さくなるために、垂直方向に長い注目画像とすることができる。その結果として注目点の垂直方向にある対象ベクトルを採用することが可能であるが、ベクトル検出誤差の影響によってはその限りではない。
そのため第二の実施例では、被写体の動き方向を注目画像の決定に利用する方法について述べる。
まず、注目画像算出処理が実行されると、CPU103は一時記憶装置104へ保存されている前フレーム201と動きベクトル情報203と測距位置情報(測距枠情報)402を注目画像判定部306へ入力して前フレーム画像の一部から注目画像を抽出する。
まず、ステップS21で注目ベクトル枠を決定する。本実施例では注目ベクトル枠の位置は入力された測距位置の中心と検出枠座標の中心との距離が最も近い検出枠の中心座標とする。なお、本実施例では注目点判定の入力として測距位置情報402を用いたが、これは、注目点判定を測距位置に限定するものではなく、例えば顔検出の結果を入力してもよいし、被写体領域の検出結果を入力してもよい。
次に動きベクトル情報203から、注目ベクトル枠で検出された動きベクトルとの差分を算出する。動きベクトルの差は垂直方向と水平方向の両方を用いてもよいし、カメラのパンニング方向のベクトル成分のみを用いてもよい。
図20(A)は、注目ベクトル枠付近の動きベクトルの差分を示す図である。枠内に記載された数値が注目ベクトル枠とのベクトル差を表す。
注目ベクトル枠に隣接する検出枠から類似する動きベクトルを判定し、類似すると判定されたベクトル検出枠を包含する矩形領域を注目画像に設定する。
ステップS22では、第1閾値の動きベクトル差以内となる注目画像を決定する。本実施例では第1閾値の基準値を「5」に設定する。
さらに、本実施例では被写体の動きベクトル方向をもとに基準値に掛ける係数に重みづけをおこなう。つまり注目ベクトル枠と平行する方向に対しては閾値を小さくして、直交する方向に対しては閾値を大きくする。これにより、注目ベクトル枠から直交する方向に画像成分を多くもつ注目画像を決定することができる。
本実施例では、被写体の動きを水平方向として、水平方向の重みづけ係数を「1/2」、垂直方向の重みづけ係数を「2」とする。この結果、水平方向の第1閾値が「2.5」、垂直方向の第1閾値が「10」となる。このように、本実施例における第1閾値は、基準値「5」に重み付け係数が掛けられた値となり、該重み付け係数は、水平方向(第1方向)と垂直方向(第2方向)とで互いに異なっている。具体的に、水平方向に対する重み付け係数は、水平方向と被写体の移動方向との間の角度が垂直方向と被写体の移動方向との間の角度より小さい場合に、垂直方向に対する重み付け係数よりも小さく設定される。逆に、垂直方向と被写体の移動方向との間の角度が水平方向と被写体の移動方向との間の角度より小さい場合は、垂直方向に対する重み付け係数は、水平方向に対する重み付け係数よりも小さく設定される。
注目ベクトル枠の下方向にあるベクトル検出枠の動きベクトル差が1(<垂直方向の第1閾値)であるため、その検出枠を注目画像に含めた結果を、図20(B)で示している。
注目ベクトル枠の上方向にあるベクトル検出枠はエラー判定されているが、そのさらに上方向にあるベクトル枠のベクトル差は2(<垂直方向の第1閾値)である。このときエラー判定されたベクトル枠は低コントラストのために検出できなかったが動きベクトルの類似度が高いと推定できる。このようなケースではエラー判定されたベクトル枠も注目画像に含める。その結果を図20(C)で示している。
第1閾値以内にあるベクトル検出枠を注目画像にすべて含めると、ステップS23で注目画像の大きさが所定以上であるかを判定する。
注目画像の大きさが所定以下であるときには、ステップS24で、注目画像のマッチング精度を保証するために、第1閾値よりも大きい数値の第2閾値の動きベクトル差以内とある注目画像を決定する。本実施例では第2閾値の基準値を「10」に設定する。
第1閾値と同じ係数を掛けると、水平方向の第2閾値が「5」、垂直方向の第2閾値が「20」となる。すなわち、本実施例における第2閾値は、基準値「20」に重み付け係数が掛けられた値となり、該重み付け係数は、水平方向(第1方向)と垂直方向(第2方向)とで互いに異なっている。具体的に、水平方向に対する重み付け係数は、水平方向と被写体の移動方向との間の角度が垂直方向と被写体の移動方向との間の角度より小さい場合に、垂直方向に対する重み付け係数よりも小さく設定される。逆に、垂直方向と被写体の移動方向との間の角度が水平方向と被写体の移動方向との間の角度より小さい場合は、垂直方向に対する重み付け係数は、水平方向に対する重み付け係数よりも小さく設定される。
図20(C)の注目画像の左右方向にあるベクトル枠には水平方向の第2閾値以内のものがないのに対し、注目画像の上方向のベクトル枠の差は10(<垂直方向の第2閾値)であるため、その検出枠を注目画像に含める。
図20(D)は、第2閾値以内のベクトル検出枠を包含する矩形となった注目画像を示す。第2閾値以内にあるベクトル検出枠を注目画像にすべて含めると、ステップS25で注目画像の大きさが所定以上であるかを再び判定する。
ステップS25で注目画像の大きさが所定以下のときには、注目画像を使用せずに処理を終了する。
ステップS23およびステップS25で注目画像候補の大きさが所定以上であるときは、一時記憶装置104へ算出された注目画像307を保存する。
以上により前フレームからユーザの注目する類似ベクトルをもつ注目画像を抽出されたので、現フレームの注目画像の位置を算出する。
図21は対象ベクトル判定の例を示している。動きベクトルの検出枠が四角形で表わされている。そのうち、ステップS18で背景ベクトルと判定された検出枠を破線で示している。また、ステップS20で被写体ベクトルと判定された検出枠を実線で示している。次に、被写体の移動方向を点線の矢印で示している。図19の例ではαが0であり、被写体の移動方向は右である。次に、注目点判定部403で注目点と判定された位置(検知枠)を星印で示している、注目点付近にエラーベクトル判定された検出枠が存在するような場合には、対象ベクトル判定処理において、ステップS30が実行される。ステップS30では、注目点付近にエラーベクトルが多くあることから、注目画像位置情報を用いて注目画像枠内にある検出枠を対象と設定する。
図19で示された第1の実施例での対象ベクトル判定と比較すると、垂直方向に多くの対象ベクトルを設定できることが示される。
最後に、対象と設定された検出枠で検出された動きベクトルを用いて被写体の角速度を求める。
以上のようにして対象ベクトルを設定することで、注目画像に被写体の動き方向と同じ方向成分が多くなることを防ぐことができ、ユーザの求めたい対象ベクトルを注目画像から検出する可能性が上がり、注目点の被写体の角速度を精度よく算出できる。故に、その角速度を用いて流し撮りアシストを行うことで、注目点がぶれない流し撮り画像が得られる。すなわち、撮影者が止めたいと思われる場所がぶれないような流し撮りアシストが可能になる。
本発明によれば、動きベクトルを検出しにくい被写体に対して撮影者が止めたい場所がぶれないように流し撮りアシストすることを可能にした動きベクトル検出装置を提供することができる。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
なお、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPU等)がプログラムコードを読み出して実行する処理である。この場合、そのプログラム(すなわち、各実施例における各ステップが記述されたコンピュータで実行可能なプログラム)、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
本発明は、コンパクトデジタルカメラ、一眼レフカメラ、ビデオカメラなどの撮像装置に好適に利用できる。
103a:動きベクトル検出部
103b:動きベクトル解析部
103d:注目画素位置算出部
103:CPU

Claims (13)

  1. 撮像装置のパンニング速度を検出するパンニング検出手段と、
    第1方向、及び、該第1方向と直交する第2方向に配列された複数の検出枠が撮像面に設定された撮像手段により取得される複数の画像から動きベクトルを検出するベクトル検出手段と、
    前記検出枠から得られる動きベクトルのうち被写体の動きベクトルを判定する判定手段と、
    前記画像のうち使用者が着目する着目点を特定する特定手段と、
    前記画像のうち前記被写体の動きベクトル及び前記着目点に応じた画像領域を設定し、前記画像領域に基づいて、前記被写体の移動速度と前記撮像装置のパンニング速度の差を補正するように、光学素子を駆動する制御手段と、
    前記被写体の動きベクトルに基づいて前記被写体の移動方向を算出する算出手段と、を有し、
    前記制御手段は、前記第1方向と前記移動方向との間の角度が前記第2方向と前記移動方向との間の角度より小さい場合に、前記第1方向より前記第2方向に個数が多く連続した検出枠から得られる動きベクトルに基づいて前記光学素子を駆動することを特徴とする撮像装置。
  2. 前記制御手段は、前記第2方向にある動きベクトルがエラーベクトルのみである場合は、前記画像領域における、前記着目点に最も近い位置に対し前記第1方向にある動きベクトルに基づいて前記光学素子を駆動することを特徴とする請求項1に記載の撮像装置。
  3. 撮像装置のパンニング速度を検出するパンニング検出手段と、
    第1方向、及び、該第1方向と直交する第2方向に配列された複数の検出枠が撮像面に設定された撮像手段により取得される複数の画像から動きベクトルを検出するベクトル検出手段と、
    前記検出枠から得られる動きベクトルのうち被写体の動きベクトルを判定する判定手段と、
    前記画像のうち使用者が着目する着目点を特定する特定手段と、
    前記画像のうち前記被写体の動きベクトル及び前記着目点に応じた画像領域を設定し、前記画像領域に基づいて、前記被写体の移動速度と前記撮像装置のパンニング速度の差を補正するように、光学素子を駆動する制御手段と、
    前記被写体の動きベクトルに基づいて前記被写体の移動方向を算出する算出手段と、を有し、
    前記画像領域は、前記着目点に最も近い位置で検出される動きベクトルとの差が第1閾値より小さい動きベクトルを含んでおり、
    前記第1閾値は、基準値に重み付け係数が掛けられた値であり、
    前記重み付け係数は、第1方向と該第1方向と直交する第2方向とで異なることを特徴とする撮像装置。
  4. 前記第1方向に対する重み付け係数は、前記第1方向と前記移動方向との間の角度が前記第2方向と前記移動方向との間の角度より小さい場合に、前記第2方向に対する重み付け係数よりも小さいことを特徴とする請求項3に記載の撮像装置。
  5. 前記制御手段は、
    前記第1閾値より小さい動きベクトルを含めるように画像領域を設定した際に、該画像領域の大きさが所定の大きさより小さくなる場合は、前記差が前記第1閾値よりも大きな第2閾値より小さい動きベクトルを含めるように画像領域を設定することを特徴とする請求項3または4に記載の撮像装置。
  6. 前記第2閾値は、基準値に重み付け係数が掛けられた値であり、
    前記重み付け係数は、第1方向と該第1方向と直交する第2方向とで異なることを特徴とする請求項5に記載の撮像装置。
  7. 前記第1方向に対する重み付け係数は、前記第1方向と前記移動方向との間の角度が前記第2方向と前記移動方向との間の角度より小さい場合に、前記第2方向に対する重み付け係数よりも小さいことを特徴とする請求項6に記載の撮像装置。
  8. 前記特定手段は、測距位置情報に基づいて前記着目点を特定することを特徴とする請求項1ないし7のいずれか1項に記載の撮像装置。
  9. 前記特定手段は、前記被写体の顔位置情報に基づいて前記着目点を特定することを特徴とする請求項1ないし7のいずれか1項に記載の撮像装置。
  10. 撮像装置のパンニング速度を検出するパンニング速度検出ステップと、
    第1方向、及び、該第1方向と直交する第2方向に配列された複数の検出枠が撮像面に設定された撮像手段により取得される複数の画像から動きベクトルを検出する動きベクトル検出ステップと、
    前記検出枠から得られる動きベクトルのうち被写体の動きベクトルを判定する判定ステップと、
    前記画像のうち使用者が着目する着目点を特定する特定ステップと、
    前記画像のうち前記被写体の動きベクトル及び前記着目点に応じた画像領域を設定し、前記画像領域に基づいて、前記被写体の移動速度と前記撮像装置のパンニング速度の差を補正するように、光学素子を駆動する制御ステップと、
    前記被写体の動きベクトルに基づいて前記被写体の移動方向を算出する算出ステップと、を有し、
    前記制御ステップは、前記第1方向と前記移動方向との間の角度が前記第2方向と前記移動方向との間の角度より小さい場合に、前記第1方向より前記第2方向に個数が多く連続した検出枠から得られる動きベクトルに基づいて前記光学素子を駆動することを特徴とする撮像装置の制御方法。
  11. 撮像装置のパンニング速度を検出するパンニング速度検出ステップと、
    第1方向、及び、該第1方向と直交する第2方向に配列された複数の検出枠が撮像面に設定された撮像手段により取得される複数の画像から動きベクトルを検出する動きベクトル検出ステップと、
    前記検出枠から得られる動きベクトルのうち被写体の動きベクトルを判定する判定ステップと、
    前記画像のうち使用者が着目する着目点を特定する特定ステップと、
    前記画像のうち前記被写体の動きベクトル及び前記着目点に応じた画像領域を設定し、前記画像領域に基づいて、前記被写体の移動速度と前記撮像装置のパンニング速度の差を補正するように、光学素子を駆動する制御ステップと、
    前記被写体の動きベクトルに基づいて前記被写体の移動方向を算出する算出ステップと、を有し、
    前記画像領域は、前記着目点に最も近い位置で検出される動きベクトルとの差が第1閾値より小さい動きベクトルを含んでおり、
    前記第1閾値は、基準値に重み付け係数が掛けられた値であり、
    前記重み付け係数は、第1方向と該第1方向と直交する第2方向とで異なることを特徴とする撮像装置の制御方法。
  12. 請求項10または11に記載の制御方法の各ステップが記述されたコンピュータで実行可能なプログラム。
  13. コンピュータに、請求項12に記載の制御方法の各ステップを実行させるためのプログラムが記憶されたコンピュータが読み取り可能な記憶媒体。
JP2016017752A 2016-02-02 2016-02-02 撮像装置およびその制御方法、プログラム、記憶媒体 Active JP6671994B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016017752A JP6671994B2 (ja) 2016-02-02 2016-02-02 撮像装置およびその制御方法、プログラム、記憶媒体
US15/421,622 US10212347B2 (en) 2016-02-02 2017-02-01 Image stabilizing apparatus and its control method, image pickup apparatus, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016017752A JP6671994B2 (ja) 2016-02-02 2016-02-02 撮像装置およびその制御方法、プログラム、記憶媒体

Publications (3)

Publication Number Publication Date
JP2017138379A JP2017138379A (ja) 2017-08-10
JP2017138379A5 JP2017138379A5 (ja) 2019-03-07
JP6671994B2 true JP6671994B2 (ja) 2020-03-25

Family

ID=59386265

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016017752A Active JP6671994B2 (ja) 2016-02-02 2016-02-02 撮像装置およびその制御方法、プログラム、記憶媒体

Country Status (2)

Country Link
US (1) US10212347B2 (ja)
JP (1) JP6671994B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6700874B2 (ja) * 2016-03-08 2020-05-27 キヤノン株式会社 像ブレ補正装置及びその制御方法、プログラム、記憶媒体
JP7023663B2 (ja) * 2017-10-12 2022-02-22 キヤノン株式会社 撮像装置およびその制御方法
JP7129201B2 (ja) * 2018-04-18 2022-09-01 キヤノン株式会社 画像処理装置、撮像装置、画像処理方法、及びプログラム
CN111292350B (zh) * 2018-12-10 2024-03-01 北京京东乾石科技有限公司 目标朝向的优化算法、系统、电子设备及存储介质
JP7414484B2 (ja) * 2019-11-19 2024-01-16 キヤノン株式会社 光学機器、撮像装置および制御方法
CN110991550B (zh) * 2019-12-13 2023-10-17 歌尔科技有限公司 一种视频监控方法、装置、电子设备及存储介质
CN111292354B (zh) * 2020-01-22 2023-07-28 维沃移动通信有限公司 误检测抑制方法及电子设备
JP2021164087A (ja) * 2020-04-01 2021-10-11 キヤノン株式会社 撮像装置およびその制御方法
US11228702B1 (en) * 2021-04-23 2022-01-18 Gopro, Inc. Stabilization of face in video

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4193812B2 (ja) * 2005-05-13 2008-12-10 カシオ計算機株式会社 撮像装置、撮像方法及びそのプログラム
JP2006317848A (ja) 2005-05-16 2006-11-24 Canon Inc 静止画撮像装置
US7760997B2 (en) * 2006-04-14 2010-07-20 Seiko Epson Corporation Shake detection device, shake detection method, and shake detection program
JP4961850B2 (ja) 2006-06-15 2012-06-27 ソニー株式会社 動き検出方法、動き検出方法のプログラム、動き検出方法のプログラムを記録した記録媒体及び動き検出装置
JP4201809B2 (ja) * 2006-11-13 2008-12-24 三洋電機株式会社 手ぶれ補正装置及び方法並びに撮像装置
JP4759524B2 (ja) * 2007-01-09 2011-08-31 富士フイルム株式会社 電子式手振れ補正方法及びその装置並びに電子式手振れ補正プログラムと撮像装置
JP2009290827A (ja) * 2008-06-02 2009-12-10 Sony Corp 画像処理装置および画像処理方法
WO2009150696A1 (ja) * 2008-06-10 2009-12-17 富士通株式会社 画像補正装置および画像補正方法
JP5316175B2 (ja) 2009-04-03 2013-10-16 株式会社ニコン 電子カメラ
JP5643563B2 (ja) * 2010-07-22 2014-12-17 キヤノン株式会社 画像処理装置及びその制御方法
JP5742179B2 (ja) * 2010-11-05 2015-07-01 ソニー株式会社 撮像装置、画像処理装置、および画像処理方法、並びにプログラム
JP6489879B2 (ja) * 2015-03-09 2019-03-27 キヤノン株式会社 画像再生装置及び画像再生方法

Also Published As

Publication number Publication date
US10212347B2 (en) 2019-02-19
JP2017138379A (ja) 2017-08-10
US20170223272A1 (en) 2017-08-03

Similar Documents

Publication Publication Date Title
JP6671994B2 (ja) 撮像装置およびその制御方法、プログラム、記憶媒体
JP5054063B2 (ja) 電子カメラ、画像処理装置及び画像処理方法
JP6539091B2 (ja) 撮像装置およびその制御方法
US10148889B2 (en) Image processing apparatus and control method thereof, image capturing apparatus and storage medium
US9865064B2 (en) Image processing apparatus, image processing method, and storage medium
JP6577852B2 (ja) 動きベクトル検出装置およびその制御方法
JP2006211139A (ja) 撮像装置
JP2017092592A (ja) 追尾制御装置および追尾制御方法、光学機器、撮像装置
US10194085B2 (en) Image pickup apparatus and its control method
US10212348B2 (en) Image processing apparatus, its control method, image capturing apparatus, and storage medium
JP2009141475A (ja) カメラ
JP2019083364A (ja) 画像処理装置、撮像装置および制御方法
JP4771536B2 (ja) 撮像装置及び主被写体となる顔の選択方法
JP4807623B2 (ja) 撮像装置、撮像方法及び撮像プログラム
KR101880636B1 (ko) 디지털 촬영 장치 및 그의 제어 방법
JP5278483B2 (ja) 撮像装置、撮像方法及び撮像プログラム
JP5446660B2 (ja) 画像認識装置、および、撮像装置
JP6833607B2 (ja) 制御装置、撮像装置、制御方法、プログラム、および、記憶媒体
JP2009017093A (ja) 画像認識装置、焦点調節装置および撮像装置
US10681274B2 (en) Imaging apparatus and control method thereof
JP2020043544A (ja) 撮像装置およびその制御方法、プログラムならびに記憶媒体
US20220292692A1 (en) Image processing apparatus and method of processing image
US20160350924A1 (en) Image capturing apparatus and image processing method
JP5447579B2 (ja) 追尾装置、焦点調節装置および撮影装置
JP2009038572A (ja) 振れ補正装置、撮影装置、振れ検出装置、撮影方法、振れ補正装置の製造方法、振れ検出装置の製造方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190122

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190122

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200106

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200204

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200304

R151 Written notification of patent or utility model registration

Ref document number: 6671994

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151