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