(57)【特許請求の範囲】
【請求項１】
静止画像の動きを制御するための動き制御点の設定に係る動き情報を生成する動き情報生成装置を用いた動き情報生成方法であって、
前記静止画像の動きを生成するための第１動体モデルに設定されている第１基準制御点の動きを示す情報を第１動き情報として取得する第１取得ステップと、
前記静止画像の動きを生成するための第２動体モデルに設定されている第２基準制御点の動きを示す情報を第２動き情報として取得する第２取得ステップと、
前記第１動き情報及び前記第２動き情報の各々に係る前記第１基準制御点の動きと前記第２基準制御点の動きを組み合わせて基準制御点の動きを示す新たな動き情報を生成する第１生成ステップと、
を含むことを特徴とする動き情報生成方法。
【請求項２】
前記第１動き情報は、前記第１基準制御点の所定空間での座標位置を示す情報を時間軸に沿って並べた情報を含み、
前記第２動き情報は、前記第２基準制御点の所定空間での座標位置に対して、所定の時間経過後の座標位置に対する差分を示す情報を時間軸に沿って並べた情報を含み、
前記第１生成ステップは、前記第１動き情報に係る前記第１基準制御点の前記所定空間での座標位置に前記第２動き情報に係る前記第２基準制御点の基準位置に対する差分を加えて、新たな動き情報を生成することを特徴とする請求項１に記載の動き情報生成方法。
【請求項３】
前記第１動き情報及び前記第２動き情報の各々に係る前記第１基準制御点の動きと前記第２基準制御点の動きを組み合わせるタイミングを設定する設定ステップを更に含み、
前記第１生成ステップは、前記設定ステップにて設定されたタイミングを基準として、前記第１動き情報及び前記第２動き情報のうち、一方の動き情報に係る基準制御点の動きを他方の動き情報に係る基準制御点の動きに組み合わせて、新たな動き情報を生成することを特徴とする請求項１又は２に記載の動き情報生成方法。
【請求項４】
前記第１生成ステップにて生成された前記新たな動き情報の前記基準制御点の動きに基づいて、前記静止画像内に設定されている動き制御点を動かしてフレーム画像を逐次生成する第２生成ステップを更に含むことを特徴とする請求項１〜３の何れか一項に記載の動き情報生成方法。
【請求項５】
前記静止画像は、背景と被写体とが存在する画像から被写体が含まれる被写体領域を切り抜いた画像を含むことを特徴とする請求項１〜４の何れか一項に記載の動き情報生成方法。
【請求項６】
前記第１基準制御点、前記第２基準制御点、及び前記基準制御点をそれぞれ複数備えたことを特徴とする請求項１〜５の何れか一項に記載の動き情報生成方法。
【請求項７】
静止画像の動きを制御するための動き制御点の設定に係る動き情報を生成する動き情報生成装置であって、
前記静止画像の動きを生成するための第１動体モデルに設定されている第１基準制御点の動きを示す情報を第１動き情報として取得する第１取得手段と、
前記静止画像の動きを生成するための第２動体モデルに設定されている第２基準制御点の動きを示す情報を第２動き情報として取得する第２取得手段と、
前記第１動き情報及び前記第２動き情報の各々に係る前記第１基準制御点の動きと前記第２基準制御点の動きを組み合わせて基準制御点の動きを示す新たな動き情報を生成する第１生成手段と、
を備えたことを特徴とする動き情報生成装置。
【請求項８】
静止画像の動きを制御するための動き制御点の設定に係る動き情報を生成する動き情報生成装置のコンピュータを、
前記静止画像の動きを生成するための第１動体モデルに設定されている第１基準制御点の動きを示す第１動き情報として取得する第１取得手段、
前記静止画像の動きを生成するための第２動体モデルに設定されている第２基準制御点の動きを示す第２動き情報として取得する第２取得手段、
前記第１動き情報及び前記第２動き情報の各々に係る前記第１基準制御点の動きと前記第２基準制御点の動きを組み合わせて基準制御点の動きを示す新たな動き情報を生成する第１生成手段、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動き情報生成方法、動き情報生成装置及びプログラムに関する。
【背景技術】
【０００２】
従来、静止画像内の所望の位置に制御点を設定して、動きをつけたい制御点に所望の動きを指定することで当該静止画像を動かす技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４６１３３１３号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、動体モデルに設定されている動きの制御点に係る動き情報を利用して静止画像を動かす場合、予め用意された動き情報を用いただけではユーザ所望の動きを表現できないといった問題がある。ここで、より多彩な動きを表現する上で、複数の動き情報を利用して新たな動き情報を生成することが考えられるが、制御点の設定を適正に行わないとユーザが意図した動きを再現することができない虞がある。
【０００５】
本発明は、このような問題に鑑みてなされたものであり、本発明の課題は、複数の動き情報を用いて新たな動き情報の生成を簡便に、且つ、適正に行うことができる動き情報生成方法、動き情報生成装置及びプログラムを提供することである。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、本発明に係る動き情報生成方法は、
静止画像の動きを制御するための動き制御点の設定に係る動き情報を生成する動き情報生成装置を用いた動き情報生成方法であって、前記静止画像の動きを生成するための第１動体モデルに設定されている第１基準制御点の動きを示す情報を第１動き情報として取得する第１取得ステップと、前記静止画像の動きを生成するための第２動体モデルに設定されている第２基準制御点の動きを示す情報を第２動き情報として取得する第２取得ステップと、前記第１動き情報及び前記第２動き情報の各々に係る前記第１基準制御点の動きと前記第２基準制御点の動きを組み合わせて基準制御点の動きを示す新たな動き情報を生成する第１生成ステップと、を含むことを特徴としている。
【０００７】
また、本発明に係る動き情報生成装置は、
静止画像の動きを制御するための動き制御点の設定に係る動き情報を生成する動き情報生成装置であって、前記静止画像の動きを生成するための第１動体モデルに設定されている第１基準制御点の動きを示す情報を第１動き情報として取得する第１取得手段と、前記静止画像の動きを生成するための第２動体モデルに設定されている第２基準制御点の動きを示す情報を第２動き情報として取得する第２取得手段と、前記第１動き情報及び前記第２動き情報の各々に係る前記第１基準制御点の動きと前記第２基準制御点の動きを組み合わせて基準制御点の動きを示す新たな動き情報を生成する第１生成手段と、を備えたことを特徴としている。
【０００８】
また、本発明に係るプログラムは、
静止画像の動きを制御するための動き制御点の設定に係る動き情報を生成する動き情報生成装置のコンピュータを、前記静止画像の動きを生成するための第１動体モデルに設定されている第１基準制御点の動きを示す第１動き情報として取得する第１取得手段、前記静止画像の動きを生成するための第２動体モデルに設定されている第２基準制御点の動きを示す第２動き情報として取得する第２取得手段、前記第１動き情報及び前記第２動き情報の各々に係る前記第１基準制御点の動きと前記第２基準制御点の動きを組み合わせて基準制御点の動きを示す新たな動き情報を生成する第１生成手段、として機能させることを特徴としている。
【発明の効果】
【０００９】
本発明によれば、複数の動き情報を用いて新たな動き情報の生成を簡便に、且つ、適正に行うことができる。
【図面の簡単な説明】
【００１０】
【図１】本発明を適用した一実施形態の動画生成システムの概略構成を示すブロック図である。
【図２】図１の動画生成システムを構成するユーザ端末の概略構成を示すブロック図である。
【図３】図１の動画生成システムを構成するサーバの概略構成を示すブロック図である。
【図４】図１の動画生成システムによる動画生成処理に係る動作の一例を示すフローチャートである。
【図５】図４の動画生成処理の続きを示すフローチャートである。
【図６】図５の動画生成処理における動き情報生成処理に係る動作の一例を示すフローチャートである。
【図７】図６の動き情報生成処理における座標位置合成処理に係る動作の一例を示すフローチャートである。
【図８】図６の動き情報生成処理に係る第１動き情報の一例を模式的に示す図である。
【図９】図８の第１動き情報に係る画像の一例を模式的に示す図である。
【図１０】図６の動き情報生成処理に係る第２動き情報の一例を模式的に示す図である。
【図１１】図１０の第２動き情報に係る画像の一例を模式的に示す図である。
【図１２】図７の座標位置合成処理を説明するための図である。
【図１３】図６の動き情報生成処理により生成される合成動き情報に係る画像の一例を模式的に示す図である。
【発明を実施するための形態】
【００１１】
以下に、本発明について、図面を用いて具体的な態様を説明する。ただし、発明の範囲は、図示例に限定されない。
図１は、本発明を適用した一実施形態の動画生成システム１００の概略構成を示すブロック図である。
【００１２】
本実施形態の動画生成システム１００は、図１に示すように、撮像装置１と、ユーザ端末２と、サーバ３とを備え、ユーザ端末２とサーバ３とが所定の通信ネットワークＮを介して各種情報を送受信可能に接続されている。
【００１３】
先ず、撮像装置１について説明する。
撮像装置１は、被写体を撮像する撮像機能や撮像画像の画像データを記録媒体Ｃに記録する記録機能等を具備する。即ち、撮像装置１は、公知のものを適用可能であり、例えば、撮像機能を主要な機能として具備するデジタルカメラだけでなく、主要な機能としないものの撮像機能を具備する携帯電話機等の携帯端末なども含む。
【００１４】
次に、ユーザ端末２について図２を参照して説明する。
ユーザ端末２は、例えば、パーソナルコンピュータ等により構成され、サーバ３により開設されるＷｅｂページ（例えば、動画生成用ページ）にアクセスして、当該Ｗｅｂページ上で各種の指示を入力する。
【００１５】
図２は、ユーザ端末２の概略構成を示すブロック図である。
図２に示すように、ユーザ端末２は、具体的には、中央制御部２０１と、操作入力部２０２と、表示部２０３と、音出力部２０４と、記録媒体制御部２０５と、通信制御部２０６等を備えている。
【００１６】
中央制御部２０１は、ユーザ端末２の各部を制御する。具体的には、中央制御部２０１は、ＣＰＵ、ＲＡＭ、ＲＯＭ（何れも図示略）を備え、ＲＯＭに記憶されたユーザ端末２用の各種処理プログラム（図示略）に従って各種の制御動作を行う。その際に、ＣＰＵは、ＲＡＭ内の格納領域内に各種処理結果を格納させ、必要に応じてその処理結果を表示部２０３に表示させる。
ＲＡＭは、例えば、ＣＰＵにより実行される処理プログラム等を展開するためのプログラム格納領域や、入力データや上記処理プログラムが実行される際に生じる処理結果等を格納するデータ格納領域などを備える。
ＲＯＭは、コンピュータ読み取り可能なプログラムコードの形態で格納されたプログラム、具体的には、ユーザ端末２で実行可能なシステムプログラム、当該システムプログラムで実行可能な各種処理プログラムや、これら各種処理プログラムを実行する際に使用されるデータ等を記憶する。
【００１７】
操作入力部２０２は、例えば、数値、文字等を入力するためのデータ入力キーや、データの選択、送り操作等を行うための上下左右移動キーや各種機能キー等によって構成されるキーボードやマウス等を備え、ユーザにより押下されたキーの押下信号やマウスの操作信号を中央制御部２０１のＣＰＵに出力する。
なお、操作入力部２０２としてタッチパネル（図示略）を表示部２０３の表示画面に配設して、タッチパネルの接触位置に応じて各種の指示を入力するような構成としても良い。
【００１８】
表示部２０３は、例えば、ＬＣＤ、ＣＲＴ（Cathode Ray Tube）等のディスプレイから構成され、中央制御部２０１のＣＰＵの制御下にて各種情報を表示画面に表示する。
即ち、表示部２０３は、例えば、サーバ３から送信され通信制御部２０６により受信されたＷｅｂページ（例えば、動画生成用ページ）のページデータに基づいて、対応するＷｅｂページを表示画面に表示する。具体的には、表示部２０３は、動画生成処理（後述）に係る各種の処理画面の画像データに基づいて、各種の処理画面を表示画面に表示する。
【００１９】
音出力部２０４は、例えば、Ｄ／Ａコンバータ、ＬＰＦ（Low Pass Filter）、増幅器、スピーカ等により構成され、中央制御部２０１のＣＰＵの制御下にて放音する。
即ち、音出力部２０４は、例えば、サーバ３から送信され通信制御部２０６により受信された演奏情報に基づいて、当該演奏情報のデジタルデータをＤ／Ａコンバータによりアナログデータに変換し、増幅器を介してスピーカから、所定の音色、音高、音長で曲を放音する。また、音出力部２０４は、一の音源（例えば、楽器）の音を放音しても良いし、複数の音源の音を同時に放音しても良い。
【００２０】
記録媒体制御部２０５は、記録媒体Ｃが着脱自在に構成され、装着された記録媒体Ｃからのデータの読み出しや記録媒体Ｃに対するデータの書き込みを制御する。即ち、記録媒体制御部２０５は、撮像装置１から取り外されて装着された記録媒体Ｃから動画生成処理（後述）に係る被写体存在画像（図示略）の画像データ（ＹＵＶデータ）を読み出して通信制御部２０６に出力する。
ここで、被写体存在画像とは、所定の背景内に主要な被写体が存在する画像のことである。また、記録媒体Ｃには、撮像装置１の画像処理部（図示略）により所定の符号化形式（例えば、ＪＰＥＧ形式等）に従って符号化された被写体存在画像の画像データが記録されている。
そして、通信制御部２０６は、入力された被写体存在画像の画像データをサーバ３に所定の通信ネットワークＮを介して送信する。
【００２１】
通信制御部２０６は、例えば、モデム（MODEM:Modulater/DEModulater）、ターミナルアダプタ（Terminal Adapter）等によって構成され、所定の通信ネットワークＮを介してサーバ３等の外部機器との間で情報の通信制御を行うためのものである。
【００２２】
なお、通信ネットワークＮは、例えば、専用線や既存の一般公衆回線を利用して構築された通信ネットワークであり、ＬＡＮ（Local Area Network）やＷＡＮ（Wide Area Network）等の様々な回線形態を適用することが可能である。また、通信ネットワークＮには、例えば、電話回線網、ＩＳＤＮ回線網、専用線、移動体通信網、通信衛星回線、ＣＡＴＶ回線網等の各種通信回線網と、それらを接続するインターネットサービスプロバイダ等が含まれる。
【００２３】
次に、サーバ３について図３を参照して説明する。
サーバ３は、Ｗｅｂ（World Wide Web）サーバとしてインターネット上にＷｅｂページ（例えば、動画生成用ページ）を開設する機能を具備するものであり、ユーザ端末２からのアクセスに応じて当該ユーザ端末２にＷｅｂページのページデータを送信する。また、サーバ３は、動き情報生成装置として、複数の基準制御点Ｑ、…の所定空間内での動きを示す複数の動き情報のうち、第１動き情報ｄ１及び第２動き情報ｄ２の各々に係る複数の基準制御点Ｑ１、Ｑ２の動きを、基準制御点Ｑの基準位置に対する差分diffx、diffyを利用して組み合わせて新たな動き情報（合成動き情報ｄｎ）を生成する。
【００２４】
図３は、サーバ３の概略構成を示すブロック図である。
図３に示すように、サーバ３は、具体的には、中央制御部３０１と、表示部３０２と、通信制御部３０３と、被写体切抜部３０４と、記憶部３０５と、動画処理部３０６等を備えて構成されている。
【００２５】
中央制御部３０１は、サーバ３の各部を制御する。具体的には、中央制御部３０１は、ＣＰＵ、ＲＡＭ、ＲＯＭ（何れも図示略）を備え、ＣＰＵは、ＲＯＭに記憶されたサーバ３用の各種処理プログラム（図示略）に従って各種の制御動作を行う。その際に、ＣＰＵは、ＲＡＭ内の格納領域内に各種処理結果を格納させ、必要に応じてその処理結果を表示部３０２に表示させる。
ＲＡＭは、例えば、ＣＰＵにより実行される処理プログラム等を展開するためのプログラム格納領域や、入力データや上記処理プログラムが実行される際に生じる処理結果等を格納するデータ格納領域などを備える。
ＲＯＭは、コンピュータ読み取り可能なプログラムコードの形態で格納されたプログラム、具体的には、サーバ３で実行可能なシステムプログラム、当該システムプログラムで実行可能な各種処理プログラムや、これら各種処理プログラムを実行する際に使用されるデータ等を記憶する。
【００２６】
表示部３０２は、例えば、ＬＣＤ、ＣＲＴ等のディスプレイから構成され、中央制御部３０１のＣＰＵの制御下にて各種情報を表示画面に表示する。
【００２７】
通信制御部３０３は、例えば、モデム、ターミナルアダプタ等によって構成され、所定の通信ネットワークＮを介してユーザ端末２等の外部機器との間で情報の通信制御を行うためのものである。
具体的には、通信制御部３０３は、例えば、動画生成処理（後述）にてユーザ端末２から所定の通信ネットワークＮを介して送信された被写体存在画像（図示略）の画像データを受信して、当該画像データを中央制御部３０１のＣＰＵに出力する。
中央制御部３０１のＣＰＵは、入力された被写体存在画像の画像データを被写体切抜部３０４に出力する。
【００２８】
被写体切抜部３０４は、被写体存在画像から被写体切り抜き画像（図示略）を生成する。
即ち、被写体切抜部３０４は、公知の被写体切抜手法を用いて、被写体存在画像から被写体が含まれる被写体領域が切り抜かれた被写体切り抜き画像（図示略）を生成する。具体的には、被写体切抜部３０４は、中央制御部３０１のＣＰＵから出力された被写体存在画像の画像データを取得して、例えば、ユーザによるユーザ端末２の操作入力部２０２（例えば、マウス等）の所定操作に基づいて、表示部２０３に表示されている当該被写体存在画像上に描画された境界線（図示略）により当該被写体存在画像を区分する。続けて、被写体切抜部３０４は、被写体存在画像の切抜線により区分される複数の区分領域の中で、被写体の背景を推定して当該背景の各画素の画素値に基づいて所定の演算を行って、被写体の背景色を所定の単一色として推定する。その後、被写体切抜部３０４は、所定の単一色の背景用画像と被写体存在画像との間で対応する各画素の差分情報（例えば、相違度マップ等）を生成する。そして、被写体切抜部３０４は、生成した差分情報の各画素の画素値を所定の閾値と比較して二値化した後、同じ連結成分を構成する画素集合に同じ番号を付けるラベリング処理を行って面積が最大の画素集合を被写体部分とする。
その後、被写体切抜部３０４は、例えば、上記の面積が最大の画素集合が「１」、その他の部分が「０」である二値化された差分情報に対してローパスフィルタを施して境界部分に中間値を生じさせることでアルファ値を生成し、被写体切り抜き画像内で被写体領域の位置を示す位置情報としてのアルファマップ（図示略）を生成する。
アルファ値（０≦α≦１）とは、例えば、被写体存在画像の各画素について、被写体領域の画像を所定の背景に対してアルファブレンディングする際の重みを表すものである。この場合、被写体領域はアルファ値が「１」となり、被写体存在画像の所定の背景に対する透過度が０％となる。一方、被写体の背景部分はアルファ値が「０」となり、当該被写体存在画像の所定の背景に対する透過度が１００％となる。
【００２９】
そして、被写体切抜部３０４は、アルファマップに基づいて、被写体存在画像の各画素のうち、アルファ値が「１」の画素を所定の単一色画像に対して透過させずに、且つ、アルファ値が「０」の画素を透過させるように、被写体画像を所定の単一色画像と合成して被写体切り抜き画像の画像データを生成する。
被写体切り抜き画像の画像データは、例えば、生成されたアルファマップ等の位置情報と対応付けられている。
【００３０】
なお、上記した被写体切抜部３０４による被写体切抜手法は、一例であってこれに限られるものではなく、被写体存在画像から被写体が含まれる被写体領域を切り抜く公知の手法であれば如何なる手法を適用しても良い。
また、被写体切り抜き画像の画像データとしては、例えば、ＲＧＢＡ形式の画像データを適用しても良く、具体的には、ＲＧＢ色空間で規定される各色に透過度（Ａ）の情報が付加されている。この場合には、被写体切抜部３０４は、透過度（Ａ）の情報を利用して、被写体切り抜き画像内で被写体領域の位置を示す位置情報（図示略）を生成しても良い。
【００３１】
記憶部３０５は、例えば、半導体の不揮発メモリやＨＤＤ（Hard Disc Drive）等により構成され、ユーザ端末２に送信されるＷｅｂページのページデータや被写体切抜部３０４により生成された被写体切り抜き画像の画像データ等を記憶する。
【００３２】
また、記憶部３０５は、動画生成処理に用いられる動き情報を複数記憶している。具体的には、記憶部３０５は、第１動き情報ｄ１と、第２動き情報ｄ２と、合成動き情報ｄｎ等を記憶している。
【００３３】
第１動き情報ｄ１は、所定空間内における複数の基準制御点Ｑ１、…の動きを示す情報であり、具体的には、複数の基準制御点Ｑ１、…の所定空間での座標位置（x, y）を示す情報を時間軸に沿って並べた情報である。
即ち、第１動き情報ｄ１は、複数の基準制御点Ｑ１、…の所定空間、例えば、互いに直交する二軸（例えば、ｘ軸、ｙ軸等）により規定される二次元の平面空間やこれら二軸に加えて当該二軸に直交する軸（例えば、ｚ軸等）により規定される三次元の立体的空間での座標位置（x, y）を示す情報を時間軸に沿って並べた情報である。例えば、第１動き情報ｄ１は、第１基準画像Ｐ１の動体モデルが含まれるモデル領域内に設定されている複数の基準制御点Ｑ１、…を所定の踊り（例えば、「右腕を上げる動き」等）に対応させるように移動させた情報を含み、複数の踊りの各々に対応させて複数規定されている。
具体的には、第１動き情報ｄ１は、例えば、所定空間内にて複数の基準制御点Ｑ１、…の全て若しくは少なくとも一つを移動させた座標位置（x, y）を示す情報を所定の時間間隔（例えば、１００［ｍｓ］等）で連続して並べることで、各踊り毎に、複数の基準制御点Ｑ１、…の動きが連続して表されている（図８参照）。なお、図８にあっては、例えば、第１基準画像Ｐ１における左上隅部を原点（0, 0）とし、水平方向をｘ軸方向とし、垂直方向をｙ軸方向として、各基準制御点Ｑ１の座標位置（x, y）が表されている。
【００３４】
各基準制御点Ｑ１の位置は、動きのモデルとなる動体モデル（例えば、ヒトや動物等）の骨格の形状や関節の位置等を考慮してそれぞれ規定されている。即ち、各基準制御点Ｑ１は、動体モデルとしてのヒトを所定方向（例えば、正面）から見た状態を表す第１基準画像Ｐ１の当該動体モデルが含まれるモデル領域内に、動体モデルの骨格の形状や関節の位置等を考慮して設定されている。
具体的には、例えば、第１基準画像Ｐ１のヒトの外形を模したモデル領域内で、ヒトの「頭」、「首」、「右脇」、「右肘＿中央」、「右手首」、「右手」、「左脇」、「左肘＿中央」、「左手首」、「左手」、「胸」、「腰」、「左足＿付け根」、「左膝＿中央」、「左足首」、「左つま先」、「右足＿付け根」、「右膝＿中央」、「右足首」、「右つま先」の各々に相当する位置にそれぞれ基準制御点Ｑ１が設定されている（図８、図９（ａ）等参照）。
なお、基準制御点Ｑ１の個数は、動体モデルの形状や大きさ等に応じて適宜任意に設定可能である。
また、図９（ａ）〜図９（ｃ）後述する図１１（ａ）〜図１１（ｃ）にあっては、向かって左側に動体モデルとしてのヒトの右腕及び右脚が配置され、一方、向かって右側にヒトの左腕及び左脚が配置されているものとする。
また、図８に示す第１動き情報ｄ１は、例えば、「右腕を上げる動き」に対応させるように複数の基準制御点Ｑ１、…を移動させる際の情報であるが、一例であってこれに限られるものではなく、適宜任意に変更可能である。さらに、第１動き情報ｄ１は、二次元の平面空間を所定の回動軸周りに回転させることで複数の基準制御点Ｑ１、…の動きに奥行きをもたせるような情報であっても良い。
【００３５】
なお、例えば、モデル領域（図９（ａ）〜図９（ｃ）中、白で表す領域）の各画素を第１の画素値（例えば、「１」等）とし、それ以外の領域（図９（ａ）〜図９（ｃ）中、ドットを付した領域）の各画素を第１の画素値と異なる第２の画素値（例えば、「０」等）とする二値画像を用いて第１動き情報ｄ１を説明したが、一例であってこれに限られるものではなく、適宜任意に変更可能である。
【００３６】
第２動き情報ｄ２は、所定空間内における複数の基準制御点Ｑ２、…の動きを示す情報であり、具体的には、複数の基準制御点Ｑ２、…の所定空間での基準位置に対する差分diffx、diffyを示す情報を時間軸に沿って並べた情報である。
即ち、第２動き情報ｄ２は、複数の基準制御点Ｑ２、…の所定空間、例えば、互いに直交する二軸（例えば、ｘ軸、ｙ軸等）により規定される二次元の平面空間やこれら二軸に加えて当該二軸に直交する軸（例えば、ｚ軸等）により規定される三次元の立体的空間での基準の座標位置（x, y）に対する差分diffx、diffyを示す情報を時間軸に沿って並べた情報である。例えば、第２動き情報ｄ２は、第２基準画像Ｐ２の動体モデルが含まれるモデル領域内に設定されている複数の基準制御点Ｑ２、…の各々の座標位置（x, y）に対して、各基準制御点Ｑ２の所定の時間経過後の座標位置（x, y）の差分（変位量）diffx、diffyを示す情報を含み、複数の踊りの各々に対応させて複数規定されている（図１１（ａ）〜図１１（ｃ）等参照）。
具体的には、第２動き情報ｄ２は、例えば、所定空間内にて複数の基準制御点Ｑ２、…の全て若しくは少なくとも一つを移動させる際の所定の時間間隔（例えば、１００［ｍｓ］等）毎の変位量（差分diffx、diffy）を示す情報によって、各踊り毎に、複数の基準制御点Ｑ２、…の動きが連続して表されている（図１０参照）。なお、図１０にあっては、例えば、第２基準画像Ｐ１における左上隅部を原点（0, 0）とし、水平方向をｘ軸方向とし、垂直方向をｙ軸方向として、各基準制御点Ｑ２の基準位置に対する差分diffx、diffyが表されている。
【００３７】
なお、各基準制御点Ｑ２の配置及び個数は、上記した第１動き情報ｄ１に係る基準制御点Ｑ１の配置及び個数と同様であり、その詳細な説明は省略する。
また、図１０に示す第２動き情報ｄ２は、例えば、「膝を曲げる動き」に対応させるように複数の基準制御点Ｑ２、…を移動させる際の情報であるが、一例であってこれに限られるものではなく、適宜任意に変更可能である。
【００３８】
さらに、第２動き情報ｄ２の基準の座標位置として、第２基準画像Ｐ２の動体モデルが含まれるモデル領域内に設定されている複数の基準制御点Ｑ２、…の各々の座標位置（x, y）を例示したが、一例であってこれに限られるものではなく、適宜任意に変更可能である。例えば、複数の基準制御点Ｑ２、…の各々の座標位置（x, y）を所定の時間間隔で並べる場合に、所定の時間前の座標位置（例えば、２００［ｍｓ］の時点の座標位置に対する１００［ｍｓ］の時点の座標位置等）を基準の座標位置として、当該基準の座標位置に対する差分diffx、diffyを示す情報によって複数の基準制御点Ｑ２、…の動きが連続して表された第２動き情報ｄ２であっても良い。
【００３９】
合成動き情報ｄｎは、後述する動き情報生成処理にて生成される情報である。即ち、合成動き情報ｄｎは、第１動き情報ｄ１と略同様に、複数の基準制御点Ｑｎ、…の所定空間での座標位置（x, y）を示す情報を時間軸に沿って並べた情報である。
具体的には、合成動き情報ｄｎは、第１動き情報ｄ１及び第２動き情報ｄ２の各々に係る複数の基準制御点Ｑ１、Ｑ２の動きを組み合わせて生成された新たな動き情報である（図１３参照）。例えば、図１３に示す合成動き情報ｄｎは、例えば、「右腕を上げる動き」と「膝を曲げる動き」とを組み合わせた「右腕を上げつつ膝を曲げる動き」に対応させるように複数の基準制御点Ｑｎ、…を移動させる際の情報であるが、一例であってこれに限られるものではなく、適宜任意に変更可能である。
なお、合成動き情報ｄｎの生成の手法については後述する。
【００４０】
また、記憶部３０５は、動画生成処理に用いられる演奏情報ｄｍを複数記憶している。
演奏情報ｄｍは、動画処理部３０６の動画再生部３０６ｈ（後述）により動画像とともに自動的に曲を演奏するための情報である。即ち、演奏情報ｄｍは、例えば、テンポ、拍子、音程、音階、調、発想標語等を異ならせて複数規定され、それぞれ曲名と対応付けて記憶されている。
また、各演奏情報ｄｍは、例えば、ＭＩＤＩ（Musical Instruments Digital Interface）規格等に従って規定されたデジタルデータであり、具体的には、トラック数や四分音符の分解能（Tickカウント数）等が規定されたヘッダ情報と、各パートに割り当てられた音源（例えば、楽器等）に供給させるイベント及びタイミングかならなるトラック情報等を有している。このトラック情報のイベントとして、例えば、テンポあるいは拍子の変更や、NoteOn・Offを指示する情報などがある。
【００４１】
動画処理部３０６は、第１取得部３０６ａと、第２取得部３０６ｂと、タイミング設定部３０６ｃと、動き情報生成部３０６ｄと、画像取得部３０６ｅと、制御点設定部３０６ｆと、フレーム生成部３０６ｇと、動画再生部３０６ｈとを具備している。
なお、動画処理部３０６の各部は、例えば、所定のロジック回路から構成されているが、当該構成は一例であってこれに限られるものではない。
【００４２】
第１取得部３０６ａは、第１動き情報ｄ１を取得する。
即ち、第１取得部３０６ａは、記憶部３０５に記憶されている複数の第１動き情報ｄ１、…の中で、何れか一の第１動き情報ｄ１を取得する。具体的には、第１取得部３０６ａは、記憶部３０５に記憶されている複数の第１動き情報ｄ１、…の中で、ユーザによるユーザ端末２の操作入力部２０２の所定操作に基づいて選択されたユーザ所望の第１動き情報ｄ１（例えば、「右腕を上げる動き」に対応する第１動き情報ｄ１等）を取得する。
【００４３】
第２取得部３０６ｂは、第２動き情報ｄ２を取得する。
即ち、第２取得部３０６ｂは、記憶部３０５に記憶されている複数の第２動き情報ｄ２、…の中で、何れか一の第２動き情報ｄ２を取得する。具体的には、第２取得部３０６ｂは、記憶部３０５に記憶されている複数の第２動き情報ｄ２、…の中で、ユーザによるユーザ端末２の操作入力部２０２の所定操作に基づいて選択されたユーザ所望の第２動き情報ｄ２（例えば、「膝を曲げる動き」に対応する第２動き情報ｄ２等）を取得する。
【００４４】
タイミング設定部３０６ｃは、第１動き情報ｄ１及び第２動き情報ｄ２の各々に係る複数の基準制御点Ｑ１、Ｑ２の動きを組み合わせるタイミングを設定する。
即ち、タイミング設定部３０６ｃは、第１動き情報ｄ１及び第２動き情報ｄ２のうち、一方の動き情報に係る複数の基準制御点Ｑ、…（例えば、第１動き情報ｄ１に係る基準制御点Ｑ１、…等）の動きを他方の動き情報に係る複数の基準制御点Ｑ、…（例えば、第２動き情報ｄ２に係る基準制御点Ｑ２、…等）の動きに組み合わせるタイミングを設定する。具体的には、タイミング設定部３０６ｃは、例えば、時間軸に沿って配置される第１動き情報ｄ１に係る複数の基準制御点Ｑ１、…の動きに対して、第２動き情報ｄ２に係る複数の基準制御点Ｑ２、…の動きを組み合わせる際の当該複数の基準制御点Ｑ２、…の動きの開始タイミングを、ユーザによるユーザ端末２の操作入力部２０２の所定操作に基づいて指定されたユーザ所望のタイミング（例えば、第１動き情報ｄ１に係る動きが開始されてから５０［ｍｓ］後等）に設定する（図１２参照）。
なお、タイミング設定部３０６ｃは、第２動き情報ｄ２に係る複数の基準制御点Ｑ２、…の動きの開始タイミングを設定するようにしたが、一例であってこれに限られるものではなく、適宜任意に変更可能であり、例えば、複数の基準制御点Ｑ２、…の動きの終了タイミング等を設定するようにしても良い。
【００４５】
動き情報生成部３０６ｄは、合成動き情報ｄｎを生成する。
即ち、動き情報生成部３０６ｄは、第１動き情報ｄ１及び第２動き情報ｄ２の各々に係る複数の基準制御点Ｑ１、Ｑ２の動きを、基準制御点Ｑの基準位置に対する差分diffx、diffyを利用して組み合わせて新たな動き情報を生成する。具体的には、動き情報生成部３０６ｄは、第１動き情報ｄ１及び第２動き情報ｄ２における対応する基準制御点Ｑ１、Ｑ２毎に、第１動き情報ｄ１に係る複数の基準制御点Ｑ１、…の所定空間での座標位置（x, y）に、第２動き情報ｄ２に係る複数の基準制御点Ｑ２、…の基準位置に対する差分diffx、diffyを加えて、新たな動き情報としての合成動き情報ｄｎを生成する。
このとき、動き情報生成部３０６ｄは、タイミング設定部３０６ｃにより設定されたタイミングを基準（例えば、開始タイミング等）として、第１動き情報ｄ１及び第２動き情報ｄ２のうち、一方の動き情報に係る複数の基準制御点Ｑ、…の動きを他方の動き情報に係る複数の基準制御点Ｑ、…の動きに組み合わせて、新たな動き情報を生成しても良い。
例えば、動き情報生成部３０６ｄは、所定の時間間隔毎に並べられた第１動き情報ｄ１に係る複数の基準制御点Ｑ１、…の所定空間での座標位置（x, y）に、タイミング設定部３０６ｃにより設定されたタイミングを第２動き情報ｄ２に係る複数の基準制御点Ｑ２、…の動きの開始タイミングとして、第２動き情報ｄ２に係る複数の基準制御点Ｑ２、…の基準位置に対する差分diffx、diffyを所定の時間間隔毎に加えて、合成動き情報ｄｎに係る複数の基準制御点Ｑｎ、…の所定空間での座標位置（x, y）を算出する。
これにより、複数の基準制御点Ｑｎ、…の所定空間での座標位置（x, y）を示す情報が時間軸に沿って並べられた合成動き情報ｄｎが生成される（図１３参照）。なお、図１３に示す合成動き情報ｄｎにおける基準画像Ｐｎ（１フレーム目に相当する画像）として、第１基準画像Ｐ１と略同様のものを例示したが、一例であってこれに限られるものではなく、組み合わされる動き情報の内容やタイミング等によって適宜任意に変更可能である。
【００４６】
画像取得部３０６ｅは、動画生成処理に用いられる静止画像を取得する。
即ち、画像取得部３０６ｅは、背景と被写体とが存在する被写体存在画像から被写体が含まれる被写体領域が切り抜かれた被写体切り抜き画像（被写体画像）を取得する。具体的には、画像取得部３０６ｅは、被写体切抜部３０４により生成された被写体切り抜き画像の画像データと、当該被写体切り抜き画像の画像データと対応付けられているアルファマップを取得する。
なお、被写体切り抜き画像は、例えば、被写体としてのヒトを所定方向から見た状態を表す画像である。
【００４７】
制御点設定部３０６ｆは、被写体切り抜き画像の被写体領域内で複数の基準制御点Ｑ、…の各々に対応する各位置に動き制御点（図示略）を複数設定する。
即ち、制御点設定部３０６ｆは、例えば、ユーザによるユーザ端末２の操作入力部２０２の所定操作に基づいて指定されたユーザ所望の動き情報（例えば、合成動き情報ｄｎ等）に基づいて、被写体切り抜き画像の被写体領域内で複数の基準制御点Ｑ、…の各々に対応する各位置に当該被写体領域の動きの制御に係る動き制御点を複数設定する。具体的には、制御点設定部３０６ｆは、被写体切り抜き画像の被写体領域内で、ユーザ所望の動き情報に規定されている基準画像（例えば、１フレーム目に相当する画像等）の複数の基準制御点Ｑ、…の各々に対応する動き制御点を設定する。
例えば、制御点設定部３０６ｆは、ヒトの外形を模したモデル領域内にて、ヒトの「頭」、「首」、「右脇」、「右肘＿中央」、「右手首」、「右手」、「左脇」、「左肘＿中央」、「左手首」、「左手」、「胸」、「腰」、「左足＿付け根」、「左膝＿中央」、「左足首」、「左つま先」、「右足＿付け根」、「右膝＿中央」、「右足首」、「右つま先」の各々に相当する位置に設定されている基準制御点Ｑの各々に対応させて動き制御点をそれぞれ設定する。
【００４８】
また、制御点設定部３０６ｆは、被写体切り抜き画像の被写体領域内で動き制御点をそれぞれ設定することで、当該被写体切り抜き画像に対応する裏面画像内の所定位置に対してもそれぞれ対応する動き制御点を自動的に設定しても良い。
さらに、制御点設定部３０６ｆは、動き情報に規定されている複数の基準制御点Ｑ、…の全てについて、対応する動き制御点を設定しても良いし、被写体の中央部や各先端部等の代表的な所定数の基準制御点Ｑに対応する動き制御点のみ設定しても良い。
【００４９】
なお、制御点設定部３０６ｆによる動き制御点の設定が行われた後、ユーザによるユーザ端末２の操作入力部２０２の所定操作に基づいて動き制御点の設定位置の修正（変更）を受け付けるようにしても良い。
【００５０】
フレーム生成部３０６ｇは、動画像を構成する複数のフレーム画像（図示略）を逐次生成する。
即ち、フレーム生成部３０６ｇは、動き情報（例えば、合成動き情報ｄｎ等）の複数の基準制御点Ｑ、…の動きに基づいて、制御点設定部３０６ｆにより被写体切り抜き画像内に設定されている複数の動き制御点を動かし、当該動き制御点の動きに従って被写体領域を変形させたフレーム画像を複数生成する。具体的には、フレーム生成部３０６ｇは、例えば、合成動き情報ｄｎの複数の基準制御点Ｑ、…の動きに追従させるように、被写体切り抜き画像の被写体画像内に設定されている複数の動き制御点を移動させる。例えば、フレーム生成部３０６ｇは、合成動き情報ｄｎに従って移動する複数の基準制御点Ｑｎ、…の所定空間での座標位置（x, y）を逐次取得して、当該基準制御点Ｑｎの各々に対応する各動き制御点の座標位置を算出する。そして、フレーム生成部３０６ｇは、算出された座標位置に動き制御点を逐次移動させていく。このとき、フレーム生成部３０６ｇは、少なくとも一の動き制御点を基準として被写体領域内に設定される所定の画像領域（例えば、三角形や矩形のメッシュ状の領域）を移動させたり変形させることで、フレーム画像を生成する。
なお、動き制御点を基準とした所定の画像領域を移動させたり変形させる処理は、公知の技術であるので、ここでは詳細な説明を省略する。
【００５１】
また、フレーム生成部３０６ｇは、移動後の基準制御点Ｑｎの各々に対応する複数の動き制御点に基づいて生成される時間軸に沿って隣合う二つのフレーム画像どうしの間を補間する補間フレーム画像（図示略）を生成するようにしてもよい。この補間フレーム画像を生成する処理は、公知の技術であるので、ここでは詳細な説明を割愛する。
【００５２】
また、フレーム生成部３０６ｇによるフレーム画像や補間フレーム画像の生成は、上記と同様にして、アルファマップや、ＲＧＢ色空間で規定される被写体画像の各色の情報及び透過度の情報等についても行われる。
【００５３】
動画再生部３０６ｈは、フレーム生成部３０６ｇにより生成された複数のフレーム画像の各々を再生する。
即ち、動画再生部３０６ｈは、ユーザによるユーザ端末２の操作入力部２０２の所定操作に基づいて指定された演奏情報ｄｍに基づいて所定の曲を自動的に演奏するとともに、当該所定の曲の所定のタイミングで複数のフレーム画像の各々を再生する。具体的には、動画再生部３０６ｈは、例えば、所定の曲の演奏情報ｄｍのデジタルデータをＤ／Ａコンバータによりアナログデータに変換して当該所定の曲を自動的に演奏させ、このとき、所定のタイミング（例えば、各小節の１拍目や各拍等）に同期させるように隣合う二つのフレーム画像を再生するとともに、隣合う二つのフレーム画像間における所定の曲の演奏の相対的な進行度合に応じて、当該進行度合に対応する各々の補間フレーム画像を再生する。
なお、動画再生部３０６ｈは、動画処理部３０６により指定された速さで被写体画像に係る複数のフレーム画像を再生しても良い。この場合には、動画再生部３０６ｈは、隣合う二つのフレーム画像を同期させるタイミングを変化させることで、所定の単位時間内に再生されるフレーム画像の数を変更して被写体画像の動きの速さを可変させる。
【００５４】
次に、ユーザ端末２及びサーバ３を用いた動画生成処理について、図４〜図１３を参照して説明する。
ここで、図４及び図５は、動画生成処理に係る動作の一例を示すフローチャートである。
なお、以下の説明にあっては、被写体存在画像の画像データから生成された被写体切り抜き画像及びアルファマップの画像データがサーバ３の記憶部３０５に記憶されているものとする。
【００５５】
＜動画生成処理＞
図４に示すように、ユーザ端末２の中央制御部２０１のＣＰＵは、ユーザによる操作入力部２０２の所定操作に基づいて、サーバ３により開設される動画生成用ページのアクセス指示が入力されると、当該アクセス指示を通信制御部２０６により所定の通信ネットワークＮを介してサーバ３に送信させる（ステップＳ１）。
サーバ３の通信制御部３０３によって、ユーザ端末２から送信されたアクセス指示が受信されると、中央制御部３０１のＣＰＵは、動画生成用ページのページデータを通信制御部３０３により所定の通信ネットワークＮを介してユーザ端末２に送信させる（ステップＳ２）。
そして、ユーザ端末２の通信制御部２０６によって、動画生成用ページのページデータが受信されると、表示部２０３は、当該動画生成用ページのページデータに基づいて、動画生成用ページの画面（図示略）を表示する。
【００５６】
次に、ユーザ端末２の中央制御部２０１は、ユーザによる操作入力部２０２の所定操作に基づいて、動画生成用ページの画面内にて操作された各種の指標に対応する指示信号を通信制御部２０６により所定の通信ネットワークＮを介してサーバ３に送信させる（ステップＳ３）。
図５に示すように、サーバ３の中央制御部３０１のＣＰＵは、ユーザによるユーザ端末２の操作入力部２０２の所定操作に基づいて、新たな動き情報の生成指示が入力されたか否かを判定する（ステップＳ４）。
【００５７】
ステップＳ４にて、新たな動き情報の生成指示が入力されたと判定されると（ステップＳ４；ＹＥＳ）、動画処理部３０６は、静止画像の動きを制御するための動き制御点の設定に係る合成動き情報ｄｎを生成する動き情報生成処理（図６参照）を実行する（ステップＳ５）。
なお、動き情報生成処理については、後述する。
【００５８】
その後、サーバ３の中央制御部３０１のＣＰＵは、ユーザ端末２からの指示の内容に応じて処理を分岐させる（ステップＳ６）。また、ステップＳ４にて、新たな動き情報の生成指示が入力されていないと判定された場合にも（ステップＳ４；ＮＯ）、サーバ３の中央制御部３０１のＣＰＵは、ユーザ端末２からの指示の内容に応じて処理を分岐させる（ステップＳ６）。
具体的には、中央制御部３０１のＣＰＵは、ユーザ端末２からの指示が、被写体画像の指定に関する内容の場合（ステップＳ６；被写体画像の指定）、処理をステップＳ７１に移行させ、また、背景画像の指定に関する内容の場合（ステップＳ６；背景画像の指定）、処理をステップＳ８１に移行させ、また、動き及び曲の指定に関する内容の場合（ステップＳ６；動き及び曲の指定）、処理をステップＳ９１に移行させる。
【００５９】
＜被写体画像の指定＞
ステップＳ６にて、ユーザ端末２からの指示が、被写体画像の指定に関する内容の場合（ステップＳ６；被写体画像の指定）、動画処理部３０６の画像取得部３０６ｅは、記憶部３０５に記憶されている被写体切り抜き画像の画像データの中からユーザにより指定された被写体切り抜き画像の画像データを読み出して取得する（ステップＳ７１）。
次に、制御点設定部３０６ｆは、取得された被写体切り抜き画像の被写体領域内で動き制御点が既に設定されているか否かを判定する（ステップＳ７２）。
【００６０】
ステップＳ７２にて、制御点設定部３０６ｆにより動き制御点が設定されていないと判定されると（ステップＳ７２；ＮＯ）、動画処理部３０６は、被写体切り抜き画像の被写体領域の画像の裏側を擬似的に表す背面画像（図示略）を生成する背面画像生成処理を行う（ステップＳ７３）。
【００６１】
次に、中央制御部３０１のＣＰＵは、生成された背面画像と対応づけられた被写体切り抜き画像の画像データを通信制御部３０３により所定の通信ネットワークＮを介してユーザ端末２に送信させる（ステップＳ７４）。その後、制御点設定部３０６ｆは、被写体切り抜き画像の被写体領域内で、ユーザ所望の動き情報の基準画像に規定されている複数の基準制御点Ｑ、…に対応する各位置に複数の動き制御点を設定する（ステップＳ７５）。
【００６２】
そして、動画再生部３０６ｈは、被写体切り抜き画像に対して設定された複数の動き制御点、並びに被写体領域の画像の合成位置やサイズ等の合成内容を所定の格納手段（例えば、所定のメモリ等）に登録する（ステップＳ７６）。
その後、中央制御部３０１のＣＰＵは、処理をステップＳ１０に移行させる。ステップＳ１０の処理の内容については、後述する。
【００６３】
なお、ステップＳ７２にて、既に動き制御点が設定されていると判定されると（ステップＳ７２；ＹＥＳ）、中央制御部３０１のＣＰＵは、ステップＳ７３〜Ｓ７６の処理をスキップして、処理をステップＳ１０に移行させる。
【００６４】
＜背景画像の指定＞
ステップＳ６にて、ユーザ端末２からの指示が、背景画像の指定に関する内容の場合（ステップＳ６；背景画像の指定）、動画処理部３０６の動画再生部３０６ｈは、ユーザによる操作入力部２０２の所定操作に基づいて所望の背景画像の画像データを読み出して（ステップＳ８１）、当該背景画像の画像データを動画像の背景として所定の格納手段に登録する（ステップＳ８２）。
具体的には、サーバ３には、ユーザ端末２の表示部２０３に表示されている動画生成用ページの画面内の複数の画像データの中で、ユーザによる操作入力部２０２の所定操作に基づいて指定された何れか一の画像データの指定指示が、通信ネットワークＮ及び通信制御部３０３を介して入力される。動画再生部３０６ｈは、当該指定指示に係る背景画像の画像データを記憶部３０５から読み出して取得した後（ステップＳ８１）、当該背景画像の画像データを動画像の背景として登録する（ステップＳ８２）。
【００６５】
次に、中央制御部３０１のＣＰＵは、背景画像の画像データを通信制御部３０３により所定の通信ネットワークＮを介してユーザ端末２に送信させる（ステップＳ８３）。
その後、中央制御部３０１のＣＰＵは、処理をステップＳ１０に移行させる。ステップＳ１０の処理の内容については、後述する。
【００６６】
＜動き及び曲の指定＞
ステップＳ６にて、ユーザ端末２からの指示が、動き及び曲の指定に関する内容の場合（ステップＳ６；動き及び曲の指定）、動画処理部３０６は、ユーザによる操作入力部２０２の所定操作に基づいて動き情報や動きの速さを設定する（ステップＳ９１）。
具体的には、ユーザ端末２の表示部２０３に表示されている動画生成用ページの画面内の複数の動きモデルのモデル名の中で、ユーザによる操作入力部２０２の所定操作に基づいて指定された何れか一のモデル名（例えば、自作の動き等）の指定指示が、通信ネットワークＮ及び通信制御部３０３を介してサーバ３に入力される。サーバ３の動画処理部３０６は、記憶部３０５に記憶されている複数の動き情報、…の中で、当該指定指示に係る動きモデルのモデル名と対応付けられている動き情報（例えば、合成動き情報ｄｎ等）を設定する。なお、動画処理部３０６は、複数の動き情報の中で、例えば、デフォルトとして設定されている動き情報やユーザにより前回指定された動き情報を自動的に指定するようにしても良い。
【００６７】
また、サーバ３には、ユーザ端末２の表示部２０３に表示されている動画生成用ページの画面内の複数の動きの速さ（例えば、１／２倍、標準（等倍）、２倍等）の中で、ユーザによる操作入力部２０２の所定操作に基づいて指定された何れか一の速さ（例えば、標準等）の指定指示が、通信ネットワークＮ及び通信制御部３０３を介して入力される。動画処理部３０６は、当該指定指示に係る速さを被写体画像の動きの速さとして設定する。
その後、動画処理部３０６の動画再生部３０６ｈは、設定された動き情報や動きの速さを動画像の動きの内容として所定の格納手段に登録する（ステップＳ９２）。
【００６８】
次に、動画処理部３０６は、ユーザによる操作入力部２０２の所定操作に基づいて自動的に演奏される曲を設定する（ステップＳ９３）。
具体的には、サーバ３には、ユーザ端末２の表示部２０３に表示されている動画生成用ページの画面内の複数の曲名の中で、ユーザによる操作入力部２０２の所定操作に基づいて指定された何れか一の曲名の指定指示が、通信ネットワークＮ及び通信制御部３０３を介して入力される。動画処理部３０６は、当該指定指示に係る曲名の曲を設定する。
その後、中央制御部３０１のＣＰＵは、処理をステップＳ１０に移行させる。ステップＳ１０の処理の内容については、後述する。
【００６９】
ステップＳ１０では、中央制御部３０１のＣＰＵは、動画像の生成が可能な状態であるか否かを判定する（ステップＳ１０）。即ち、ユーザによる操作入力部２０２の所定操作に基づいて、サーバ３の動画処理部３０６は、被写体領域に対する動き制御点の登録、被写体領域の画像の動きの内容の登録、背景画像の登録等を行うことで、動画像の生成準備が整って動画像を生成可能か否か判定する。
ここで、動画像の生成が可能な状態でないと判定されると（ステップＳ１０；ＮＯ）、中央制御部３０１のＣＰＵは、処理をステップＳ６に戻し、ユーザ端末２からの指示の内容に応じて処理を分岐させる（ステップＳ６）。
一方、ステップＳ１０にて、動画像の生成が可能な状態であると判定されると（ステップＳ１０；ＹＥＳ）、図４に示すように、中央制御部３０１のＣＰＵは、処理をステップＳ１２に移行させる。
【００７０】
ステップＳ１２では、サーバ３の中央制御部３０１のＣＰＵは、ユーザによるユーザ端末２の操作入力部２０２の所定操作に基づいて動画像のプレビュー指示が入力されたか否かを判定する（ステップＳ１２）。
即ち、ステップＳ１１にて、ユーザ端末２の中央制御部２０１が、ユーザによる操作入力部２０２の所定操作に基づいて入力された動画像のプレビュー指示を、通信制御部２０６により所定の通信ネットワークＮを介してサーバ３に送信させる（ステップＳ１１）。
そして、ステップＳ１２にて、サーバ３の中央制御部３０１のＣＰＵによって、動画像のプレビュー指示が入力されたと判定されると（ステップＳ１２；ＹＥＳ）、動画処理部３０６の動画再生部３０６ｈは、設定済みの曲名に対応する演奏情報ｄｍを動画像とともに自動的に演奏される情報として所定の格納手段に登録する（ステップＳ１３）。
【００７１】
次に、動画処理部３０６は、格納手段に登録されている演奏情報ｄｍに基づいて動画再生部３０６ｈによる所定の曲の演奏を開始させる（ステップＳ１４）。
続けて、動画処理部３０６は、動画再生部３０６ｈによる所定の曲の演奏が終了したか否かを判定する（ステップＳ１５）。
ここで、曲の演奏が終了していないと判定されると（ステップＳ１５；ＮＯ）、動画処理部３０６のフレーム生成部３０６ｇは、動き情報に応じて変形させた被写体領域の画像のフレーム画像を生成する（ステップＳ１６）。具体的には、フレーム生成部３０６ｇは、格納手段に登録されている動き情報に従って所定の時間間隔で移動する複数の基準制御点Ｑ、…の所定空間での座標位置（x, y）をそれぞれ取得して、当該基準制御点Ｑの各々に対応する各動き制御点の座標位置を算出する。そして、フレーム生成部３０６ｇは、算出された座標位置に動き制御点を逐次移動させていくとともに、動き制御点の移動に応じて被写体領域の画像内に設定される所定の画像領域を移動させたり変形させることで、フレーム画像を生成する。
また、動画処理部３０６は、フレーム画像と背景画像とを公知の画像合成手法を用いて合成する。具体的には、動画処理部３０６は、例えば、背景画像の各画素のうち、アルファ値が「０」の画素は透過させ、アルファ値が「１」の画素はフレーム画像の対応する画素の画素値で上書きし、さらに、背景画像の各画素のうち、アルファ値が「０＜α＜１」の画素は１の補数（１−α）を用いてフレーム画像の被写体領域を切り抜いた画像（背景画像×（１−α））を生成した後、アルファマップにおける１の補数（１−α）を用いてフレーム画像を生成した際に単一背景色とブレンドした値を計算し、当該値をフレーム画像から減算し、それを被写体領域を切り抜いた画像（背景画像×（１−α））と合成する。
【００７２】
このとき、フレーム生成部３０６ｇは、動画再生部３０６ｈにより演奏される所定の曲の演奏の進行度合に応じて、隣合う二つのフレーム画像どうしの間を補間する補間フレーム画像を生成しても良い。同様に、動画処理部３０６は、補間フレーム画像と背景画像とを、上記と同様に、公知の画像合成手法を用いて合成しても良い。
【００７３】
次に、中央制御部３０１のＣＰＵは、動画再生部３０６ｈにより自動的に演奏される曲の演奏情報ｄｍとともに、当該曲の所定のタイミングで再生されるフレーム画像を含むプレビュー動画のデータを、通信制御部３０３により所定の通信ネットワークＮを介してユーザ端末２に送信させる（ステップＳ１７）。ここで、プレビュー動画のデータは、複数のフレーム画像とユーザ所望の背景画像とが合成された動画像を構成している。
次に、動画処理部３０６は、処理をステップＳ１５に戻し、曲の演奏が終了したか否かを判定する（ステップＳ１５）。
上記の処理は、ステップＳ１５にて、曲の演奏が終了したと判定されるまで（ステップＳ１５；ＹＥＳ）、繰り返し実行される。
そして、曲の演奏が終了したと判定されると（ステップＳ１５；ＹＥＳ）、図５に示すように、中央制御部３０１のＣＰＵは、処理をステップＳ４に戻し、新たな動き情報の生成指示が入力されたか否かを判定する（ステップＳ４）。
【００７４】
ステップＳ１７にてサーバ３から送信されたプレビュー動画のデータがユーザ端末２の通信制御部３０３によって受信されると、中央制御部２０１のＣＰＵは、音出力部２０４及び表示部２０３を制御してプレビュー動画を再生させる（ステップＳ１８）。
具体的には、音出力部２０４は、演奏情報ｄｍに基づいて曲を自動的に演奏してスピーカから放音するとともに、表示部２０３は、当該自動的に演奏される曲の所定のタイミングでプレビュー動画を構成するフレーム画像を表示画面に表示する。
【００７５】
なお、上記の動画生成処理にあっては、プレビュー動画を再生するようにしたが、一例であってこれに限られるものではなく、例えば、逐次生成されたフレーム画像や背景画像の画像データ並びに演奏情報ｄｍを一つのファイルとして所定の記憶手段に記憶していき、動画像に係る全てのデータの生成完了後に、当該ファイルをサーバ３からユーザ端末２に送信して当該ユーザ端末２にて再生させるようにしても良い。
【００７６】
＜動き情報生成処理＞
以下に、動画処理部３０６による動き情報生成処理について、図６〜図１３を参照して詳細に説明する。
図６は、動き情報生成処理に係る動作の一例を示すフローチャートである。
【００７７】
図６に示すように、先ず、第１取得部３０６ａは、ユーザによるユーザ端末２の操作入力部２０２の所定操作に基づいて指定されたユーザ所望の第１動き情報ｄ１（例えば、「右腕を上げる動き」に対応する第１動き情報ｄ１等）を記憶部３０５から読み出して取得する（ステップＳ３１；図８参照）。
次に、第２取得部３０６ｂは、ユーザによるユーザ端末２の操作入力部２０２の所定操作に基づいて指定されたユーザ所望の第２動き情報ｄ２（例えば、「膝を曲げる動き」に対応する第２動き情報ｄ２等）を記憶部３０５から読み出して取得する（ステップＳ３２；図１０参照）。
【００７８】
続けて、ユーザ端末２の表示部２０３は、第１動き情報ｄ１及び第２動き情報ｄ２の各々に係る複数の基準制御点Ｑ１、Ｑ２の動きを組み合わせるタイミングを設定するためのタイミング設定画面（図示略）を表示する。そして、ユーザによるユーザ端末２の操作入力部２０２の所定操作に基づいてユーザ所望のタイミング（例えば、第１動き情報ｄ１に係る動きが開始されてから５０［ｍｓ］後等）が指定されると、タイミング設定部３０６ｃは、当該指定されたタイミングを、第１動き情報ｄ１に係る複数の基準制御点Ｑ１、…の動きに対して第２動き情報ｄ２に係る複数の基準制御点Ｑ２、…の動きを組み合わせる際の開始タイミングとして設定する（ステップＳ３３）。
【００７９】
次に、動き情報生成部３０６ｄは、第１動き情報ｄ１及び第２動き情報ｄ２の各々に係る複数の基準制御点Ｑ１、Ｑ２の動きを合成する座標位置合成処理（図７参照）を実行する（ステップＳ３４）。
以下に、図７を参照して、座標位置合成処理について詳細に説明する。
【００８０】
＜座標位置合成処理＞
図７は、座標位置合成処理に係る動作の一例を示すフローチャートである。
以下の座標位置合成処理では、第１動き情報ｄ１に係る基準制御点Ｑ１の動きが開始されてから５０［ｍｓ］後から、第２動き情報ｄ２に係る基準制御点Ｑ２の動きが合成されるものとする。また、合成動き情報ｄｎの生成途中の各種データは、図示しない格納手段に一時的に格納されるものとする。
【００８１】
図７に示すように、先ず、動き情報生成部３０６ｄは、タイミング設定部３０６ｃにより設定されたタイミングを基準として、第１動き情報ｄ１及び第２動き情報ｄ２を時間軸に沿って配置する（ステップＳ４１）。
具体的には、動き情報生成部３０６ｄは、第１動き情報ｄ１に係る複数の基準制御点Ｑ１、…の動きの開始時を「０」として、当該複数の基準制御点Ｑ１、…の所定空間での座標位置（x, y）を示す情報を時間軸（横軸：単位［ｍｓ］等）に沿って配置する。そして、動き情報生成部３０６ｄは、タイミング設定部３０６ｃにより設定されたタイミングを第２動き情報ｄ２に係る複数の基準制御点Ｑ２、…の動きの開始タイミングとして、当該複数の基準制御点Ｑ２、…の基準位置に対する差分diffx、diffyを示す情報を時間軸に沿って配置する。
【００８２】
次に、動き情報生成部３０６ｄは、タイマｔのカウント値を初期化（ｔ＝０）する（ステップＳ４２）。ここで、タイマｔのカウント値は、第１動き情報ｄ１、第２動き情報ｄ２並びに生成される合成動き情報ｄｎの時間軸と対応付けられている。
そして、動き情報生成部３０６ｄは、タイマｔのカウント値により指定された時点に対応する第１動き情報ｄ１の複数の基準制御点Ｑ１、…の座標位置（x, y）を示す情報があるか否かを判定する（ステップＳ４３）。
この時点におけるタイマｔのカウント値は、ｔ＝０であるので、ステップＳ４３にて、複数の基準制御点Ｑ１、…の座標位置（x, y）を示す情報があると判定され（ステップＳ４３；ＹＥＳ）、動き情報生成部３０６ｄは、第１動き情報ｄ１の複数の基準制御点Ｑ１、…の当該時点における座標位置（x, y）を示す情報を取得して、合成動き情報ｄｎの複数の基準制御点Ｑｎ、…の座標位置（x, y）として登録する（ステップＳ４４）。
【００８３】
続けて、動き情報生成部３０６ｄは、タイマｔのカウント値により指定された時点に対応する第２動き情報ｄ２の複数の基準制御点Ｑ２、…の基準位置に対する差分diffx、diffyを示す情報があるか否かを判定する（ステップＳ４５）。
この時点におけるタイマｔのカウント値は、ｔ＝０であるので、ステップＳ４５にて、複数の基準制御点Ｑ２、…の基準位置に対する差分diffx、diffyを示す情報がないと判定され（ステップＳ４５；ＮＯ）、動き情報生成部３０６ｄは、タイマｔのカウント値に１０［ｍｓ］を加算（ｔ＝ｔ＋１０）する（ステップＳ４６）。
【００８４】
次に、動き情報生成部３０６ｄは、タイマｔのカウント値により指定された時点が第１動き情報ｄ１或いは第２動き情報ｄ２の終了タイミングに到達したか否かを判定する（ステップＳ４７）。
この時点におけるタイマｔのカウント値は、ｔ＝１０であるので、ステップＳ４７にて、第１動き情報ｄ１或いは第２動き情報ｄ２の終了タイミングに到達していないと判定され（ステップＳ４７；ＮＯ）、動き情報生成部３０６ｄは、処理をステップＳ４３に戻す。
【００８５】
ステップＳ４３にて、動き情報生成部３０６ｄは、タイマｔのカウント値により指定された時点に対応する第１動き情報ｄ１の複数の基準制御点Ｑ１、…の座標位置（x, y）を示す情報があるか否かを判定する（ステップＳ４３）。
この時点におけるタイマｔのカウント値は、ｔ＝１０であるので、ステップＳ４３にて、複数の基準制御点Ｑ１、…の座標位置（x, y）を示す情報がないと判定され（ステップＳ４３；ＹＥＳ）、動き情報生成部３０６ｄは、前回タイマｔのカウント値により指定された時点（例えば、ｔ＝０等）における第１動き情報ｄ１の複数の基準制御点Ｑ１、…の座標位置（x, y）を、当該タイマｔのカウント値により指定された時点（例えば、ｔ＝１０等）における合成動き情報ｄｎの複数の基準制御点Ｑｎ、…の座標位置（x, y）として登録する（ステップＳ４８）。
【００８６】
その後、動き情報生成部３０６ｄは、処理をステップＳ４５に移行して、タイマｔのカウント値により指定された時点に対応する第２動き情報ｄ２の複数の基準制御点Ｑ２、…の基準位置に対する差分diffx、diffyを示す情報があるか否かを判定する（ステップＳ４５）。
この時点におけるタイマｔのカウント値は、ｔ＝１０であるので、ステップＳ４５にて、複数の基準制御点Ｑ２、…の基準位置に対する差分diffx、diffyを示す情報がないと判定され（ステップＳ４５；ＮＯ）、動き情報生成部３０６ｄは、処理をステップＳ４６に移行して、タイマｔのカウント値に１０［ｍｓ］を加算（ｔ＝ｔ＋１０）する（ステップＳ４６）。
【００８７】
そして、動き情報生成部３０６ｄは、ステップＳ４７にて、タイマｔのカウント値により指定された時点が第１動き情報ｄ１或いは第２動き情報ｄ２の終了タイミングに到達したか否かを判定する（ステップＳ４７）。
この時点におけるタイマｔのカウント値は、ｔ＝２０であるので、ステップＳ４７にて、第１動き情報ｄ１或いは第２動き情報ｄ２の終了タイミングに到達していないと判定され（ステップＳ４７；ＮＯ）、動き情報生成部３０６ｄは、処理をステップＳ４３に戻す。
【００８８】
上記の各処理を繰り返し実行する過程で、タイマｔのカウント値が、ｔ＝１５０となると、第２動き情報ｄ２自身の時間軸では１００［ｍｓ］の位置となるので、ステップＳ４５にて、動き情報生成部３０６ｄは、第２動き情報ｄ２の複数の基準制御点Ｑ２、…の基準位置に対する差分diffx、diffyを示す情報があると判定する（ステップＳ４５；ＹＥＳ）。
そして、動き情報生成部３０６ｄは、第２動き情報ｄ２の複数の基準制御点Ｑ２、…の当該時点における基準位置に対する差分diffx、diffyを示す情報を取得する（ステップＳ４９）。即ち、動き情報生成部３０６ｄは、複数の基準制御点Ｑ２、…の１００［ｍｓ］の位置に対応する差分diffx、diffyを示す情報を取得する。
続けて、動き情報生成部３０６ｄは、第１動き情報ｄ１の複数の基準制御点Ｑ１、…の当該時点（例えば、ｔ＝１５０等）における座標位置（x, y）に、取得された第２動き情報ｄ２の複数の基準制御点Ｑ２、…の基準位置に対する差分diffx、diffyを加えて、合成動き情報ｄｎの複数の基準制御点Ｑｎ、…の当該時点における座標位置（x, y）を算出して登録する（ステップＳ５０）。
【００８９】
その後、動き情報生成部３０６ｄは、処理をステップＳ４６に移行して、それ以降の各処理を実行する。
即ち、上記の各処理を繰り返し実行する過程で、タイマｔのカウント値が、ｔ＝２５０となると、第２動き情報ｄ２自身の時間軸では２００［ｍｓ］の位置となるので、ステップＳ４９にて、動き情報生成部３０６ｄは、第２動き情報ｄ２の複数の基準制御点Ｑ２、…の２００［ｍｓ］の位置に対応する差分diffx、diffyを示す情報を取得する。そして、ステップＳ５０にて、動き情報生成部３０６ｄは、第１動き情報ｄ１の複数の基準制御点Ｑ１、…の当該時点（例えば、ｔ＝２５０等）における座標位置（x, y）に、取得された第２動き情報ｄ２の複数の基準制御点Ｑ２、…の基準位置に対する差分diffx、diffyを加えて、合成動き情報ｄｎの複数の基準制御点Ｑｎ、…の当該時点における座標位置（x, y）を算出する。
上記の各処理を繰り返すことで、「右腕を上げる動き」と「膝を曲げる動き」とが組み合わされた「右腕を上げつつ膝を曲げる動き」に対応させて、複数の基準制御点Ｑｎ、…の所定空間での座標位置（x, y）を示す情報が時間軸に沿って並べられた合成動き情報ｄｎが生成される。
【００９０】
一方、ステップＳ４７にて、第１動き情報ｄ１或いは第２動き情報ｄ２の終了タイミングに到達したと判定されると（ステップＳ４７；ＹＥＳ）、動き情報生成部３０６ｄは、座標位置合成処理を終了する。
なお、ステップＳ４７において、タイマｔのカウント値により指定された時点が第１動き情報ｄ１或いは第２動き情報ｄ２の終了タイミングを超えた場合にも、動き情報生成部３０６ｄは、第１動き情報ｄ１或いは第２動き情報ｄ２の終了タイミングに到達したと判定するようにしても良い。
【００９１】
図６に戻り、中央制御部３０１のＣＰＵは、座標位置合成処理にて生成された合成動き情報ｄｎを記憶部３０５の所定の記憶領域に記憶させて（ステップＳ３５）、動き情報生成処理を終了する。
【００９２】
以上のように、本実施形態の動画生成システム１００によれば、記憶部３０５に記憶されている所定空間内での複数の基準制御点Ｑ、…の動きを示す複数の動き情報の中で、取得された第１動き情報ｄ１及び第２動き情報ｄ２の各々に係る複数の基準制御点Ｑ１、Ｑ２の動きを、基準制御点Ｑの基準位置に対する差分diffx、diffyを利用して組み合わせて新たな合成動き情報ｄｎを生成するので、第１動き情報ｄ１及び第２動き情報ｄ２を用いてより多彩な動きを表現することができ、ユーザ所望の動きの表現が可能となる。このとき、基準制御点Ｑの基準位置に対する差分diffx、diffyを利用することで、第１動き情報ｄ１及び第２動き情報ｄ２の各々に係る複数の基準制御点Ｑ１、Ｑ２の動きの組み合わせを簡便に行うことができるだけでなく、ユーザが意図した動きが適正に再現された新たな合成動き情報ｄｎを生成することができる。
具体的には、第１動き情報ｄ１に係る複数の基準制御点Ｑ１、…の所定空間での座標位置（x, y）に第２動き情報ｄ２に係る複数の基準制御点Ｑ２、…の基準位置に対する差分diffx、diffyを加えて新たな合成動き情報ｄｎを生成するので、第２動き情報ｄ２に係る複数の基準制御点Ｑ２、…のうち、基準位置に対して変位しない基準制御点Ｑ２を考慮する必要がなくなり、基準位置に対して変位する基準制御点Ｑ２の変位量のみを第１動き情報ｄ１に係る複数の基準制御点Ｑ１、…の動きに適正に反映させるだけで新たな合成動き情報ｄｎを生成することができ、ユーザが意図した動きの再現を適正に、且つ、簡便に行うことができる。
従って、複数の動き情報を用いて新たな合成動き情報ｄｎの生成を簡便に、且つ、適正に行うことができる。
【００９３】
また、設定されたタイミングを基準として、第１動き情報ｄ１及び第２動き情報ｄ２のうち、一方の動き情報に係る複数の基準制御点Ｑ、…の動きを他方の動き情報に係る複数の基準制御点Ｑ、…の動きに組み合わせて、新たな合成動き情報ｄｎを生成することができるので、第１動き情報ｄ１及び第２動き情報ｄ２の各々に係る複数の基準制御点Ｑ１、Ｑ２の動きの組み合わせをユーザ所望の任意のタイミングで行うことができ、ユーザが意図した動きの再現をより適正に行うことができる。
【００９４】
また、生成された新たな合成動き情報ｄｎの複数の基準制御点Ｑｎ、…の動きに基づいて、例えば、背景と被写体とが存在する画像から被写体が含まれる被写体領域が切り抜かれた画像等の静止画像内に設定されている複数の動き制御点を動かしてフレーム画像を逐次生成するので、新たな合成動き情報ｄｎを用いて、ユーザが意図した動きが適正に再現されたフレーム画像を生成することができ、ユーザ所望の動きが表現された動画像を生成することができる。
【００９５】
なお、本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において、種々の改良並びに設計の変更を行っても良い。
例えば、上記実施形態にあっては、動画生成処理にて、予め合成動き情報ｄｎを生成した後で当該合成動き情報ｄｎに基づいてフレーム画像を生成するようにしたが、合成動き情報ｄｎを生成するタイミングは一例であってこれに限られるものではなく、適宜任意に変更可能である。即ち、例えば、動画生成処理にて、各フレーム画像の生成タイミングにて当該フレーム画像の生成に用いられる合成動き情報ｄｎを逐次生成するようにしても良い。
さらに、サーバ３は、必ずしもフレーム生成部３０６ｇによりフレーム画像を生成する必要はなく、当該フレーム生成部３０６ｇを具備するか否かは適宜任意に変更可能である。
【００９６】
また、上記実施形態では、記憶部３０５に第１動き情報ｄ１及び第２動き情報ｄ２を分けて記憶しておき、第１取得部３０６ａ及び第２取得部３０６ｂが第１動き情報ｄ１及び第２動き情報ｄ２をそれぞれ取得するようにしたが、例えば、記憶部３０５に動き情報を複数記憶しておき、これらの中で、第１取得部３０６ａが取得した何れか一の動き情報を第１動き情報ｄ１とし、第２取得部３０６ｂが取得した第１動き情報ｄ１とは異なる他の動き情報を第２動き情報ｄ２とするようにしても良い。
このとき、動き情報生成部３０６ｄは、第２取得部３０６ｂにより取得された第２動き情報ｄ２に係る複数の基準制御点Ｑ２、…の所定空間での座標位置（x, y）を示す情報から、複数の基準制御点Ｑ２、…の所定空間での基準位置に対する差分diffx、diffyを示す情報を算出するようにしても良い。そして、動き情報生成部３０６ｄは、第１取得部３０６ａにより取得された第１動き情報ｄ１に係る複数の基準制御点Ｑ１、…の所定空間での座標位置（x, y）に、算出された複数の基準制御点Ｑ２、…の所定空間での基準位置に対する差分diffx、diffyを加えて、新たな動き情報を生成する。
【００９７】
また、上記実施形態にあっては、ユーザによるユーザ端末２の所定操作に基づいて、Ｗｅｂサーバとして機能するサーバ（動き情報生成装置）３によって動画像を生成するようにしたが、一例であってこれに限られるものではなく、動き情報生成装置の構成は適宜任意に変更可能である。即ち、新たな動き情報の生成に係る動画処理部３０６の機能をソフトウェアにより実現される構成として、ユーザ端末２にインストールすることで通信ネットワークＮを必要とすることなく、当該ユーザ端末２単体で動画生成処理を行うようにしても良い。
【００９８】
また、上記実施形態にあっては、被写体切り抜き画像を処理対象としたが、一例であってこれに限られるものではなく、適宜任意に変更可能であり、例えば、最初から被写体領域のみの画像を用いても良い。
【００９９】
また、上記実施形態の動画生成処理にあっては、被写体画像の合成位置やサイズを調整可能に構成されても良い。即ち、ユーザ端末２の中央制御部２０１は、ユーザによる操作入力部２０２の所定操作に基づいて、被写体画像の合成位置やサイズの調整指示が入力されたと判定すると、当該調整指示に対応する信号を通信制御部２０６により所定の通信ネットワークＮを介してサーバ３に送信させる。そして、サーバ３の動画処理部３０６は、通信制御部３０３を介して入力された調整指示に基づいて、被写体画像の合成位置を所望の合成位置に設定したり、当該被写体画像のサイズを所望のサイズに設定するようにしても良い。
【０１００】
また、上記実施形態にあっては、ユーザ端末２として、パーソナルコンピュータを例示したが、一例であってこれに限られるものではなく適宜任意に変更可能であり、例えば、携帯電話機等を適用しても良い。
なお、被写体切り抜き画像や動画像のデータには、ユーザによる所定の改変を禁止する制御情報を埋め込むようにしても良い。
【０１０１】
加えて、上記実施形態にあっては、第１動き情報ｄ１を取得する機能、第２動き情報ｄ２を取得する機能、第１動き情報ｄ１及び第２動き情報ｄ２から新たな動き情報を生成する機能を、中央制御部３０１の制御下にて、第１取得部３０６ａ、第２取得部３０６ｂ及び動き情報生成部３０６ｄが駆動することにより実現される構成としたが、これに限られるものではなく、中央制御部３０１のＣＰＵによって所定のプログラム等が実行されることにより実現される構成としても良い。
即ち、プログラムを記憶するプログラムメモリ（図示略）に、第１取得処理ルーチン、第２取得処理ルーチン及び第１生成処理ルーチンを含むプログラムを記憶しておく。そして、第１取得処理ルーチンにより中央制御部３０１のＣＰＵを、記憶手段に記憶されている所定空間内での複数の基準制御点Ｑ、…の動きを示す複数の動き情報の中で、何れか一の動き情報を第１動き情報ｄ１として取得する手段として機能させるようにしても良い。また、第２取得処理ルーチンにより中央制御部３０１のＣＰＵを、複数の動き情報の中で、第１動き情報ｄ１とは異なる他の動き情報を第２動き情報ｄ２として取得する手段として機能させるようにしても良い。また、第１生成処理ルーチンにより中央制御部３０１のＣＰＵを、第１動き情報ｄ１及び第２動き情報ｄ２の各々に係る複数の基準制御点Ｑ１、Ｑ２の動きを、基準制御点Ｑの基準位置に対する差分diffx、diffyを利用して組み合わせて新たな動き情報を生成する手段として機能させるようにしても良い。
【０１０２】
さらに、上記の各処理を実行するためのプログラムを格納したコンピュータ読み取り可能な媒体として、ＲＯＭやハードディスク等の他、フラッシュメモリ等の不揮発性メモリ、ＣＤ−ＲＯＭ等の可搬型記録媒体を適用することも可能である。また、プログラムのデータを所定の通信回線を介して提供する媒体としては、キャリアウェーブ（搬送波）も適用される。
【０１０３】
〔付記〕
本発明のいくつかの実施形態を説明したが、本発明の範囲は、上述の実施の形態に限定するものではなく、特許請求の範囲に記載された発明の範囲とその均等の範囲を含む。
以下に、この出願の願書に最初に添付した特許請求の範囲に記載した発明を付記する。付記に記載した請求項の項番は、この出願の願書に最初に添付した特許請求の範囲の通りである。
＜請求項１＞
静止画像の動きを制御するための動き制御点の設定に係る動き情報を生成する動き情報生成装置を用いた動き情報生成方法であって、
記憶手段に記憶されている所定空間内での複数の基準制御点の動きを示す複数の動き情報の中で、何れか一の動き情報を第１動き情報として取得する第１取得ステップと、
前記複数の動き情報の中で、前記第１動き情報とは異なる他の動き情報を第２動き情報として取得する第２取得ステップと、
前記第１動き情報及び前記第２動き情報の各々に係る前記複数の基準制御点の動きを、前記基準制御点の基準位置に対する差分を利用して組み合わせて新たな動き情報を生成する第１生成ステップと、
を含むことを特徴とする動き情報生成方法。
＜請求項２＞
前記第１動き情報は、前記複数の基準制御点の前記所定空間での座標位置を示す情報を時間軸に沿って並べた情報を含み、
前記第２動き情報は、前記複数の基準制御点の基準位置に対する差分を示す情報を時間軸に沿って並べた情報を含み、
前記第１生成ステップは、前記第１動き情報に係る前記複数の基準制御点の前記所定空間での座標位置に前記第２動き情報に係る前記複数の基準制御点の基準位置に対する差分を加えて、新たな動き情報を生成することを特徴とする請求項１に記載の動き情報生成方法。
＜請求項３＞
前記第１動き情報及び前記第２動き情報の各々に係る前記複数の基準制御点の動きを組み合わせるタイミングを設定する設定ステップを更に含み、
前記第１生成ステップは、前記設定ステップにて設定されたタイミングを基準として、前記第１動き情報及び前記第２動き情報のうち、一方の動き情報に係る前記複数の基準制御点の動きを他方の動き情報に係る前記複数の基準制御点の動きに組み合わせて、新たな動き情報を生成することを特徴とする請求項１又は２に記載の動き情報生成方法。
＜請求項４＞
前記第１生成ステップにて生成された新たな動き情報の複数の基準制御点の動きに基づいて、前記静止画像内に設定されている複数の動き制御点を動かしてフレーム画像を逐次生成する第２生成ステップを更に含むことを特徴とする請求項１〜３の何れか一項に記載の動き情報生成方法。
＜請求項５＞
前記静止画像は、背景と被写体とが存在する画像から被写体が含まれる被写体領域を切り抜いた画像を含むことを特徴とする請求項１〜４の何れか一項に記載の動き情報生成方法。
＜請求項６＞
静止画像の動きを制御するための動き制御点の設定に係る動き情報を生成する動き情報生成装置であって、
記憶手段に記憶されている所定空間内での複数の基準制御点の動きを示す複数の動き情報の中で、何れか一の動き情報を第１動き情報として取得する第１取得手段と、
前記複数の動き情報の中で、前記第１動き情報とは異なる他の動き情報を第２動き情報として取得する第２取得手段と、
前記第１動き情報及び前記第２動き情報の各々に係る前記複数の基準制御点の動きを、前記基準制御点の基準位置に対する差分を利用して組み合わせて新たな動き情報を生成する第１生成手段と、
を備えたことを特徴とする動き情報生成装置。
＜請求項７＞
静止画像の動きを制御するための動き制御点の設定に係る動き情報を生成する動き情報生成装置のコンピュータを、
記憶手段に記憶されている所定空間内での複数の基準制御点の動きを示す複数の動き情報の中で、何れか一の動き情報を第１動き情報として取得する第１取得手段、
前記複数の動き情報の中で、前記第１動き情報とは異なる他の動き情報を第２動き情報として取得する第２取得手段、
前記第１動き情報及び前記第２動き情報の各々に係る前記複数の基準制御点の動きを、前記基準制御点の基準位置に対する差分を利用して組み合わせて新たな動き情報を生成する第１生成手段、
として機能させることを特徴とするプログラム。
【符号の説明】
【０１０４】
１００    動画生成システム
１        撮像装置
２        ユーザ端末
３        サーバ
３０１    中央制御部
３０５    記憶部
ｄ１      第１動き情報
ｄ２      第２動き情報
ｄｎ      合成動き情報
３０６    動画処理部
３０６ａ  第１取得部
３０６ｂ  第２取得部
３０６ｃ  タイミング設定部
３０６ｄ  動き情報生成部
３０６ｇ  フレーム生成部
【図１】
0005906897.tif 000002
【図２】
0005906897.tif 000003
【図３】
0005906897.tif 000004
【図４】
0005906897.tif 000005
【図５】
0005906897.tif 000006
【図６】
0005906897.tif 000007
【図７】
0005906897.tif 000008
【図８】
0005906897.tif 000009
【図９】
0005906897.tif 000010
【図１０】
0005906897.tif 000011
【図１１】
0005906897.tif 000012
【図１２】
0005906897.tif 000013
【図１３】
0005906897.tif 000014