JP4876065B2 - 動きベクトル検出装置及び動きベクトル検出方法及び撮像装置及びプログラム - Google Patents

動きベクトル検出装置及び動きベクトル検出方法及び撮像装置及びプログラム Download PDF

Info

Publication number
JP4876065B2
JP4876065B2 JP2007324016A JP2007324016A JP4876065B2 JP 4876065 B2 JP4876065 B2 JP 4876065B2 JP 2007324016 A JP2007324016 A JP 2007324016A JP 2007324016 A JP2007324016 A JP 2007324016A JP 4876065 B2 JP4876065 B2 JP 4876065B2
Authority
JP
Japan
Prior art keywords
motion vector
groups
image data
representative
class
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.)
Expired - Fee Related
Application number
JP2007324016A
Other languages
English (en)
Other versions
JP2009147757A (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 JP2007324016A priority Critical patent/JP4876065B2/ja
Publication of JP2009147757A publication Critical patent/JP2009147757A/ja
Application granted granted Critical
Publication of JP4876065B2 publication Critical patent/JP4876065B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Studio Devices (AREA)
  • Image Analysis (AREA)
  • Adjustment Of Camera Lenses (AREA)

Description

本発明は、画像の動きベクトルを検出し、検出された動きベクトルを用いて撮影された動画像のぶれを補正する技術に関するものである。
ビデオカメラなどの動画像を撮影する撮像装置においては、特にレンズを望遠側にズームしたときに、手ぶれにより画像がぶれることが問題となる。このような手ぶれによる画像のぶれを防止するために、従来より撮影した画像信号から画像の動きベクトルを検出し、この動きベクトルに基づいて画像のぶれを補正する技術が提案されている。
画像の動きベクトルを検出する方法としては、従来より、相関演算に基づく相関法やブロックマッチング法等が知られている。
ブロックマッチング法では、入力された画像信号を複数の適当な大きさのブロック領域(例えば8画素×8ライン)に分割する。そして、このブロック単位で前のフィールド(またはフレーム)の一定範囲の画素との差を計算し、この差の絶対値の和が最小となる前のフィールド(またはフレーム)のブロックを探索する。そして、画面間の相対的なずれが、そのブロックの動きベクトルを示している。
また、マッチング演算については、尾上守夫等により、情報処理Vol.17,No.7,p.634 〜640 July 1976 で詳しく論じられている。
次に、ブロックマッチング法を用いた従来の動きベクトル検出法の一例を、図面を用いて説明する。図11は従来の動きベクトル検出法によりぶれを防止する装置の概略ブロック図である。
まず動きベクトルの検出対象となる画像信号(フィールドまたはフレーム)が画像メモリ101及び空間周波数成分を抽出するフィルタ102に加えられる。画像メモリ101は画像信号を一時記憶する。フィルタ102は画像信号から動きベクトル検出に有用な空間周波数成分を抽出する。即ち、画像信号の低空間周波数成分及び高空間周波数成分を除去する。
フィルタ102を通過した画像信号は2値化回路103に加えられる。2値化回路103は画像信号を、ゼロレベルを基準として2値化する。具体的には出力信号の符号ビットを出力する。
2値化された画像信号は相関演算回路104及び1フィールド期間遅延手段としてのメモリ105に加えられる。相関演算回路104には更にメモリ105から前フィールドの画像信号が加えられている。
相関演算回路104はブロックマッチング法に従い、上記のように適当な大きさのブロック領域に画像領域を分割し、ブロック単位に現フィールドと前フィールドとの相関演算を行い、その結果の相関値を動きベクトル検出回路106に加える。動きベクトル検出回路106は算出された相関値からブロック単位の動きベクトルを検出する。具体的には相関値が最小となる前フィールドのブロックを探索し、その相対的なずれを動きベクトルとしている。
このブロック単位の動きベクトルは動きベクトル決定回路107に加えられる。動きベクトル決定回路107はブロック単位の動きベクトルから全体の動きベクトルを決定する。具体的には、ブロック単位の動きベクトルの中央値または平均値を画像全体の動きベクトルとしている。
動きベクトル決定回路107は全体の動きベクトルをメモリ読み出し制御回路108に加える。メモリ読み出し制御回路108は上記の全体の動きベクトルに応じて画像の動きが相殺されるように画像メモリ101の読み出し位置を制御し、画像メモリ101からぶれが補正された画像信号が出力される。
しかしながら、上記の方法では、画像中に移動物がある場合、例えば検出された動きベクトルの平均値を全体の動きベクトルにすると、画像中の移動物の動きが混入してしまう。その結果、移動物が画面内の元の位置にとどまるように画像メモリの読み出し位置が変化し、それにより本来動きがないはずである画面内の領域の位置が変化するため、画面が移動物に引っ張られたような動きをしてしまう。
この問題点を解決する方法として、特許文献1には、次のような方法が開示されている。即ち、動きベクトルの大きさの絶対値が小さい方が補正すべき動きベクトルであり、大きい方が移動物であるという識別方法を用いることにより、移動物に引っ張られるような動きを回避している。
特許第2956056号公報
上記の特許文献1の方法は、撮像装置のぶれが比較的小さい場合や、撮像装置によって生じる画像ぶれが移動物の速度と比較して小さいときには有効である。例えば、撮像装置に装着される、又は撮像装置が備える撮像光学系の焦点距離が比較的短い場合等である。
しかしながら、撮像装置のぶれは、撮影環境や撮影者の熟練度等によってその大きさが変化する。また、撮像装置のぶれによって生じる画像ぶれは、上記撮像光学系の焦点距離に比例して大きくなっていく。上記のような事情からすると、撮像装置のぶれにより生じる動きベクトルと、移動物の移動による動きベクトルとの識別を、動きベクトルの大きさによってのみ行うと、誤差が大きくなると考えられる。
従って、本発明は上述した課題に鑑みてなされたものであり、その目的は、撮像装置のぶれにより生じる動きベクトルと、移動物の移動による動きベクトルとの識別を、精度良く行えるようにすることである。
上述した課題を解決し、目的を達成するために、本発明に係わる動きベクトル検出装置は、画像データを複数のブロック領域に分割して、分割されたそれぞれのブロック領域ごとに動きベクトルを検出する検出手段と、前記それぞれのブロック領域ごとの動きベクトルを、その大きさを階級とする度数分布上に振り分け、度数の大きさと階級間の距離に基づいて前記それぞれのブロック領域ごとの動きベクトルを1つ以上のグループに分類する動きベクトル分類手段と、前記動きベクトル分類手段により分類された結果、前記それぞれのブロック領域ごとの動きベクトルが複数のグループに分類された場合に、該複数のグループから1つのグループを選択して代表となる1つの動きベクトルを定める選択手段と、前記代表となる1つの動きベクトルに基づいて画像ぶれを補正するぶれ補正手段とを備え、前記選択手段は、過去の画像データにおける前記複数のグループのそれぞれの代表となる階級値の大小関係と、現在の画像データにおける前記複数のグループのそれぞれの代表となる階級値の大小関係とに基づいて、現在の画像データにおける前記複数のグループから前記1つのグループを選択することを特徴とする。
また、本発明に係わる撮像装置は、上記の動きベクトル検出装置を備えることを特徴とする。
また、本発明に係わる動きベクトル検出方法は、画像データを複数のブロック領域に分割して、分割されたそれぞれのブロック領域ごとに動きベクトルを検出する検出工程と、前記それぞれのブロック領域ごとの動きベクトルを、その大きさを階級とする度数分布上に振り分け、度数の大きさと階級間の距離に基づいて前記それぞれのブロック領域ごとの動きベクトルを1つ以上のグループに分類する動きベクトル分類工程と、前記動きベクトル分類工程により分類された結果、前記それぞれのブロック領域ごとの動きベクトルが複数のグループに分類された場合に、該複数のグループから1つのグループを選択して代表となる1つの動きベクトルを定める選択工程と、前記代表となる1つの動きベクトルに基づいて画像ぶれを補正するぶれ補正工程とを備え、前記選択工程は、過去の画像データにおける前記複数のグループのそれぞれの代表となる階級値の大小関係と、現在の画像データにおける前記複数のグループのそれぞれの代表となる階級値の大小関係とに基づいて、現在の画像データにおける前記複数のグループから前記1つのグループを選択することを特徴とする。
本発明によれば、撮像装置のぶれにより生じる動きベクトルと、移動物の移動による動きベクトルとの識別を、精度良く行うことが可能となる。
以下、本発明の好適な一実施形態について、図面を参照して詳細に説明する。
図1は、本発明の一実施形態に係わる動きベクトル検出装置を組み込んだ撮像装置としてのビデオ・カメラの構成を示すブロック図である。図1は、一実施形態のビデオカメラの電気的構成を示すブロック図である。
図1において、11はレンズおよび絞りからなる撮像光学系、12はCCDやCMOSセンサ等からなる固体撮像素子である。21は、撮像光学系11の内部の不図示のズームレンズ、フォーカスレンズ、絞り等を駆動するための駆動回路である。23は、撮像素子12を駆動するための駆動回路である。13は撮影した画像データに必要な信号処理を行う信号処理回路である。14は信号処理回路13で信号処理された画像データから、動きベクトルを検出する動きベクトル検出装置である。15は動きベクトル検出装置14により検出された動きベクトルから、記録または表示する画像データの範囲を決める制御を行うメモリ読み出し制御回路である。16は信号処理された画像データを記憶する画像メモリである。
18はメモリカード、ハードディスク等からなる記録媒体、17は信号処理された画像データを記録媒体18に記録するための記録回路、20は信号処理された画像データを表示する表示装置、19は表示装置20に画像を表示する表示回路である。22はビデオカメラ全体を制御するシステム制御部である。
以下、上記のように構成されるビデオカメラにおける撮影動作について説明する。
まず、駆動回路21は、システム制御部22からの制御信号に基づいて、撮像光学系11内のズームレンズ、フォーカスレンズ、絞りを駆動して、被写体像を撮像素子12上に結像させる。
撮像素子12は、システム制御部22により制御される駆動回路21が発生する駆動パルスにより駆動され、被写体像を光電変換して電気信号に変換し、アナログ画像信号を出力する。撮像素子12から出力されたアナログ画像信号は、信号処理回路13の内部の不図示のA/D変換器でデジタル画像信号に変換される。
次に、システム制御部22により制御される信号処理回路13では、デジタル画像信号に対して、不図示の色変換、ホワイトバランス補正、ガンマ補正等の画像処理、解像度変換処理、画像圧縮処理等が行われる。画像メモリ16は、信号処理中のデジタル画像信号を一時的に記憶したり、信号処理されたデジタル画像信号である画像データを記憶したりするために用いられる。
動きベクトル検出装置14は、信号処理回路13で信号処理された画像データから動きベクトルを検出する(詳細は後述する)。メモリ読み出し制御回路15は、動きベクトル検出装置14により検出された動きベクトル情報に基づいて、画像ぶれが補正されるように、記録または表示する画像データの範囲を決定する制御を行う。
信号処理回路13で信号処理された画像データや画像メモリ16に記憶されている画像データは、記録回路17において記録媒体18への記録に適したデータ(例えば階層構造を持つファイルシステムデータ)に変換されて記録媒体18に記録される。また、信号処理回路13で解像度変換処理が実施された後、表示回路19において表示装置20に適した信号(例えばNTSC方式のアナログ信号等)に変換されて表示装置20に表示されたりする。
図2は、動きベクトル検出装置14の概略構成を示すブロック図である。図11と同一符号は同一構成要素を示しており、重複する説明は省略する。
図2においては、ブロック単位の動きベクトルを検出する動きベクトル検出回路106の後段に、動きベクトル分類回路30と動きベクトル制御回路31が備えられている点が、図11と相違している。動きベクトル分類回路30の動作について以下に説明する。
図3Aは、撮影した現フィールドの画面上に、動きベクトル検出のためのブロック領域を示した一例を示す図である。図3Bは、直前のフィールドとの差により得られた動きベクトルを示す図である。また、図3Cは、全ブロック領域の動きベクトルのX方向(画面横方向)、Y方向(画面縦方向)のそれぞれの大きさの頻度を示すヒストグラム(度数分布)である。動きベクトル分類回路30では、まずこのヒストグラムデータの作成を行う。より具体的には、度数分布の横軸を移動ベクトルの大きさとし、所定の大きさ(範囲)ごとに区切って度数分布上の階級を設定する。そして、検出された各ブロックの移動ベクトルを、その大きさにより何れの階級に属するかを判断して、それぞれの度数としてプロットする。図3Bの例によれば、各ブロックの移動ベクトルとして、トータル40個の移動ベクトルが検出されるが、この40の度数を属する階級に振り分けてプロットすることで各階級の度数(頻度)を得ることができる。なお、それぞれ範囲を持つ階級の階級値としては、その階級の上限値と下限値の中間値を用いればよい。
図4Aに示すように画面内に移動物が入ってきた場合、移動物の領域における動きベクトルは、図4Bに示すようにその他の領域とは異なる。このときX方向のヒストグラムは、図4Cに示すように、Vstate(T1)とVmove(T1)の2つのピークが存在する形となる。Vmove(T1)は移動物の領域の動きベクトルであり、Vstate(T1)はその他の領域の動きベクトルであることが、図4Aとの関係で理解できる。ただし、この段階では、分離され得る2つのグループ(Vstate(T1)を含むプロット401〜404とVmove(T1)であるプロット405)が検出できただけである。いずれが手ぶれのみの移動ベクトルを表すグループであり、いずれが手ぶれに被写体の動きが重畳されたグループであるかはわからない。この判断については後述する。
ここではまず、検出された移動ベクトルをグループに分類する方法について説明する。
図4Cのような度数分布に対し、プロット403、405のような極値(ピーク)を探索する。ただし、この極値は予め定められた度数pを超えるもの(所定度数以上)である事とする。そして、極値が複数見つかった場合、それらの階級間の距離が予め定められたcを超える(所定量以上離れている)ものであるかを判断する。超えているものであれば、それらは互いに別グループと判定し、超えていなければ同一グループだと判定する。このようにして定められたグループは、その中で最も大きな度数を持つ階級をそのグループの代表とし、その階級値をそのグループの代表する階級値とする。なお、階級間距離cは、動きベクトル検出誤差よりも大きな値に設定される。
図4Cの場合、極値はプロット403とプロット405であり、これらは度数pを超えるものである。そして、これらの階級間の距離はdであり、これはcより大きいので、別グループであると判定できる。一方度数pを超えるものの、極値であるプロット403に隣接するプロット402は、階級間の距離がcを超えるものではないので、極値402のグループと同一グループであると判断できる。そして、これらに隣接し、度数pを超えないプロット401および404も、極値402のグループと同一グループであると判断できる。このようにして、各ブロックごとに検出された移動ベクトルは、1つ以上のグループに分類され、グループには代表する階級値、すなわちそのグループとしての代表移動ベクトル(図4CではVstate(T1)とVmove(T1))を求めることができる。このグループの分類は、動きベクトル分類回路30で行われる。
図4Dに示すように移動物が更に画面の中央の方向に進行すると、画面全体の動きベクトルは、図4Eのようになる。このときX方向のヒストグラムは、図4Fに示すように、Vstate(T2)とVmove(T2)の2つのピークが存在する形となる。Vmove(T2)は移動物の領域の動きベクトルであり、Vstate(T2)はその他の領域の動きベクトルであることが、図4Dとの関係で理解できる。
図4C及び図4Fに示すように、画面内に移動物が存在すると、動きベクトルの度数の山が、Vstate(T1)とVmove(T1)、Vstate(T2)とVmove(T2)のように複数存在するようになる。
次に動きベクトル制御回路31の動作について、図5に示すフローチャートを参照して説明する。
動きベクトル制御回路31は、ステップS10において動きベクトル分類回路30が現フィールド(現在の画像データ)において複数個の代表動きベクトルを検出したか否かを判定する。検出された代表動きベクトルが1つである場合は、ステップS14に進み、当該代表動きベクトルを画面全体(画像データ全体)の動きベクトルとして選択する。
検出された代表動きベクトルが複数個存在する場合は、ステップS11に進み、前フィールド(過去の画像データ)で複数個の代表動きベクトルが検出されたかどうかの判定を行う。前フィールドで複数個の代表動きベクトルが検出されていた場合は、ステップS12に進み、N番目の大きさの代表動きベクトルを画面全体の動きベクトルとして選択する。このN番目の大きさの代表動きベクトルを選択するということがどのようなことを意味するのかについては後述する。N番目の大きさの代表動きベクトルを求める方法としては、例えば公知のソートアルゴリズム等を用いる。
前フィールドで複数個の代表動きベクトルが検出されていない場合は、ステップS13に進み、後述する移動物識別処理により、検出された複数個の代表動きベクトルの中から1つを選択する。
ここで、図4C及び図4Fを用いて、ステップS13についての説明を行う。画面内に移動物が存在すると、移動物の領域の動きベクトルは、撮像装置のぶれによる画像ぶれに、移動物の移動による動きベクトルが重畳された大きさとなる。移動物が一定速度で移動していたとして、移動物の移動に起因するX方向の動きベクトルの大きさをVspeedとすると、図4C及び図4FにおけるVmove(T1)及びVmove(T2)は、以下の式で表すことができる。
Vmove(T1)=Vstate(T1)+Vspeed …(1)
Vmove(T2)=Vstate(T2)+Vspeed …(2)
よって、Vspeedが正であれば以下の式が成り立つ。
Vmove(T1)>Vstate(T1) …(3)
Vmove(T2)>Vstate(T2) …(4)
式(3)及び式(4)では、共に移動物の動きベクトルの方がその他の領域の動きベクトルよりも大きくなっている。移動物の速度の符号が入れ替わる、即ち移動物の移動方向が変わるまでの時間は、多くの場合、撮像装置のぶれによる画像ぶれの周期よりも長い。そのため、移動物が一方向に移動している間は、移動物とその他の領域との動きベクトルの大小関係が一定になる。このことを利用し、移動物とその他の領域との動きベクトルの識別を容易に行うことが可能となる。
なお、ここでは移動物が1種類の場合で説明を行ったが、移動物が2種類以上画面内に存在する場合も、同様の考え方を用いることができる。例えば、移動物が2種類画面内に存在する場合は、動きベクトル分類回路30によって検出される代表動きベクトルは3つとなる。ステップS13の移動物識別処理によって、2番目の大きさの代表動きベクトルが選択された場合(この選択処理については後述する)、移動体はそれぞれ別々の方向に動いていることとなる。この場合、移動体が画面内から消滅するまで、2番目の大きさの代表動きベクトルを選択し続ければよい。
次に、図6に示すフローチャートを参照して、ステップS13の移動物識別処理の1つ目の方法について説明する。
ステップS20において、動きベクトル分類回路30によって検出された複数の代表動きベクトルのうち、最も度数の大きい階級を含む動き代表ベクトルを、画面全体の動きベクトルとして選択する。例えば、図4CにおいてはVstate(T1)が画面全体の動きベクトルとして選択される。したがって、Vstate(T1)が手ぶれによる移動ベクトルであり、Vmove(T1)が移動物の移動分を重畳した移動ベクトルであることを判断できる。
次にステップS21において、公知のソートアルゴリズム等を用いて、上記複数の代表動きベクトルを大きさ順(度数の順ではなく動きベクトル自体の大きさの順)、すなわち階級値の大きさ順に並び替えを行い、上記選択した代表動きベクトルの大きさの順位(何番目の大きさか)を記憶する。記憶した順位はN番目とする。このN番目の大きさの代表動きベクトルが前述したステップS12で選択されるN番目の代表動きベクトルである。言い換えれば、前の画面(フィールド)で初めて複数の代表動きベクトルが検出された場合、前のフィールドではステップS13で最も度数の大きい代表動きベクトル、即ち大きさがN番目の代表動きベクトルが画面全体の動きベクトルとして選択される。そして、次のフィールド以降では、ステップS12で、このN番目の大きさの(同順位の)代表動きベクトルが画面全体の動きベクトルとして選択され続けることになる。例えば、図4Cにおいては、Vstate(T1)が画面全体の動きベクトルとして選択されているが、階級値の大きさ順に並べると、Vmove(T1)が1番、Vstate(T1)が2番となるので、N=2となる。次に図4Fを見ると、度数が大きいのはVmove(T2)であり、階級の大きさ順でも1番であるが、すでにN=2が定められているので、階級の大きさ順で2番であるVstate(T2)が、画面全体の動きベクトルとして選択されることになる。
図4Aのように移動物が外部から入ってくる場合、移動物の領域は徐々に大きくなる。即ち、移動物の領域の動きベクトルの度数が、小さな値から時間の経過と共に徐々に大きくなっていく。従って移動物が画面内に入ってきて、動きベクトル分類回路30によって初めて複数の代表動きベクトルが検出されたときに、上記のように最も度数の大きい代表動きベクトルを画面全体の動きベクトルとして選択する。そうすれば、移動物が画面内で一方向に移動している間、ステップS12の処理により、画面全体の動きベクトルを正しく識別し、移動物に画面が引っ張られる現象を防止することが可能となる。
次に、図7に示すフローチャートを用いて、ステップS13の移動物識別処理の2つ目の方法について説明する。
ステップS30において、動きベクトル分類回路30によって初めて複数の代表動きベクトルが検出された場合、検出された複数の代表動きベクトルのうち、前フィールドに検出された代表動きベクトルの大きさに最も近い代表動きベクトルを、画面全体の動きベクトルとして選択する。次にステップS31において、公知のソートアルゴリズム等を用いて、上記複数の代表動きベクトルを大きさ順に並び替えを行い、上記選択した代表動きベクトルの大きさの順位を記憶する。記憶した順位はN番目とする。
フィールド間の期間は、NTSC方式においては1/60秒という短い時間であり、現フィールドと1つ前のフィールドでは、撮像装置のぶれによる画像ぶれを示す動きベクトルが、近い値になる可能性が高い。従って、動きベクトル分類回路30によって初めて複数の代表動きベクトルが検出されたときに、1つ前のフィールドの代表動きベクトルの大きさに最も近い動きベクトルを画面全体の動きベクトルとして選択する。そうすれば、移動物が画面内で一方向に移動している間、ステップS12の処理により、画面全体の動きベクトルを正しく識別し、移動物に画面が引っ張られる現象を防止することが可能となる。
以上、ステップS13の移動物識別処理について、図6と図7を用いて2つの方法を説明したが、これらの方法は併用してもよい。例えば、後者の方法において、動きベクトル分類回路30によって検出された複数の代表動きベクトルの大きさと、前フィールドに検出された代表動きベクトルの大きさとの差分が、ほぼ同じであった場合に、前者の方法を用いるようにすることもできる。そうすれば、より正確に移動物の識別を行うことが可能となる。
また、上述した移動物識別処理は、全ての撮影状況で正しく移動物が識別できるわけではなく、誤識別してしまう可能性もある。そこで以下に述べる方法により、移動物の誤識別への対策を行うことにより、移動物識別の精度を上げることができる。
以下、図8乃至図10を参照して、移動物の誤識別対策について説明する。
撮影者が被写体を狙って撮影を行う場合、ある時間内において各フィールドで検出される動きベクトルの大きさは、移動物が画面内に存在しないとき、図10(a)に示すように、0を中心に正負に分布する。被写体ではない移動物が画面内に存在するときは、図10(b)に示すように、移動物の領域は移動物の速度を示す動きベクトルを中心に分布し、移動物ではない領域の動きベクトルは、0を中心に正負に分布する。
つまり、動きベクトル分類回路30によって検出された複数の動きベクトルのうち、移動物の領域以外の動きベクトルを求めるためには、0を中心に正負に分布している動きベクトルを求めればよい。移動物識別対策はこの現象を利用した処理とする。
図8のフローチャートは、図5のフローチャートにステップS15の移動物誤識別対策処理を追加したものである。図5と同一符号のステップは同一処理であり、説明は省略する。移動物誤識別対策処理(ステップS15)では、ステップS12で選択された代表動きベクトルが適切かどうかを判定し、適切でない場合は代表動きベクトルの再選択を行う。
次に、図9のフローチャートを用いて、移動物誤識別対策処理の内容について説明する。
ステップS40において、図8のステップS15で大きさの順位付けがなされた各々の代表動きベクトルについて、1つ前のフィールドと現フィールドで、代表動きベクトルの大きさの符号が正から負、もしくは負から正に変化したかどうかの判定を行う。そして、符号変化があった場合、その回数をカウントする。
ステップS41において、ステップS12において選択された代表動きベクトルと、選択されなかった代表動きベクトルの上記カウント数を比較する。そして、選択されなかった代表動きベクトルの上記カウント数が、選択された代表動きベクトルの上記カウント数を、所定カウント数以上上回ったかどうかの判定を行う。この判定は、図10を参照して説明したように、動きベクトルの大きさが0を中心に正負に分布しているかを判定するものである。
ステップS41において、選択されなかった代表動きベクトルの上記カウント数が、選択された代表動きベクトルの回数を上回った場合、ステップS42に進み、当該代表動きベクトルを画面全体の動きベクトルとして再選択する。次にステップS43において、上記再選択した代表動きベクトルの大きさの順位を記憶する。記憶した順位はN番目とする。
ステップS41において、選択されなかった代表動きベクトルの上記カウント数が、選択された代表動きベクトルの回数を上回らなかった場合、移動物誤識別対策の処理を終了する。
以上、図8及び図9を用いて説明した方法により、図8の移動物識別処理(ステップS13)で移動物を誤識別した場合でも、0を中心に正負に分布している動きベクトルを画面全体の動きベクトルとして再選択することができる。そして、移動物の識別が誤っている状態が継続することを防止することができる。
以上説明したように、上記の実施形態によれば、以下のような効果が得られる。
図4A〜図4Fのように、画面内に移動物が存在する場合は、従来のブロック単位の動きベクトルの中央値または平均値を用いる動きベクトル決定方法によるぶれ補正を行うと、移動物に引っ張られ不自然な映像となってしまう。
また、動きベクトルの大きさの絶対値が小さい方が補正すべき代表動きベクトルであり、大きい方が移動物であるという識別方法においても、図4Cのヒストグラムでは、移動物の代表動きベクトルVmove(T1)が、手ぶれの動きベクトルにより相殺され略ゼロとなっているため、正しく移動物を識別することができない。
このように従来移動物を正しく識別できなかった状況においても、上記の実施形態の方法を用いれば、精度良く移動物を識別することができ、移動物に引っ張られ不自然な映像となってしまう現象が発生する確率を低減することが可能となる。
なお、本実施形態の方法は、撮像装置のぶれが比較的小さい場合や、撮像装置によって生じる画像ぶれが移動物の速度と比較して小さい場合には、代表動きベクトルの大きさの絶対値が小さいほうを画面全体の動きベクトルと判断する方法と併用してもよい。即ち、撮像装置に装着される、又は撮像装置が備える撮像光学系の焦点距離が比較的短い場合は、動きベクトルの大きさの絶対値が小さいほうを画面全体の動きベクトルと判断する方法を用いて移動体の識別を行い、撮像光学系の焦点距離が長い場合に、上記の実施形態の方法を用いる。これにより、より精度の高い移動体の識別を行うことが可能となる。
(他の実施形態)
また、各実施形態の目的は、次のような方法によっても達成される。すなわち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、本発明には次のような場合も含まれる。すなわち、プログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。
さらに、次のような場合も本発明に含まれる。すなわち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明した手順に対応するプログラムコードが格納されることになる。
本発明の一実施形態に係わる動きベクトル検出装置を組み込んだ撮像装置としてのビデオ・カメラの構成を示すブロック図である。 動きベクトル検出装置の概略構成を示すブロック図である。 撮影した現フィールドの画面上に、動きベクトル検出のためのブロック領域を示した一例を示す図である。 直前のフィールドとの差により得られた動きベクトルを示す図である。 全ブロック領域の動きベクトルのX方向、Y方向のそれぞれの大きさの頻度を示すヒストグラムである。 画面内に移動物が入ってきた状態を示す図である。 図4Aの場合の動きベクトルの分布を示す図である。 図4Aの場合の動きベクトルのヒストグラムを示す図である。 移動物が画面の中央に進行した状態を示す図である。 図4Dの場合の動きベクトルの分布を示す図である。 図4Dの場合の動きベクトルのヒストグラムを示す図である。 動きベクトル制御回路の動作を示すフローチャートである。 図5のステップS13における移動物識別処理の1つ目の方法を説明するフローチャートである。 図5のステップS13における移動物識別処理の2つ目の方法を説明するフローチャートである。 図5に移動物誤識別対策を追加したフローチャートである。 移動物の誤識別対策を説明するフローチャートである。 移動物が画面内に存在する場合としない場合の、ある時間内における動きベクトルの分布を示す図である。 従来の動きベクトル検出法によりぶれを防止する装置の概略ブロック図である。

Claims (8)

  1. 画像データを複数のブロック領域に分割して、分割されたそれぞれのブロック領域ごとに動きベクトルを検出する検出手段と、
    前記それぞれのブロック領域ごとの動きベクトルを、その大きさを階級とする度数分布上に振り分け、度数の大きさと階級間の距離に基づいて前記それぞれのブロック領域ごとの動きベクトルを1つ以上のグループに分類する動きベクトル分類手段と、
    前記動きベクトル分類手段により分類された結果、前記それぞれのブロック領域ごとの動きベクトルが複数のグループに分類された場合に、該複数のグループから1つのグループを選択して代表となる1つの動きベクトルを定める選択手段と、
    前記代表となる1つの動きベクトルに基づいて画像ぶれを補正するぶれ補正手段とを備え、
    前記選択手段は、過去の画像データにおける前記複数のグループのそれぞれの代表となる階級値の大小関係と、現在の画像データにおける前記複数のグループのそれぞれの代表となる階級値の大小関係とに基づいて、現在の画像データにおける前記複数のグループから前記1つのグループを選択することを特徴とする動きベクトル検出装置。
  2. 前記動きベクトル分類手段は、前記度数分布において、度数が所定度数以上であるとともに階級間の距離が所定量以上離れているときに、互いに別のグループとして分類することを特徴とする請求項1に記載の動きベクトル検出装置。
  3. 前記選択手段は、過去の画像データにおいて前記動きベクトル分類手段により分類されたグループが複数存在せず、現在の画像データにおいて初めて前記動きベクトル分類手段により分類されたグループが複数存在する状態になった場合は、現在の画像データの前記度数分布において、最も度数が大きい階級を含むグループを選択して代表となる1つの動きベクトルを定めることを特徴とする請求項1又は2に記載の動きベクトル検出装置。
  4. 前記選択手段は、過去の画像データにおいて前記動きベクトル分類手段により分類されたグループが複数存在せず、現在の画像データにおいて初めて前記動きベクトル分類手段により分類されたグループが複数存在する状態になった場合は、過去の画像において定められた前記代表となる1つの動きベクトルの大きさに最も近い階級を含むグループを選択して代表となる1つの動きベクトルを定めることを特徴とする請求項1又は2に記載の動きベクトル検出装置。
  5. 前記選択手段は、現在の画像データおよび過去の画像データにおいて前記動きベクトル分類手段により分類されたグループがそれぞれ複数存在したときに、過去の画像において選択されたグループが当該過去の画像データにおける他のグループと比較したときに何番目に大きな階級値を持つかの順位を記憶しておき、
    現在の画像データにおいて前記動きベクトル分類手段により分類されたグループを大きな階級値を持つ順に並べたときに、度数の大きさに関わらず、前記順位と同順位のグループを選択して代表となる1つの動きベクトルを定めることを特徴とする請求項1乃至4のいずれか1項に記載の動きベクトル検出装置。
  6. 請求項1ないし5のいずれか1項に記載の動きベクトル検出装置を備えることを特徴とする撮像装置。
  7. 画像データを複数のブロック領域に分割して、分割されたそれぞれのブロック領域ごとに動きベクトルを検出する検出工程と、
    前記それぞれのブロック領域ごとの動きベクトルを、その大きさを階級とする度数分布上に振り分け、度数の大きさと階級間の距離に基づいて前記それぞれのブロック領域ごとの動きベクトルを1つ以上のグループに分類する動きベクトル分類工程と、
    前記動きベクトル分類工程により分類された結果、前記それぞれのブロック領域ごとの動きベクトルが複数のグループに分類された場合に、該複数のグループから1つのグループを選択して代表となる1つの動きベクトルを定める選択工程と、
    前記代表となる1つの動きベクトルに基づいて画像ぶれを補正するぶれ補正工程とを備え、
    前記選択工程は、過去の画像データにおける前記複数のグループのそれぞれの代表となる階級値の大小関係と、現在の画像データにおける前記複数のグループのそれぞれの代表となる階級値の大小関係とに基づいて、現在の画像データにおける前記複数のグループから前記1つのグループを選択することを特徴とする動きベクトル検出方法。
  8. 請求項7に記載の動きベクトル検出方法をコンピュータに実行させるためのプログラム。
JP2007324016A 2007-12-14 2007-12-14 動きベクトル検出装置及び動きベクトル検出方法及び撮像装置及びプログラム Expired - Fee Related JP4876065B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007324016A JP4876065B2 (ja) 2007-12-14 2007-12-14 動きベクトル検出装置及び動きベクトル検出方法及び撮像装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007324016A JP4876065B2 (ja) 2007-12-14 2007-12-14 動きベクトル検出装置及び動きベクトル検出方法及び撮像装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2009147757A JP2009147757A (ja) 2009-07-02
JP4876065B2 true JP4876065B2 (ja) 2012-02-15

Family

ID=40917830

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007324016A Expired - Fee Related JP4876065B2 (ja) 2007-12-14 2007-12-14 動きベクトル検出装置及び動きベクトル検出方法及び撮像装置及びプログラム

Country Status (1)

Country Link
JP (1) JP4876065B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4964937B2 (ja) * 2009-10-06 2012-07-04 株式会社ナナオ 動きベクトル検出装置、フレーム補間処理装置およびそれらの方法
KR101459714B1 (ko) * 2009-10-28 2014-11-13 에스케이텔레콤 주식회사 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101441905B1 (ko) * 2009-11-18 2014-09-24 에스케이텔레콤 주식회사 후보 예측 움직임 벡터 집합 선택을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
JP5759162B2 (ja) * 2010-12-16 2015-08-05 キヤノン株式会社 動きベクトル検出装置、動きベクトル検出方法及び補正装置及びプログラム
US9036031B2 (en) * 2010-12-23 2015-05-19 Samsung Electronics Co., Ltd. Digital image stabilization method with adaptive filtering
JP5958133B2 (ja) * 2012-07-18 2016-07-27 三菱電機株式会社 映像処理装置、及び、映像処理方法
KR101543310B1 (ko) * 2015-01-19 2015-08-26 에스케이텔레콤 주식회사 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101543313B1 (ko) * 2015-01-19 2015-08-12 에스케이텔레콤 주식회사 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101543323B1 (ko) * 2015-01-19 2015-08-12 에스케이텔레콤 주식회사 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
CN106162158A (zh) * 2015-04-02 2016-11-23 无锡天脉聚源传媒科技有限公司 一种识别镜头拍摄方式的方法及装置
JP6674264B2 (ja) * 2016-01-26 2020-04-01 キヤノン株式会社 像振れ検出装置及び方法、及び撮像装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2562715B2 (ja) * 1990-03-30 1996-12-11 三洋電機株式会社 手ブレ検出回路
JPH04180370A (ja) * 1990-11-14 1992-06-26 Matsushita Electric Ind Co Ltd 画像の動きベクトル検出装置及び揺れ補正装置
JP3257035B2 (ja) * 1992-05-14 2002-02-18 ソニー株式会社 画像の振動補正装置及び方法
JPH07107368A (ja) * 1993-09-29 1995-04-21 Canon Inc 画像処理装置
JP4848097B2 (ja) * 2001-06-13 2011-12-28 三菱重工業株式会社 移動体の監視方法および装置

Also Published As

Publication number Publication date
JP2009147757A (ja) 2009-07-02

Similar Documents

Publication Publication Date Title
JP4876065B2 (ja) 動きベクトル検出装置及び動きベクトル検出方法及び撮像装置及びプログラム
US8509481B2 (en) Image processing apparatus, image processing method, imaging apparatus
EP1984892B1 (en) Foreground/background segmentation in digital images
US9607240B2 (en) Image processing apparatus, image capturing apparatus, image processing method, image capturing method, and non-transitory computer-readable medium for focus bracketing
CN104427251B (zh) 焦点检测设备、其控制方法、以及摄像设备
JP7223079B2 (ja) 画像処理装置およびその制御方法、ならびに撮像装置
KR101830077B1 (ko) 화상처리장치, 그 제어 방법 및 기억매체
US7495692B2 (en) Image processing device and electronic camera
JP2010114752A (ja) 撮像装置及び撮像方法及びプログラム
US20130293741A1 (en) Image processing apparatus, image capturing apparatus, and storage medium storing image processing program
US10116865B2 (en) Image processing apparatus and image processing method for calculating motion vector between images with different in-focus positions
JP4953770B2 (ja) 撮像装置
JP5300413B2 (ja) 動きベクトル検出装置及び動きベクトル検出方法及び撮像装置及びプログラム
JP2008109545A (ja) 画像ブレ検出装置並びにこれを備えた画像ブレ補正装置、固体撮像装置、及び電子機器
US10264180B2 (en) Image correction apparatus and method for controlling image correction apparatus
US9710897B2 (en) Image processing apparatus, image processing method, and recording medium
JP6016546B2 (ja) 撮像装置、その制御方法、および制御プログラム
JP5759162B2 (ja) 動きベクトル検出装置、動きベクトル検出方法及び補正装置及びプログラム
JP2014153517A (ja) 画像処理装置および画像処理方法、プログラム並びに記憶媒体
US20170208316A1 (en) Image processing apparatus, image capturing apparatus, and recording medium
US20170366736A1 (en) Focus detection apparatus, focus control apparatus, image-capturing apparatus and focus detection method
US11616902B2 (en) Apparatus to perform alignment to images, image processing method to perform alignment to images, and computer readable non-transitory memory to perform alignment to images
JP2009302830A (ja) 撮像装置
JP5855485B2 (ja) 画像生成装置、画像生成方法、撮像装置、および撮像方法
JP6827778B2 (ja) 画像処理装置、画像処理方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101006

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111026

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: 20111031

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111128

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141202

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4876065

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141202

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees