JP3935500B2 - 動きベクトル演算方法とこの方法を用いた手ぶれ補正装置、撮像装置、並びに動画生成装置 - Google Patents

動きベクトル演算方法とこの方法を用いた手ぶれ補正装置、撮像装置、並びに動画生成装置 Download PDF

Info

Publication number
JP3935500B2
JP3935500B2 JP2006552817A JP2006552817A JP3935500B2 JP 3935500 B2 JP3935500 B2 JP 3935500B2 JP 2006552817 A JP2006552817 A JP 2006552817A JP 2006552817 A JP2006552817 A JP 2006552817A JP 3935500 B2 JP3935500 B2 JP 3935500B2
Authority
JP
Japan
Prior art keywords
motion vector
image
resolution
data
calculating
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
JP2006552817A
Other languages
English (en)
Other versions
JPWO2006075394A1 (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.)
Morpho Inc
Original Assignee
Morpho 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 Morpho Inc filed Critical Morpho Inc
Application granted granted Critical
Publication of JP3935500B2 publication Critical patent/JP3935500B2/ja
Publication of JPWO2006075394A1 publication Critical patent/JPWO2006075394A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)

Description

本発明は、複数の画像間の動きベクトルを演算する技術に係り、特に、この技術を利用した手ぶれ補正装置、撮像装置、動画生成装置に関する。
従来、動画フレーム間の動きベクトルを計算して、この動きベクトルと基準画像によって、動画データを作成することによって、膨大な動画データのデータ量の削減が行われている。
一方、カメラ等の撮像装置で撮影した複数の静止画間の動きベクトルを計算して、手ぶれの補正をする技術が開示されている。(たとえば、特許文献1を参照)。
より正確に動画を再現したり、撮影時の手ぶれを補正するためには、動きベクトルの信頼度を上げる必要がある。この動きベクトルの信頼度を上げるための技術として、特許文献4ないし6では、動きベクトル間の相関の高いものを信頼度が高いとして処理している。
また、動きベクトルの正確性を維持しつつ、よりデータ量を削減するための技術として、画像の特徴点を把握し、その特徴点についての動きベクトルを計算したり、各特徴点を結んで多角形を構成して、比較すべき画像間の特徴点の移動によりその多角形がどのように変形したかを認識して他の点の移動位置を推定するというものがある。(たとえば、特許文献2,3を参照)。
特開2003−78807号公報 特開平11−506576号公報 特開平10−341445号公報 特開平9−73540号公報 特開平6−311502号公報 特開平6−153146号公報
ところで、動きベクトルを生成する機能を専用のハードウェアでなく、演算機能を有する計算機で実現しようとした場合、いかに計算機の負荷を軽減しつつ、精度の高い動きベクトルを算定するかということが問題となる。
本発明は、上述のかかる事情に鑑み、データ量が少なく、計算機に負荷をかけないよう比較的単純な処理によって精度の高い動きベクトルの算定が可能であり、その技術を用いて写真撮影時の手ぶれを補正して、品質の高い写真を作成することのできる動きベクトル演算方法とこの方法を用いた手ぶれ補正装置、撮像装置、並びに動画生成装置を提供することを目的とする。
上記の目的を達成するため、本発明に係わる動きベクトル演算方法は、複数の画像データを入力して、画像間の動きベクトルを演算する方法であって、入力された複数の画像データについて、予め定められた所定の解像度レベルL(L;自然数)までの多重解像度データを夫々演算して保存する処理と、基準画像の解像度レベルLの入力動きベクトルを演算する処理と、前記各処理によって求めた解像度Lの基準画像、比較画像、入力動きベクトルを用いて次の各ステップを実行する解像度別動きベクトル推定処理と、を含み、
(1)入力動きベクトルの各始点座標について、基準画像上の座標と、比較画像上の座標とを引数とするエネルギー関数を定義し、入力動きベクトルの予め定められた所定範囲内で、前記エネルギー関数をもとに動きベクトルを仮算出するステップ、
(2)基準画像の各特徴点について、画像特徴量をもとに動きベクトルの信頼度を仮算出するステップ、
(3)基準画像の特徴点間の画像特徴量の差と前記仮算出した動きベクトルの差のうち少なくとも一つを用いて相関度を算出するステップ、
(4)前記仮算出した、動きベクトルと信頼度とを予め定められた所定範囲にある動きベクトル、信頼度、相関度を用いて円滑化することによって、解像度Lの動きベクトルを本算出するステップ、
前記本算出した解像度Lの動きベクトルをさらに解像度の高い解像度L−1の入力動きベクトルとして用い、前記解像度別動きベクトル推定処理を順次解像度の高い画像データに対して繰り返すことによって、基準画像と比較画像間の動きベクトルを演算することを特徴とする。
本発明の主な特徴を要約すると、動きベクトルの算出において直ちに最終目的の動きベクトルを計算するのではなく、画像間の仮の動きベクトルを定めると同時に信頼度と相関度という2つのパラメータを求めるマッチング処理(上記のステップ(1)〜(3))と、領域すなわち周囲の動きベクトル情報によって、円滑化(スムージング)するというスムージング処理(上記のステップ(4))を実行し、さらに、これらの処理を解像度の違いによる異なる画像空間に対して、解像度の低い画像から解像度の高い画像に対して順次繰り返すことによって、精度の高いものにしていくというものである。
ここで、信頼度は、その動きベクトルがどれくらい信頼できるか、あるいは所定の条件に合っているかの度合いを意味し、画像特徴量として、たとえば、画像の色空間によって検出されたエッジ(境界)の大きさあるいはコーナー角度など、画像に基づく値あるいは関数によって定められる。これらの情報は画像の特徴を表すものであるため、その特徴点(あるいは、線、領域)上の動きベクトルの信頼度が高くなるようにするのである。
なお、画像特徴量としては、この他にマッチング処理段階でのエネルギーを用いた関数(例えば逆数等)、オクルージョンと推定される部分を0、それ以外を1とするような関数、あるいは、ユーザが指定した関数などがある。ここで、関数とは、演算式に限らずテーブルを参照して対応する数値を導出するようなものも含む趣旨である。
信頼度は、上記のいずれかの画像特徴量あるいは任意の画像特徴量の組合せ(掛け合わせや足し合せなど)によって表すことができる。
また、相関度とは、二つの点が同じ向きに動いていると推定される度合いであり、たとえば、周囲の動きベクトルとの差分によって定められる。ただし、相関度は、これに限らず、画像特徴量の差として、2点の基準画像上の色の差、ガボールフィルタ等を用いた画像の特徴の差に基づく関数、あるいは、ユーザが手動で指定した切れ目(輪郭)を用いた関数などによって表すことができ、さらに、仮の動きベクトルの値の差に基づく関数も含め、これらのいずれか一つ、または、複数の関数の掛け合わせ、もしくは、足し合わせによって表すこともできる。
信頼度算定の際に用いる画像特徴量と相関度算定の際に用いる画像特徴量は異なるものであってもよい。
さらに、具体的に説明すると、入力画像の各要素は全ての座標 (x, y) についてRGBの値を持つものであり、
各要素 : I(x, y) = (R(x, y), G(x, y), B(x, y))
で表される。
解像度レベルLの画像の各要素は全ての座標について複数の色情報を持つのものであり、たとえば、(La*b* 色空間、YUV 色空間、エッジ画像、コーナー強調画像)などの情報を有する。解像度レベル0が元の画像であり、解像度レベルLが大きくなると、元画像よりぼけた画像になる。解像度レベルLの各要素は、IL(x, y)で表される。
また、動きベクトルの各要素は始点位置(x, y) と始点位置からの動きのベクトルv(x, y) からなる。始点位置情報を持つのは、全ての座標 (x, y) に対する動きベクトルを持っているわけではないためである。
なお、動きベクトルには、格子状に並んだ始点座標に対する動きベクトルを持つ「グリッド型動きベクトル」と、特徴的な点のみの動きベクトルを持つ「点群型動きベクトル」がある。
解像度Lに応じて動きベクトル情報を間引くことによって、解像度レベルLの動きベクトルが求められる。たとえば、「グリッド型動きベクトル」の場合は、動き情報を2^Lピクセルごとに各要素:((x, y), v(x, y))を持つ。ここで、「^」はべき乗を表す。
画像枚数がM枚(Mは2以上の整数)の動きベクトル推定処理としては、動きベクトルの各始点座標 (x, y) について、基準上の座標 (sx, sy) = (x, y) と比較画像M−1上の座標 (tx, ty) = ((x, y) + v'(x, y)) を引数とするエネルギー関数 E(sx, sy, tx, ty) を定義し、入力動きベクトル v(x, y) の周囲R 内で上記エネルギーEを最小にする動きベクトル v'(x, y) を検索する。エネルギー関数Eの例としては、始点と終点の色の差の2乗、あるいは、ブロック内の色の差の2乗の合計(ブロックマッチ)がある
また、各動きベクトルv(x, y) の信頼度は、 r(x, y)で表され、たとえば、0 〜 1の間の値を持つようにする。
動きベクトル v(x1, y1), v(x2, y2) 間の相関度は、a(x1, y1, x2, y2)で表され、 たとえば、0 〜 1の間の値を持つようにする。
ここで、グリッド型動きベクトルの場合を例にとって、相関度と信頼度の概念について図1を用いて説明する。
図1において、基準画像の各グリッド(格子)に対応して始点位置(x、y)と動きベクトルv(x,y)、および、信頼度r(x, y)のデータを持たせる。また、任意の二点のグリッド間(あるいは二点で決る線分)に対応付けて相関度a(x1, y1, x2, y2)のデータを持たせる。
そして、基準画像で特徴量の多いグリッド(たとえば、エッジ、コーナー)の動きベクトルの信頼度は高くなるように設定する。また、基準画像で、色の差が大きく、かつ、仮の動きベクトル(仮算出した動きベクトル)の差が大きい2つの動きベクトルの相関度は低くなるように設定する。
このように、信頼度、相関度を定めると図1の点線Aで示す動きの不連続な場所に対しては、画像のコーナーあるいはエッジ部分の動きベクトルの信頼度は上がり、また、不連続な場所を跨る動きベクトル間の相関度は低くなる。図1において、丸印はグリッドを意味し、丸枠の太さは信頼度の高さを表している。図中、B,Eは、グリッドに関連付けられた信頼度であり、Eはエッジであるため信頼度高、Bはコーナーでもエッジでもないため信頼度低であることを示している。また、図中、C,Dは、グリッド間に関連付けられた相関度であり、Cは、動きベクトルの差が小さいため相関度高、Dは動きベクトルの差が大きいため相関度低であることを示している。
本発明では、上記のように定めた信頼度と相関度をパラメータに持つ動きベクトルを仮算出するマッチング工程と、仮に定めた動きベクトルを所定範囲にある動きベクトルを加味して、加重平均化ないし最小二乗法によるアフィンパラメータの演算によって調整するスムージング工程により動きベクトルを本算出し、これを解像度の低い画像から順に高解像度の画像について実行するという、いわゆる繰り返し演算によって実行することができるので、計算機に負荷をかけず、精度の高い動きベクトルの算出が可能となる。
また、本発明に係わる動きベクトル演算方法は、基準画像の特徴点に関する指示情報を入力する処理を含み、この入力された指示情報をもとに基準画像と比較画像の画像間の動きベクトルを演算することを特徴とする。
本発明では、ユーザの指示による特徴点をもとに、まずその動きベクトルを算出し、この動きベクトルを不動のものとして、他の動きベクトルを演算するので、精度の高い動きベクトルを簡便に算出することができる。
本発明に係わる動きベクトル演算方法は、さらに、基準画像の複数の特徴点を分散的に抽出し、抽出された特徴点をもとに基準画像と比較画像の画像間の動きベクトルを演算することを特徴とする。
ここで、「分散的」とは、ある位置に画像特徴点が生成されると、その近傍には別の画像特徴点は生成されないようにするという趣旨である。
本発明では、特徴点を効率的に求めて動きベクトルと計算するので、演算精度を維持しつつ計算機の負荷を軽減することができる。
また、本発明に係わる動きベクトル演算方法では、さらに、動きベクトルは、基準画像と比較画像の画像間の対応する特徴点、当該特徴点を結ぶ線、および、前記特徴点または前記線によって構成される領域の夫々の動きを表す動きベクトルメッシュデータであることを特徴とする。好ましくは、画像特徴点に基づいて、この動きベクトルメッシュデータの領域を一または二以上の多角形、特に三角形に分割するとよい。
本発明では、点同士の対応付けのみでなく、線分および領域の動きを動きベクトルメッシュデータで表して、画像間の動きを管理する。これによって、少ないデータ量で緻密かつ精度の高い動きの管理が可能となる。
本発明に係わる手ぶれ補正装置は、上記の動きベクトル演算方法を用いて手ぶれ補正を実行する手ぶれ補正装置であって、複数の画像を入力して、基準画像と一または二以上の比較画像との動きベクトルを前記動きベクトル演算方法を用いて演算し、当該演算結果を出力する動きベクトル演算部と、前記動きベクトル演算部によって求めた動きベクトルと比較画像を用いて、基準画像へ重ね合わせるための処理を実行して合成用画像を作成する合成用画像生成手段と、前記合成用画像生成手段で作成した一または二以上の合成用画像を基準画像に重ね合わせて画像を合成する画像合成手段と、前記画像合成手段によって合成した画像データを出力する画像データ出力手段と、を備えたことを特徴とする。
好ましくは、この手ぶれ補正装置は、前記画像合成手段は、手ぶれの最大範囲を演算し、画像枠から当該最大範囲については、画像数による平均化処理を実行するとよい。
画像の枠部分は、手ぶれにより撮影範囲外になり合成データが不完全になるので、単純に重ね合わせると、その枠部分は暗くなる。このため、重ね合わせの画像数をもとに輝度調整することによって、画像枠の暗さの発生を回避することができる。
また、本発明に係わる撮像装置は、上記の手ぶれ補正装置を有する撮像装置であって、被写体を連続して撮影して、複数の画像を生成し、前記手ぶれ装置へ入力する撮像部と、前記手ぶれ装置の画像を保存する記憶部とを備えたことを特徴とする。
本発明に係わる動画生成装置は、上記の動きベクトル演算方法を用いて動画を生成する動画生成装置であって、複数の画像を入力し、前記動きベクトル演算方法を用いて、基準画像と一または二以上の比較画像との間の動きベクトルを算定する動きベクトル演算部と、前記動きベクトル演算部で算定した動きベクトルを予め定められた任意の値で分割することによって一または二以上の中間の動きベクトルを演算する動きベクトル編集手段と、基準画像に対して、前記中間の動きベクトルを適用することによって中間画像を生成し、初期画像、中間画像、および、最終画像を時系列的に表示可能にする動画生成手段と、を備えたことを特徴とする。
さらに、本発明に係わるプログラムは、複数の画像データを入力して、画像間の動きベクトルを演算するプログラムであって、入力された複数の画像データについて、所定の解像度レベルL(L;自然数)までの多重解像度データを夫々演算して保存する処理と、基準画像の解像度レベルLの入力動きベクトルを演算する処理と、前記各処理によって求めた解像度Lの基準画像、比較画像、入力動きベクトルを用いて次のステップを実行する解像度別動きベクトル推定処理と、を含み、(1)入力動きベクトルの各始点座標について、基準画像上の座標と、比較画像上の座標とを引数とするエネルギー関数を定義し、入力動きベクトルの所定範囲内で、前記エネルギー関数をもとに動きベクトルを仮算出するステップ、(2)基準画像の各特徴点について、画像特徴量をもとに信頼度を仮算出するステップ、(3)基準画像の特徴点間の画像特徴量の差と前記仮算出した動きベクトルの差のうち少なくとも一つを用いて相関度を算出するステップ、(4)前記仮算出した、動きベクトルと信頼度とを所定範囲にある動きベクトル、信頼度、相関度を用いて円滑化することによって、解像度Lの動きベクトルを本算出するステップ、前記本算出した解像度Lの動きベクトルをさらに解像度の高い解像度L−1の入力動きベクトルとして用い、前記解像度別動きベクトル推定処理を順次解像度の高い画像データに対して繰り返すことによって、基準画像と比較画像間の動きベクトルを演算することを特徴とする。
本発明によれば、信頼度と相関度をパラメータとする動きベクトルを仮算出するマッチング工程と、仮に定めた動きベクトルを所定範囲にある動きベクトルの状態によって調整するスムージング工程によって、動きベクトルを本算出し、これを解像度の低い画像から順に高解像度の画像について実行するという、いわゆる繰り返し演算によって実行することができるので、計算機に負荷をかけず、精度の高い動きベクトルの算出が可能となる。
また、画像のエッジやコーナーに着目して、特徴点を把握し、その特徴点ついて、動きベクトルを計算することによって、信頼度の高い点、線、もしくは領域についてのみ動きベクトルを計算するので、データ量の削減を図ることができる。
以下、本発明の実施形態を説明する。
<第1の実施形態>(動きベクトル演算装置、動きベクトル演算方法)
図2は、本実施形態に係わる動きベクトル演算装置のブロック図である。この装置は、複数の画像を入力して、その画像間の動きベクトルを演算するものである。
ここで、動きベクトル演算装置1は、画像データの読み出し、書き込みを行うCD−ROMドライブなどの外部記憶装置10、ユーザ(操作者)の指示情報を入力するためのキーボード、マウス等から構成される入力装置11、画像データを表示させる表示装置12、入力した画像データをもとに動きベクトルを算出する動きベクトル演算部13、入力した画像データや動きベクトルデータを保存する記憶部15を備えている。
また、動きベクトル演算部13は、入力装置11、表示装置12、外部記憶装置10から画像データを入力して記憶部15に保存する画像データ入力手段(機能)31、入力された各画像データにフィルタ処理を施して複数の解像度レベルの画像データを作成する多重解像度画像生成手段(機能)32、入力装置11からの指示に基づいて動きベクトルのメッシュを指定するメッシュ指定手段(機能)33、画像の一または二以上の特徴点を抽出する画像特徴点群抽出手段(機能)34、画像の特徴点を結んだ図形を三角形に分割する三角形分割手段(機能)35、三角形分割した特徴点をもとに動きベクトルを算出する動きベクトル推定手段(機能)36、および、算出された動きベクトルデータを出力する動きベクトル出力手段(機能)37を有している。なお、各手段31から37は、CPUの機能として処理実行されるものである。
ここで、記憶部15で保存される各データの説明をする。
画像データは、幅w, 高さh としたときw×h 個の格子を持ち、各格子に画素値(例えばRGB, YCbCr)の値を持つデータである。
また、画像特徴点群データは、画像データの特徴点データの集合であり、各画像特徴点はその座標値(x,y)から構成される。
動きベクトルメッシュデータは、画像の動きベクトルのデータである。複数の動きベクトル点、動きベクトル線、動きベクトル領域から構成されている。例えば図3(a)の画像に対して図3(b)のように動きベクトルメッシュデータが設定できる。
動きベクトル点は動きベクトルの起点となる画像上の座標(x,y)と、その動きベクトル(dx,dy)、決定済フラグfpから構成される。決定済フラグはその点の動きベクトルが決定済かそうでないかを表すフラグである。動きベクトル点のデータ例を図4(a)に示す。動きベクトル点識別情報(ID)ごとに、座標、動きベクトル、決定済フラグが関連付けられて保存されている。
動きベクトル線は、図4(b)に例示するように、その端点となる2つの動きベクトル点へのポインタ[p1, p2]、決定済フラグfeから構成される。決定済フラグはその線上の動きベクトルが決定済か未定かを表すフラグである。
動きベクトル領域は、図4(c)に例示するように、その境界となる動きベクトル線へのポインタ[e1, e2, ..., en](境界線がn個の場合)、あるいはその領域の頂点となる動きベクトル点へのポインタ[p1, p2, ..., pn](頂点数がn個の場合)、あるいはその両方から構成される。また、その領域内の動きベクトルが決定済か未定義かを表す決定済フラグfrも持つ。なおこの領域は三角形になるが、任意の多角形にしても実施可能である。
次に上記の装置1を動作させることによって動きベクトルを生成する方法(動きベクトル演算方法)の説明を行う。
(画像データ入力処理)
まず、外部記憶装置10から入力された画像データは、画像データ入力手段31によって、記憶部15の入力画像データファイル50に保存される。そして、この入力画像は、多重解像度生成手段32によって、フィルタ処理されて低解像度の画像が作成され多重解像度画像データファイル51に保存される。
(多重解像度画像生成処理)
図5は、多重解像度画像生成手段32の処理手順を示すフローチャートである。入力画像に対して、色空間変換、エッジ画像の生成処理等を行い(S101)、解像度レベル0の画像を作成し、さらに、各解像度レベル0の画像に対してぼかしフィルタや平均値フィルタなどを適用して解像度の低い画像データを作成し(S102)、これら作成した多重解像度画像データを多重解像度画像データファイル51に保存する。
図6は、多重解像度画像データの例である。ここで、縦方向A行はLab色空間に変換された画像、B行は縦方向のみエッジ画像、C行は横方向のみエッジ画像、D行は方向依存性のないエッジ画像を表している。また、横方向は、ぼかしフィルタを適用した解像度レベルを表しており解像度レベル値が高くなるほど解像度が低くなっている。入力した画像ごとにこれらの多重解像度画像データを作成して記憶部15の多重解像度画像データファイル51に保存する。
(メッシュ指定処理)
一方、ユーザは、メッシュ指定手段33を起動し、入力装置11と表示装置12を用いて、入力画像データファイル50から動きベクトル算出の基準となる基準画像と比較画像を抽出して、両画像の対応箇所を点、線、または、領域として指定する。なお、比較画像は、複数存在しても構わない。あるいは、点のみでグリッド設定してもかまわない。
メッシュ指定手段33は、この指定情報の入力によって、図4の形式による点、線、領域の動きベクトルメッシュデータを作成して、動きベクトルメッシュデータAファイル52に保存する。このとき、動きベクトルメッシュデータAにおいて全ての動きベクトル点・線・領域の決定済フラグfp, fe, fr をセットする。
なお、ユーザの操作方法としては、例えば、図7(a)の左側の画像(基準画像)から右側の画像(比較画像)への動きベクトルを手動で指定する場合、図7(b)のように基準画像と比較画像に同じメッシュ構造を設定し、メッシュの点の位置を各画像の対応する位置へとずらすことで動きベクトルメッシュデータAを指定する。図7(b)における矢印は対応する動きベクトル点の例である。
(画像特徴点群抽出処理)
次に画像特徴点群抽出手段34が、入力装置11を通して、あるいはメッシュ指定手段33の動作完了によって起動され、多重解像度画像データと動きベクトルメッシュデータAを入力し、画像特徴点群データを出力する。
画像特徴点は画像のエッジやコーナーを中心に生成される。画像特徴点がある位置に生成されると、その近傍に別の画像特徴点は生成されないようにする。これは画像中のある位置の動きベクトルは、その近傍の動きベクトルとほぼ同じ値を持つことが予想されるからである。こうしてなるべく少ない点数で全体の動きベクトルが近似できるように画像特徴点を分布させる。
ここで動きベクトルメッシュデータAにおける動きベクトル点・線・領域上およびその近傍には画像特徴点は生成しない。それらはユーザが明示的に動きベクトルを指定しているため、自動計算する必要がないからである。
例えば図3(b)または図7(b)の動きベクトルメッシュデータAに対する画像特徴点群は図8の丸点のようになる。動きベクトルメッシュ上およびその周辺に特徴点を検出しても、その点は、特徴点として保存しないようにする。
(三角形分割処理)
次に、三角形分割手段35は、画像特徴点群データ53および動きベクトルメッシュデータAを入力とし、この特徴点による領域を三角形分割することで動きベクトルメッシュデータBを出力して、動きベクトルメッシュデータBファイル54に保存する。
三角形分割は動きベクトルメッシュデータAが持つ動きベクトル点・線・領域の各データが保持された上で、画像特徴点群を追加することで行われる。このような三角形分割の一例としては、たとえば、制約付きドローネ三角形分割がある。
三角形分割手段35は、出力する動きベクトルメッシュデータBについては、その動きベクトル点が元々動きベクトルメッシュデータAにも存在する場合には決定済フラグfpをセットし、一方、画像特徴点群抽出手段34によって自動的に追加された動きベクトルの場合は、fpをセットしない。同様に動きベクトル線・領域の決定済フラグfe, frに関しても、動きベクトルメッシュデータAに含まれるものであればセットし、三角形分割手段35によって自動的に生成されたものならばセットしない。例えば、図8の動きベクトルメッシュデータAおよび画像特徴点群に対して三角形分割を行った結果の動きベクトルメッシュデータBは図9のようになる。ここでメッシュの四角点・太線部分は動きベクトルメッシュデータAに相当する部分であり、ユーザに指定されたものであるので決定済フラグはセットされ、その他の丸点・細線部分については決定済フラグはセットされない。
(動きベクトル推定処理)
動きベクトル推定手段36は、多重解像度画像データ51および動きベクトルメッシュデータBを入力とし、決定済フラグfpがセットされていない動きベクトル点についてその動きベクトルを自動計算することにより、全ての動きベクトル点・線・領域の決定済フラグがセットされた状態の動きベクトルメッシュデータCを出力して動きベクトルメッシュデータCファイル55に保存する。
動きベクトルの自動計算については様々な方式が考えられる。画像のピクセル単位やそれに準じた密なグリッド単位で動きベクトルを計算しその結果を動きベクトル点に割り当てる方式、純粋に動きベクトル点上のみでしか動きベクトルを計算しない方式、およびそれらのハイブリッド方式などである。いずれの場合にも、決定済フラグがセットされている動きベクトル点・線・領域上の動きベクトルは求める必要はなく、またそれ以外の点についても決定済動きベクトルとの整合性がとれるような動きベクトルの算出を行う。
以上の方法によって、計算の高速化、およびユーザが意図した動きベクトルメッシュデータ生成の両立が可能になる。図9の動きベクトルメッシュデータBの例では、四角点・太線部分の動きベクトルはすでにユーザによって与えられ、決定済フラグが設定されているので計算する必要はなく、丸点・細線部分のみが自動計算の対象となる。この自動計算では、四角点・太線部の動きベクトルとの整合性を考慮し、四角点・太線部の動きベクトルには変更を加えないで以下の処理方法によって計算を実行する。
次に、動きベクトル推定手段36の処理を図10を用いて詳述する。
まず、動きベクトルメッシュデータBファイル54に保存されている動きベクトルを初期動きベクトルとし、これに対して解像度補正処理を行う(S201)。解像度補正処理は、解像度に応じて動きベクトルを間引くものであり、たとえば、解像度Lのグリッド型動きベクトルの場合は、動き情報を2^Lピクセルごとに要素((x,y)、v(x,y))を有する。
この間引き処理をより詳細に説明すると、解像度Lの格子に対して、その格子上に無い点の動きベクトルであって決定済みフラグがセットされている動きベクトル(メッシュデータも含む)は、予め定められた移動規則に従って近傍の格子上の動きベクトルとして関連付けられる。このとき、同じ格子に対して、複数の点から移動してくる動きベクトルが存在する場合は、それらの動きベクトルの平均値を当該格子の動きベクトルとして関連付けるようにする。
なお、決定済みフラグがセットされていない動きベクトルは、たとえば二次元の場合は(0,0)として処理される。
次に、動きベクトルの重ね合わせ処理を実行する(S202)。最初のループでは、ステップS201で作成された解像度L(初期解像度)の動きベクトルデータに対して、全て(0,0)の動きベクトルデータが重ね合わされるので、結果として、解像度L(初期解像度)の動きベクトルデータがそのままこのステップの出力となる。
初期解像度以外の解像度の動きベクトル重ね合わせ処理については後述する。
このように補正して求めた解像度Lの動きベクトルに対して、マッチング処理を実行する(S203)。
以下、図11と図12を用いてこのマッチング処理について説明する。
図11は、画像が2枚の場合のマッチング処理手順の説明図である。
マッチング処理では、上記各処理によって求めた解像度Lの基準画像、比較画像、入力動きベクトルを用いて、まず、入力動きベクトルの各始点座標について、基準画像上の座標と、比較画像上の座標とを引数とするエネルギー関数を定義し、入力動きベクトルの予め定められた所定範囲内で、前記エネルギー関数をもとに動きベクトルを仮算出する(S301)。また、基準画像の各特徴点について、エッジ、コーナー等の情報を用いて信頼度を仮算出する(S302)。なお、信頼度は、エッジの大きさなど画像に基づく関数の他、上述のエネルギー関数を用いて行うようにしてもよい。信頼度をどのように設定するかは、実施時にどのような条件に重きをおくかということに依存してくる。たとえば、画面中央のものを重点にマッチングを行うというような応用の場合には、画面中央を1としたガウシアン関数を信頼度としてスムージング処理を行うようにしても良い。
次に、基準画像の特徴点間の色差および仮算出した動きベクトルの差をもとに相関度を算出する(S303)。
相関度は、たとえば、ピクセルの色の差の二乗と動きベクトルの差の大きさの二乗とを掛け合わせて、それをガウシアン関数あるいは同様の関数で1〜0にする。
一般に、隣り合うピクセルの色の差や、画像の情報のみで相関度を設定するという手法をマッチングに応用しようとすると、同じ動きをしていて特徴が異なる部分が切れてしまうという問題があるが、動きベクトルの情報を加えることで、このような問題を防ぐことができる。一方、動きベクトルだけで相関度を表すと、ミスマッチしてしまったときにも切れてしまうので、これを防止するためには、画像情報と動きベクトルの両方の情報を使用するのが良い。
次に、仮算出した動きベクトルと信頼度、および、相関度の各データを出力する(S304)。
なお、上記は、画像が2枚の場合について説明したが、図12のように、基準画像と複数の比較画像の夫々について動きベクトル、信頼度、相関度のデータを演算するようにしても良い。この場合、夫々の比較画像について一の基準画像との動きを演算する場合と、各比較画像が次の比較画像との間では基準画像となる場合がある。
また、エネルギー関数の実施例としていわゆるブロックマッチングを使用するようにしても良い。
図10に戻って、ステップS203のマッチング処理の後にスムージング処理を実行して、解像度Lの動きベクトルを本算出する(S204)。
このスムージング処理の手順を図13に示す。この図において、マッチング処理で仮算出した、動きベクトルと信頼度について、近傍の動きベクトル、信頼度、相関度を用いて加重平均処理で平均化(円滑化)することによって、解像度Lの動きベクトルを算出する。
加重平均の場合のスムージングの式は以下の如くである。
ここで、iはスムージングを繰り返した回数である。
上記のように、動きベクトルは、信頼度および相関度の積による加重平均とし、さらに、信頼度は、相関度による加重平均としている。
なお、上記の加重平均処理に替えて最小二乗法でアフィンパラメータを求めるようにしてもよい。
この場合のスムージングの式は以下の如くである。
ここで、
なお、r(x1,y1) は 加重平均の場合と同じである。
上記のスムージング処理を終了すると、次に最終解像度(通常は解像度レベル0)か否かを判断して(S205)、最終解像度でなければ、L=L−1として(S206)、すなわち、解像度レベルが一つ上の解像度の画像データについてステップS201以降の処理を繰り返す。
また、スムージング処理の結果得られた解像度Lの動きベクトルを用いて、線形補間処理によって、解像度L−1の動きベクトルデータを生成する(S207)。
線形補間処理について、より詳細に説明すると、解像度Lの格子上の動きベクトルに対して、その間に格子を取り、この格子の動きベクトルは、周囲の解像度Lの格子上の動きベクトルの平均値とする。
たとえば、解像度3の動きベクトルで、v(32,32) v(32,40) v(40,32) v(40,40) があるとき、解像度2の動きベクトルは、
v(32,32) = v(32,32)
v(32,36) = 1/2 v(32,32) + 1/2 v(32,40)
v(36,36) = 1/4 v(32,32) + 1/4 v(32,40) + 1/4 v(40,32) + 1/4 v(40,40)
と計算する。
そして、ステップS202の重ね合わせ処理では、この補間した動きベクトルデータをステップS201で作成された入力動きベクトルデータと重ね合わせて、マッチング処理の入力動きベクトルとする。
以上の一連の処理を最終解像度になるまで繰り返して(S205)、最終解像度になれば、その動きベクトルを動きベクトルメッシュデータCファイル55に保存する。
(動きベクトル出力処理)
動きベクトル出力手段37は、動きベクトルメッシュデータCファイル55に保存されている動きベクトルデータを外部装置10あるいは他のプログラムモジュールへ出力する。
本実施形態によれば、色情報のみを使って仮の動きベクトルを求め、これに、エッジ情報やコーナー情報に基づく信頼度と動きベクトルの差による相関度という異なる概念のパラメータを用いて計算するので、計算機に負荷をかけず精度の高い動きベクトルを算定することができる。特に、多重解像度のレベルやスムージング処理の繰り返し回数を設定することによって、計算機の能力や動きベクトルの要求精度に応じた演算を実行させることができるので汎用性が高く、手ぶれ補正や動画生成などいろいろな用途に使用することができる。
(動きベクトル演算装置の他の実施例1)
上述の動きベクトル演算装置1は、図14に示す構成によって実施することもできる。すなわち、画像データ入力手段31で入力した画像データを多重解像度画像生成手段32で多重解像度の画像データを作成し、これを用いて動きベクトル推定手段36によって、上記の処理によってグリッド型動きベクトルを算出する。
この場合、動きベクトル推定手段36は、多重解像度画像データ51のみを使用するため、図4に示す決定済みフラグの制御を要しない。
(動きベクトル演算装置の他の実施例2)
また、図2のメッシュ指定手段33、画像特徴点群抽出手段34、三角形分割手段35は、計算機の負荷や用途に応じてその機能を活殺させることができる。
たとえば、ユーザが予め画像の対応関係を入力する必要が無ければ、図15に示すようにメッシュ指定手段33を省くこともできる。この場合、画像特徴点群抽出手段34は、多重解像度画像データとして、解像度レベル0のエッジ画像から特徴点を抽出して画像特徴店群データを作成し、これをもとに三角形分割手段35によって動きベクトルメッシュデータBを作成する。そして、動きベクトル推定手段36は、この動きベクトルメッシュデータBを用いて動きベクトルを算出する。
なお、画像特徴点群抽出手段34は、多重解像度画像データの中で解像度の低い画像データを用いて特徴点の抽出処理を実行するようにしても良い。入力画像(解像度レベル0)で特徴点が極めて多く抽出されるような場合は、解像度を低くして特徴点を抽出することによって、特徴量の大きな点のみを抽出することができる。このため、解像度の高い画像データの多数の特徴点の特徴量を比較して選別するのに比べ計算機の負荷を軽減させることができる。
この動きベクトル演算装置1は、複数の画像を入力して、基準画像に対する動きベクトルを出力して、画像データを動きベクトルによって管理して、一連の動きを有する画像―タを圧縮させるという用途に使用することができるが、この装置1の動きベクトル演算部13と、動きベクトルデータ記憶部15の主要部を用いて以下の実施形態の装置を構成することができる。
(動きベクトル演算装置の他の実施例3)
動きベクトル演算装置1の他の実施例として、メッシュ指定手段33の機能を利用して、探索範囲を設定する手段を設けることも可能である。すなわち、メッシュ指定手段33は、基準画像と比較画像の対応点を指定して、その間の動きベクトルを求めて決定済みフラグをセットするが、この決定済みフラグをセットせずに動きベクトルデータのみを算定して、格納しておく。そして、動きベクトル推定手段36は、この格納された動きベクトルの所定範囲の領域を探索して、基準画像と比較画像との点、線、あるいは、領域についての動きベクトルを算定する。このようにすれば、大きく離れた範囲の対応関係も的確に抽出することができ、また、ユーザが探索範囲を設定する場合も、概略の対応点のみを指定すればよく、厳格な指定を要しないので操作性が向上する。
<第2の実施形態>(手ぶれ補正装置)
上述の動きベクトル演算方法を用いてカメラで撮影時の手ぶれを補正することができる。図16は、本実施形態に係わる手ぶれ補正装置のブロック図である。
この図において、手ぶれ補正装置6は、動きベクトル演算部13、動きベクトルデータ記憶部15、複数の画像とその動きベクトルを用いて画像を重ね合わせて合成画像データを作成する画像合成手段(機能)63、合成画像データを編集する画像編集手段(機能)64、作成した画像データを出力する画像データ出力手段(機能)65を備えている。
この構成において、動きベクトル演算部13の画像データ入力手段31を介してを高速連写で撮影した複数毎枚の写真画像を入力する。そして、基準画像として通常は、連写の最初の画像に対して、比較画像の動きベクトルメッシュデータCを算出し、動きベクトルデータ記憶部15に保存する。
次に、手ぶれ補正装置6の画像合成手段63は、動きベクトルデータ記憶部15に保存されている入力画像データと動きベクトルメッシュデータCを入力する。そして、比較画像をその動きベクトルデータによって基準画像へ合わせ込むための変換処理を実行する。
なお、一般的に手ぶれの場合の動きベクトルは、各点とも同一の方向と大きさを有するので、メッシュ指定手段33や三角形分割手段35などの手段を削除して機能を簡略化させるようにしても良い。
本実施の形態によれば、二枚以上の画像について参照画像(基準画像)を指定し、その他の画像から参照画像へのメッシュ構造化された動きベクトル群を用いて、画像を変形して合成するので、カメラのCCDノイズを除去して鮮明な画像を作成することができる。
なお、複数の画像を合成する際に加重平均処理を施すことによって被写体の中の動いているものを消去し背景部分を取り出すことも可能である。
また、画像合成の際に、ピクセルごとに重ね合わせた枚数を保存しておき、その枚数によって、加重平均化処理を行うので、画像のふちの部分まで違和感のない合成画像を作成することができる。
<第3の実施形態>(手ぶれ補正装置付きカメラ)
図17は、この手ぶれ補正装置6をカメラ等の撮像装置に組み込んだときのブロック図である。手ぶれ補正装置をカメラに組み込む場合は、単純化された機能として、図14に記載の動きベクトル演算でも実用度が高い。
本実施の形態によれば、手ぶれ補正機能をマイクロプロセッサあるいは演算機能を有するICで実現して、撮像装置に組み込むことによって手ぶれ補正処理を施した高画質の画像データを得ることができる。
<第4の実施形態>(動画生成装置)
また、上記の動きベクトル演算方法を用いて、複数の静止画から動きの滑らかな動画を効率的に作成することもできる。
図18は、本実施形態に係わる動画生成装置のブロック図である。この図において、動画生成装置8は、動きベクトル演算部13、動きベクトルデータ記憶部15、基準画像(初期画像)と比較画像(最終画像)の動きベクトルからその間の時間的変化を推定して中間の動きベクトルを演算する中間データ生成手段(機能)83、この中間の動きベクトルと入力画像から動画データを作成する動画データ生成手段(機能)84、作成された動画データを出力する動画データ出力手段(機能)85を備えている。
ここで、中間データ生成手段83は、画像中の特徴点あるいはメッシュデータとしての動きベクトルの変化の速度や加速度を計算して、所定の時間区分ごとの動きベクトルを求めて、中間データファイル87に保存する。
そして、動画データ生成手段84は、入力画像データと中間の動きベクトルを時系列に並べて動画データファイル88に保存する。図19は、動画データファイルのデータ構成例である。各入力画像とその間の動きベクトルが時系列的に抽出可能になっている。
本実施形態によれば、計算機に負荷をかけずに動画データ用の動きベクトルを作成することができる。また、静止画データをもとにその間を埋める滑らかな動画データを作成することができる。
なお、本発明は上述の各実施形態に限定されること無く、その要旨を逸脱しない範囲で種々変形して実施することが出来る。たとえば、外部記憶装置を介して画像データの入力や動きベクトルの出力を行う替わりに通信ネットワークを介してこれと繋がるコンピュータ装置等と画像データや動きベクトルの受け渡しを行うようにしても良い。
また、本発明による動きベクトル演算方法は、上記の各装置への適用の他、画像が順序良く並んでいて、画像内の物体が一定の法則に従って動いている場合には、Image-based VR(バーチャルリアリティ)のためのマッチング処理にも応用することができる。
本発明による動きベクトル演算方法は、コンピュータ上で手ぶれ画像を処理する手ぶれ補正装置、手ぶれ補正機能を搭載したデジタルカメラやビデオカメラ等の撮像装置、動きベクトルデータによって少ないデータ量で精度良く動画像データを生成する動画生成装置などに適用することができる。
本発明による動きベクトル、信頼度、および、相関度の説明図である。 本発明の第1の実施形態による動きベクトル演算装置のブロック図である。 動きベクトルメッシュデータの点、線、領域の説明図であり、図3(a)はサンプル画像、図3(b)はその画像上の点、線、領域の対応関係の説明図である。 動きベクトルメッシュデータのデータ構成図であり、図4(a)は動きベクトル点、図4(b)は動きベクトル線、図4(c)は動きベクトル領域のデータ構成例を示す。 図2の多重解像度生成手段の処理手順を示すフローチャートである。 多重解像度画像データの例である。 動きベクトルメッシュデータAの指定のしかたの説明図であり、図7(a)は基準画像と比較画像、図7(b)は両画像間のデータ上の対応関係を示す。 画像特徴点群の説明図である。 図2の三角形分割手段の出力である動きベクトルメッシュデータBの説明図である。 図2の動きベクトル推定手段の処理手順を示すフローチャートである。 図10のマッチング処理手順を示すフローチャートである。(画像が2枚の場合) 図10のマッチング処理手順を示すフローチャートである。(画像が複数の場合) 図10のスムージング処理手順を示すフローチャートである。 本発明の他の実施例1による動きベクトル演算装置のブロック図である。 本発明の他の実施例2による動きベクトル演算装置のブロック図である。 本発明の第2の実施形態による手ぶれ補正装置のブロック図である。 本発明の第3の実施形態による撮像装置のブロック図である。 本発明の第4の実施形態による動画生成装置のブロック図である。 図18の動画データファイルのデータ構成図である。
符号の説明
1 動きベクトル演算装置
6 手ぶれ補正装置
7 撮像装置
8 動画生成装置
10 外部記憶装置
11 入力装置
12 表示装置
13 動きベクトル演算部
15 動きベクトルデータ記憶部
31 画像データ入力手段
32 多重解像度画像生成手段
33 メッシュ指定手段
34 画像特徴点群抽出手段
35 三角形分割手段
36 動きベクトル推定手段
37 動きベクトル出力手段
50 入力画像データファイル
51 多重解像度画像データファイル
52 動きベクトルメッシュデータAファイル
53 画像特徴点群データファイル
54 動きベクトルメッシュデータBファイル
55 動きベクトルメッシュデータCファイル
61 手ぶれ補正データ演算部
62 手ぶれ補正データ記憶部
63 画像合成手段
64 画像編集手段
65 画像データ出力手段
67 合成画像データファイル
68 出力画像データファイル
71 撮像手段
72 着脱可能メモリ
73 外部インタフェース手段
81 動画データ演算部
83 中間データ生成手段
84 動画データ生成手段
85 動画データ出力手段
87 中間データファイル
88 動画データファイル

Claims (11)

  1. 複数の画像データを入力して、画像間の動きベクトルを演算する方法であって、
    入力された複数の画像データについて、所定の解像度レベルL(L;自然数)までの多重解像度データを夫々演算して保存する多重解像度画像生成処理と、
    基準画像の解像度レベルLの入力動きベクトルを演算する入力動きベクトル算定処理と、
    前記各処理によって求めた解像度Lの基準画像、比較画像、入力動きベクトルを用いて次の各ステップを実行する解像度別動きベクトル推定処理と、を含み、
    (1)入力動きベクトルの各始点座標について、基準画像上の座標と、比較画像上の座標とを引数とするエネルギー関数を定義し、入力動きベクトルの所定範囲内で、前記エネルギー関数をもとに動きベクトルを仮算出するステップ、
    (2)基準画像の各特徴点について、画像特徴量をもとに動きベクトルの信頼度を仮算出するステップ、
    (3)基準画像の特徴点間の画像特徴量の差と前記仮算出した動きベクトルの差のうち少なくとも一つを用いて相関度を算出するステップ、
    (4)前記仮算出した、動きベクトルと信頼度とを所定範囲にある動きベクトル、信頼度、相関度を用いて円滑化することによって、解像度Lの動きベクトルを本算出するステップ、
    前記本算出した解像度Lの動きベクトルをさらに解像度の高い解像度L−1の入力動きベクトルとして用い、前記解像度別動きベクトル推定処理を順次解像度の高い画像データに対して繰り返すことによって、基準画像と比較画像間の動きベクトルを演算することを特徴とする動きベクトル演算方法。
  2. 前記入力された画像のうち、基準画像の特徴点に関する指示情報を入力する処理を含み、
    前記入力動きベクトル算定処理は、前記特徴点に関する入力動きベクトルを演算することを特徴とする請求項1記載の動きベクトル演算方法。
  3. 前記入力された画像のうち、基準画像の複数の特徴点を分散的に抽出する画像特徴点群抽出処理を含み、
    前記入力動きベクトル算定処理は、前記特徴点に関する入力動きベクトルを演算することを特徴とする請求項2に記載の動きベクトル演算方法。
  4. 前記動きベクトルは、基準画像と比較画像の画像間の対応する特徴点、当該特徴点を結ぶ線、および、前記特徴点または前記線によって構成される領域の夫々の動きを表す動きベクトルメッシュデータであることを特徴とする請求項3に記載の動きベクトル演算方法。
  5. 複数の画像データを入力して、画像間の動きベクトルを演算する方法であって、
    基準画像の特徴点に関する指示情報を入力する処理と、入力された指示情報をもとに基準画像と比較画像の画像間の点、線、領域の対応関係を動きベクトルメッシュデータとして算出する処理と、
    前記入力された指示情報の領域範囲外の領域について、基準画像の複数の特徴点を分散的に抽出し、抽出された特徴点をもとに基準画像と比較画像の画像間の点、線、領域の対応関係を動きベクトルメッシュデータとして算出する処理と、
    前記画像特徴点に基づいて、前記動きベクトルメッシュデータの領域を一または二以上の三角形に分割し、これを所定の解像度レベルLに補正して、入力動きベクトルメッシュデータを演算する処理と、
    入力された複数の画像データについて、解像度レベルLまでの多重解像度データを夫々演算して保存する処理と、
    前記各処理によって求めた解像度Lの基準画像、比較画像、入力動きベクトルメッシュデータを用いて次の各ステップを実行する解像度別動きベクトル推定処理と、を含み、
    (1)前記入力された指示情報の領域範囲外の領域について、入力動きベクトルメッシュデータの各始点座標について、基準画像上の座標と、比較画像上の座標とを引数とするエネルギー関数を定義し、入力動きベクトルメッシュデータの所定範囲内で、前記エネルギー関数をもとに動きベクトルメッシュデータを仮算出するステップ、
    (2)基準画像の各特徴点について、画像特徴量をもとに動きベクトルの信頼度を仮算出するステップ、
    (3)基準画像の特徴点間の画像特徴量の差と前記仮算出した動きベクトルの差のうち少なくとも一つを用いて相関度を算出するステップ、
    (4)前記仮算出した、動きベクトルメッシュデータと信頼度とを所定範囲にある動きベクトルメッシュデータ、信頼度、相関度を用いて円滑化することによって、解像度Lの動きベクトルメッシュデータを本算出するステップ、
    前記本算出した解像度Lの動きベクトルメッシュデータをさらに解像度の高い解像度L−1の入力動きベクトルメッシュデータとして用い、前記解像度別動きベクトル推定処理を順次解像度の高い画像データに対して繰り返すことによって、基準画像と比較画像間の動きベクトルメッシュデータを演算することを特徴とする動きベクトル演算方法。
  6. 請求項1ないし5の何れか一に記載の動きベクトル演算方法を用いて手ぶれ補正を実行する手ぶれ補正装置であって、
    複数の画像を入力して、基準画像と一または二以上の比較画像との動きベクトルを前記動きベクトル演算方法を用いて演算し、当該演算結果を出力する動きベクトル演算部と、
    前記動きベクトル演算部によって求めた動きベクトルと比較画像を用いて、基準画像へ重ね合わせるための処理を実行して合成用画像を作成する合成用画像生成手段と、
    前記合成用画像生成手段で作成した一または二以上の合成用画像を基準画像に重ね合わせて画像を合成する画像合成手段と、
    前記画像合成手段によって合成した画像データを出力する画像データ出力手段と、
    を備えたことを特徴とする手ぶれ補正装置。
  7. 前記画像合成手段は、手ぶれの最大範囲を演算し、画像枠から当該最大範囲については、画像数による平均化処理を実行することを特徴とする請求項6記載の手ぶれ補正装置。
  8. 請求項6に記載の手ぶれ補正装置を有する撮像装置であって、
    被写体を連続して撮影して、複数の画像を生成し、前記手ぶれ装置へ入力する撮像部と、
    前記手ぶれ装置の画像を保存する記憶部とを備えたことを特徴とする撮像装置。
  9. 請求項7に記載の手ぶれ補正装置を有する撮像装置であって、
    被写体を連続して撮影して、複数の画像を生成し、前記手ぶれ装置へ入力する撮像部と、
    前記手ぶれ装置の画像を保存する記憶部とを備えたことを特徴とする撮像装置。
  10. 請求項1ないし5の何れか一に記載の動きベクトル演算方法を用いて動画を生成する動画生成装置であって、
    複数の画像を入力し、前記動きベクトル演算方法を用いて、基準画像と一または二以上の比較画像との間の動きベクトルを算定する動きベクトル演算部と、
    前記動きベクトル演算部で算定した動きベクトルを所定の値で分割することによって一または二以上の中間の動きベクトルを演算する動きベクトル編集手段と、
    基準画像に対して、前記中間の動きベクトルを適用することによって中間画像を生成し、初期画像、中間画像、および、最終画像を時系列的に表示可能にする動画生成手段と、を備えたことを特徴とする動画生成装置。
  11. 複数の画像データを入力して、画像間の動きベクトルを演算するプログラムであって、
    入力された複数の画像データについて、所定の解像度レベルL(L;自然数)までの多重解像度データを夫々演算して保存する処理と、
    基準画像の解像度レベルLの入力動きベクトルを演算する処理と、
    前記各処理によって求めた解像度Lの基準画像、比較画像、入力動きベクトルを用いて次のステップを実行する解像度別動きベクトル推定処理と、を含み、
    (1)入力動きベクトルの各始点座標について、基準画像上の座標と、比較画像上の座標とを引数とするエネルギー関数を定義し、入力動きベクトルの所定範囲内で、前記エネルギー関数をもとに動きベクトルを仮算出するステップ、
    (2)基準画像の各特徴点について、画像特徴量をもとに動きベクトルの信頼度を仮算出するステップ、
    (3)基準画像の特徴点間の画像特徴量の差と前記仮算出した動きベクトルの差のうち少なくとも一つを用いて相関度を算出するステップ、
    (4)前記仮算出した、動きベクトルと信頼度とを所定範囲にある動きベクトル、信頼度、相関度を用いて円滑化することによって、解像度Lの動きベクトルを本算出するステップ、
    前記本算出した解像度Lの動きベクトルをさらに解像度の高い解像度L−1の入力動きベクトルとして用い、前記解像度別動きベクトル推定処理を順次解像度の高い画像データに対して繰り返すことによって、基準画像と比較画像間の動きベクトルを演算することを特徴とするコンピュータ実行可能なプログラム。
JP2006552817A 2005-01-14 2005-01-14 動きベクトル演算方法とこの方法を用いた手ぶれ補正装置、撮像装置、並びに動画生成装置 Active JP3935500B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2005/000424 WO2006075394A1 (ja) 2005-01-14 2005-01-14 動きベクトル演算方法とこの方法を用いた手ぶれ補正装置、撮像装置、並びに動画生成装置

Publications (2)

Publication Number Publication Date
JP3935500B2 true JP3935500B2 (ja) 2007-06-20
JPWO2006075394A1 JPWO2006075394A1 (ja) 2008-06-12

Family

ID=36677430

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006552817A Active JP3935500B2 (ja) 2005-01-14 2005-01-14 動きベクトル演算方法とこの方法を用いた手ぶれ補正装置、撮像装置、並びに動画生成装置

Country Status (7)

Country Link
US (1) US7847823B2 (ja)
EP (1) EP1843294B1 (ja)
JP (1) JP3935500B2 (ja)
KR (1) KR101036787B1 (ja)
AT (1) ATE481696T1 (ja)
DE (1) DE602005023661D1 (ja)
WO (1) WO2006075394A1 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009188837A (ja) * 2008-02-07 2009-08-20 Olympus Corp 撮像装置及び撮像方法
JP2009303108A (ja) * 2008-06-17 2009-12-24 Sony Corp 画像処理装置および画像処理方法、並びにプログラム
WO2010023982A1 (ja) 2008-08-27 2010-03-04 三菱電機株式会社 動きベクトル検出装置および画像処理装置
WO2012005081A1 (en) 2010-07-08 2012-01-12 Ricoh Company, Ltd. Image processing unit, image processing method, and image processing program
US8576288B2 (en) 2010-10-07 2013-11-05 Ricoh Company, Ltd. Image processing unit, image processing method, and image processing program
US8594433B2 (en) 2010-07-16 2013-11-26 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and computer-readable recording medium
US9202284B2 (en) 2010-07-16 2015-12-01 Canon Kabushiki Kaisha Image processing method, image processing apparatus and non-transitory computer-readable storage medium therefor
US9667841B2 (en) 2010-07-16 2017-05-30 Canon Kabushiki Kaisha Image processing apparatus and image processing method
US10210619B2 (en) 2015-03-06 2019-02-19 Canon Kabushiki Kaisha Image processing apparatus for selecting an object image to be processed based on a determination result of correlation, image pickup apparatus, and storage medium for storing image processing program
WO2024049197A1 (ko) * 2022-08-30 2024-03-07 엘지전자 주식회사 3d 데이터 송신 장치, 3d 데이터 송신 방법, 3d 데이터 수신 장치 및 3d 데이터 수신 방법

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7646916B2 (en) * 2005-04-15 2010-01-12 Mississippi State University Linear analyst
US8165205B2 (en) * 2005-09-16 2012-04-24 Sony Corporation Natural shaped regions for motion compensation
JP4620607B2 (ja) * 2006-02-24 2011-01-26 株式会社モルフォ 画像処理装置
JP4959237B2 (ja) * 2006-06-22 2012-06-20 オリンパス株式会社 撮像システム及び撮像プログラム
EP2063390B1 (en) 2006-09-14 2016-08-03 Fujitsu Limited Image processing device and its program
US8375302B2 (en) * 2006-11-17 2013-02-12 Microsoft Corporation Example based video editing
JP2008217526A (ja) * 2007-03-06 2008-09-18 Canon Inc 画像処理装置、画像処理プログラム及び画像処理方法
JP4709794B2 (ja) * 2007-03-15 2011-06-22 株式会社東芝 動き推定装置及びその方法
US8773423B2 (en) * 2007-05-07 2014-07-08 Microsoft Corporation Creating optimized gradient mesh of a vector-based image from a raster-based image
US8300887B2 (en) * 2007-05-10 2012-10-30 Honda Motor Co., Ltd. Object detection apparatus, object detection method and object detection program
JP4989308B2 (ja) * 2007-05-16 2012-08-01 キヤノン株式会社 画像処理装置及び画像検索方法
JP4825748B2 (ja) 2007-07-13 2011-11-30 株式会社モルフォ 画像データ処理方法および撮像装置
JP4377932B2 (ja) 2007-07-26 2009-12-02 株式会社モルフォ パノラマ画像生成装置およびプログラム
US7956899B2 (en) * 2007-08-29 2011-06-07 Sanyo Electric Co., Ltd. Imaging device and image processing apparatus
US8600189B2 (en) * 2007-11-12 2013-12-03 Qualcomm Incorporated Block-based image stabilization
JP5048542B2 (ja) * 2008-02-07 2012-10-17 オリンパス株式会社 画像処理装置及び画像処理プログラム
US8379152B2 (en) 2008-03-31 2013-02-19 Sharp Laboratories Of America, Inc. Systems and methods for increasing the temporal resolution of video data
US8199243B2 (en) * 2008-04-28 2012-06-12 Panasonic Corporation Imaging device and camera body
WO2010035734A1 (ja) * 2008-09-24 2010-04-01 ソニー株式会社 画像処理装置および方法
US8508659B2 (en) * 2009-08-26 2013-08-13 Nxp B.V. System and method for frame rate conversion using multi-resolution temporal interpolation
KR101451137B1 (ko) * 2010-04-13 2014-10-15 삼성테크윈 주식회사 손떨림 검출 장치 및 방법
WO2013035150A1 (ja) 2011-09-05 2013-03-14 株式会社モルフォ 顔認証システム、顔認証方法、および顔認証プログラム
JP5544497B2 (ja) * 2012-03-13 2014-07-09 株式会社モルフォ 画像処理装置、画像処理方法及び画像処理プログラム
US9202431B2 (en) * 2012-10-17 2015-12-01 Disney Enterprises, Inc. Transfusive image manipulation
JP2014093602A (ja) 2012-11-01 2014-05-19 Toshiba Corp 画像処理装置、画像処理方法、画像処理プログラム、および立体画像表示装置
KR101767927B1 (ko) 2012-11-01 2017-08-17 한화테크윈 주식회사 실시간 움직임 검출 방법 및 시스템
US9374532B2 (en) * 2013-03-15 2016-06-21 Google Inc. Cascaded camera motion estimation, rolling shutter detection, and camera shake detection for video stabilization
JP2014225108A (ja) * 2013-05-16 2014-12-04 ソニー株式会社 画像処理装置、画像処理方法およびプログラム
US10380450B2 (en) * 2014-10-03 2019-08-13 Nec Corporation Information processing device, information processing method, and recording medium
US10818018B2 (en) 2016-11-24 2020-10-27 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and non-transitory computer-readable storage medium
JP6453837B2 (ja) * 2016-12-08 2019-01-16 株式会社東芝 画像処理装置、画像処理方法、画像処理プログラム、および立体画像表示装置
KR102138483B1 (ko) 2017-10-31 2020-07-27 가부시키가이샤 모르포 화상 합성 장치, 화상 합성 방법, 화상 합성 프로그램 및 기억 매체
KR102042131B1 (ko) 2018-01-30 2019-11-07 광운대학교 산학협력단 단말기에서 실시간 글자 인식시 영상을 안정화하는 방법
US10708597B2 (en) 2018-02-01 2020-07-07 Microsoft Technology Licensing, Llc Techniques for extrapolating image frames
KR102627646B1 (ko) * 2018-10-23 2024-01-19 엘지전자 주식회사 신호 처리 장치 및 이를 구비하는 영상표시장치
CN113873099B (zh) * 2021-08-27 2024-04-12 山东信通电子股份有限公司 一种输电通道视频稳像方法、设备及介质
CN114612773B (zh) * 2022-02-25 2024-06-25 武汉大学 一种适用于sar和光学影像的高效海冰运动提取方法及系统

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06153146A (ja) 1992-11-04 1994-05-31 Matsushita Electric Ind Co Ltd 動画像のシーンチェンジ検出装置および編集装置
JP3519441B2 (ja) 1993-02-26 2004-04-12 株式会社東芝 動画像伝送装置
JPH07154801A (ja) * 1993-11-29 1995-06-16 Ricoh Co Ltd 階層型動きベクトル検出方法
TW257924B (en) * 1995-03-18 1995-09-21 Daewoo Electronics Co Ltd Method and apparatus for encoding a video signal using feature point based motion estimation
JPH0973540A (ja) 1995-09-04 1997-03-18 Sharp Corp 動きベクトル算出装置
KR100188116B1 (ko) * 1995-12-28 1999-06-01 김광호 손떨림 영상 안정화 회로
KR100265720B1 (ko) 1997-03-31 2000-09-15 윤종용 2차원삼각형선격자모델을이용한동영상의움직임보상방법
KR100624355B1 (ko) * 1999-04-26 2006-09-18 코닌클리케 필립스 일렉트로닉스 엔.브이. 서브-픽셀 정밀 움직임 벡터 추정 및 움직임-보상 보간
JP4296693B2 (ja) * 2000-07-13 2009-07-15 ソニー株式会社 Av信号記録再生装置、cm検出方法、および記録媒体
JP2004516718A (ja) * 2000-12-11 2004-06-03 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ビデオ信号処理における動き補償型デインターレーシング
JP4639555B2 (ja) 2001-08-31 2011-02-23 ソニー株式会社 動きベクトル検出装置および方法、手振れ補正装置および方法、並びに撮像装置
KR100396558B1 (ko) * 2001-10-25 2003-09-02 삼성전자주식회사 적응 움직임 보상형 프레임 및/또는 레이트 변환 장치 및그 방법
JP3804617B2 (ja) * 2003-02-14 2006-08-02 コニカミノルタフォトイメージング株式会社 画像処理装置及び方法
US7499494B2 (en) * 2003-12-23 2009-03-03 Genesis Microchip Inc. Vector selection decision for pixel interpolation
US7433497B2 (en) * 2004-01-23 2008-10-07 Hewlett-Packard Development Company, L.P. Stabilizing a sequence of image frames
US7616782B2 (en) * 2004-05-07 2009-11-10 Intelliview Technologies Inc. Mesh based frame processing and applications

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009188837A (ja) * 2008-02-07 2009-08-20 Olympus Corp 撮像装置及び撮像方法
JP2009303108A (ja) * 2008-06-17 2009-12-24 Sony Corp 画像処理装置および画像処理方法、並びにプログラム
JP4600530B2 (ja) * 2008-06-17 2010-12-15 ソニー株式会社 画像処理装置および画像処理方法、並びにプログラム
US8391623B2 (en) 2008-06-17 2013-03-05 Sony Corporation Image processing apparatus and image processing method for determining motion vectors
WO2010023982A1 (ja) 2008-08-27 2010-03-04 三菱電機株式会社 動きベクトル検出装置および画像処理装置
WO2012005081A1 (en) 2010-07-08 2012-01-12 Ricoh Company, Ltd. Image processing unit, image processing method, and image processing program
US9202284B2 (en) 2010-07-16 2015-12-01 Canon Kabushiki Kaisha Image processing method, image processing apparatus and non-transitory computer-readable storage medium therefor
US8594433B2 (en) 2010-07-16 2013-11-26 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and computer-readable recording medium
US8842918B2 (en) 2010-07-16 2014-09-23 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and computer-readable recording medium
US9667841B2 (en) 2010-07-16 2017-05-30 Canon Kabushiki Kaisha Image processing apparatus and image processing method
US8576288B2 (en) 2010-10-07 2013-11-05 Ricoh Company, Ltd. Image processing unit, image processing method, and image processing program
US10210619B2 (en) 2015-03-06 2019-02-19 Canon Kabushiki Kaisha Image processing apparatus for selecting an object image to be processed based on a determination result of correlation, image pickup apparatus, and storage medium for storing image processing program
WO2024049197A1 (ko) * 2022-08-30 2024-03-07 엘지전자 주식회사 3d 데이터 송신 장치, 3d 데이터 송신 방법, 3d 데이터 수신 장치 및 3d 데이터 수신 방법

Also Published As

Publication number Publication date
US20080180535A1 (en) 2008-07-31
KR101036787B1 (ko) 2011-05-25
EP1843294A1 (en) 2007-10-10
WO2006075394A1 (ja) 2006-07-20
ATE481696T1 (de) 2010-10-15
EP1843294B1 (en) 2010-09-15
US7847823B2 (en) 2010-12-07
EP1843294A4 (en) 2009-06-03
DE602005023661D1 (de) 2010-10-28
JPWO2006075394A1 (ja) 2008-06-12
KR20070093995A (ko) 2007-09-19

Similar Documents

Publication Publication Date Title
JP3935500B2 (ja) 動きベクトル演算方法とこの方法を用いた手ぶれ補正装置、撮像装置、並びに動画生成装置
JP4620607B2 (ja) 画像処理装置
WO2021088473A1 (en) Image super-resolution reconstruction method, image super-resolution reconstruction apparatus, and computer-readable storage medium
JP4377932B2 (ja) パノラマ画像生成装置およびプログラム
US20200258196A1 (en) Image processing apparatus, image processing method, and storage medium
CN108463994B (zh) 图像处理装置、图像处理方法和存储介质
CN107851321A (zh) 图像处理方法和双摄像头系统
US20030113036A1 (en) Method and apparatus for generating texture for 3D facial model
US20130136342A1 (en) Image processing device and image processing method
JP5820716B2 (ja) 画像処理装置、画像処理方法、コンピュータプログラム、記録媒体、立体画像表示装置
JP6583008B2 (ja) 画像補正装置、画像補正方法及び画像補正用コンピュータプログラム
JP4982343B2 (ja) 画像処理装置、画像評価方法、プログラム及び情報記憶媒体
JPH10108003A (ja) 画像合成装置および画像合成方法
JP4212430B2 (ja) 多重画像作成装置、多重画像作成方法、多重画像作成プログラム及びプログラム記録媒体
JP6320165B2 (ja) 画像処理装置及びその制御方法、並びにプログラム
US9159118B2 (en) Image processing apparatus, image processing system, and non-transitory computer-readable medium
JP6854629B2 (ja) 画像処理装置、画像処理方法
JP6600113B1 (ja) Ar用の画像処理装置、画像処理システム及びプログラム
JP4858908B2 (ja) 画像処理方法および撮像装置
JP5713256B2 (ja) 画像処理装置、撮像装置、および画像処理プログラム
CN113313646B (zh) 图像处理方法及装置、电子设备、计算机可读存储介质
JP2024007899A (ja) 画像処理装置、画像処理方法、およびプログラム
JP2012247816A (ja) 画像処理装置、画像処理方法、コンピュータプログラム

Legal Events

Date Code Title Description
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: 20070221

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070319

R150 Certificate of patent or registration of utility model

Ref document number: 3935500

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100330

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20100330

Year of fee payment: 3

S202 Request for registration of non-exclusive licence

Free format text: JAPANESE INTERMEDIATE CODE: R315201

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

Free format text: PAYMENT UNTIL: 20100330

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20100330

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130330

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20130330

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130330

Year of fee payment: 6

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20130330

Year of fee payment: 6

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

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

Free format text: PAYMENT UNTIL: 20130330

Year of fee payment: 6

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

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

Free format text: PAYMENT UNTIL: 20130330

Year of fee payment: 6

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20130330

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20130330

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20170330

Year of fee payment: 10

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250