JP5375897B2 - 画像生成方法、画像生成装置及びプログラム - Google Patents

画像生成方法、画像生成装置及びプログラム Download PDF

Info

Publication number
JP5375897B2
JP5375897B2 JP2011183546A JP2011183546A JP5375897B2 JP 5375897 B2 JP5375897 B2 JP 5375897B2 JP 2011183546 A JP2011183546 A JP 2011183546A JP 2011183546 A JP2011183546 A JP 2011183546A JP 5375897 B2 JP5375897 B2 JP 5375897B2
Authority
JP
Japan
Prior art keywords
image
subject
overlap
unit
region
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2011183546A
Other languages
English (en)
Other versions
JP2013045334A (ja
JP2013045334A5 (ja
Inventor
光康 中嶋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2011183546A priority Critical patent/JP5375897B2/ja
Priority to US13/588,464 priority patent/US20130050527A1/en
Priority to CN201210305461.0A priority patent/CN103198442B/zh
Publication of JP2013045334A publication Critical patent/JP2013045334A/ja
Publication of JP2013045334A5 publication Critical patent/JP2013045334A5/ja
Application granted granted Critical
Publication of JP5375897B2 publication Critical patent/JP5375897B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • H04N9/8047Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction using transform coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)

Description

本発明は、二次元の静止画像を変形させて変形画像を生成する画像生成方法、画像生成装置及びプログラムに関する。
従来、二次元の静止画像内の所望の位置に動き制御点を設定して、動きをつけたい動き制御点に所望の動きを指定することで当該静止画像を動かす技術が知られている(例えば、特許文献1参照)。
特許第4613313号
しかしながら、上記特許文献1の場合、動き制御点の動きは二次元空間で表現されているため、当該静止画像の一部分の領域を他の領域と前後に重ねるような動きに対しては奥行きの表現を適正に行うことができないといった問題がある。
本発明は、このような問題に鑑みてなされたものであり、本発明の課題は、二次元の静止画像を変形させた変形画像にて奥行きの表現を適正に行うことができる画像生成方法、画像生成装置及びプログラムを提供することである。
上記課題を解決するため、本発明に係る画像生成方法は、
基準画像の動体モデルが含まれるモデル領域を構成する複数の領域毎に設定され、且つ所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置と対応付けられた、複数の重なり基準点の前記二次元空間内での位置を示す位置情報を記憶する記憶手段を備える画像生成装置を用いた画像生成方法であって、当該画像生成装置のコンピュータが、
二次元の静止画像を取得する取得ステップと、
この取得ステップにより取得された前記静止画像の被写体が含まれる被写体領域内で、前記被写体の動きの制御に係る動き制御点を複数設定する第1設定ステップと、
前記取得ステップにより取得された前記静止画像の前記被写体領域内で、前記複数の重なり基準点に対応する各位置に前記被写体領域を構成する複数の構成領域の重なりの制御に係る重なり制御点を複数設定する第2設定ステップと、
前記複数の重なり制御点の各々について、最も近い位置に存する他の重なり制御点との距離を基準として、前記被写体領域の中で前記構成領域としての重なり制御領域を複数特定する特定ステップと、
この特定ステップにより特定された前記複数の重なり制御領域の各々の所定の時間間隔毎の奥行き方向の位置を、各重なり制御領域に係る重なり制御点に対応する前記重なり基準点の前記奥行き方向の基準位置に基づいて算出する算出ステップと、
前記複数の動き制御点の動きに従って前記被写体領域を変形させた変形画像を生成する生成ステップと、を実行し、
前記生成ステップは、
前記算出ステップにより算出された所定の時間間隔毎の奥行き方向の位置に基づいて、当該所定の時間間隔毎に前記被写体領域における各構成領域を奥行き方向に互いに異なる位置で当該奥行き方向に変位させることを特徴としている。
また、本発明に係る画像生成装置は、
基準画像の動体モデルが含まれるモデル領域を構成する複数の領域毎に設定され、且つ所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置と対応付けられた、複数の重なり基準点の前記二次元空間内での位置を示す位置情報を記憶する記憶部を備える画像生成装置であって、
二次元の静止画像を取得する取得部と、
この取得部により取得された前記静止画像の被写体が含まれる被写体領域内で、前記被写体の動きの制御に係る動き制御点を複数設定する第1設定部と、
前記取得部により取得された前記静止画像の前記被写体領域内で、前記複数の重なり基準点に対応する各位置に前記被写体領域を構成する複数の構成領域の重なりの制御に係る重なり制御点を複数設定する第2設定部と、
前記複数の重なり制御点の各々について、最も近い位置に存する他の重なり制御点との距離を基準として、前記被写体領域の中で前記構成領域としての重なり制御領域を複数特定する特定部と、
この特定部により特定された前記複数の重なり制御領域の各々の所定の時間間隔毎の奥行き方向の位置を、各重なり制御領域に係る重なり制御点に対応する前記重なり基準点の前記奥行き方向の基準位置に基づいて算出する算出部と、
前記複数の動き制御点の動きに従って前記被写体領域を変形させた変形画像を生成する生成部と、
を備え、
前記生成部は、前記算出部により算出された所定の時間間隔毎の奥行き方向の位置に基づいて、当該所定の時間間隔毎に前記被写体領域における各構成領域を奥行き方向に互いに異なる位置で当該奥行き方向に変位させる処理を備えることを特徴としている。
また、本発明に係るプログラムは、
基準画像の動体モデルが含まれるモデル領域を構成する複数の領域毎に設定され、且つ所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置と対応付けられた、複数の重なり基準点の前記二次元空間内での位置を示す位置情報を記憶する記憶部を備える画像生成装置のコンピュータを、
二次元の静止画像を取得する取得機能、
この取得機能により取得された前記静止画像の被写体が含まれる被写体領域内で、前記被写体の動きの制御に係る動き制御点を複数設定する第1設定機能、
前記取得機能により取得された前記静止画像の前記被写体領域内で、前記複数の重なり基準点に対応する各位置に前記被写体領域を構成する複数の構成領域の重なりの制御に係る重なり制御点を複数設定する第2設定機能、
前記複数の重なり制御点の各々について、最も近い位置に存する他の重なり制御点との距離を基準として、前記被写体領域の中で前記構成領域としての重なり制御領域を複数特定する特定機能、
この特定機能により特定された前記複数の重なり制御領域の各々の所定の時間間隔毎の奥行き方向の位置を、各重なり制御領域に係る重なり制御点に対応する前記重なり基準点の前記奥行き方向の基準位置に基づいて算出する算出機能、
前記複数の動き制御点の動きに従って前記被写体領域を変形させた変形画像を生成する生成機能、
として機能させるプログラムであって、
前記生成機能は、前記算出機能により算出された所定の時間間隔毎の奥行き方向の位置に基づいて、当該所定の時間間隔毎に前記被写体領域における各構成領域を奥行き方向に互いに異なる位置で当該奥行き方向に変位させる機能を含むことを特徴としている。
本発明によれば、二次元の静止画像を変形させた変形画像にて奥行きの表現を適正に行うことができる。
本発明を適用した一実施形態の動画生成システムの概略構成を示すブロック図である。 図1の動画生成システムを構成するユーザ端末の概略構成を示すブロック図である。 図1の動画生成システムを構成するサーバの概略構成を示すブロック図である。 図3のサーバに記憶されている動き情報を模式的に示す図である。 図1の動画生成システムによる動画生成処理に係る動作の一例を示すフローチャートである。 図5の動画生成処理の続きを示すフローチャートである。 図5の動画生成処理におけるフレーム画像生成処理に係る動作の一例を示すフローチャートである。 図5の動画生成処理における構成領域特定処理に係る動作の一例を示すフローチャートである。 図5の動画生成処理におけるフレーム描画処理に係る動作の一例を示すフローチャートである。 図3のサーバに記憶されているレイヤー情報を模式的に示す図である。 図7のフレーム画像生成処理に係る画像の一例を模式的に示す図である。 図7のフレーム画像生成処理に係る画像の一例を模式的に示す図である。 図7のフレーム画像生成処理に係る画像の一例を模式的に示す図である。
以下に、本発明について、図面を用いて具体的な態様を説明する。ただし、発明の範囲は、図示例に限定されない。
図1は、本発明を適用した一実施形態の動画生成システム100の概略構成を示すブロック図である。
本実施形態の動画生成システム100は、図1に示すように、撮像装置1と、ユーザ端末2と、サーバ3とを備え、ユーザ端末2とサーバ3とが所定の通信ネットワークNを介して各種情報を送受信可能に接続されている。
先ず、撮像装置1について説明する。
撮像装置1は、被写体を撮像する撮像機能や撮像画像の画像データを記録媒体Cに記録する記録機能等を具備する。即ち、撮像装置1は、公知のものを適用可能であり、例えば、主要な機能を撮像機能とするデジタルカメラだけでなく、主要な機能としないものの撮像機能を具備する携帯電話機等の携帯端末なども含む。
次に、ユーザ端末2について図2を参照して説明する。
ユーザ端末2は、例えば、パーソナルコンピュータ等により構成され、サーバ3により開設されるWebページ(例えば、動画生成用ページ)にアクセスして、当該Webページ上で各種の指示を入力する。
図2は、ユーザ端末2の概略構成を示すブロック図である。
図2に示すように、ユーザ端末2は、具体的には、中央制御部201と、操作入力部202と、表示部203と、音出力部204と、記録媒体制御部205と、通信制御部206等を備えている。
中央制御部201は、ユーザ端末2の各部を制御する。具体的には、中央制御部201は、CPU、RAM、ROM(何れも図示略)を備え、ROMに記憶されたユーザ端末2用の各種処理プログラム(図示略)に従って各種の制御動作を行う。その際に、CPUは、RAM内の格納領域内に各種処理結果を格納させ、必要に応じてその処理結果を表示部203に表示させる。
RAMは、例えば、CPUにより実行される処理プログラム等を展開するためのプログラム格納領域や、入力データや上記処理プログラムが実行される際に生じる処理結果等を格納するデータ格納領域などを備える。
ROMは、コンピュータ読み取り可能なプログラムコードの形態で格納されたプログラム、具体的には、ユーザ端末2で実行可能なシステムプログラム、当該システムプログラムで実行可能な各種処理プログラムや、これら各種処理プログラムを実行する際に使用されるデータ等を記憶する。
操作入力部202は、例えば、数値、文字等を入力するためのデータ入力キーや、データの選択、送り操作等を行うための上下左右移動キーや各種機能キー等によって構成されるキーボードやマウス等を備え、ユーザにより押下されたキーの押下信号やマウスの操作信号を中央制御部201のCPUに出力する。
なお、操作入力部202としてタッチパネル(図示略)を表示部203の表示画面に配設して、タッチパネルの接触位置に応じて各種の指示を入力するような構成としても良い。
表示部203は、例えば、LCD、CRT(Cathode Ray Tube)等のディスプレイから構成され、中央制御部201のCPUの制御下にて各種情報を表示画面に表示する。
即ち、表示部203は、例えば、サーバ3から送信され通信制御部206により受信されたWebページ(例えば、動画生成用ページ)のページデータに基づいて、対応するWebページを表示画面に表示する。具体的には、表示部203は、動画生成処理(後述)に係る各種の処理画面の画像データに基づいて、各種の処理画面を表示画面に表示する。
音出力部204は、例えば、D/Aコンバータ、LPF(Low Pass Filter)、増幅器、スピーカ等により構成され、中央制御部201のCPUの制御下にて放音する。
即ち、音出力部204は、例えば、サーバ3から送信され通信制御部206により受信された演奏情報に基づいて、当該演奏情報のデジタルデータをD/Aコンバータによりアナログデータに変換し、増幅器を介してスピーカから、所定の音色、音高、音長で曲を放音する。また、音出力部204は、一の音源(例えば、楽器)の音を放音しても良いし、複数の音源の音を同時に放音しても良い。
記録媒体制御部205は、記録媒体Cが着脱自在に構成され、装着された記録媒体Cからのデータの読み出しや記録媒体Cに対するデータの書き込みを制御する。即ち、記録媒体制御部205は、撮像装置1から取り外されて装着された記録媒体Cから動画生成処理(後述)に係る被写体存在画像(図示略)の画像データ(YUVデータ)を読み出して通信制御部206に出力する。
ここで、被写体存在画像とは、所定の背景内に主要な被写体が存在する画像のことである。また、記録媒体Cには、撮像装置1の画像処理部(図示略)により所定の符号化形式(例えば、JPEG形式等)に従って符号化された被写体存在画像の画像データが記録されている。
そして、通信制御部206は、入力された被写体存在画像の画像データをサーバ3に所定の通信ネットワークNを介して送信する。
通信制御部206は、例えば、モデム(MODEM:Modulater/DEModulater)、ターミナルアダプタ(Terminal Adapter)等によって構成され、所定の通信ネットワークNを介してサーバ3等の外部機器との間で情報の通信制御を行うためのものである。
なお、通信ネットワークNは、例えば、専用線や既存の一般公衆回線を利用して構築された通信ネットワークであり、LAN(Local Area Network)やWAN(Wide Area Network)等の様々な回線形態を適用することが可能である。また、通信ネットワークNには、例えば、電話回線網、ISDN回線網、専用線、移動体通信網、通信衛星回線、CATV回線網等の各種通信回線網と、それらを接続するインターネットサービスプロバイダ等が含まれる。
次に、サーバ3について図3を参照して説明する。
サーバ3は、Web(World Wide Web)サーバとしてインターネット上にWebページ(例えば、動画生成用ページ)を開設する機能を具備するものであり、ユーザ端末2からのアクセスに応じて当該ユーザ端末2にWebページのページデータを送信する。また、サーバ3は、画像生成装置として、静止画像の被写体領域B内で、二次元空間に対する奥行き方向の基準位置と対応付けられた複数の重なり基準点R、…に対応する各位置に複数の構成領域L、…の重なりの制御に係る重なり制御点Tを複数設定する。そして、サーバ3は、複数の重なり制御点T、…の各々に対応する重なり基準点Rの奥行き方向の基準位置に基づいて算出された複数の構成領域L、…の各々の所定の時間間隔毎の奥行き方向の位置に基づいて、当該所定の時間間隔毎に被写体領域Bにおける各構成領域Lを奥行き方向に互いに異なる位置で当該奥行き方向に変位させるとともに、被写体領域B内に設定されている複数の動き制御点S、…の動きに従って当該被写体領域Bを変形させた変形画像を生成する。
図3は、サーバ3の概略構成を示すブロック図である。
図3に示すように、サーバ3は、具体的には、中央制御部301と、表示部302と、通信制御部303と、被写体切抜部304と、記憶部305と、動画処理部306等を備えて構成されている。
中央制御部301は、サーバ3の各部を制御する。具体的には、中央制御部301は、CPU、RAM、ROM(何れも図示略)を備え、CPUは、ROMに記憶されたサーバ3用の各種処理プログラム(図示略)に従って各種の制御動作を行う。その際に、CPUは、RAM内の格納領域内に各種処理結果を格納させ、必要に応じてその処理結果を表示部302に表示させる。
RAMは、例えば、CPUにより実行される処理プログラム等を展開するためのプログラム格納領域や、入力データや上記処理プログラムが実行される際に生じる処理結果等を格納するデータ格納領域などを備える。
ROMは、コンピュータ読み取り可能なプログラムコードの形態で格納されたプログラム、具体的には、サーバ3で実行可能なシステムプログラム、当該システムプログラムで実行可能な各種処理プログラムや、これら各種処理プログラムを実行する際に使用されるデータ等を記憶する。
表示部302は、例えば、LCD、CRT等のディスプレイから構成され、中央制御部301のCPUの制御下にて各種情報を表示画面に表示する。
通信制御部303は、例えば、モデム、ターミナルアダプタ等によって構成され、所定の通信ネットワークNを介してユーザ端末2等の外部機器との間で情報の通信制御を行うためのものである。
具体的には、通信制御部303は、例えば、動画生成処理(後述)にてユーザ端末2から所定の通信ネットワークNを介して送信された被写体存在画像の画像データを受信して、当該画像データを中央制御部301のCPUに出力する。
中央制御部301のCPUは、入力された被写体存在画像の画像データを被写体切抜部304に出力する。
被写体切抜部304は、被写体存在画像から被写体切り抜き画像(図示略)を生成する。
即ち、被写体切抜部304は、公知の被写体切抜手法を用いて、被写体存在画像から被写体が含まれる被写体領域が切り抜かれた被写体切り抜き画像を生成する。具体的には、被写体切抜部304は、中央制御部301のCPUから出力された被写体存在画像の画像データを取得して、例えば、ユーザによるユーザ端末2の操作入力部202(例えば、マウス等)の所定操作に基づいて、表示部203に表示されている当該被写体存在画像上に描画された境界線(図示略)により当該被写体存在画像を区分する。続けて、被写体切抜部304は、被写体存在画像の切抜線により区分される複数の区分領域の中で、被写体の背景を推定して当該背景の各画素の画素値に基づいて所定の演算を行って、被写体の背景色を所定の単一色として推定する。その後、被写体切抜部304は、所定の単一色の背景用画像と被写体存在画像との間で対応する各画素の差分情報(例えば、相違度マップ等)を生成する。そして、被写体切抜部304は、生成した差分情報の各画素の画素値を所定の閾値と比較して二値化した後、同じ連結成分を構成する画素集合に同じ番号を付けるラベリング処理を行って面積が最大の画素集合を被写体部分とする。
その後、被写体切抜部304は、例えば、上記の面積が最大の画素集合が「1」、その他の部分が「0」である二値化された差分情報に対してローパスフィルタを施して境界部分に中間値を生じさせることでアルファ値を生成し、被写体切り抜き画像内で被写体領域の位置を示す位置情報としてのアルファマップ(図示略)を生成する。
アルファ値(0≦α≦1)とは、例えば、被写体存在画像の各画素について、被写体領域の画像を所定の背景に対してアルファブレンディングする際の重みを表すものである。この場合、被写体領域はアルファ値が「1」となり、被写体存在画像の所定の背景に対する透過度が0%となる。一方、被写体の背景部分はアルファ値が「0」となり、当該被写体存在画像の所定の背景に対する透過度が100%となる。
そして、被写体切抜部304は、アルファマップに基づいて、被写体存在画像の各画素のうち、アルファ値が「1」の画素を所定の単一色画像に対して透過させずに、且つ、アルファ値が「0」の画素を透過させるように、被写体画像を所定の単一色画像と合成して被写体切り抜き画像の画像データを生成する。
また、被写体切抜部304は、アルファマップに基づいて、被写体領域B(図11(a)中、白で表す領域)の各画素を第1の画素値(例えば、「1」等)とし、背景領域(図11(a)中、ドットを付した領域)の各画素を第1の画素値と異なる第2の画素値(例えば、「0」等)とする二値画像であるマスク画像P1(図11(a)参照)を生成する。即ち、被写体切抜部304は、被写体切り抜き画像内で被写体領域Bの位置を示す位置情報としてのマスク画像P1を生成する。
被写体切り抜き画像の画像データは、例えば、生成されたアルファマップやマスク画像P1等の位置情報と対応付けられたデータである。
なお、上記した被写体切抜部304による被写体切抜手法は、一例であってこれに限られるものではなく、被写体存在画像から被写体が含まれる被写体領域を切り抜く公知の手法であれば如何なる手法を適用しても良い。
また、被写体切り抜き画像の画像データとしては、例えば、RGBA形式の画像データを適用しても良く、具体的には、RGB色空間で規定される各色に透過度(A)の情報が付加されている。この場合には、被写体切抜部304は、透過度(A)の情報を利用して、被写体切り抜き画像内で被写体領域Bの位置を示す位置情報(図示略)を生成しても良い。
記憶部305は、例えば、半導体の不揮発メモリやHDD(Hard Disc Drive)等により構成され、ユーザ端末2に送信されるWebページのページデータや被写体切抜部304により生成された被写体切り抜き画像の画像データ等を記憶する。
また、記憶部305は、動画生成処理に用いられる動き情報305aを複数記憶している。
各動き情報305aは、所定空間、即ち、例えば、互いに直交する二軸(例えば、x軸、y軸等)により規定される二次元の平面空間並びにこれら二軸に加えて当該二軸に直交する軸(例えば、z軸等)により規定される三次元の立体的空間内における複数の動き基準点Q、…の動きを示す情報である。なお、動き情報305aは、二次元の平面空間を所定の回動軸周りに回転させることで複数の動き基準点Q、…の動きに奥行きをもたせるような情報であっても良い。
ここで、各動き基準点Qの位置は、動きのモデルとなる動体モデル(例えば、ヒトや動物等)の骨格の形状や関節の位置等を考慮してそれぞれ規定されている。即ち、各動き基準点Qは、基準となる基準画像の動体モデルが含まれるモデル領域A内に、動体モデルの骨格の形状や関節の位置等を考慮して設定されている。例えば、動き基準点Qは、基準画像のモデル領域A内で、ヒトの左右の手首の各々に相当する位置に左右の手首動き基準点Q1、Q2が設定され、また、ヒトの左右の足首の各々に相当する位置に左右の足首動き基準点Q3、Q4が設定され、また、ヒトの首に相当する位置に首動き基準点Q5が設定されている(図4参照)。なお、動き基準点Qの個数は、動体モデルの形状や大きさ等に応じて適宜任意に設定可能である。
ここで、図4は、動体モデルとしてのヒトを正面から見た状態を模式的に表す基準画像である。当該基準画像は、向かって左側に動体モデルとしてのヒトの右腕及び右脚が配置され、一方、向かって右側に動体モデルとしてのヒトの左腕及び左脚が配置されている。
また、各動き情報305aは、所定空間内にて複数の動き基準点Q、…の全て若しくは少なくとも一つを移動させた座標情報を所定の時間間隔で連続して並べることで、複数の動き基準点Q、…の所定の時間間隔毎の動きが連続して表されている。具体的には、各動き情報305aは、例えば、基準画像のモデル領域A内に設定されている複数の動き基準点Q、…を所定の踊りに対応させるように移動させた情報である。
例えば、図4に示すように、動き情報305aは、ヒトの動体モデルの両方の腕を挙げ、且つ、両脚を開いた状態を模式的に表した複数の動き基準点Q、…の座標情報D1、一方の脚(図4における左側の脚)を他方の脚と交差させた状態を模式的に表した複数の動き基準点Q、…の座標情報D2、さらに一方の腕(図4における左側の腕)を下げた状態を模式的に表した複数の動き基準点Q、…の座標情報D3といったように、時間軸に沿って所定の時間間隔を空けて連続して並べられている(図4にあっては、座標情報D3以降の座標情報の図示は省略する)。
なお、図4に示した動き情報305aは、一例であってこれに限られるものではなく、動きの種類等は適宜任意に変更可能である。また、複数の動き基準点Q、…の座標情報の各々は、例えば、基準となる動き基準点Qの座標情報に対する各動き基準点Qの移動量を規定した情報であっても良いし、各動き基準点Qの絶対位置座標を規定した情報であっても良い。
また、記憶部305は、複数の重なり基準点R、…の二次元空間内での位置を示す重なり位置情報305bを複数記憶している。
各重なり位置情報305bは、互いに直交する二軸(例えば、x軸、y軸等)により規定される二次元の平面空間での複数の重なり基準点R、…の位置を示す情報である。
ここで、各重なり基準点Rは、基準画像のモデル領域Aを構成する複数の領域毎、即ち、例えば、動体モデルとしてのヒトの代表的な各部位毎に設定されており、体幹から遠い位置に設定されていることが好ましい。また、各重なり基準点Rは、各動き基準点Qと略等しい位置に設定されていても良い。具体的には、例えば、各重なり基準点Rは、基準画像のモデル領域A内で、ヒトの左右の手首の各々に相当する位置に左右の手首重なり基準点R1、R2が設定され、また、ヒトの左右の足首の各々に相当する位置に左右の足首重なり基準点R3、R4が設定されている。
また、各重なり基準点Rは、所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置(奥行き情報)と対応付けられている。即ち、各重なり位置情報305bは、複数の重なり基準点R、…の全て若しくは少なくとも一つを二次元の平面空間に対する奥行き方向(例えば、z軸方向等)に移動させた座標情報を所定の時間間隔で連続して並べることで、複数の重なり基準点R、…の所定の時間間隔毎の奥行き方向の基準位置が連続して表されている。なお、複数の重なり基準点R、…の座標情報の各々は、例えば、基準となる重なり基準点Rの座標情報に対する各重なり基準点Rの移動量を規定した情報であっても良いし、各重なり基準点Rの絶対位置座標を規定した情報であっても良い。
このように、記憶部305は、基準画像の動体モデルが含まれるモデル領域Aを構成する複数の領域毎に設定され、所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置と対応付けられた複数の重なり基準点R、…の二次元空間内での位置を示す位置情報を記憶する記憶手段を構成している。
また、記憶部305は、動画生成処理に用いられる演奏情報305cを複数記憶している。
演奏情報305cは、動画処理部306の動画再生部306i(後述)により動画像とともに自動的に曲を演奏するための情報である。即ち、演奏情報305cは、例えば、テンポ、拍子、音程、音階、調、発想標語等を異ならせて複数規定され、それぞれ曲名と対応付けて記憶されている。
また、各演奏情報305cは、例えば、MIDI(Musical Instruments Digital Interface)規格等に従って規定されたデジタルデータであり、具体的には、トラック数や四分音符の分解能(Tickカウント数)等が規定されたヘッダ情報と、各パートに割り当てられた音源(例えば、楽器等)に供給させるイベント及びタイミングかならなるトラック情報等を有している。このトラック情報のイベントとして、例えば、テンポあるいは拍子の変更や、NoteOn・Offを指示する情報などがある。
動画処理部306は、画像取得部306aと、第1設定部306bと、第2設定部306cと、領域分割部306dと、領域特定部306eと、奥行き位置算出部306fと、フレーム生成部306gと、裏面画像生成部306hと、動画再生部306iとを具備している。
画像取得部306aは、動画生成処理に用いられる静止画像を取得する。
即ち、画像取得部306aは、取得手段として、動画生成処理の処理対象となる二次元の静止画像を取得する。具体的には、画像取得部306aは、被写体切抜部304により生成された被写体切り抜き画像の画像データと、当該被写体切り抜き画像の画像データと対応付けられているマスク画像P1の画像データを取得する。
第1設定部306bは、動画生成処理の処理対象となる静止画像の被写体領域内で動き制御点Sを複数設定する。
即ち、第1設定部306bは、第1設定手段として、画像取得部306aにより取得された二次元の静止画像の被写体領域内で、被写体の動きの制御に係る動き制御点Sを複数設定する。具体的には、第1設定部306bは、被写体切り抜き画像及びマスク画像P1の各々の被写体領域B内で、基準画像のモデル領域A内に設定されている複数の動き基準点Q、…に対応する各位置に複数の動き制御点S、…の各々を設定する。
例えば、第1設定部306bは、記憶部305から動体モデル(例えば、ヒト)の動き情報305aを読み出して、被写体切り抜き画像及びマスク画像P1の各被写体領域B内で、当該動き情報305aに規定されている基準フレーム(例えば、1フレーム目等)の複数の動き基準点Q、…(例えば、動き基準点Q1〜Q5等)の各々に対応する動き制御点S(例えば、動き制御点S1〜S5等)を、ユーザによるユーザ端末2の操作入力部202の所定操作に基づいて指定された所望の位置にそれぞれ設定する(図11(a)参照)。ここで、第1設定部306bは、被写体切り抜き画像の被写体領域B内で動き制御点Sをそれぞれ設定することで、当該被写体切り抜き画像に対応する裏面画像内の所定位置に対してもそれぞれ対応する動き制御点Sを自動的に設定しても良い。
このとき、第1設定部306bは、動体モデルのモデル領域Aと被写体切り抜き画像やマスク画像P1の被写体領域Bとについて、例えば、顔などの主要部の大きさを合わせるように寸法の調整(例えば、動体モデルの拡大や縮小、変形等)を行うようにしても良い。また、例えば、モデル領域Aと被写体領域Bの画像を重ね合わせて被写体領域Bにおける複数の動き基準点Q、…の各々が対応する位置を特定しても良い。
さらに、第1設定部306bは、動き情報305aに規定されている複数の動き基準点Q、…の全てについて、対応する動き制御点Sを設定しても良いし、被写体の中央部や各先端部等の代表的な所定数の動き基準点Qに対応する動き制御点Sのみ設定しても良い。
なお、第1設定部306bは、被写体切り抜き画像やマスク画像P1の被写体領域B内で、記憶部305から読み出された動き情報305aに規定されている基準フレーム(例えば、1フレーム目等)の複数の動き基準点Q、…の各々が対応する位置を自動的に特定しても良い。例えば、第1設定部306bは、被写体の骨格の形状や関節の位置等を考慮して複数の動き基準点Q、…の各々が対応する位置を特定する。そして、第1設定部306bは、特定された複数の動き基準点Q、…の各々が対応する位置に動き制御点Sをそれぞれ設定する。
また、第1設定部306bによる動き制御点Sの設定が自動的に行われた場合であっても、ユーザによる操作入力部の所定操作に基づいて動き制御点Sの設定位置の修正(変更)を受け付けるようにしても良い。
第2設定部306cは、動画生成処理の処理対象となる静止画像の被写体領域B内で重なり制御点Tを複数設定する。
即ち、第2設定部306cは、第2設定手段として、画像取得部306aにより取得された二次元の静止画像の被写体領域B内で、複数の重なり基準点R、…に対応する各位置に被写体領域Bを構成する複数の構成領域L、…の重なりの制御に係る重なり制御点Tを複数設定する。具体的には、第2設定部306cは、被写体切り抜き画像及びマスク画像P1の各々の被写体領域B内で、基準画像のモデル領域Aを構成する複数の領域毎(例えば、動体モデルとしてのヒトの代表的な各部位毎等)に設定されている複数の重なり基準点R、…に対応する各位置に複数の重なり制御点T、…の各々を設定する。
例えば、第2設定部306cは、記憶部305から重なり位置情報305bを読み出して、被写体切り抜き画像及びマスク画像P1の各々の被写体領域B内で、当該重なり位置情報305bに規定されている基準フレーム(例えば、1フレーム目等)の複数の重なり基準点R、…(例えば、重なり基準点R1〜R4等)の各々に対応する重なり制御点T(例えば、重なり制御点T1〜T4等)を、ユーザによるユーザ端末2の操作入力部202の所定操作に基づいて指定された所望の位置にそれぞれ設定する(図11(a)参照)。このとき、第2設定部306cは、重なり位置情報305bに規定されている複数の重なり基準点R、…の全てについて、対応する重なり制御点Tを設定しても良いし、被写体の中央部、腕や脚の各先端部等の代表的な所定数の重なり基準点Rに対応する重なり制御点Tのみ設定しても良い。
また、第2設定部306cは、第1設定部306bによる動き制御点Sの設定位置を基準として、例えば、動き制御点Sの設定位置と略等しい位置に重なり制御点Tを設定しても良い。このとき、第2設定部306cは、設定済みの動き制御点Sの全てについて、略等しい位置に重なり制御点Tを設定しても良いし、被写体の中央部や各先端部等の代表的な所定数の動き制御点Sに対応する重なり制御点Tのみ設定しても良い。
領域分割部306dは、被写体領域Bを所定形状の複数の画像領域Ba、…に分割する。
即ち、領域分割部306dは、例えば、被写体切り抜き画像やマスク画像P1の画像データに対してドローネの三角形分割を行って、被写体領域B内に所定の間隔で頂点を配置して三角形のメッシュ状の複数の画像領域Ba、…に分割する(図11(b)参照)。ここで、動き制御点Sや重なり制御点Tと略等しい位置に、画像領域Baの頂点を設定しても良いし、異なる位置に設定しても良い。
なお、ドローネの三角形分割とは、各点を頂点とする複数の三角形で処理対象の領域を分割する方法のうち、三角形の最小角の和を最大にするように分割する方法のことである。
なお、領域分割部306dによる被写体領域Bの分割手法として、ドローネの三角形分割を例示したが、一例であってこれに限られるものではなく、被写体領域Bを複数の画像領域Ba、…に分割する手法であれば適宜任意に変更可能である。
領域特定部306eは、複数の重なり制御点T、…の各々について、被写体領域Bを構成する複数の構成領域L、…を特定する。
即ち、領域特定部306eは、第2設定部306cにより設定された複数の重なり制御点T、…の各々について、最も近い位置に存する他の重なり制御点Tとの距離を基準として、マスク画像P1の被写体領域Bの中で構成領域Lとしての重なり制御領域Mを複数特定する。具体的には、領域特定部306eは、例えば、ダイクストラ法等を利用して、各重なり制御点T(例えば、左手首重なり制御点T1等)について、領域分割部306dにより被写体領域Bが分割された複数の画像領域Ba、…(例えば、三角形の画像領域Ba)の縁部に沿った経路で最も近い位置に存する他の重なり制御点T(例えば、右手首重なり制御点T2等)を特定する(図12(a)参照)。そして、領域特定部306eは、各重なり制御点Tについて、特定された最も近い位置に存する他の重なり制御点Tまでの距離の半分となる距離以内に存する複数の画像領域Ba、…からなる領域を、当該重なり制御点Tの重なり制御領域Mとして特定する(図12(b)参照)。例えば、領域特定部306eは、左手首重なり制御点T1に係る左腕重なり制御領域M1、右手首重なり制御点T2に係る右腕重なり制御領域M2、左足首重なり制御点T3に係る左脚重なり制御領域M3、右足首重なり制御点T4に係る右脚重なり制御領域M4等をそれぞれ特定する。
なお、図12(a)、後述する図12(c)にあっては、被写体領域Bを分割した複数の画像領域Ba、…の図示を省略し、重なり制御点Tどうしの距離を模式的に破線で表している。
また、領域特定部306eは、被写体領域Bの中で複数の重なり制御領域M、…以外の非重なり制御領域Nを構成領域Lとして特定する。
即ち、領域特定部306eは、マスク画像P1の被写体領域Bの中で重なり制御領域Mが特定された結果、残った部分の領域を非重なり制御領域Nとして特定する。具体的には、領域特定部306eは、例えば、マスク画像P1の被写体領域Bの中で左右の腕重なり制御領域M1、M2及び左右の脚重なり制御領域M3、M4が特定された結果、残った部分の領域である主として胴体及び頭に相当する各領域を非重なり制御領域Nとして特定する(図12(b)参照)。
つまり、胴体に相当する非重なり制御領域Nは、被写体領域Bの相対的に中心側の領域となり、複数の重なり制御領域M、…は、非重なり制御領域Nに隣接して当該被写体領域Bの相対的に端部側の領域となる。
なお、領域特定部306eによる重なり制御領域Mや非重なり制御領域Nの特定手法は、一例であってこれに限られるものではなく、適宜任意に変更可能である。
奥行き位置算出部306fは、被写体領域Bを構成する複数の構成領域L、…の各々の所定の時間間隔毎の奥行き方向の位置を算出する。
即ち、奥行き位置算出部306fは、算出手段として、複数の構成領域L、…の各々の所定の時間間隔毎の奥行き方向の位置を、複数の重なり制御点T、…の各々に対応する重なり基準点Rの奥行き方向の基準位置(奥行き情報)に基づいて算出する。具体的には、奥行き位置算出部306fは、領域特定部306eにより特定された複数の重なり制御領域M、…の各々の所定の時間間隔毎の奥行き方向の位置を、各重なり制御領域Mに係る重なり制御点Tに対応する重なり基準点Rの所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置に基づいて算出する。例えば、奥行き位置算出部306fは、記憶部305から重なり位置情報305bを読み出して、第2設定部306cにより各重なり制御点Tが対応付けられた重なり基準点Rの所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置を取得する。そして、奥行き位置算出部306fは、取得された重なり基準点Rの所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置に基づいて、各重なり制御領域Mを構成する複数の画像領域Ba、…の各頂点の画素が所定方向(例えば、被写体領域Bの端部側から中央部側に向かう方向)に互いに重なり合わないように、当該重なり基準点Rに対応する重なり制御点Tに係る各重なり制御領域Mの所定の時間間隔毎の奥行き方向の位置を算出する。
ここで、奥行き位置算出部306fは、複数の重なり制御領域(構成領域L)M、…の各々について、領域分割部306dにより各重なり制御領域Mが分割された複数の画像領域Ba、…の各頂点の奥行き方向の位置を、当該各重なり制御領域Mに係る重なり制御点Tからの距離を基準として算出しても良い。
例えば、奥行き位置算出部306fは、複数の重なり制御領域(構成領域L)M、…の各々について、複数の画像領域Ba、…の各頂点の位置を「0」〜「1」の範囲の値で正規化した奥行き正規化情報を算出する。具体的には、奥行き位置算出部306fは、重なり制御点Tの位置が「1」となり、重なり制御点Tから離れる程値が小さくなっていき、最も遠い位置に存する頂点(重なり制御領域Mの重なり制御点Tと反対側の頂点)の位置で「0」となるような奥行き正規化情報を算出する。
また、奥行き位置算出部306fは、各重なり制御領域M内で、重なり制御点Tを基準として、当該重なり制御点Tから最も近い位置に存する他の重なり制御点Tに向かう方向とは反対側の領域Ma内に存する所定数の画像領域Baの各頂点の奥行き正規化情報を、重なり制御点Tと同様に「1」とする(図12(c)参照)。ここで、奥行き位置算出部306fは、各重なり制御領域M内で、重なり制御点Tを基準として所定の距離(例えば、重なり制御領域M内で取り得る最長経路の1/5程度等)内に存する各頂点の奥行き正規化情報を「1」としても良い。
また、奥行き位置算出部306fは、領域特定部306eにより特定された非重なり制御領域Nを構成する各画素が奥行き方向に互いに異なる位置となるように、当該非重なり制御領域Nの所定の時間間隔毎の奥行き方向の位置を算出する。
即ち、奥行き位置算出部306fは、非重なり制御領域Nについて、複数の画像領域Ba、…の各頂点の位置を「0」〜「1」の範囲の値で正規化した奥行き正規化情報を算出する。具体的には、奥行き位置算出部306fは、例えば、y軸方向(上下方向)に沿って複数の画像領域Ba、…の各頂点を正規化し、最も上部(例えば、頭側)に存する頂点の位置が「1」、最も下部(例えば、足側)に存する頂点の位置が「0」となるように奥行き正規化情報を算出する。
そして、奥行き位置算出部306fは、非重なり制御領域Nの奥行き方向の位置を基準として、複数の重なり制御領域M、…の奥行き方向の位置を算出する。
即ち、奥行き位置算出部306fは、例えば、非重なり制御領域Nの任意の点(非重なり制御点)の奥行き方向の位置を「0」とし、記憶部305から重なり位置情報305bを読み出して、複数の重なり制御領域M、…の各々に係る重なり制御点Tに対応する重なり基準点Rの奥行き方向の基準位置を取得した後、当該複数の重なり制御点T、…並びに非重なり制御点を所定の規則に従って並べ替える。例えば、重なり位置情報305bが、左手首重なり制御点T1に対応する左手首重なり基準点R1の奥行き方向の基準位置を「100」、右手首重なり制御点T2に対応する右手首重なり基準点R2の奥行き方向の基準位置を「20」、左足首重なり制御点T3に対応する左足首重なり基準点R3の奥行き方向の基準位置を「−50」、右足首重なり制御点T4に対応する右足首重なり基準点R4の奥行き方向の基準位置を「−70」とした内容の場合、奥行き位置算出部306fは、左手首重なり制御点T1、右手首重なり制御点T2、非重なり制御点、左足首重なり制御点T3、右足首重なり制御点T4の順に並べ替える。
そして、奥行き位置算出部306fは、左手首重なり制御点T1に係る左腕重なり制御領域M1、右手首重なり制御点T2に係る右腕重なり制御領域M2、非重なり制御点に係る非重なり制御領域N、左足首重なり制御点T3に係る左脚重なり制御領域M3、右足首重なり制御点T4に係る右脚重なり制御領域M4の順に、所定層数のレイヤー(例えば、第1〜第5レイヤー;図10参照)に割り当てる。
ここで、所定層数のレイヤーは、奥行き方向に互いに異なる位置で(重なり合わないように)設定され、実際にフレーム画像が描画される際に利用される奥行き方向の値となる(図10参照)。また、所定層数のレイヤーの奥行き方向は、当該処理対象の静止画像が恰も二次元の静止画像に見えるように、当該方向の長さ(厚さ)がフレーム画像の状態で目立たないような値に設定されている。
また、奥行き位置算出部306fは、左腕重なり制御領域M1、右腕重なり制御領域M2、非重なり制御領域N、左脚重なり制御領域M3及び右脚重なり制御領域M4の奥行き正規化情報に基づいて、各構成領域Lの各頂点の奥行き方向の位置を算出する。
具体的には、奥行き位置算出部306fは、処理対象となる重なり制御領域Mに対応する重なり基準点Rの奥行き方向の基準位置が、非重なり制御領域Nの奥行き方向の位置「0」よりも大きいか否かを判定し、当該判定結果に応じて奥行き方向の位置を算出するための一般式を切り替えて設定する。
例えば、奥行き位置算出部306fは、左腕重なり制御領域M1や右腕重なり制御領域M2のように、重なり基準点Rの奥行き方向の基準位置が非重なり制御領域Nの奥行き方向の位置「0」よりも小さい場合、各重なり制御領域Mを構成する画像領域Baの各頂点のレイヤー内での奥行き方向の位置「Zpos」を下記式(1)に基づいて算出する。同様に、奥行き位置算出部306fは、非重なり制御領域Nについては、当該非重なり制御領域Nを構成する画像領域Baの各頂点のレイヤー内での奥行き方向の位置「Zpos」を下記式(1)に基づいて算出する。
Zpos=「奥行き正規化情報」*「LayerW」+「LayerMin」 …式(1)
また、奥行き位置算出部306fは、左脚重なり制御領域M3や右脚重なり制御領域M4のように、重なり基準点Rの奥行き方向の基準位置が非重なり制御領域Nの奥行き方向の位置「0」よりも大きい場合、各重なり制御領域Mを構成する画像領域Baの各頂点のレイヤー内での奥行き方向の位置「Zpos」を下記式(2)に基づいて算出する。
Zpos=(1−「奥行き正規化情報」)*「LayerW」+「LayerMin」 …式(2)
ここで、上記式(1)、(2)における、「LayerW」は、対応する各レイヤーについて取り得る奥行き距離(幅)の最大値「LayerMax」と最小値「LayerMin」との差(幅)を表している。
なお、奥行き位置算出部306fによる各構成領域Lの各頂点の奥行き方向の位置の算出手法は、一例であってこれに限られるものではなく、適宜任意に変更可能である。
フレーム生成部306gは、動画像を構成する複数の基準フレーム画像を逐次生成する。
即ち、フレーム生成部306gは、動画処理部306により指定された動き情報305aの複数の動き基準点Q、…の動きに追従させるように、被写体切り抜き画像の被写体領域B内に設定されている複数の動き制御点S、…を移動させて複数の基準フレーム画像を逐次生成する(図13(a)及び図13(b)参照)。具体的には、フレーム生成部306gは、例えば、動き情報305aに従って所定の時間間隔で移動する複数の動き基準点Q、…の座標情報を逐次取得して、当該動き基準点Qの各々に対応する各動き制御点Sの座標を算出する。そして、フレーム生成部306gは、算出された座標に動き制御点Sを逐次移動させていくとともに、領域分割部306dにより被写体領域Bが分割された複数の画像領域(例えば、三角形のメッシュ状の領域)Ba、…を移動させたり変形させることで、基準フレーム画像(図示略)を生成する。
このとき、フレーム生成部306gは、生成手段として、奥行き位置算出部306fにより算出された複数の構成領域L、…の各々の所定の時間間隔毎の奥行き方向の位置「Zpos」に基づいて、当該所定の時間間隔毎に被写体領域Bにおける各構成領域Lを奥行き方向に互いに異なる位置で当該奥行き方向に変位させるとともに、複数の動き制御点S、…の動きに従って被写体領域Bを変形させた基準フレーム画像(変形画像)を生成する。具体的には、フレーム生成部306gは、例えば、Open GL等の三次元の描画インターフェース等を利用して、被写体領域Bの構成する構成領域Lとしての複数の重なり制御領域M、…及び非重なり制御領域Nの各々の所定の時間間隔毎の奥行き方向の位置「Zpos」に基づいて、当該所定の時間間隔毎に被写体切り抜き画像の被写体領域Bにおける各構成領域Lを奥行き方向に互いに異なる位置で当該奥行き方向に変位させる。
なお、動き制御点Sを基準とした所定の画像領域Baを移動させたり変形させる処理は、公知の技術であるので、ここでは詳細な説明を省略する。
また、図13(a)及び図13(b)にあっては、変形後の基準フレーム画像に対応するマスク画像P2、P3を模式的に表しており、図13(a)は、動き情報305aの複数の動き基準点Q、…の座標情報D2に対応する図であり、図13(b)は、動き情報305aの複数の動き基準点Q、…の座標情報D3に対応する図である。
さらに、図13(a)及び図13(b)に示すマスク画像P2、P3にあっては、変形後の基準フレーム画像に対応させるように二つの脚を交差させた状態を模式的に表している。つまり、変形後の基準フレーム画像では、交差している部分は前後に重なるように位置しているが、二次元のマスク画像P2、P3では、実際には脚どうしの前後関係は表れない。
また、フレーム生成部306gは、移動後の動き基準点Qの各々に対応する複数の動き制御点S、…に基づいて生成される時間軸に沿って隣合う二つの基準フレーム画像どうしの間を補間する補間フレーム画像(図示略)を生成する。即ち、フレーム生成部306gは、動画再生部306iにより複数のフレーム画像が所定の再生フレームレート(例えば、30fps等)で再生されるように、二つの基準フレーム画像どうしの間を補間する補間フレーム画像を所定数生成する。
具体的には、フレーム生成部306gは、隣合う二つの基準フレーム画像間における、動画再生部306iにより演奏される所定の曲の演奏の進行度合を逐次取得して、当該進行度合に応じて、隣合う二つの基準フレーム画像間で再生される補間フレーム画像を逐次生成する。例えば、フレーム生成部306gは、MIDI規格の演奏情報305cに基づいてテンポの設定情報及び四分音符の分解能(Tickカウント数)を取得して、動画再生部306iにより演奏される所定の曲の演奏の経過時間をTickカウント数に変換する。続けて、フレーム生成部306gは、所定の曲の演奏の経過時間に対応するTickカウント数に基づいて、所定のタイミング(例えば、各小節の一拍目等)に同期させた隣合う二つの基準フレーム画像間における所定の曲の演奏の相対的な進行度合を、例えば百分率で算出する。そして、フレーム生成部306gは、所定の曲の演奏の相対的な進行度合に応じて、当該隣合う二つの基準フレーム画像に対する重み付けを変えて補間フレーム画像を生成する。
なお、補間フレーム画像を生成する処理は、公知の技術であるので、ここでは詳細な説明を省略する。
また、フレーム生成部306gによる基準フレーム画像や補間フレーム画像の生成は、上記と同様にして、マスク画像P1の画像データ並びにアルファマップについても行われる。
裏面画像生成部306hは、被写体の裏側(背面側)を擬似的に表す裏面画像(図示略)を生成する。
即ち、裏面画像生成部306hは、例えば、被写体切り抜き画像の被写体領域の輪郭部分の色情報に基づいて、裏面画像における被写体切り抜き画像の被写体領域に対応する被写体対応領域を描画して当該裏面画像を生成する。
動画再生部306iは、フレーム生成部306gにより生成された複数のフレーム画像の各々を再生する。
即ち、動画再生部306iは、ユーザによるユーザ端末2の操作入力部202の所定操作に基づいて指定された演奏情報305cに基づいて所定の曲を自動的に演奏するとともに、当該所定の曲の所定のタイミングで複数のフレーム画像の各々を再生する。具体的には、動画再生部306iは、所定の曲の演奏情報305cのデジタルデータをD/Aコンバータによりアナログデータに変換して当該所定の曲を自動的に演奏させ、このとき、所定のタイミング(例えば、各小節の1拍目や各拍等)に同期させるように隣合う二つの基準フレーム画像を再生するとともに、隣合う二つの基準フレーム画像間における所定の曲の演奏の相対的な進行度合に応じて、当該進行度合に対応する各々の補間フレーム画像を再生する。
なお、動画再生部306iは、動画処理部306により指定された速さで被写体画像に係る複数のフレーム画像を再生しても良い。この場合には、動画再生部306iは、隣合う二つの基準フレーム画像を同期させるタイミングを変化させることで、所定の単位時間内に再生されるフレーム画像の数を変更して被写体画像の動きの速さを可変させる。
次に、ユーザ端末2及びサーバ3を用いた動画生成処理について、図5〜図12を参照して説明する。
ここで、図5及び図6は、動画生成処理に係る動作の一例を示すフローチャートである。
なお、以下の説明にあっては、被写体存在画像の画像データから生成された被写体切り抜き画像及び当該被写体切り抜き画像に対応するマスク画像P1の画像データがサーバ3の記憶部305に記憶されているものとする。
図5に示すように、ユーザ端末2の中央制御部201のCPUは、ユーザによる操作入力部202の所定操作に基づいて、サーバ3により開設される動画生成用ページのアクセス指示が入力されると、当該アクセス指示を通信制御部206により所定の通信ネットワークNを介してサーバ3に送信させる(ステップS1)。
サーバ3の通信制御部303によって、ユーザ端末2から送信されたアクセス指示が受信されると、中央制御部301のCPUは、動画生成用ページのページデータを通信制御部303により所定の通信ネットワークNを介してユーザ端末2に送信させる(ステップS2)。
そして、ユーザ端末2の通信制御部206によって、動画生成用ページのページデータが受信されると、表示部203は、当該動画生成用ページのページデータに基づいて、動画生成用ページの画面(図示略)を表示する。
次に、ユーザ端末2の中央制御部201は、ユーザによる操作入力部202の所定操作に基づいて、動画生成用ページの画面内にて操作された各種ボタンに対応する指示信号を通信制御部206により所定の通信ネットワークNを介してサーバ3に送信させる(ステップS3)。
図6に示すように、サーバ3の中央制御部301のCPUは、ユーザ端末2からの指示の内容に応じて処理を分岐させる(ステップS4)。具体的には、中央制御部301のCPUは、ユーザ端末2からの指示が、被写体画像の指定に関する内容の場合(ステップS4;被写体画像の指定)、処理をステップS51に移行させ、また、背景画像の指定に関する内容の場合(ステップS4;背景画像の指定)、処理をステップS61に移行させ、また、動き及び曲の指定に関する内容の場合(ステップS4;動き及び曲の指定)、処理をステップS71に移行させる。
<被写体画像の指定>
ステップS4にて、ユーザ端末2からの指示が、被写体画像の指定に関する内容の場合(ステップS4;被写体画像の指定)、動画処理部306の画像取得部306aは、記憶部305に記憶されている被写体切り抜き画像の画像データの中からユーザにより指定された被写体切り抜き画像の画像データと、当該被写体切り抜き画像の画像データと対応付けられているマスク画像P1の画像データを読み出して取得する(ステップS51)。
次に、動画処理部306は、取得された被写体切り抜き画像やマスク画像P1の被写体領域B内で動き制御点S及び重なり制御点Tが既に設定されているか否かを判定する(ステップS52)。
ステップS52にて、動き制御点S及び重なり制御点Tが設定されていないと判定されると(ステップS52;NO)、動画処理部306は、被写体切り抜き画像及びマスク画像P1の画像データに基づいて、被写体領域Bの所定位置(例えば、中心位置等)を基準として当該被写体切り抜き画像及びマスク画像P1をトリミングすることで、被写体領域Bと動体モデルのモデル領域Aの大きさが等しくなるように補正する(ステップS53)。
なお、トリミングは、当該被写体切り抜き画像の画像データと対応付けられているアルファマップについても行われる。
その後、動画処理部306は、トリミング後の画像の被写体領域Bの画像の裏側を擬似的に表す裏面画像(図示略)を生成する裏面画像生成処理を行う(ステップS54)。
次に、中央制御部301のCPUは、生成された裏面画像と対応づけられた被写体切り抜き画像の画像データを通信制御部303により所定の通信ネットワークNを介してユーザ端末2に送信させる(ステップS55)。その後、動画処理部306は、被写体切り抜き画像及びマスク画像P1の各々の被写体領域B内で、動き制御点S及び重なり制御点Tを複数設定する(ステップS56)。
具体的には、動画処理部306の第1設定部306bは、記憶部305から動体モデル(例えば、ヒト)の動き情報305aを読み出して、被写体切り抜き画像及びマスク画像P1の各被写体領域B内で、当該動き情報305aに規定されている基準フレーム(例えば、1フレーム目等)の複数の動き基準点Q、…の各々に対応する動き制御点Sを、ユーザによるユーザ端末2の操作入力部202の所定操作に基づいて指定された所望の位置にそれぞれ設定する(図11(a)参照)。また、動画処理部306の第2設定部306cは、第1設定部306bによる動き制御点Sの設定位置を基準として、例えば、被写体領域Bの先端部等に設定された動き制御点Sと略等しい位置に重なり制御点Tを所定数設定する。
例えば、図11(a)に示すように、第1設定部306bは、被写体切り抜き画像及びマスク画像P1の各被写体領域B内で、左右の手首動き基準点Q1、Q2の各々に対応する左右の手首動き制御点S1、S2、左右の足首動き基準点Q3、Q4の各々に対応する左右の足首動き制御点S3、S4、首動き基準点Q5に対応する首動き制御点S5を設定する。また、例えば、第2設定部306cは、被写体切り抜き画像及びマスク画像P1の各被写体領域B内で、左右の手首重なり基準点R1、R2の各々に対応する左右の手首重なり制御点T1、T2、左右の足首重なり基準点R3、R4の各々に対応する左右の足首重なり制御点T3、T4を設定する。
そして、動画再生部306iは、当該被写体領域Bに対して設定された動き制御点Sや重なり制御点T、並びに被写体画像の合成位置やサイズ等の合成内容を所定の格納手段(例えば、所定のメモリ等)に登録する(ステップS57)。
その後、中央制御部301のCPUは、処理をステップS8に移行させる。ステップS8の処理の内容については、後述する。
なお、ステップS52にて、既に動き制御点S及び重なり制御点Tが設定されていると判定されると(ステップS52;YES)、中央制御部301のCPUは、ステップS53〜S57の処理をスキップして、処理をステップS8に移行させる。ステップS8の処理の内容については、後述する。
<背景画像の指定>
ステップS4にて、ユーザ端末2からの指示が、背景画像の指定に関する内容の場合(ステップS4;背景画像の指定)、動画処理部306の動画再生部306iは、ユーザによる操作入力部202の所定操作に基づいて所望の背景画像(他の画像)の画像データを読み出して取得し(ステップS61)、当該背景画像の画像データを動画像の背景として所定の格納手段に登録する(ステップS62)。
具体的には、サーバ3には、ユーザ端末2の表示部203に表示されている動画生成用ページの画面内の複数の画像データの中で、ユーザによる操作入力部202の所定操作に基づいて指定された何れか一の画像データの指定指示が、通信ネットワークN及び通信制御部303を介して入力される。動画再生部306iは、当該指定指示に係る背景画像の画像データを記憶部305から読み出して取得した後、当該背景画像の画像データを動画像の背景として登録する。
次に、中央制御部301のCPUは、背景画像の画像データを通信制御部303により所定の通信ネットワークNを介してユーザ端末2に送信させる(ステップS63)。
その後、中央制御部301のCPUは、処理をステップS8に移行させる。ステップS8の処理の内容については、後述する。
<動き及び曲の指定>
ステップS4にて、ユーザ端末2からの指示が、動き及び曲の指定に関する内容の場合(ステップS4;動き及び曲の指定)、動画処理部306は、ユーザによる操作入力部202の所定操作に基づいて動き情報305aや動きの速さを設定する(ステップS71)。
具体的には、サーバ3には、ユーザ端末2の表示部203に表示されている動画生成用ページの画面内の複数の動きモデルのモデル名の中で、ユーザによる操作入力部202の所定操作に基づいて指定された何れか一のモデル名(例えば、フラダンス等)の指定指示が、通信ネットワークN及び通信制御部303を介して入力される。動画処理部306は、記憶部305に記憶されている複数の動き情報305a、…の中で、当該指定指示に係る動きモデルのモデル名と対応付けられている動き情報305aを設定する。なお、動画処理部306は、複数の動き情報305a、…の中で、例えば、デフォルトとして設定されている動き情報305aやユーザにより前回指定された動き情報305aを自動的に指定するようにしても良い。
また、サーバ3には、ユーザ端末2の表示部203に表示されている動画生成用ページの画面内の複数の動きの速さ(例えば、1/2倍、標準(等倍)、2倍等)の中で、ユーザによる操作入力部202の所定操作に基づいて指定された何れか一の速さ(例えば、標準等)の指定指示が、通信ネットワークN及び通信制御部303を介して入力される。動画処理部306は、当該指定指示に係る速さを被写体画像の動きの速さとして設定する。
その後、動画処理部306の動画再生部306iは、設定された動き情報305aや動きの速さを動画像の動きの内容として所定の格納手段に登録する(ステップS72)。
次に、動画処理部306は、ユーザによる操作入力部202の所定操作に基づいて自動的に演奏される曲を設定する(ステップS73)。
具体的には、サーバ3には、ユーザ端末2の表示部203に表示されている動画生成用ページの画面内の複数の曲名の中で、ユーザによる操作入力部202の所定操作に基づいて指定された何れか一の曲名の指定指示が、通信ネットワークN及び通信制御部303を介して入力される。動画処理部306は、当該指定指示に係る曲名の曲を設定する。
その後、中央制御部301のCPUは、処理をステップS8に移行させる。ステップS8の処理の内容については、後述する。
ステップS8では、中央制御部301のCPUは、動画像の生成が可能な状態であるか否かを判定する(ステップS8)。即ち、ユーザによる操作入力部202の所定操作に基づいて、サーバ3の動画処理部306は、被写体領域Bに対する動き制御点Sや重なり制御点Tの登録、被写体領域Bの画像の動きの内容の登録、背景画像の登録等を行うことで、動画像の生成準備が整って動画像を生成可能か否か判定する。
ここで、動画像の生成が可能な状態でないと判定されると(ステップS8;NO)、中央制御部301のCPUは、処理をステップS4に戻し、ユーザ端末2からの指示の内容に応じて処理を分岐させる(ステップS4)。
一方、動画像の生成が可能な状態であると判定されると(ステップS8;YES)、図4に示すように、中央制御部301のCPUは、処理をステップS10に移行させる。
ステップS10では、サーバ3の中央制御部301のCPUは、ユーザによるユーザ端末2の操作入力部202の所定操作に基づいて動画像のプレビュー指示が入力されたか否かを判定する(ステップS10)。
即ち、ステップS9にて、ユーザ端末2の中央制御部201が、ユーザによる操作入力部202の所定操作に基づいて入力された動画像のプレビュー指示を、通信制御部206により所定の通信ネットワークNを介してサーバ3に送信させる(ステップS9)。
そして、ステップS10にて、サーバ3の中央制御部301のCPUによって、動画像のプレビュー指示が入力されたと判定されると(ステップS10;YES)、動画処理部306の動画再生部306iは、設定済みの曲名に対応する演奏情報305cを動画像とともに自動的に演奏される情報として所定の格納手段に登録する(ステップS11)。
次に、動画処理部306は、格納手段に登録されている演奏情報305cに基づいて動画再生部306iによる所定の曲の演奏を開始させる(ステップS12)。続けて、動画処理部306は、動画再生部306iによる所定の曲の演奏が終了したか否かを判定する(ステップS13)。
ここで、曲の演奏が終了していないと判定されると(ステップS13;NO)、動画処理部306は、基準フレーム画像を生成するフレーム画像生成処理(図7参照)を実行する(ステップS14)。
なお、フレーム画像生成処理については、後述する。
続けて、フレーム生成部306gは、動画再生部306iにより演奏される所定の曲の演奏の進行度合に応じて、隣合う二つの基準フレーム画像どうしの間を補間する補間フレーム画像を生成する(ステップS15)。
また、動画処理部306は、補間フレーム画像と背景画像とを、上記基準フレーム画像の場合と同様に、公知の画像合成手法を用いて合成する(詳細後述)。
次に、中央制御部301のCPUは、動画再生部306iにより自動的に演奏される曲の演奏情報305cとともに、当該曲の所定のタイミングで再生される基準フレーム画像及び補間フレーム画像からなるプレビュー動画のデータを、通信制御部303により所定の通信ネットワークNを介してユーザ端末2に送信させる(ステップS16)。ここで、プレビュー動画のデータは、所定数の基準フレーム画像及び補間フレーム画像からなる複数のフレーム画像とユーザ所望の背景画像とが合成された動画像を構成している。
次に、動画処理部306は、処理をステップS18に戻し、曲の演奏が終了したか否かを判定する(ステップS13)。
上記の処理は、ステップS13にて、曲の演奏が終了したと判定されるまで(ステップS13;YES)、繰り返し実行される。
そして、曲の演奏が終了したと判定されると(ステップS13;YES)、図6に示すように、中央制御部301のCPUは、処理をステップS4に戻し、ユーザ端末2からの指示の内容に応じて処理を分岐させる(ステップS4)。
ステップS16にて、サーバ3から送信されたプレビュー動画のデータがユーザ端末2の通信制御部303によって受信されると、中央制御部201のCPUは、音出力部204及び表示部203を制御してプレビュー動画を再生させる(ステップS17)。
具体的には、音出力部204は、演奏情報305cに基づいて曲を自動的に演奏してスピーカから放音するとともに、表示部203は、当該自動的に演奏される曲の所定のタイミングで基準フレーム画像及び補間フレーム画像からなるプレビュー動画を表示画面に表示する。
なお、上記の動画生成処理にあっては、プレビュー動画を再生するようにしたが、一例であってこれに限られるものではなく、例えば、逐次生成された基準フレーム画像や補間フレーム画像や背景画像の画像データ並びに演奏情報305cを一つのファイルとして所定の記憶手段に記憶していき、動画像に係る全てのデータの生成完了後に、当該ファイルをサーバ3からユーザ端末2に送信して当該ユーザ端末2にて再生させるようにしても良い。
<フレーム画像生成処理>
以下に、動画処理部306によるフレーム画像生成処理について、図7〜図9を参照して詳細に説明する。
図7は、動画生成処理におけるフレーム画像生成処理に係る動作の一例を示すフローチャートである。
図7に示すように、先ず、動画処理部306の領域分割部306dは、例えば、被写体切り抜き画像及びマスク画像P1の画像データに対してドローネの三角形分割を行って、被写体領域B内に所定の間隔で頂点を配置して三角形のメッシュ状の複数の画像領域Ba、…に分割する(ステップS101;図11(b)参照)。
次に、動画処理部306は、マスク画像P1の被写体領域Bを構成する複数の構成領域L、…を特定する構成領域特定処理(図8参照)を行う(ステップS102)。なお、フレーム画像生成処理については、後述する。
その後、動画処理部306は、被写体領域Bの複数の構成領域L、…を奥行き方向に変位させるとともに、動き制御点Sの動きに従って変形させた基準フレーム画像を描画するフレーム描画処理(図9参照)を行う(ステップS103)。なお、フレーム画像生成処理については、後述する。
そして、動画処理部306は、生成された基準フレーム画像と背景画像とを公知の画像合成手法を用いて合成する(ステップS104)。具体的には、動画処理部306は、例えば、背景画像の各画素のうち、アルファ値が「0」の画素は透過させ、アルファ値が「1」の画素は基準フレーム画像の対応する画素の画素値で上書きし、さらに、背景画像の各画素のうち、アルファ値が「0<α<1」の画素は1の補数(1−α)を用いて基準フレーム画像の被写体領域を切り抜いた画像(背景画像×(1−α))を生成した後、アルファマップにおける1の補数(1−α)を用いて基準フレーム画像を生成した際に単一背景色とブレンドした値を計算し、当該値を基準フレーム画像から減算し、それを被写体領域を切り抜いた画像(背景画像×(1−α))と合成する。
これにより、フレーム画像生成処理を終了する。
<構成領域特定処理>
以下に、動画処理部306による構成領域特定処理について、図8を参照して詳細に説明する。
図8は、フレーム画像生成処理における構成領域特定処理に係る動作の一例を示すフローチャートである。
図8に示すように、先ず、動画処理部306の領域特定部306eは、例えば、ダイクストラ法等を利用して、複数の重なり制御点T、…の各々から領域分割部306dにより分割された全ての画像領域Baの各頂点までの距離を算出する(ステップS201)。
次に、領域特定部306eは、複数の重なり制御点T、…を所定の順序に従って配置した後、何れか一の重なり制御点T(例えば、左手首重なり制御点T1等)を指定した後(ステップS202)、指定された重なり制御点Tを基準とする重なり制御領域Mを特定するための領域情報が指定されているか否かを判定する(ステップS203)。ここで、領域情報としては、例えば、「重なり制御点Tからの距離が所定数(例えば、100)の画素以内を重なり制御領域Mとする」等の情報が挙げられる。また、一の重なり制御点Tに最も近い他の重なり制御点Tについて、後述するように、当該重なり制御点Tどうしの距離の半分となる距離以内に存する複数の画像領域Ba、…からなる領域が、当該他の重なり制御点Tの重なり制御領域Mとして特定された場合には、残りの半分の距離以内に存する複数の画像領域Ba、…からなる領域を、一の重なり制御点Tについての重なり制御領域Mとするような情報を、領域情報としても良い。
ステップS203にて、領域情報が指定されていないと判定されると(ステップS203;NO)、領域特定部306eは、他の各重なり制御点Tまでの最短距離を算出する(ステップS204)。具体的には、領域特定部306eは、ステップS201にて算出された全ての画像領域Baの各頂点までの距離を用いて、複数の画像領域Ba、…(例えば、三角形の画像領域Ba)の縁部に沿った経路で他の各重なり制御点Tまでの最短距離を算出する(図12(a)参照)。
そして、領域特定部306eは、算出された他の各重なり制御点Tまでの最短距離の中で、最短距離が最も短い、即ち、最も近い位置に存する他の重なり制御点T(例えば、右手首重なり制御点T2等)を特定した後、当該他の重なり制御点Tまでの距離の半分となる距離以内に存する複数の画像領域Ba、…からなる領域を、当該重なり制御点Tの重なり制御領域Mとして特定する(ステップS205;図12(b)参照)。
一方、ステップS203にて、領域情報が指定されていると判定された場合には(ステップS203;YES)、領域特定部306eは、当該領域情報に基づいて、重なり制御点Tの重なり制御領域Mを特定する(ステップS206)。
その後、動画処理部306の奥行き位置算出部306fは、特定された重なり制御領域M内で、重なり制御点Tの位置を「1」とし、重なり制御点Tから離れる程値が小さくなっていき、最も遠い位置に存する頂点の位置で「0」とするように、複数の画像領域Ba、…の各頂点の位置を「0」〜「1」の範囲の値で正規化して、奥行き正規化情報を算出する(ステップS207)。
続けて、奥行き位置算出部306fは、特定された重なり制御領域M内で、重なり制御点Tから最も近い位置に存する他の重なり制御点Tに向かう方向とは反対側の領域Ma内に存する所定数の画像領域Baの各頂点の奥行き正規化情報を、重なり制御点Tと同様に「1」とする(ステップS208)。
なお、「0」〜「1」の範囲の値で正規化するにあたって、次の様にしてもよい。一の重なり制御点Tから最も近い位置に存する他の重なり制御点Tに向かう方向とは反対側の領域Ma内にて、重なり制御点Tから一番遠い点の奥行き正規化情報を「1」とする。「0」は上述した通りであって、その間を距離に従い「0」〜「1」の範囲の値で正規化しても良い。
次に、動画処理部306は、全ての重なり制御点Tについて重なり制御領域Mを特定したか否かを判定する(ステップS209)。
ここで、全ての重なり制御点Tについて重なり制御領域Mを特定していないと判定されると(ステップS209;NO)、領域特定部306eは、次の処理対象として、複数の重なり制御点T、…の中で、未だ指定されていない重なり制御点T(例えば、右手首重なり制御点T2等)を指定した後(ステップS210)、処理をステップS203に移行する。
その後、動画処理部306は、ステップS203以降の処理を、ステップS209にて全ての重なり制御点Tについて重なり制御領域Mを特定したと判定(ステップS209;YES)されるまで、逐次繰り返し実行する。これにより、複数の重なり制御点T、…の各々について重なり制御領域Mが特定される。
そして、ステップS209にて、全ての重なり制御点Tについて重なり制御領域Mを特定したと判定されると(ステップS209;YES)、領域特定部306eは、マスク画像P1の被写体領域Bの中で非重なり制御領域Nを特定する(ステップS211;図12(b)参照)。具体的には、領域特定部306eは、マスク画像P1の被写体領域Bの中で重なり制御領域Mが特定された結果、残った部分の領域(例えば、主として胴体及び頭に相当する各領域)を非重なり制御領域Nとして特定する。
次に、奥行き位置算出部306fは、非重なり制御領域Nについて、y軸方向に沿って、最も上部(例えば、頭側)に存する頂点の位置が「1」、最も下部(例えば、足側)に存する頂点の位置が「0」とするように、複数の画像領域Ba、…の各頂点の位置を「0」〜「1」の範囲の値で正規化して、奥行き正規化情報を算出する(ステップS212)。
続けて、奥行き位置算出部306fは、特定された非重なり制御領域Nの任意の点を非重なり制御点として、奥行き方向の位置を「0」に設定して(ステップS213)、構成領域特定処理を終了する。
<フレーム描画処理>
以下に、動画処理部306によるフレーム描画処理について、図9を参照して詳細に説明する。
図9は、フレーム画像生成処理におけるフレーム描画処理に係る動作の一例を示すフローチャートである。
図9に示すように、先ず、動画処理部306のフレーム生成部306gは、記憶部305から動き情報305aを読み出して、当該動き情報305aに基づいて処理対象となる基準フレーム画像における複数の動き基準点Q、…の各々に対応する各動き制御点Sの位置(座標情報)を算出する(ステップS301)。続けて、フレーム生成部306gは、算出された座標に各動き制御点Sを逐次移動させていくとともに、被写体切り抜き画像の被写体領域Bを構成する複数の画像領域Ba、…を移動させたり変形させる(ステップS302)。
次に、奥行き位置算出部306fは、記憶部305から重なり位置情報305bを読み出して、複数の重なり制御領域M、…の各々に係る重なり制御点Tに対応する重なり基準点Rの奥行き方向の基準位置を取得する(ステップS303)。
続けて、奥行き位置算出部306fは、複数の重なり制御領域M、…の各々に対応する重なり基準点Rの奥行き方向の基準位置並びに非重なり制御点の奥行き方向の位置「0」に基づいて、当該複数の重なり制御点T、…並びに非重なり制御点を所定の規則に従って並べ替える(ステップS304)。例えば、奥行き位置算出部306fは、左手首重なり制御点T1、右手首重なり制御点T2、非重なり制御点、左足首重なり制御点T3、右足首重なり制御点T4の順に並べ替える。
そして、奥行き位置算出部306fは、所定の格納手段(例えば、メモリ等)に格納されている所定層数のレイヤーに係るレイヤー情報を取得する(ステップS305;図10参照)。
続けて、奥行き位置算出部306fは、複数の重なり制御点T、…に係る重なり制御領域M並びに非重なり制御点に係る非重なり制御領域Nの中で、ソート順に従って何れか一の重なり制御領域M(例えば、最も奥側に位置する重なり制御領域M)を指定する(ステップS306)。例えば、奥行き位置算出部306fは、例えば、左手首重なり制御点T1に係る左腕重なり制御領域M1を指定する。
そして、奥行き位置算出部306fは、指定された重なり制御領域M(例えば、左腕重なり制御領域M1)に対して、ソート順に従って対応するレイヤー(例えば、第1レイヤー等)を割り当てる(ステップS307)。
次に、奥行き位置算出部306fは、処理対象となる重なり制御領域Mに対応する重なり基準点Rの奥行き方向の基準位置が、非重なり制御領域Nに係る非重なり制御点の奥行き方向の位置「0」よりも大きいか否かを判定する(ステップS308)。
ここで、非重なり制御点の奥行き方向の位置「0」よりも小さいと判定されると(ステップS308;NO)、奥行き位置算出部306fは、当該重なり制御領域M(例えば、左腕重なり制御領域M1等)を構成する画像領域Baの各頂点のレイヤー内での奥行き方向の位置「Zpos」を下記式(1)に基づいて算出する(ステップS309)。即ち、奥行き位置算出部306fは、奥行き正規化情報が「1」に近い程奥側に、且つ、「0」に近い程手前側となるように、各頂点のレイヤー内での奥行き方向の位置「Zpos」を算出する。
Zpos=「奥行き正規化情報」*「LayerW」+「LayerMin」 …式(1)
一方、ステップS308にて、非重なり制御点の奥行き方向の位置「0」よりも大きいと判定されると(ステップS308;YES)、奥行き位置算出部306fは、当該重なり制御領域M(例えば、左脚重なり制御領域M3等)を構成する画像領域Baの各頂点のレイヤー内での奥行き方向の位置「Zpos」を下記式(2)に基づいて算出する(ステップS310)。即ち、奥行き位置算出部306fは、奥行き正規化情報が「1」に近い程手前側に、且つ、「0」に近い程奥側となるように、各頂点のレイヤー内での奥行き方向の位置「Zpos」を算出する。
Zpos=(1−「奥行き正規化情報」)*「LayerW」+「LayerMin」 …式(2)
次に、奥行き位置算出部306fは、全ての重なり制御領域Mについて各頂点の奥行き方向の位置「Zpos」を算出する処理を行ったか否かを判定する(ステップS311)。
ここで、全ての重なり制御領域Mについて処理していないと判定されると(ステップS311;NO)、奥行き位置算出部306fは、次の処理対象として、複数の重なり制御領域M、…の中で、未だ指定されていない重なり制御領域M(例えば、右腕重なり制御領域M2等)をソート順に従って指定した後(ステップS312)、処理をステップS307に移行する。
その後、奥行き位置算出部306fは、ステップS307以降の処理を、ステップS311にて全ての重なり制御領域Mについて処理したと判定(ステップS311;YES)されるまで、逐次繰り返し実行する。これにより、複数の重なり制御領域M、…の各々について各頂点の奥行き方向の位置「Zpos」が算出される。
そして、ステップS311にて、全ての重なり制御領域Mについて処理したと判定されると(ステップS311;YES)、奥行き位置算出部306fは、非重なり制御領域Nを構成する画像領域Baの各頂点のレイヤー内での奥行き方向の位置「Zpos」を下記式(1)に基づいて算出する(ステップS313)。即ち、奥行き位置算出部306fは、奥行き正規化情報が「1」に近い程奥側に、且つ、「0」に近い程手前側となるように、各頂点のレイヤー内での奥行き方向の位置「Zpos」を算出する。
Zpos=「奥行き正規化情報」*「LayerW」+「LayerMin」 …式(1)
その後、フレーム生成部306gは、例えば、Open GL等の三次元の描画インターフェース等を利用して、奥行き位置算出部306fにより算出された複数の構成領域L、…(複数の重なり制御領域M、…並びに非重なり制御領域N等)の奥行き方向の位置「Zpos」に基づいて、被写体切り抜き画像の被写体領域における各構成領域Lを奥行き方向に互いに異なる位置で当該奥行き方向に変位させる(ステップS314)。この結果、被写体切り抜き画像の被写体領域における各構成領域Lを奥行き方向に変位させるとともに、被写体領域を変形させた基準フレーム画像が生成される。
これにより、フレーム描画処理を終了する。
以上のように、本実施形態の動画生成システム100によれば、サーバ3は、複数の構成領域L、…の各々の所定の時間間隔毎の奥行き方向の位置を、複数の重なり制御点T、…の各々に対応する重なり基準点Rの二次元空間に対する奥行き方向の基準位置に基づいて算出し、算出された複数の構成領域L、…の各々の所定の時間間隔毎の奥行き方向の位置に基づいて、当該所定の時間間隔毎に被写体領域における各構成領域Lを奥行き方向に互いに異なる位置で当該奥行き方向に変位させるとともに、被写体領域内に設定されている複数の動き制御点S、…の動きに従って当該被写体領域を変形させた基準フレーム画像(変形画像)を生成することができる。即ち、複数の動き制御点S、…の動きに従って二次元の静止画像の被写体領域を変形させた変形画像を生成する場合に、当該静止画像の被写体領域の一部分の領域を他の領域と前後に重ねるような動きであっても、被写体領域を構成する各構成領域Lを奥行き方向に互いに異なる位置で当該奥行き方向に変位させることで、複数の構成領域L、…の各々が奥行き方向に等しい位置に存在することがなく、二次元の静止画像を変形させた変形画像にて奥行きの表現を適正に行うことができる。この結果、ユーザ所望の動きを表現した複数のフレーム画像からなる動画像の生成を適正に行うことができる。
また、複数の重なり制御点T、…の各々について、最も近い位置に存する他の重なり制御点Tとの距離を基準として、被写体領域Bの中で重なり制御領域Mを複数特定し、当該複数の重なり制御領域M、…の各々の所定の時間間隔毎の奥行き方向の位置を、各重なり制御領域Mに係る重なり制御点Tに対応する重なり基準点Rの奥行き方向の基準位置に基づいて算出するので、被写体領域Bの中で、奥行き方向に互いに異なる位置で当該奥行き方向に変位する構成領域Lとしての重なり制御領域Mを複数特定する場合に、一の重なり制御点Tについて、最も近い位置に存する他の重なり制御点Tまでの距離を考慮して、他の重なり制御点Tに対応する重なり制御領域Mの大きさに対してバランスの良い大きさの重なり制御領域Mを特定することができる。これにより、変形画像における一の重なり制御領域M及び他の重なり制御領域Mを前後に重ねるような動きの表現を適正に行うことができる。
さらに、複数の重なり制御領域M、…の各々について、各重なり制御領域Mを分割する複数の画像領域Ba、…の頂点の奥行き方向の位置を、当該各重なり制御領域Mに係る重なり制御点Tからの距離を基準として算出するので、変形画像にて重なり制御領域Mを構成する複数の画像領域Ba、…の奥行きの表現を適正に行うことができる。
なお、上記距離とは、被写体領域Bを分割する複数の画像領域Ba、…の縁部に沿った経路に係る距離であるので、重なり制御点T間の距離や重なり制御点Tから各画像領域Baの頂点までの距離の算出を適正に行うことができる。
また、被写体領域Bの中で複数の重なり制御領域M、…以外の非重なり制御領域Nを構成領域Lとして特定し、当該非重なり制御領域Nを構成する各画素が奥行き方向に互いに異なる位置となるように、当該非重なり制御領域Nの所定の時間間隔毎の奥行き方向の位置を算出するので、変形画像にて非重なり制御領域Nを構成する各画素の奥行きの表現を適正に行うことができるだけでなく、変形画像における非重なり制御領域Nと重なり制御領域Mを前後に重ねるような動きの表現を適正に行うことができる。
特に、非重なり制御領域Nの奥行き方向の位置を基準として、この非重なり制御領域Nに隣接する当該被写体領域Bの相対的に端部側の領域である複数の重なり制御領域M、…の奥行き方向の位置を算出するので、複数の重なり制御領域M、…の奥行き方向の位置の算出を適正に行うことができ、変形画像における一の重なり制御領域Mを、他の重なり制御領域Mや非重なり制御領域Nと前後に重ねるような動きの表現を適正に行うことができる。
また、静止画像の被写体領域B内で、基準画像の動体モデルのモデル領域A内に設定されている複数の動き基準点Q、…に対応する位置に複数の動き制御点S、…を設定するので、複数の動き基準点Q、…の位置を基準として複数の動き制御点S、…の設定を適正に行うことができ、二次元の静止画像の変形、即ち、変形画像の生成を適正に行うことができる。
具体的には、基準画像のモデル領域A内に設定された複数の動き基準点Q、…の所定の時間間隔毎の動きを示す動き情報305aに基づいて、当該動き情報305aに係る複数の動き基準点Q、…の所定の時間間隔毎の動きに基づいて複数の動き制御点S、…を動かし、これら複数の動き制御点S、…の動きに従って被写体領域を変形させて、所定の時間間隔毎の変形画像を適正に生成することができる。
なお、本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において、種々の改良並びに設計の変更を行っても良い。
例えば、上記実施形態にあっては、ユーザによるユーザ端末2の所定操作に基づいて、Webサーバとして機能するサーバ(画像生成装置)3によって動画像を生成するようにしたが、一例であってこれに限られるものではなく、画像生成装置の構成は適宜任意に変更可能である。即ち、変形画像としての基準フレーム画像の生成に係る動画処理部306の機能をソフトウェアにより実現される構成として、ユーザ端末2にインストールすることで通信ネットワークNを必要とすることなく、当該ユーザ端末2単体で動画生成処理を行うようにしても良い。
また、上記実施形態にあっては、重なり制御点T間の距離や重なり制御点Tから各画像領域Baの頂点までの距離を、被写体領域Bを分割した複数の画像領域Ba、…の縁部に沿った経路に係る距離に基づいて算出するようにしたが、重なり制御点T間の距離や重なり制御点Tから各画像領域Baの頂点までの距離の算出方法は一例であってこれに限られるものではなく、適宜任意に変更可能である。
さらに、上記実施形態にあっては、被写体切り抜き画像やマスク画像の被写体領域Bの中で複数の重なり制御領域M以外の領域を非重なり制御領域Nとして特定するようにしたが、非重なり制御領域Nを特定するか否かは適宜任意に変更可能である。即ち、非重なり制御領域Nが被写体領域Bの中心側に設定され、重なり制御領域Mが腕や脚といった比較的動きの大きい領域に設定された場合には、当該非重なり制御領域Nを能動的に動かして重なり制御領域Mと前後に重ね合わせるような動きを想定し難いため、必ずしも非重なり制御領域Nを特定しておく必要はない。
また、上記実施形態の動画生成処理にあっては、静止画像の被写体領域内で、複数の動き制御点S、…を設定した後(第1設定ステップ)、静止画像の被写体領域内で、複数の重なり制御点T、…を設定する(第2設定ステップ)ようにしたが、動き制御点S及び重なり制御点Tの設定の順序は一例であってこれに限られるものではなく、逆にしても良いし、同時に行っても良い。
さらに、上記実施形態の動画生成処理にあっては、被写体画像の合成位置やサイズを調整可能に構成されても良い。即ち、ユーザ端末2の中央制御部201は、ユーザによる操作入力部202の所定操作に基づいて、被写体画像の合成位置やサイズの調整指示が入力されたと判定すると、当該調整指示に対応する信号を通信制御部206により所定の通信ネットワークNを介してサーバ3に送信させる。そして、サーバ3の動画処理部306は、通信制御部を介して入力された調整指示に基づいて、被写体画像の合成位置を所望の合成位置に設定したり、当該被写体画像のサイズを所望のサイズに設定するようにしても良い。
また、上記実施形態にあっては、ユーザ端末2として、パーソナルコンピュータを例示したが、一例であってこれに限られるものではなく適宜任意に変更可能であり、例えば、携帯電話機等を適用しても良い。
なお、被写体切り抜き画像や動画像のデータには、ユーザによる所定の改変を禁止する制御情報を埋め込むようにしても良い。
加えて、上記実施形態にあっては、取得手段、第1設定手段、第2設定手段、算出手段、生成手段としての機能を、中央制御部301の制御下にて、画像取得部306a、第1設定部306b、第2設定部306c、奥行き位置算出部306f、フレーム生成部306gが駆動することにより実現される構成としたが、これに限られるものではなく、中央制御部301のCPUによって所定のプログラム等が実行されることにより実現される構成としても良い。
即ち、プログラムを記憶するプログラムメモリ(図示略)に、取得処理ルーチン、第1設定処理ルーチン、第2設定処理ルーチン、算出処理ルーチン、生成処理ルーチンを含むプログラムを記憶しておく。そして、取得処理ルーチンにより中央制御部301のCPUを、二次元の静止画像を取得する取得手段として機能させるようにしても良い。また、第1設定処理ルーチンにより中央制御部301のCPUを、取得手段により取得された静止画像の被写体が含まれる被写体領域B内で、被写体の動きの制御に係る動き制御点Sを複数設定する第1設定手段として機能させるようにしても良い。また、第2設定処理ルーチンにより中央制御部301のCPUを、取得手段により取得された静止画像の被写体領域B内で、複数の重なり基準点R、…に対応する各位置に被写体領域Bを構成する複数の構成領域L、…の重なりの制御に係る重なり制御点Tを複数設定する第2設定手段として機能させるようにしても良い。また、算出処理ルーチンにより中央制御部301のCPUを、複数の構成領域L、…の各々の所定の時間間隔毎の奥行き方向の位置を、複数の重なり制御点T、…の各々に対応する重なり基準点Rの奥行き方向の基準位置に基づいて算出する算出手段として機能させるようにしても良い。また、生成処理ルーチンにより中央制御部301のCPUを、算出手段により算出された複数の構成領域L、…の各々の所定の時間間隔毎の奥行き方向の位置に基づいて、当該所定の時間間隔毎に被写体領域における各構成領域Lを奥行き方向に互いに異なる位置で当該奥行き方向に変位させるとともに、複数の動き制御点S、…の動きに従って被写体領域を変形させた変形画像を生成する生成手段として機能させるようにしても良い。
さらに、上記の各処理を実行するためのプログラムを格納したコンピュータ読み取り可能な媒体として、ROMやハードディスク等の他、フラッシュメモリ等の不揮発性メモリ、CD−ROM等の可搬型記録媒体を適用することも可能である。また、プログラムのデータを所定の通信回線を介して提供する媒体としては、キャリアウェーブ(搬送波)も適用される。
〔付記〕
本発明のいくつかの実施形態を説明したが、本発明の範囲は、上述の実施の形態に限定するものではなく、特許請求の範囲に記載された発明の範囲とその均等の範囲を含む。
以下に、この出願の願書に最初に添付した特許請求の範囲に記載した発明を付記する。付記に記載した請求項の項番は、この出願の願書に最初に添付した特許請求の範囲の通りである。
<請求項1>
基準画像の動体モデルが含まれるモデル領域を構成する複数の領域毎に設定され、所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置と対応付けられた複数の重なり基準点の前記二次元空間内での位置を示す位置情報を記憶する記憶手段を備える画像生成装置を用いた画像生成方法であって、
二次元の静止画像を取得する取得ステップと、
この取得ステップにより取得された前記静止画像の被写体が含まれる被写体領域内で、前記被写体の動きの制御に係る動き制御点を複数設定する第1設定ステップと、
前記取得ステップにより取得された前記静止画像の前記被写体領域内で、前記複数の重なり基準点に対応する各位置に前記被写体領域を構成する複数の構成領域の重なりの制御に係る重なり制御点を複数設定する第2設定ステップと、
前記複数の構成領域の各々の所定の時間間隔毎の奥行き方向の位置を、前記複数の重なり制御点の各々に対応する前記重なり基準点の前記奥行き方向の基準位置に基づいて算出する算出ステップと、
この算出ステップにより算出された前記複数の構成領域の各々の所定の時間間隔毎の奥行き方向の位置に基づいて、当該所定の時間間隔毎に前記被写体領域における各構成領域を奥行き方向に互いに異なる位置で当該奥行き方向に変位させるとともに、前記複数の動き制御点の動きに従って前記被写体領域を変形させた変形画像を生成する生成ステップと、
を含むことを特徴とする画像生成方法。
<請求項2>
前記複数の重なり制御点の各々について、最も近い位置に存する他の重なり制御点との距離を基準として、前記被写体領域の中で前記構成領域としての重なり制御領域を複数特定する特定ステップを更に含み、
前記算出ステップは、
前記特定ステップにより特定された前記複数の重なり制御領域の各々の所定の時間間隔毎の奥行き方向の位置を、各重なり制御領域に係る重なり制御点に対応する前記重なり基準点の前記奥行き方向の基準位置に基づいて算出することを特徴とする請求項1に記載の画像生成方法。
<請求項3>
前記特定ステップは、更に、
前記被写体領域の中で前記複数の重なり制御領域以外の非重なり制御領域を前記構成領域として特定し、
前記算出ステップは、
前記特定ステップにより特定された前記非重なり制御領域を構成する各画素が奥行き方向に互いに異なる位置となるように、当該非重なり制御領域の所定の時間間隔毎の奥行き方向の位置を算出することを特徴とする請求項2に記載の画像生成方法。
<請求項4>
前記複数の重なり制御領域は、前記非重なり制御領域に隣接する当該被写体領域の端部側の領域であり、
前記算出ステップは、
前記非重なり制御領域の奥行き方向の位置を基準として、前記複数の重なり制御領域の奥行き方向の位置を算出することを特徴とする請求項3に記載の画像生成方法。
<請求項5>
前記算出ステップは、更に、
前記複数の重なり制御領域の各々について、各重なり制御領域を分割する複数の画像領域の頂点の奥行き方向の位置を、当該各重なり制御領域に係る重なり制御点からの距離を基準として算出することを特徴とする請求項2〜4の何れか一項に記載の画像生成方法。
<請求項6>
前記距離は、前記被写体領域を分割する複数の画像領域の縁部に沿った経路に係る距離であることを特徴とする請求項2〜5の何れか一項に記載の画像生成方法。
<請求項7>
前記第1設定ステップは、
前記静止画像の前記被写体領域内で、前記基準画像の前記モデル領域内に設定されている複数の動き基準点に対応する位置に前記複数の動き制御点を設定することを特徴とする請求項1〜6の何れか一項に記載の画像生成方法。
<請求項8>
前記記憶手段は、更に、
前記基準画像の前記モデル領域内に設定された複数の動き基準点の所定の時間間隔毎の動きを示す動き情報を記憶し、
前記生成ステップは、更に、
前記記憶手段に記憶されている前記動き情報に係る前記複数の動き基準点の所定の時間間隔毎の動きに基づいて前記複数の動き制御点を動かし、当該複数の動き制御点の動きに従って前記被写体領域を変形させて前記変形画像を生成することを特徴とする請求項7に記載の画像生成方法。
<請求項9>
基準画像の動体モデルが含まれるモデル領域を構成する複数の領域毎に設定され、所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置と対応付けられた複数の重なり基準点の前記二次元空間内での位置を示す位置情報を記憶する記憶手段を備える画像生成装置であって、
二次元の静止画像を取得する取得手段と、
この取得手段により取得された前記静止画像の被写体が含まれる被写体領域内で、前記被写体の動きの制御に係る動き制御点を複数設定する第1設定手段と、
前記取得手段により取得された前記静止画像の前記被写体領域内で、前記複数の重なり基準点に対応する各位置に前記被写体領域を構成する複数の構成領域の重なりの制御に係る重なり制御点を複数設定する第2設定手段と、
前記複数の構成領域の各々の所定の時間間隔毎の奥行き方向の位置を、前記複数の重なり制御点の各々に対応する前記重なり基準点の前記奥行き方向の基準位置に基づいて算出する算出手段と、
この算出手段により算出された前記複数の構成領域の各々の所定の時間間隔毎の奥行き方向の位置に基づいて、当該所定の時間間隔毎に前記被写体領域における各構成領域を奥行き方向に互いに異なる位置で当該奥行き方向に変位させるとともに、前記複数の動き制御点の動きに従って前記被写体領域を変形させた変形画像を生成する生成手段と、
を備えたことを特徴とする画像生成装置。
<請求項10>
基準画像の動体モデルが含まれるモデル領域を構成する複数の領域毎に設定され、所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置と対応付けられた複数の重なり基準点の前記二次元空間内での位置を示す位置情報を記憶する記憶手段を備える画像生成装置のコンピュータを、
二次元の静止画像を取得する取得手段、
この取得手段により取得された前記静止画像の被写体が含まれる被写体領域内で、前記被写体の動きの制御に係る動き制御点を複数設定する第1設定手段、
前記取得手段により取得された前記静止画像の前記被写体領域内で、前記複数の重なり基準点に対応する各位置に前記被写体領域を構成する複数の構成領域の重なりの制御に係る重なり制御点を複数設定する第2設定手段、
前記複数の構成領域の各々の所定の時間間隔毎の奥行き方向の位置を、前記複数の重なり制御点の各々に対応する前記重なり基準点の前記奥行き方向の基準位置に基づいて算出する算出手段、
この算出手段により算出された前記複数の構成領域の各々の所定の時間間隔毎の奥行き方向の位置に基づいて、当該所定の時間間隔毎に前記被写体領域における各構成領域を奥行き方向に互いに異なる位置で当該奥行き方向に変位させるとともに、前記複数の動き制御点の動きに従って前記被写体領域を変形させた変形画像を生成する生成手段、
として機能させることを特徴とするプログラム。
100 動画生成システム
1 撮像装置
2 ユーザ端末
3 サーバ
301 中央制御部
305 記憶部
306 動画処理部
306a 画像取得部
306b 第1設定部
306c 第2設定部
306e 領域特定部
306f 奥行き位置算出部
306g フレーム生成部

Claims (9)

  1. 基準画像の動体モデルが含まれるモデル領域を構成する複数の領域毎に設定され、且つ所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置と対応付けられた、複数の重なり基準点の前記二次元空間内での位置を示す位置情報を記憶する記憶手段を備える画像生成装置を用いた画像生成方法であって、当該画像生成装置のコンピュータが、
    二次元の静止画像を取得する取得ステップと、
    この取得ステップにより取得された前記静止画像の被写体が含まれる被写体領域内で、前記被写体の動きの制御に係る動き制御点を複数設定する第1設定ステップと、
    前記取得ステップにより取得された前記静止画像の前記被写体領域内で、前記複数の重なり基準点に対応する各位置に前記被写体領域を構成する複数の構成領域の重なりの制御に係る重なり制御点を複数設定する第2設定ステップと、
    前記複数の重なり制御点の各々について、最も近い位置に存する他の重なり制御点との距離を基準として、前記被写体領域の中で前記構成領域としての重なり制御領域を複数特定する特定ステップと、
    この特定ステップにより特定された前記複数の重なり制御領域の各々の所定の時間間隔毎の奥行き方向の位置を、各重なり制御領域に係る重なり制御点に対応する前記重なり基準点の前記奥行き方向の基準位置に基づいて算出する算出ステップと、
    前記複数の動き制御点の動きに従って前記被写体領域を変形させた変形画像を生成する生成ステップと、を実行し、
    前記生成ステップは、
    前記算出ステップにより算出された所定の時間間隔毎の奥行き方向の位置に基づいて、当該所定の時間間隔毎に前記被写体領域における各構成領域を奥行き方向に互いに異なる位置で当該奥行き方向に変位させることを特徴とする画像生成方法。
  2. 前記特定ステップは、更に、
    前記被写体領域の中で前記複数の重なり制御領域以外の非重なり制御領域を前記構成領域として特定し、
    前記算出ステップは、
    前記特定ステップにより特定された前記非重なり制御領域を構成する各画素が奥行き方向に互いに異なる位置となるように、当該非重なり制御領域の所定の時間間隔毎の奥行き方向の位置を算出することを特徴とする請求項に記載の画像生成方法。
  3. 前記複数の重なり制御領域は、前記非重なり制御領域に隣接する当該被写体領域の端部側の領域であり、
    前記算出ステップは、
    前記非重なり制御領域の奥行き方向の位置を基準として、前記複数の重なり制御領域の奥行き方向の位置を算出することを特徴とする請求項に記載の画像生成方法。
  4. 前記算出ステップは、更に、
    前記複数の重なり制御領域の各々について、各重なり制御領域を分割する複数の画像領域の頂点の奥行き方向の位置を、当該各重なり制御領域に係る重なり制御点からの距離を基準として算出することを特徴とする請求項の何れか一項に記載の画像生成方法。
  5. 前記距離は、前記被写体領域を分割する複数の画像領域の縁部に沿った経路に係る距離であることを特徴とする請求項の何れか一項に記載の画像生成方法。
  6. 前記第1設定ステップは、
    前記静止画像の前記被写体領域内で、前記基準画像の前記モデル領域内に設定されている複数の動き基準点に対応する位置に前記複数の動き制御点を設定することを特徴とする請求項1〜の何れか一項に記載の画像生成方法。
  7. 前記記憶手段は、更に、
    前記基準画像の前記モデル領域内に設定された複数の動き基準点の所定の時間間隔毎の動きを示す動き情報を記憶し、
    前記生成ステップは、更に、
    前記記憶手段に記憶されている前記動き情報に係る前記複数の動き基準点の所定の時間間隔毎の動きに基づいて前記複数の動き制御点を動かし、当該複数の動き制御点の動きに従って前記被写体領域を変形させて前記変形画像を生成することを特徴とする請求項に記載の画像生成方法。
  8. 基準画像の動体モデルが含まれるモデル領域を構成する複数の領域毎に設定され、且つ所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置と対応付けられた、複数の重なり基準点の前記二次元空間内での位置を示す位置情報を記憶する記憶部を備える画像生成装置であって、
    二次元の静止画像を取得する取得部と、
    この取得部により取得された前記静止画像の被写体が含まれる被写体領域内で、前記被写体の動きの制御に係る動き制御点を複数設定する第1設定部と、
    前記取得部により取得された前記静止画像の前記被写体領域内で、前記複数の重なり基準点に対応する各位置に前記被写体領域を構成する複数の構成領域の重なりの制御に係る重なり制御点を複数設定する第2設定部と、
    前記複数の重なり制御点の各々について、最も近い位置に存する他の重なり制御点との距離を基準として、前記被写体領域の中で前記構成領域としての重なり制御領域を複数特定する特定部と、
    この特定部により特定された前記複数の重なり制御領域の各々の所定の時間間隔毎の奥行き方向の位置を、各重なり制御領域に係る重なり制御点に対応する前記重なり基準点の前記奥行き方向の基準位置に基づいて算出する算出部と、
    前記複数の動き制御点の動きに従って前記被写体領域を変形させた変形画像を生成する生成部と、
    を備え、
    前記生成部は、前記算出部により算出された所定の時間間隔毎の奥行き方向の位置に基づいて、当該所定の時間間隔毎に前記被写体領域における各構成領域を奥行き方向に互いに異なる位置で当該奥行き方向に変位させる処理を備えることを特徴とする画像生成装置。
  9. 基準画像の動体モデルが含まれるモデル領域を構成する複数の領域毎に設定され、且つ所定の時間間隔毎の二次元空間に対する奥行き方向の基準位置と対応付けられた、複数の重なり基準点の前記二次元空間内での位置を示す位置情報を記憶する記憶部を備える画像生成装置のコンピュータを、
    二次元の静止画像を取得する取得機能、
    この取得機能により取得された前記静止画像の被写体が含まれる被写体領域内で、前記被写体の動きの制御に係る動き制御点を複数設定する第1設定機能、
    前記取得機能により取得された前記静止画像の前記被写体領域内で、前記複数の重なり基準点に対応する各位置に前記被写体領域を構成する複数の構成領域の重なりの制御に係る重なり制御点を複数設定する第2設定機能、
    前記複数の重なり制御点の各々について、最も近い位置に存する他の重なり制御点との距離を基準として、前記被写体領域の中で前記構成領域としての重なり制御領域を複数特定する特定機能、
    この特定機能により特定された前記複数の重なり制御領域の各々の所定の時間間隔毎の奥行き方向の位置を、各重なり制御領域に係る重なり制御点に対応する前記重なり基準点の前記奥行き方向の基準位置に基づいて算出する算出機能、
    前記複数の動き制御点の動きに従って前記被写体領域を変形させた変形画像を生成する生成機能、
    として機能させるプログラムであって、
    前記生成機能は、前記算出機能により算出された所定の時間間隔毎の奥行き方向の位置に基づいて、当該所定の時間間隔毎に前記被写体領域における各構成領域を奥行き方向に互いに異なる位置で当該奥行き方向に変位させる機能を含むことを特徴とするプログラム。
JP2011183546A 2011-08-25 2011-08-25 画像生成方法、画像生成装置及びプログラム Expired - Fee Related JP5375897B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2011183546A JP5375897B2 (ja) 2011-08-25 2011-08-25 画像生成方法、画像生成装置及びプログラム
US13/588,464 US20130050527A1 (en) 2011-08-25 2012-08-17 Image creation method, image creation apparatus and recording medium
CN201210305461.0A CN103198442B (zh) 2011-08-25 2012-08-24 图像生成方法、图像生成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011183546A JP5375897B2 (ja) 2011-08-25 2011-08-25 画像生成方法、画像生成装置及びプログラム

Publications (3)

Publication Number Publication Date
JP2013045334A JP2013045334A (ja) 2013-03-04
JP2013045334A5 JP2013045334A5 (ja) 2013-04-11
JP5375897B2 true JP5375897B2 (ja) 2013-12-25

Family

ID=47743200

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011183546A Expired - Fee Related JP5375897B2 (ja) 2011-08-25 2011-08-25 画像生成方法、画像生成装置及びプログラム

Country Status (3)

Country Link
US (1) US20130050527A1 (ja)
JP (1) JP5375897B2 (ja)
CN (1) CN103198442B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6494249B2 (ja) * 2014-11-12 2019-04-03 キヤノン株式会社 画像形成装置、画像形成方法、プログラム
TWI546772B (zh) * 2015-11-18 2016-08-21 粉迷科技股份有限公司 影像疊層處理方法與系統
CN108431623B (zh) * 2015-12-31 2022-04-29 皇家飞利浦有限公司 具有紧密包装的绕组的磁场梯度线圈及其制造方法
CN107169943A (zh) * 2017-04-18 2017-09-15 腾讯科技(上海)有限公司 图像直方图信息统计方法及系统、电子设备
CN109801351B (zh) * 2017-11-15 2023-04-14 阿里巴巴集团控股有限公司 动态图像生成方法和处理设备
CN113190013B (zh) * 2018-08-31 2023-06-27 创新先进技术有限公司 控制终端运动的方法和装置
CN114845137B (zh) * 2022-03-21 2023-03-10 南京大学 一种基于图像配准的视频光路重建方法及其装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3472065B2 (ja) * 1997-03-17 2003-12-02 株式会社東芝 アニメーション生成装置およびアニメーション生成方法
US6638221B2 (en) * 2001-09-21 2003-10-28 Kabushiki Kaisha Toshiba Ultrasound diagnostic apparatus, and image processing method
JP4140402B2 (ja) * 2003-03-03 2008-08-27 松下電工株式会社 画像処理装置
CN100533132C (zh) * 2004-09-06 2009-08-26 欧姆龙株式会社 基板检查方法及基板检查装置
JP4613313B2 (ja) * 2005-04-01 2011-01-19 国立大学法人 東京大学 画像処理システムおよび画像処理プログラム
JP5319157B2 (ja) * 2007-09-04 2013-10-16 株式会社東芝 超音波診断装置、超音波画像処理装置、及び超音波画像処理プログラム
JP2009239688A (ja) * 2008-03-27 2009-10-15 Nec Access Technica Ltd 画像合成装置
US8384714B2 (en) * 2008-05-13 2013-02-26 The Board Of Trustees Of The Leland Stanford Junior University Systems, methods and devices for motion capture using video imaging
US8267781B2 (en) * 2009-01-30 2012-09-18 Microsoft Corporation Visual target tracking
US8605942B2 (en) * 2009-02-26 2013-12-10 Nikon Corporation Subject tracking apparatus, imaging apparatus and subject tracking method
US8509482B2 (en) * 2009-12-21 2013-08-13 Canon Kabushiki Kaisha Subject tracking apparatus, subject region extraction apparatus, and control methods therefor
US9053553B2 (en) * 2010-02-26 2015-06-09 Adobe Systems Incorporated Methods and apparatus for manipulating images and objects within images
ES2651317T3 (es) * 2011-03-01 2018-01-25 Dolphin Imaging Systems, Llc Sistema y método para generar cambio de perfil utilizando datos de monitorización cefalométricos

Also Published As

Publication number Publication date
JP2013045334A (ja) 2013-03-04
CN103198442B (zh) 2016-08-10
CN103198442A (zh) 2013-07-10
US20130050527A1 (en) 2013-02-28

Similar Documents

Publication Publication Date Title
JP5434965B2 (ja) 動画生成方法、動画生成装置及びプログラム
JP5375897B2 (ja) 画像生成方法、画像生成装置及びプログラム
JP5454604B2 (ja) 動画再生方法、動画再生装置及びプログラム
JP3601350B2 (ja) 演奏画像情報作成装置および再生装置
JP6942300B2 (ja) コンピュータグラフィックスのプログラム、表示装置、送信装置、受信装置、動画生成装置、データ変換装置、データ生成装置、情報処理方法及び情報処理システム
US6738059B1 (en) Apparatus and methods for image processing using mixed display objects
JP5408205B2 (ja) 制御点設定方法、制御点設定装置及びプログラム
EP1031945A2 (en) Animation creation apparatus and method
KR102548644B1 (ko) 신호 처리 장치 및 방법, 그리고 프로그램
JP2017005371A (ja) 共演映像演出装置および共演映像演出システム
JP5408206B2 (ja) 画像生成方法、画像生成装置及びプログラム
JP2006196017A (ja) アニメーション作成装置および方法、記憶媒体
JP5776442B2 (ja) 画像生成方法、画像生成装置及びプログラム
JP5906897B2 (ja) 動き情報生成方法、動き情報生成装置及びプログラム
JP2006217183A (ja) マルチメディアデータを生成するためのデータ処理装置およびプログラム
JP5919926B2 (ja) 画像生成方法、画像生成装置及びプログラム
JP5874426B2 (ja) 制御点設定方法、制御点設定装置及びプログラム
JP3523784B2 (ja) 対話型画像操作表示装置および方法並びにプログラム格納媒体
JP5891883B2 (ja) 画像生成方法、画像生成装置及びプログラム
JP2003331310A (ja) 映像音声連動出力装置および方法
JP2005267564A (ja) 映像合成装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130201

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130201

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130618

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130708

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130827

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130909

R150 Certificate of patent or registration of utility model

Ref document number: 5375897

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees