(57)【特許請求の範囲】
【請求項１】
格子点モデル変形・移動装置により、変形・移動させようとする対象を含む静止画および該対象と類似の動きをする動画を準備し、前記動画から動き推定法により動き場を求め、前記静止画中の前記対象に対し連結関係のない複数の格子点を設定し、該各格子点を独立に前記求めた動き場に応じて移動させる移動フェーズと移動後の各格子点を仮想的な連結によって初期と類似の関係に戻す変形フェーズとを時間幅の中で繰り返すことによって、前記対象の変形と移動の両方を表現する格子点モデル変形・移動方法であって、
前記変形フェーズは、移動後の各格子点の位置を、格子点間の距離の移動前後の変位がゼロに近づくようにｘ成分とｙ成分のそれぞれについて連結方向に沿って修正する処理と、格子点がなす角度の移動前後の変位がゼロに近づくように修正する処理とを含むことを特徴とする格子点モデル変形・移動方法。
【請求項２】
変形・移動させようとする対象を含む静止画および該対象と類似の動きをする動画を入力し蓄積するデータ入力・蓄積手段と、前記静止画中の前記対象に対し連結関係のない複数の格子点を設定する格子点設定手段と、前記動画から動き推定法により動き場を求める動き場設定手段と、前記各格子点を独立に前記求めた動き場に応じて変形した後に仮想的な連結によって初期と類似の関係に戻す格子点移動手段と、を備え、
前記格子点移動手段は、移動後の各格子点の位置を、格子点間の距離の移動前後の変位がゼロに近づくようにｘ成分とｙ成分のそれぞれについて連結方向に沿って修正するとともに、格子点がなす角度の移動前後の変位がゼロに近づくように修正することを特徴とする格子点モデル変形・移動装置。
【請求項３】
請求項２に記載の格子点モデル変形・移動装置において、
前記対象の移動・変形結果と前記動画とを重ねて表示する表示手段を備えたことを特徴とする格子点モデル変形・移動装置。
【請求項４】
請求項２又は３に記載の格子点モデル変形・移動装置において、
前記各格子点は、連結関係がなく、前記初期と類似の関係に戻す仮想的な連結と前記動き場に応じて変形する解放を時間幅の中で繰り返し、前記動画内の近傍流体との相互作用を含めたモデルであることを特徴とする格子点モデル変形・移動装置。
【請求項５】
請求項２又は３に記載の格子点モデル変形・移動装置において、
前記動き場設定手段は、流体系のオプティカルフローモデルを適用した手段であることを特徴とする格子点モデル変形・移動装置。
【請求項６】
請求項５に記載の格子点モデル変形・移動装置において、
前記オプティカルフローモデルは、画像フレーム間の輝度変動を考慮して動き場を求めるモデルであることを特徴とする格子点モデル変形・移動装置。
【請求項７】
変形・移動させようとする対象を含む静止画および該対象と類似の動きをする動画を準備するステップと、
前記動画から動き推定法により動き場を求めるステップと、
前記静止画中の前記対象に対し連結関係のない複数の格子点を設定するステップと、
各格子点を独立に前記求めた動き場に応じて移動させる移動フェーズと移動後の各格子点を仮想的な連結によって初期と類似の関係に戻すように移動させる変形フェーズとを時間幅の中で繰り返すステップと、
を格子点モデル変形・移動装置に実行させるためのプログラムであって、
前記変形フェーズは、移動後の各格子点の位置を、格子点間の距離の移動前後の変位がゼロに近づくようにｘ成分とｙ成分のそれぞれについて連結方向に沿って修正する処理と、格子点がなす角度の移動前後の変位がゼロに近づくように修正する処理とを含むことを特徴とする格子点モデル変形・移動プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値シミュレーション、コンピュータグラフィックス（ＣＧ）、デジタル編集等の分野において、静止画内の所定の対象を別の動画の動きに合わせて変形・移動させる技術に関するものである。
【背景技術】
【０００２】
数値シミュレーション、ＣＧ、デジタル編集等の分野において、物体の変形と移動に関する表現方法は、さまざまなモデルが知られているが、特に、空気や液体などの流体と物体との相互作用表現を計算していくためには、安定性と計算時間に関して多くの課題が残されている。
【０００３】
数値シミュレーションモデルでは、高度な数値モデルが存在する一方で、安定した計算を実現するために計算時間のステップ幅を小さくとる必要があり、計算時間が膨大にかかる問題がある。また、固定点がなく、移動しながら変形と相互作用を加味するモデルの場合は、不安定な計算になりがちである。
【０００４】
ＣＧにおいても、高速化したモデルが知られているが、移動を伴わない変形モデル（非特許文献１）となっているなど、自由度が極めて少なくなっている問題がある。デジタル編集においても、簡便に表現できるモデルが必要とされている。
【０００５】
これらの多くは格子点が連結されたままのモデルであることと、大型数値演算を必要とする表現の限界があった。衝突（非特許文献１）、移動、変形を同時に含む場合の簡便な表現（モデル）はほとんど見られない。
【０００６】
画像から対象の動き場を推定するオプティカルフロー法にはさまざまなものがあるが、剛体のような対象へのものがほとんどであった（非特許文献２）。そのため、流体のように短い周期で輝度が変化していくような対象については、非特許文献２では、正しい動きがほとんど検出できない問題があった。
【０００７】
【非特許文献１】S.Schaefer,T.Mcphail,and J.Warren "Image Deformation Using Moving Least Squares" ACM Proc,SIGGRAPH pp.533-540,2006.
【非特許文献２】大塚、掘越、安達、鈴木、「時空間中の運動軌跡に基づくオプティカルフローの推定」、電子情報通信学会、D-II、81、9、pp.2061-2073,1998.
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明の目的は、静止画内の所定の対象を別の動画の動きに合わせて変形・移動させる場合に、数理方程式を用いることなく、対象の剛体性、弾性、流体性などに依存しない共通モデル表現ができるようにすることである。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、請求項１にかかる発明の格子点モデル変形・移動方法は、格子点モデル変形・移動装置により、変形・移動させようとする対象を含む静止画および該対象と類似の動きをする動画を準備し、前記動画から動き推定法により動き場を求め、前記静止画中の前記対象に対し連結関係のない複数の格子点を設定し、該各格子点を独立に前記求めた動き場に応じて移動させる移動フェーズと移動後の各格子点を仮想的な連結によって初期と類似の関係に戻す変形フェーズとを時間幅の中で繰り返すことによって、前記対象の変形と移動の両方を表現する格子点モデル変形・移動方法であって、前記変形フェーズは、移動後の各格子点の位置を、格子点間の距離の移動前後の変位がゼロに近づくようにｘ成分とｙ成分のそれぞれについて連結方向に沿って修正する処理と、格子点がなす角度の移動前後の変位がゼロに近づくように修正する処理とを含むことを特徴とする。
請求項２にかかる発明の格子点モデル変形・移動装置は、変形・移動させようとする対象を含む静止画および該対象と類似の動きをする動画を入力し蓄積するデータ入力・蓄積手段と、前記静止画中の前記対象に対し連結関係のない複数の格子点を設定する格子点設定手段と、前記動画から動き推定法により動き場を求める動き場設定手段と、前記各格子点を独立に前記求めた動き場に応じて変形した後に仮想的な連結によって初期と類似の関係に戻す格子点移動手段と、を備え、前記格子点移動手段は、移動後の各格子点の位置を、格子点間の距離の移動前後の変位がゼロに近づくようにｘ成分とｙ成分のそれぞれについて連結方向に沿って修正するとともに、格子点がなす角度の移動前後の変位がゼロに近づくように修正することを特徴とする。
請求項３にかかる発明は、請求項２に記載の格子点モデル変形・移動装置において、前記対象の移動・変形結果と前記動画とを重ねて表示する表示手段を備えたことを特徴とする。
請求項４にかかる発明は、請求項２又は３に記載の格子点モデル変形・移動装置において、前記各格子点は、連結関係がなく、前記初期と類似の関係に戻す仮想的な連結と前記動き場に応じて変形する解放を時間幅の中で繰り返し、前記動画内の近傍流体との相互作用を含めたモデルであることを特徴とする。
請求項５にかかる発明は、請求項２又は３に記載の格子点モデル変形・移動装置において、前記動き場設定手段は、流体系のオプティカルフローモデルを適用した手段であることを特徴とする。
請求項６にかかる発明は、請求項５に記載の格子点モデル変形・移動装置において、前記オプティカルフローモデルは、画像フレーム間の輝度変動を考慮して動き場を求めるモデルであることを特徴とする格子点モデル変形・移動装置。
請求項７にかかる発明の格子点モデル変形・移動プログラムは、変形・移動させようとする対象を含む静止画および該対象と類似の動きをする動画を準備するステップと、前記動画から動き推定法により動き場を求めるステップと、前記静止画中の前記対象に対し連結関係のない複数の格子点を設定するステップと、各格子点を独立に前記求めた動き場に応じて移動させる移動フェーズと移動後の各格子点を仮想的な連結によって初期と類似の関係に戻すように移動させる変形フェーズとを時間幅の中で繰り返すステップと、を格子点モデル変形・移動装置に実行させるためのプログラムであって、前記変形フェーズは、移動後の各格子点の位置を、格子点間の距離の移動前後の変位がゼロに近づくようにｘ成分とｙ成分のそれぞれについて連結方向に沿って修正する処理と、格子点がなす角度の移動前後の変位がゼロに近づくように修正する処理とを含むことを特徴とする。
【発明の効果】
【００１０】
本発明によれば、各格子点を独立に動き場に応じて移動させる移動フェーズと移動後の各格子点をほぼ初期の関係に戻す変形フェーズとを時間幅の中で繰り返すことによって、近傍流体との相互作用を含めた簡易なモデル表現を実現できるので、対象の剛体性、弾性、流体性などに依存しない共通モデルを記述でき、流体表現との相互作用表現を実現できる。また、複雑な数理方程式を解くことが不要となる。さらに、１枚の画像から動画化までについての新しい処理の流れを実現できる。さらに、格子点の数の増大に関わりなく、演算時間を増大を抑制することができる。
【発明を実施するための最良の形態】
【００１１】
本発明は、変形・移動させようとする対象を含む静止画および該対象と似たような動きをする動画を準備し、前記動画から流体モデルに基づいたオプティカルフロー法等の動き推定法により動き場を求め、前記静止画中の前記対象に対し連結関係のない複数の格子点を設定し、該各格子点を独立に前記求めた動き場に応じて移動させる移動フェーズと移動後の各格子点をほぼ初期の関係に戻す変形フェーズとを時間幅の中で繰り返すことによって、前記対象の変形と移動の両方を表現するものである。
【００１２】
これを実現するための装置構成の実施例を図１に示す。本装置は、変形・移動させようとする対象を含む静止画および該対象と似たような動きをする動画を入力し蓄積するデータ入力・蓄積手段１０１と、前記静止画中の前記対象に対し連結関係のない複数の格子点を設定する格子点設定手段１０２と、前記動画から流体モデルに基づいたオプティカルフロー法等の動き推定法により動き場を求める動き場設定手段１０３と、前記各格子点を独立に前記求めた動き場に応じて変形した後にほぼ初期の関係に戻す格子点移動手段１０４と、前記対象の移動・変形結果と前記動画とを重ねて表示する表示手段１０５と、を備える。
【００１３】
これらの手段は、演算処理装置、外部記憶装置、メモリ等を備えたコンピュータにより実現できるものであり、本実施例の格子点モデル変形・移動の処理はプログラムによって実効される。このプログラムはコンピュータの外部記憶装置に記憶されており、記録媒体に記録することも、ネットワークを介して提供することも可能である。
【００１４】
このプログラムは、変形・移動させようとする対象を含む静止画および該対象と似たような動きをする動画を準備するステップと、前記動画から流体モデルに基づいたオプティカルフロー法等の動き推定法により動き場を求めるステップと、前記静止画中の前記対象に対し連結関係のない複数の格子点を設定するステップと、各格子点を独立に前記求めた動き場に応じて移動させる移動フェーズと移動後の各格子点をほぼ初期の関係に戻すように移動させる変形フェーズとを時間幅の中で繰り返すステップと、前記対象の移動・変形結果と前記動画とを重ねて表示するステップとを備える。
【００１５】
ここでは、上記のように連結関係がない格子点モデルを扱う。すなわち、格子点の仮想的な連結と解放を時間幅の中で繰り返し行い、近傍流体との相互作用を含めた簡易なモデル表現を実現する。対象は２次元もしくは３次元である。また、動画からその動き場を求めるには、流体系のオプティカルフロー法を適用する。
【００１６】
図２(a)は本実施例における連結関係のない格子点モデルの説明図である。ここでは、ある画像の特定の対象上に配置された４つの格子点２０１〜２０４のみを示す。各格子点２０１〜２０４は相互に仮想的な連結関係が設定されているものとする。この時刻をｔとし、結合ＯＮと呼ぶ。
【００１７】
次に、動き場として近傍の流速場が与えられたとして、それぞれの格子点２０１〜２０４を、独立にその流速場の速度に従って移動させる。これを移動フェーズとし、結合ＯＦＦと呼ぶ。
【００１８】
次に、各格子点２０１〜２０４がほぼ初期の格子点間の距離と角度に戻るように、結合ＯＮにおける変形フェーズで格子点を移動させていく。この時刻をｔ＋１とする。必要な時間まで、この結合ＯＮ、結合ＯＦＦの過程を繰り返す。ほぼ初期の状態に戻す変形フェーズでは、例えば格子点２０１，２０２については、その間隔がほぼ初期の距離になるように、図２(b)に示すように変位調整を行う。さらに例えば格子点２０１〜２０３については、図２(c)に示すようにほぼ初期の角度になるように角度調整を行う。以上は、他の格子点についても同様である。
【００１９】
ここでは、離散化された時刻ｔ、ｔ＋１の中間に、仮想的な時間を取り入れている。格子点同士の相対的な位置関係を初期の格子点のデータから決定するのである。各格子点は、流れ場による移動と変形の２つの過程が必要となるため、変形フェーズについては仮想的な時間の中で処理する。変形と移動が開始された後、初期値とのずれ（誤差）の具合を様々に調整して、容易に、見かけの硬さや柔らかさを変更できる。この誤差が小さいときは剛体、大きいときは弾性体のように、自由自在に変更できる。イメージとしては、複数の人が手をつないだまま移動するとき、一度手を離して、それぞれの人の場所での流れ場に従って移動し、再度元の組み合わせの相手と手をつなぐことを繰り返す、というもにである。
【００２０】
図２(d)は変形フェーズの詳細を示す図である。格子点２０１，２０２，２０４をそれぞれＡ，Ｂ，Ｃとする。時刻ｔでは、Ａ(t)，Ｂ(t)，Ｃ(t)の位置にある。すなわち、２次元ｘｙ座標では、Ａ(t)＝（ｘａ、ｙａ）t、Ｂ(t)＝（ｘb、ｙb）t、Ｃ(t)＝（ｘc、ｙc）tである。また、Ｌab(t)は時刻ｔでのＡ，Ｂ間の距離、Ｌbc(t)は時刻ｔでのＢ，Ｃ間の距離、θabc(t)は時刻ｔでのＡ，Ｂ，Ｃの３点がなす角度である。
【００２１】
これが、時刻ｔ＋１になると、各格子点２０１，２０２，２０４は、（Ａ(t)，Ｂ(t)，Ｃ(t)）→（Ａ(t+1)，Ｂ(t+1)，Ｃ(t+1)）の位置に変位し、Ａ，Ｂ間の距離はＬab(t)→Ｌab(t+1)に変化し、Ｂ，Ｃ間の距離はＬbc(t)→Ｌbc(t+1)に変化し、Ａ，Ｂ，Ｃの３点がなす角度はθabc(t)→θabc(t+1)に変化する。
【００２２】
このとき、Ａ，Ｂ間が短くなったとすると、
ΔLab＝｜Ｌab(t+1)−Ｌab(t)｜                          (1)
だけ変位し、
Ｂ，Ｃ間が長くなったとすると、
ΔLbc＝｜Ｌbc(t+1)−Ｌbc(t)｜                          (2)
だけ変位する。この変位をゼロに近づけるよう、ＡとＢ、ＢとＣの連結方向に沿って修正する。
【００２３】
次に、連結方向については、ベクトル表現により、容易に得られる。すなわち、座標値より単位ベクトルを作る。まず、ＡとＢ間の単位ベクトルｅabは、
0004702811.tif 000002
で表される。
【００２４】
以上により、Ａ点の位置修正は、Ｂ点より離れるように行うが、Ｂ点はＣ点とも連結されているので、ｘ成分については、
ｘa  ←  ｘa−ΔＬab・ｅab・0.5
ｘb  ←  ｘb＋ΔＬab・ｅab・0.5                    (4)
となる。係数0.5は２点間の移動量を半分にするためのものであり、任意である。式(4)の左辺のｘa、ｘbが修正後の位置である。複数の格子点が連結していため、｜ΔＬab｜＜ε1、｜ΔＬbc｜＜ε1と、予め決めた値ε1より小さくなるまで反復計算を例えば１０回程度繰り返す。これは、ｘcについても同様であり、ｙ成分についも同様である。
【００２５】
次に、角度の修正は、角度がある角度からさらに開いた場合を想定すると、
Δθabc＝｜θabc(t+1)−θabc(t)｜                      (5)
となる。角度補正は、回転行列Ｒを用いればよい。
0004702811.tif 000003
図２(e)のように、ＡからＡ’に修正する場合は、
0004702811.tif 000004
となる。ただし、θ＝Δθabc／２である。このΔθabcも予め決めたε2以下になるまで、反復的に補正を行う。
【００２６】
図３はある静止画内の変形・移動を行う対象を設定する説明図である。図３(a)は複数の落葉を含む静止画図を示す。この静止画中から図３(b)に示すように７枚の落葉を人為的に選択し、その落葉のマスク画像３０１〜３０７を対象として設定し、各マスク画像３０１〜３０７に格子点を配置する。図３(c)に、１枚のマスク画像３０４について、格子点３１０をお互いの距離が等間隔になるようにランダムな位置に配置した例を示す。他のマスク画像３０１〜３０２，３０４〜３０７についても同様である。必要に応じて、人為的に、格子点を不等間隔に配置してもよい。
【００２７】
図４は２枚の連続した画像４０１，４０２から動き場４０３を推定する方法の説明図である。動き場を複雑に設定できるほど、変形する対象の動きはよりリアルになる。そのため、川の流れなど、実際の動画を用いて、動き推定することが好ましい。
【００２８】
その方法としては、オプティカルフロー法によるものが挙げられる。流体状のパターンの場合は、それに即した物理モデルの適用が妥当である。２枚の画像を用いて、オプティカルフローを推定するモデルを式(8)に示す。Ｉは２次元画像、Δは空間１次微分、Ｉｔは時間１次微分、（ｉ、ｊ）は画像上の座標を示す。また、α１〜α３はフレーム間の輝度変動に重みを付けるための係数である。ｕは推定されるオプティカルフローの２次元ベクトルである。
0004702811.tif 000005
【００２９】
式(8)はある画像領域において、εi,jが最小になるための必要条件から、オプティカルフローが推定される。即ち、未知数（ｕ、ｖ）についての目的関数Ｅの最小化問題に帰着する。
0004702811.tif 000006
この式(9)から、線形連立１次方程式を求めて解くことで、画像上の動きベクトル、即ち、オプティカルフローが推定される。
【００３０】
なお、従来のオプティカルフロー法（参考文献：徐剛、辻三郎、「３次元ビジョン」、共立出版、１１２−１１３頁、２００１）は、
0004702811.tif 000007
で表されるのもであった。すなわち、式(8)のように、三角関数による画像フレーム間の輝度変動に対応したものではなく、画像フレーム間での輝度恒常性が仮定されていた。これに対し本実施例では、画像フレーム間の輝度変動に重み付けを行って動き場を求めているので、精度を高めることができる。
【００３１】
図５はさまざまな対象に対する変形と移動の実験例である。図５(a)〜(c)では、背景の川の激流５０１から動き場を各時刻ごとに推定する。複数の落葉５０２を別の１枚の画像から切り出し、各落葉５０２の初期の格子点間の距離と角度を基準量として、各落葉５０２を激流５０１に流す表現を行った。その結果、それぞれの落葉５０２はその場の激流５０１の流れ速度に応じた変形を行いながら、下流へと流れていった。
【００３２】
次に、図５(d)〜(f)において、複数の円形状の粒子５０３を激流５０１に流した例を示す。そのとき、図５(g)〜(i)に示すように、格子モデルへ貼り付けるテクスチャ（粒子５０３）を半透明状の赤血球５０４に類似するようにした。また、背景には血管５０５をイメージできるように、激流５０１から置き換えた。その結果、個々の赤血球５０４が変形しながら、移動していくようになった。また、流れながら衝突する表現も適切にできた。
【００３３】
図６は対象同士の衝突についての説明図である。上述したように、本実施例では、変形と移動を同じ１つのモデルで表現できている。これに加えて、衝突についても容易にモデルを拡張できる利点がある。
【００３４】
ここには、例として２個の対象６０１，６０２があり、それぞれに、事前に複数の格子点６０３，６０４が割り付けられているものとする。それぞれのある時刻における重心を星印６０５，６０６として、対象６０１，６０２を構成している格子点６０３，６０４の重心を求める。各対象６０１，６０２について、それぞれ星印６０５，６０６をいままで述べた対象内の格子点とみなすことができる。即ち、２つの星印６０５，６０６の間の距離を初期値として設定しておくことで、対象６０１，６０２のそれぞれが変形と移動を行うとき、２つの星印６０５，６０６の距離が一定以上（衝突時の距離以上）になるように、対象６０１の各格子点、対象６０２の各格子点を平行移動させる。これを図２(a)で説明したように、時刻ｔと時刻ｔ＋１の間で行うことで、衝突を表現する。
【００３５】
図７に従来の数理モデルと本実施例による手法との性能評価比較実験の結果を示す。従来の数理モデルとして、最も簡単な表現はフック則に基づいた弾性モデルである。格子点間を仮想的なバネで連結し、弾性係数を5.0と設定し、本実施例と同じ格子点数と対象を構成した。図５(a)〜(c)で説明した激流５０１に落葉５０２を流し、上流から下流まで流れていくときの格子点の数に対する演算時間の比較実験を行った。本実施例では格子点の数が１０から１０の８乗のオーダまではほとんど演算時間は増大しなかった。これに対して、従来法では指数関数的に演算時間が増大した、このことから、本実施例の演算効率性が高いことが示された。
【図面の簡単な説明】
【００３６】
【図１】本発明の装置構成の実施例のブロック図である。
【図２】本実施例の連結関係のない格子点モデルの説明図である。
【図３】ある静止画内の変形を行う対象を設定する説明図である。
【図４】２枚の連続した動画から動き場を推定する説明図である。
【図５】まざまな対象に対する変形と移動の実験例の説明図である。
【図６】対象同士の衝突の説明図である。
【図７】従来の数理モデルと本実施例の手法との性能評価比較実験の結果を示す特性図である。
【符号の説明】
【００３７】
１０１：データ入力・蓄積手段、１０２：格子点設定手段、１０３：動き場設定手段、１０４：格子点移動手段、１０５：表示手段
２０１〜２０４：格子点
３０１〜３０７：落葉のマスク画像、３１０：格子点
４０１，４０２：画像、４０３：動き場
５０１：激流、５０２：落葉、５０３：粒子、５０４：赤血球、５０５：血管
６０１，６０２：対象、６０３，６０４：格子、６０５，６０６：重心
【図１】
0004702811.tif 000008
【図２】
0004702811.tif 000009
【図３】
0004702811.tif 000010
【図４】
0004702811.tif 000011
【図５】
0004702811.tif 000012
【図６】
0004702811.tif 000013
【図７】
0004702811.tif 000014