(57)【特許請求の範囲】
【請求項１】
複数の静止画が移り変わる動画を生成する動画生成装置であって、
複数の静止画を、どのように移り変わらせるかを示すトランジションデータを取得するトランジションデータ取得部と、
前記トランジションデータ取得部が取得したトランジションデータに基づいて、静止画から複数の動画構成画像を生成して、生成した複数の動画構成画像を含む動画を生成する動画生成部と
を備え、
前記動画生成部は、
前記トランジションデータ取得部が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域のそれぞれと同一の画像内容の部分領域が、静止画又は他の動画構成画像に存在するか否かを特定する同一部分領域特定部と、
前記トランジションデータ取得部が取得したトランジションデータに基づいて、前記同一部分領域特定部が同一の画像内容の部分領域が存在すると判断した部分領域と、当該部分領域と同一の画像内容である、静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルを算出する動きベクトル算出部と、
前記トランジションデータ取得部が取得したトランジションデータに基づいて、前記同一部分領域特定部が同一の画像内容の部分画像が存在しないと判断した部分領域の画像内容を、静止画又は他の動画構成画像に含まれる複数の部分領域の一部を組み合わせて生成する部分領域画像生成部と、
前記動きベクトル算出部が算出した動きベクトルで表現される部分領域、及び前記部分領域画像生成部が生成した部分領域を含む動画構成画像を生成する動画構成画像生成部とを有し、
前記トランジションデータ取得部は、静止画の少なくとも一部の移動領域の移動を示すトランジションデータを取得し、
前記同一部分領域特定部は、
前記トランジションデータ取得部が取得した移動領域の移動を示すトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域が移動領域の境界線に交差するか否かを特定する境界部分領域特定部
を含み、
前記部分領域画像生成部は、前記トランジションデータ取得部が取得した移動領域の移動を示すトランジションデータに基づいて、前記境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容を、静止画又は他の動画構成画像に含まれる複数の部分領域の一部と移動領域の画像とを組み合わせて生成する
動画生成装置。
【請求項２】
前記部分領域画像生成部は、前記トランジションデータ取得部が取得した移動領域の移動を示すトランジションデータに基づいて、動画構成画像における移動領域の位置を特定し、特定した移動領域の位置に基づいて、前記境界部分領域特定部が境界線に交差すると判断した部分領域に含まれるべき移動領域の画像と、当該部分領域の範囲内における静止画又は他の動画構成画像のうちの移動領域が含まれない領域の画像とを合成することによって、前記境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容を生成する
請求項１に記載の動画生成装置。
【請求項３】
前記トランジションデータ取得部は、静止画又は他の動画構成画像を背景として移動するオブジェクトの移動を示すトランジションデータを取得し、
前記境界部分領域特定部は、前記トランジションデータ取得部が取得したオブジェクトの移動を示すトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域が、オブジェクトと背景との境界線に交差するか否かを特定し、
前記部分領域画像生成部は、前記境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容を、前記トランジションデータ取得部が取得したオブジェクトの移動を示すトランジションデータに基づいて、オブジェクトと、静止画又は他の動画構成画像に含まれる複数の部分領域の一部とを組み合わせて生成する
請求項１に記載の動画生成装置。
【請求項４】
前記動画生成部は、
前記トランジションデータ取得部が取得したオブジェクトの移動を示すトランジションデータに基づいて、動画構成画像におけるオブジェクトの位置を特定するオブジェクト位置特定部
をさらに有し、
前記境界部分領域特定部は、前記オブジェクト位置特定部が特定した動画構成画像におけるオブジェクトの位置に基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域が、オブジェクトと背景の静止画又は他の動画構成画像との境界線に交差するか否かを特定し、
前記部分領域画像生成部は、前記オブジェクト位置特定部が特定した動画構成画像におけるオブジェクトの位置及び前記境界部分領域特定部が境界線に交差すると判断した部分領域の位置との相対的な位置から特定される、オブジェクトのうちの当該部分領域に含まれる画像と、当該部分領域の範囲内の背景画像のうちオブジェクトが含まれない領域の背景画像とを合成することによって、前記境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容を生成する
請求項３に記載の動画生成装置。
【請求項５】
前記トランジションデータ取得部は、静止画又は動画構成画像を背景として移動するオブジェクトの移動量及び移動方向の時間的変化を示すトランジションデータを取得し、
前記オブジェクト位置特定部は、前記トランジションデータ取得部が取得したオブジェクトの移動量及び移動方向の時間的変化を時間的に積分することによって、動画構成画像におけるオブジェクトの位置を特定する
請求項４に記載の動画生成装置。
【請求項６】
前記オブジェクト位置特定部は、複数の動画構成画像のそれぞれにおけるオブジェクトの位置を特定し、
前記動画生成部は、
前記オブジェクト位置特定部が特定した複数の動画構成画像のそれぞれにおけるオブジェクトの位置に基づいて、前記境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容と類似する部分領域を持つ他の動画構成画像を特定する類似部分領域特定部
をさらに有し、
前記部分領域画像生成部は、一の動画構成画像における部分領域の位置と前記類似部分領域特定部が特定した部分領域の位置との間の位置の差を示す動きベクトル、及び前記類似部分領域特定部が特定した部分領域と当該一の動画構成画像における部分領域との差分画像によって、前記境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容を表現する
請求項４に記載の動画生成装置。
【請求項７】
前記類似部分領域特定部は、
前記オブジェクト位置特定部が特定した動画構成画像におけるオブジェクトの位置に基づいて、前記境界部分領域特定部が境界線に交差すると判断した部分領域に含まれるオブジェクトの面積及び背景の面積をそれぞれ算出する面積算出部と、
前記面積算出部が算出したオブジェクトの面積が前記面積算出部が算出した背景の面積より大きい場合に、前記オブジェクト位置特定部が特定した複数の動画構成画像のそれぞれにおけるオブジェクトの位置に基づいて、オブジェクトの画像を含む他の動画構成画像の中から前記境界部分領域特定部が境界線に交差すると判断した部分領域と類似する部分領域を選択し、前記面積算出部が算出したオブジェクトの面積が前記面積算出部が算出した背景の面積以下である場合に、前記オブジェクト位置特定部が特定した複数の動画構成画像のそれぞれにおけるオブジェクトの位置に基づいて、オブジェクトの画像を含む他の動画構成画像の中から、前記境界部分領域特定部が境界線に交差すると判断した部分領域の背景である画像を含む部分領域を選択する類似部分領域選択部と
を含み、
前記部分領域画像生成部は、一の動画構成画像における部分領域の位置と前記類似部分領域選択部が選択した部分領域の位置との間の位置の差を示す動きベクトル、及び前記類似部分領域選択部が選択した部分領域と当該一の動画構成画像における部分領域との差分画像によって、前記境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容を表現する
請求項６に記載の動画生成装置。
【請求項８】
複数の静止画が移り変わる動画を生成する動画生成装置であって、
複数の静止画を、どのように移り変わらせるかを示すトランジションデータを取得するトランジションデータ取得部と、
複数の静止画が移り変わるＭＰＥＧ符号化された動画を生成する動画生成部であって、前記トランジションデータ取得部が取得したトランジションデータに基づいて、静止画から複数の動画構成画像を生成して、生成した複数の動画構成画像を含む、ＭＰＥＧ符号化された動画を生成する動画生成部と
を備え、
前記動画生成部は、
前記トランジションデータ取得部が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数のマクロブロックのそれぞれと同一の画像内容の部分領域が、静止画又は他の動画構成画像に存在するか否かを特定する同一部分領域特定部と、
前記トランジションデータ取得部が取得したトランジションデータに基づいて、前記同一部分領域特定部が同一の画像内容の部分領域が存在すると判断したマクロブロックと、当該マクロブロックと同一の画像内容である、静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルを算出する動きベクトル算出部と、
前記トランジションデータ取得部が取得したトランジションデータに基づいて、前記同一部分領域特定部が同一の画像内容の部分画像が存在しないと判断したマクロブロックの画像内容を、静止画又は他の動画構成画像に含まれる複数の部分領域の一部を組み合わせて生成する部分領域画像生成部と、
前記動きベクトル算出部が算出した動きベクトルで表現されるマクロブロック、及び前記部分領域画像生成部が生成したマクロブロックを含む動画構成画像を生成する動画構成画像生成部と
を有する動画生成装置。
【請求項９】
前記動画構成画像生成部は、
前記トランジションデータ取得部が取得したトランジションデータに基づいて、静止画から動画構成画像をＩピクチャとして生成するＩピクチャ生成部と、
前記トランジションデータ取得部が取得したトランジションデータ及び前記Ｉピクチャ生成部が生成したＩピクチャとに基づいて、動画構成画像をＰピクチャとして生成するＰピクチャ生成部と
を含み、
前記同一部分領域特定部は、前記トランジションデータ取得部が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数のマクロブロックのそれぞれと同一の画像内容の部分領域が、前記Ｉピクチャ生成部が生成したＩピクチャに存在するか否かを特定し、
前記動きベクトル算出部は、前記トランジションデータ取得部が取得したトランジションデータに基づいて、前記同一部分領域特定部が同一の画像内容の部分領域が存在すると判断したマクロブロックと、当該マクロブロックと同一の画像内容である、前記Ｉピクチャ生成部が生成したＩピクチャに含まれる部分領域との間の位置の差を示す動きベクトルを算出し、
前記Ｐピクチャ生成部は、前記動きベクトル算出部が算出した動きベクトルで表現されるマクロブロック及び前記部分領域画像生成部が生成したマクロブロックを含む動画構成画像をＰピクチャとして生成する
請求項８に記載の動画生成装置。
【請求項１０】
前記動画構成画像生成部は、
前記トランジションデータ取得部が取得したトランジションデータ並びに前記Ｉピクチャ生成部が生成したＩピクチャ又は前記Ｐピクチャ生成部が生成したＰピクチャとに基づいて、動画構成画像をＢピクチャとして生成するＢピクチャ生成部
をさらに含み、
前記同一部分領域特定部は、前記トランジションデータ取得部が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数のマクロブロックのそれぞれと同一の画像内容の部分領域が、前記Ｉピクチャ生成部が生成したＩピクチャ又は前記Ｐピクチャ生成部が生成したＰピクチャに存在するか否かを特定し、
前記動きベクトル算出部は、前記トランジションデータ取得部が取得したトランジションデータに基づいて、前記同一部分領域特定部が同一の画像内容の部分領域が存在すると判断したマクロブロックと、当該マクロブロックと同一の画像内容である、前記Ｉピクチャ生成部が生成したＩピクチャ又は前記Ｐピクチャ生成部が生成したＰピクチャに含まれる部分領域との間の位置の差を示す動きベクトルを算出し、
前記Ｂピクチャ生成部は、前記動きベクトル算出部が算出した動きベクトルで表現されるマクロブロック及び前記部分領域画像生成部が生成したマクロブロックを含む動画構成画像をＢピクチャとして生成する
請求項９に記載の動画生成装置。
【請求項１１】
複数の静止画が移り変わる動画を生成する動画生成装置用のプログラムであって、
コンピュータを、請求項１から１０のいずれか一項に記載の動画生成装置として機能させるためのプログラム。
【請求項１２】
複数の静止画が移り変わる動画を生成する動画生成方法であって、
複数の静止画を、どのように移り変わらせるかを示すトランジションデータを取得するトランジションデータ取得段階と、
前記トランジションデータ取得段階において取得されたトランジションデータに基づいて、静止画から複数の動画構成画像を生成して、生成した複数の動画構成画像を含む動画を生成する動画生成段階と
を備え、
前記動画生成段階は、
前記トランジションデータ取得段階において取得されたトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域のそれぞれと同一の画像内容の部分領域が、静止画又は他の動画構成画像に存在するか否かを特定する同一部分領域特定段階と、
前記トランジションデータ取得段階において取得されたトランジションデータに基づいて、前記同一部分領域特定段階において同一の画像内容の部分領域が存在すると判断された部分領域と、当該部分領域と同一の画像内容である、静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルを算出する動きベクトル算出段階と、
前記トランジションデータ取得段階において取得されたトランジションデータに基づいて、前記同一部分領域特定段階において同一の画像内容の部分画像が存在しないと判断された部分領域の画像内容を、静止画又は他の動画構成画像に含まれる複数の部分領域の一部を組み合わせて生成する部分領域画像生成段階と、
前記動きベクトル算出段階において算出された動きベクトルで表現される部分領域、及び前記部分領域画像生成段階において生成された部分領域を含む動画構成画像を生成する動画構成画像生成段階とを有し、
前記トランジションデータ取得段階は、静止画の少なくとも一部の移動領域の移動を示すトランジションデータを取得し、
前記同一部分領域特定段階は、
前記トランジションデータ取得段階において取得された移動領域の移動を示すトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域が移動領域の境界線に交差するか否かを特定する境界部分領域特定段階
を含み、
前記部分領域画像生成段階は、前記トランジションデータ取得段階において取得された移動領域の移動を示すトランジションデータに基づいて、前記境界部分領域特定段階において境界線に交差すると判断された部分領域の画像内容を、静止画又は他の動画構成画像に含まれる複数の部分領域の一部と移動領域の画像とを組み合わせて生成する
動画生成方法。
【請求項１３】
複数の静止画が移り変わる動画を生成する動画生成方法であって、
複数の静止画を、どのように移り変わらせるかを示すトランジションデータを取得するトランジションデータ取得段階と、
複数の静止画が移り変わるＭＰＥＧ符号化された動画を生成する動画生成段階であって、前記トランジションデータ取得段階において取得されたトランジションデータに基づいて、静止画から複数の動画構成画像を生成して、生成した複数の動画構成画像を含む、ＭＰＥＧ符号化された動画を生成する動画生成段階と
を備え、
前記動画生成段階は、
前記トランジションデータ取得段階において取得されたトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数のマクロブロックのそれぞれと同一の画像内容の部分領域が、静止画又は他の動画構成画像に存在するか否かを特定する同一部分領域特定段階と、
前記トランジションデータ取得段階において取得されたトランジションデータに基づいて、前記同一部分領域特定段階において同一の画像内容の部分領域が存在すると判断されたマクロブロックと、当該マクロブロックと同一の画像内容である、静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルを算出する動きベクトル算出段階と、
前記トランジションデータ取得段階において取得されたトランジションデータに基づいて、前記同一部分領域特定段階において同一の画像内容の部分画像が存在しないと判断されたマクロブロックの画像内容を、静止画又は他の動画構成画像に含まれる複数の部分領域の一部を組み合わせて生成する部分領域画像生成段階と、
前記動きベクトル算出段階において算出された動きベクトルで表現されるマクロブロック、及び前記部分領域画像生成段階において生成されたマクロブロックを含む動画構成画像を生成する動画構成画像生成段階と
を有する動画生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画生成装置、動画生成方法、及びプログラムに関する。特に本発明は、静止画から動画を生成する動画生成装置及び動画生成方法、並びに、動画生成装置用のプログラムに関する。
【背景技術】
【０００２】
顧客から提供された複数の静止画像データから動画データを生成して記録するシステムにおいて、静止画像データに静止画の切り替わりを示す差分データを付加することによって、静止画が切り替わってゆく動画データを生成するシステムが知られている（例えば、特許文献１参照。）。この技術によって、ユーザはＤＶＤプレーヤーのような家庭用動画再生機器でも、パソコン等のコンピュータ端末でも、簡単に写真画像を閲覧することができる。
【特許文献１】特開２００３−２５９３０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、特許文献１には、画像の切り替わりを示す動画を効率的に生成する具体的な技術について開示されていない。例えば、特許文献１には、静止画上のオブジェクトの移動、拡大・縮小、回転、色調の変化、静止画のフェードイン・フェードアウト、静止画に対するモザイク表示等、静止画の移り変わりを示す動画データを効率的に生成する具体的な技術については開示されていない。
【０００４】
そこで本発明は、上記の課題を解決することができる動画生成装置、動画生成方法、及びプログラムを提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【課題を解決するための手段】
【０００５】
本発明の第１の形態によると、複数の静止画が移り変わる動画を生成する動画生成装置であって、複数の静止画を、どのように移り変わらせるかを示すトランジションデータを取得するトランジションデータ取得部と、トランジションデータ取得部が取得したトランジションデータに基づいて、静止画から複数の動画構成画像を生成して、生成した複数の動画構成画像を含む動画を生成する動画生成部とを備え、動画生成部は、トランジションデータ取得部が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域のそれぞれと同一の画像内容の部分領域が、静止画又は他の動画構成画像に存在するか否かを特定する同一部分領域特定部と、トランジションデータ取得部が取得したトランジションデータに基づいて、同一部分領域特定部が同一の画像内容の部分領域が存在すると判断した部分領域と、当該部分領域と同一の画像内容である、静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルを算出する動きベクトル算出部と、トランジションデータ取得部が取得したトランジションデータに基づいて、同一部分領域特定部が同一の画像内容の部分画像が存在しないと判断した部分領域の画像内容を、静止画又は他の動画構成画像に含まれる複数の部分領域の一部を組み合わせて生成する部分領域画像生成部と、動きベクトル算出部が算出した動きベクトルで表現される部分領域、及び部分領域画像生成部が生成した部分領域を含む動画構成画像を生成する動画構成画像生成部とを有する。
【０００６】
トランジションデータ取得部は、静止画の少なくとも一部の移動領域の移動を示すトランジションデータを取得し、同一部分領域特定部は、トランジションデータ取得部が取得した移動領域の移動を示すトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域が移動領域の境界線に交差するか否かを特定する境界部分領域特定部を含み、部分領域画像生成部は、トランジションデータ取得部が取得した移動領域の移動を示すトランジションデータに基づいて、境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容を、静止画又は他の動画構成画像に含まれる複数の部分領域の一部と移動領域の画像とを組み合わせて生成してよい。
【０００７】
部分領域画像生成部は、トランジションデータ取得部が取得した移動領域の移動を示すトランジションデータに基づいて、動画構成画像における移動領域の位置を特定し、特定した移動領域の位置に基づいて、境界部分領域特定部が境界線に交差すると判断した部分領域に含まれるべき移動領域の画像と、当該部分領域の範囲内における静止画又は他の動画構成画像のうちの移動領域が含まれない領域の画像とを合成することによって、境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容を生成してよい。
【０００８】
トランジションデータ取得部は、静止画又は他の動画構成画像を背景として移動するオブジェクトの移動を示すトランジションデータを取得し、境界部分領域特定部は、トランジションデータ取得部が取得したオブジェクトの移動を示すトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域が、オブジェクトと背景との境界線に交差するか否かを特定し、部分領域画像生成部は、境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容を、トランジションデータ取得部が取得したオブジェクトの移動を示すトランジションデータに基づいて、オブジェクトと、静止画又は他の動画構成画像に含まれる複数の部分領域の一部とを組み合わせて生成してよい。
【０００９】
動画生成部は、トランジションデータ取得部が取得したオブジェクトの移動を示すトランジションデータに基づいて、動画構成画像におけるオブジェクトの位置を特定するオブジェクト位置特定部をさらに有し、境界部分領域特定部は、オブジェクト位置特定部が特定した動画構成画像におけるオブジェクトの位置に基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域が、オブジェクトと背景の静止画又は他の動画構成画像との境界線に交差するか否かを特定し、部分領域画像生成部は、オブジェクト位置特定部が特定した動画構成画像におけるオブジェクトの位置及び境界部分領域特定部が境界線に交差すると判断した部分領域の位置との相対的な位置から特定される、オブジェクトのうちの当該部分領域に含まれる画像と、当該部分領域の範囲内の背景画像のうちオブジェクトが含まれない領域の背景画像とを合成することによって、境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容を生成してよい。
【００１０】
トランジションデータ取得部は、静止画又は動画構成画像を背景として移動するオブジェクトの移動量及び移動方向の時間的変化を示すトランジションデータを取得し、オブジェクト位置特定部は、トランジションデータ取得部が取得したオブジェクトの移動量及び移動方向の時間的変化を時間的に積分することによって、動画構成画像におけるオブジェクトの位置を特定してよい。
【００１１】
オブジェクト位置特定部は、複数の動画構成画像のそれぞれにおけるオブジェクトの位置を特定し、動画生成部は、オブジェクト位置特定部が特定した複数の動画構成画像のそれぞれにおけるオブジェクトの位置に基づいて、境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容と類似する部分領域を持つ他の動画構成画像を特定する類似部分領域特定部をさらに有し、部分領域画像生成部は、一の動画構成画像における部分領域の位置と類似部分領域特定部が特定した部分領域の位置との間の位置の差を示す動きベクトル、及び類似部分領域特定部が特定した部分領域と当該一の動画構成画像における部分領域との差分画像によって、境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容を表現してよい。
【００１２】
類似部分領域特定部は、オブジェクト位置特定部が特定した動画構成画像におけるオブジェクトの位置に基づいて、境界部分領域特定部が境界線に交差すると判断した部分領域に含まれるオブジェクトの面積及び背景の面積をそれぞれ算出する面積算出部と、面積算出部が算出したオブジェクトの面積が面積算出部が算出した背景の面積より大きい場合に、オブジェクト位置特定部が特定した複数の動画構成画像のそれぞれにおけるオブジェクトの位置に基づいて、オブジェクトの画像を含む他の動画構成画像の中から境界部分領域特定部が境界線に交差すると判断した部分領域と類似する部分領域を選択し、面積算出部が算出したオブジェクトの面積が面積算出部が算出した背景の面積以下である場合に、オブジェクト位置特定部が特定した複数の動画構成画像のそれぞれにおけるオブジェクトの位置に基づいて、オブジェクトの画像を含む他の動画構成画像の中から、境界部分領域特定部が境界線に交差すると判断した部分領域の背景である画像を含む部分領域を選択する類似部分領域選択部とを含み、部分領域画像生成部は、一の動画構成画像における部分領域の位置と類似部分領域選択部が選択した部分領域の位置との間の位置の差を示す動きベクトル、及び類似部分領域選択部が選択した部分領域と当該一の動画構成画像における部分領域との差分画像によって、境界部分領域特定部が境界線に交差すると判断した部分領域の画像内容を表現してよい。
【００１３】
動画生成部は、複数の静止画が移り変わるＭＰＥＧ符号化された動画を生成し、同一部分領域特定部は、トランジションデータ取得部が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数のマクロブロックのそれぞれと同一の画像内容の部分領域が、静止画又は他の動画構成画像に存在するか否かを特定し、動きベクトル算出部は、トランジションデータ取得部が取得したトランジションデータに基づいて、同一部分領域特定部が同一の画像内容の部分領域が存在すると判断したマクロブロックと、当該マクロブロックと同一の画像内容である、静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルを算出し、部分領域画像生成部は、トランジションデータ取得部が取得したトランジションデータに基づいて、同一部分領域特定部が同一の画像内容の部分画像が存在しないと判断したマクロブロックの画像内容を、静止画又は他の動画構成画像に含まれる複数の部分領域の一部を組み合わせて生成し、動画構成画像生成部は、動きベクトル算出部が算出した動きベクトルで表現されるマクロブロック、及び部分領域画像生成部が生成したマクロブロックを含む動画構成画像を生成してよい。
【００１４】
動画構成画像生成部は、トランジションデータ取得部が取得したトランジションデータに基づいて、静止画から動画構成画像をＩピクチャとして生成するＩピクチャ生成部と、トランジションデータ取得部が取得したトランジションデータ及びＩピクチャ生成部が生成したＩピクチャとに基づいて、動画構成画像をＰピクチャとして生成するＰピクチャ生成部とを含み、同一部分領域特定部は、トランジションデータ取得部が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数のマクロブロックのそれぞれと同一の画像内容の部分領域が、Ｉピクチャ生成部が生成したＩピクチャに存在するか否かを特定し、動きベクトル算出部は、トランジションデータ取得部が取得したトランジションデータに基づいて、同一部分領域特定部が同一の画像内容の部分領域が存在すると判断したマクロブロックと、当該マクロブロックと同一の画像内容である、Ｉピクチャ生成部が生成したＩピクチャに含まれる部分領域との間の位置の差を示す動きベクトルを算出し、Ｐピクチャ生成部は、動きベクトル算出部が算出した動きベクトルで表現されるマクロブロック及び部分領域画像生成部が生成したマクロブロックを含む動画構成画像をＰピクチャとして生成してよい。
【００１５】
動画構成画像生成部は、トランジションデータ取得部が取得したトランジションデータ並びにＩピクチャ生成部が生成したＩピクチャ又はＰピクチャ生成部が生成したＰピクチャとに基づいて、動画構成画像をＢピクチャとして生成するＢピクチャ生成部をさらに含み、同一部分領域特定部は、トランジションデータ取得部が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数のマクロブロックのそれぞれと同一の画像内容の部分領域が、Ｉピクチャ生成部が生成したＩピクチャ又はＰピクチャ生成部が生成したＰピクチャに存在するか否かを特定し、動きベクトル算出部は、トランジションデータ取得部が取得したトランジションデータに基づいて、同一部分領域特定部が同一の画像内容の部分領域が存在すると判断したマクロブロックと、当該マクロブロックと同一の画像内容である、Ｉピクチャ生成部が生成したＩピクチャ又はＰピクチャ生成部が生成したＰピクチャに含まれる部分領域との間の位置の差を示す動きベクトルを算出し、Ｂピクチャ生成部は、動きベクトル算出部が算出した動きベクトルで表現されるマクロブロック及び部分領域画像生成部が生成したマクロブロックを含む動画構成画像をＢピクチャとして生成してよい。
【００１６】
本発明の第２の形態によると、複数の静止画が移り変わる動画を生成する動画生成方法であって、複数の静止画を、どのように移り変わらせるかを示すトランジションデータを取得するトランジションデータ取得段階と、トランジションデータ取得段階において取得されたトランジションデータに基づいて、静止画から複数の動画構成画像を生成して、生成した複数の動画構成画像を含む動画を生成する動画生成段階とを備え、動画生成段階は、トランジションデータ取得段階において取得されたトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域のそれぞれと同一の画像内容の部分領域が、静止画又は他の動画構成画像に存在するか否かを特定する同一部分領域特定段階と、トランジションデータ取得段階において取得されたトランジションデータに基づいて、同一部分領域特定段階において同一の画像内容の部分領域が存在すると判断された部分領域と、当該部分領域と同一の画像内容である、静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルを算出する動きベクトル算出段階と、トランジションデータ取得段階において取得されたトランジションデータに基づいて、同一部分領域特定段階において同一の画像内容の部分画像が存在しないと判断された部分領域の画像内容を、静止画又は他の動画構成画像に含まれる複数の部分領域の一部を組み合わせて生成する部分領域画像生成段階と、動きベクトル算出段階において算出された動きベクトルで表現される部分領域、及び部分領域画像生成段階において生成された部分領域を含む動画構成画像を生成する動画構成画像生成段階とを有する。
【００１７】
本発明の第３の形態によると、複数の静止画が移り変わる動画を生成する動画生成装置用のプログラムであって、動画生成装置を、複数の静止画を、どのように移り変わらせるかを示すトランジションデータを取得するトランジションデータ取得部、トランジションデータ取得部が取得したトランジションデータに基づいて、静止画から複数の動画構成画像を生成して、生成した複数の動画構成画像を含む動画を生成する動画生成部として機能させ、動画生成部を、トランジションデータ取得部が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域のそれぞれと同一の画像内容の部分領域が、静止画又は他の動画構成画像に存在するか否かを特定する同一部分領域特定部、トランジションデータ取得部が取得したトランジションデータに基づいて、同一部分領域特定部が同一の画像内容の部分領域が存在すると判断した部分領域と、当該部分領域と同一の画像内容である、静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルを算出する動きベクトル算出部、トランジションデータ取得部が取得したトランジションデータに基づいて、同一部分領域特定部が同一の画像内容の部分画像が存在しないと判断した部分領域の画像内容を、静止画又は他の動画構成画像に含まれる複数の部分領域の一部を組み合わせて生成する部分領域画像生成部、動きベクトル算出部が算出した動きベクトルで表現される部分領域、及び部分領域画像生成部が生成した部分領域を含む動画構成画像を生成する動画構成画像生成部として機能させる。
【００１８】
なお上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた発明となりうる。
【発明の効果】
【００１９】
本発明によれば、静止画の移り変わりを表現する動画を効率的に生成する動画生成装置を提供することができる。
【発明を実施するための最良の形態】
【００２０】
以下、発明の実施形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００２１】
図１は、一実施形態に係る動画生成装置１００の利用環境の一例を示す。動画生成装置１００は、ユーザ１９０が撮像装置１１０を用いて撮像した静止画１２０、１２１、１２２、１２３、・・・を受け取って、スライドショー等のＭＰＥＧ符号化された動画データ１３０を生成する。このとき、動画生成装置１００は、静止画の動き等の、静止画の遷移が定義されたトランジションデータに従って静止画を加工することによって、静止画と静止画との間で再生されるべき一駒の画像である、ＭＰＥＧ符号化された動画構成画像を複数生成する。図１の例では、動画生成装置１００は、静止画１２１が表示されている状態から始まり、静止画１２２が静止画１２１の一端から次第に現れてくる動画を生成する。
【００２２】
例えば、動画生成装置１００は、静止画１２１及び１２２を移動させることによる静止画１２１から静止画１２２への移り変わりを示すトランジションデータを取得する。そして、動画生成装置１００は、トランジションデータから静止画１２１及び１２２の移動速度を算出して、例えば動画構成画像１３３の一部の領域１４３内のマクロブロックが、静止画１２１の一部の領域１４１内のマクロブロックの画像内容と同一であることを特定する。そして、動画生成装置１００は、領域１４３内のマクロブロックの画像内容を、領域１４１内のマクロブロックに対する動きベクトルとして表現する。この場合、動画生成装置１００は、静止画１２１が移動した移動ベクトルを動きベクトルとして算出する。このようにして、動画生成装置１００は、動画に含まれる各駒の画像の全画素データを生成してブロックマッチングするなどといった複雑な処理をすることなく、トランジションデータからＭＰＥＧ符号化された動画データを直接的に生成することができる。
【００２３】
また、動画生成装置１００は、静止画１２１及び１２２の移動速度から、動画構成画像１３３における静止画１２１と１２２の境界の位置（例えば、動画構成画像１３３における境界１６１の位置）を、トランジションデータから直接的に判断することができる。この場合、動画生成装置１００は、境界を内部に含むマクロブロックにおける画素データを、画像１２１と１２２の画像内容を合成することによって生成する。そして動画生成装置１００は、合成して得られたマクロブロック内の画素データに対してＤＣＴ変換を施すことによって、境界を含むマクロブロックのＤＣＴ係数を算出する。また、動画生成装置１００は、静止画１２１の境界付近のマクロブロック及び静止画１２２の境界付近のマクロブロックから得られたＤＣＴ係数を足し合わせることによって、境界付近の静止画１２１及び１２２の画像内容が重畳されたマクロブロックのＤＣＴ係数を直接的に算出してもよい。
【００２４】
なお、動画生成装置１００は、動画を作成するデザイナ、ユーザ１９０等からの指示をトランジションデータとして取得してよいし、オブジェクトの移動等の、静止画に加えるエフェクトを示す動画生成用のテンプレートデータからトランジションデータとして取得してよい。なお、動画生成装置１００は、ＤＶＤ１５０等の光記録媒体に記録してユーザ１９０に生成した動画を提供してよいし、インターネット等の通信回線を通じてユーザ１９０に生成した動画を提供してもよい。また、動画生成装置１００は、インターネット等の通信回線を通じて撮像装置１１０から静止画を受け取ってよいし、撮像装置１１０によって半導体メモリ等の記録媒体に記録された静止画を受け取ってよい。なお、動画生成装置１００は、撮像画像であってもよいし、撮像画像以外の、画像加工ソフト等を利用して作成されたイメージデータであってよい。なお、動画生成装置１００は、デジタルフォトショップ１７０に設けられた動画生成用の端末であってよいし、個人宅に設けられたパーソナルコンピュータ等の端末であってよい。
【００２５】
以上説明したように、本実施例の動画生成装置１００によれば、静止画又は他の動画構成画像のマクロブロックと同じ画像内容を持つマクロブロックのデータをトランジションデータから直接的に判断することができる。このため、動画生成装置１００は、動画に含まれる各駒の画像の画素データの全てを生成する必要がない。したがって、動画生成装置１００は、動画に含まれる各駒の画素データを生成してからＭＰＥＧ符号化を施す場合に比べて、高速に動画を生成することができる。例えば、動画生成装置１００は、ＭＰＥＧ符号化におけるブロックマッチングに相当する処理量を著しく削減することができる。
【００２６】
図２は、動画生成装置１００の第１の実施例におけるブロック構成の一例を示す。本実施例の動画生成装置１００は、複数の静止画が移り変わる動画を生成する。動画生成装置１００は、指示入力部２００、画像出力部２０５、画像格納部２１０、トランジションデータ取得部２１２、及び動画生成部２１４を備える。動画生成部２１４は、オブジェクト移動ベクトル算出部２２０、領域移動ベクトル算出部２２５、オブジェクト位置特定部２３０、同一部分領域特定部２４０、動きベクトル算出部２５０、類似部分領域特定部２６０、部分領域画像生成部２７０、動画構成画像生成部２８０、ＤＣＴ変換部２９０、ＤＣＴ係数量子化部２９２、及び符号化部２９４を有する。また、類似部分領域特定部２６０は、境界部分領域面積算出部２６２及び類似部分領域選択部２６４を含む。また、同一部分領域特定部２４０は、境界部分領域特定部２４５を含む。また、動画構成画像生成部２８０は、Ｉピクチャ生成部２８２、Ｐピクチャ生成部２８４、及びＢピクチャ生成部２８６を含む。
【００２７】
画像格納部２１０は、複数の静止画を格納する。トランジションデータ取得部２１２は、画像格納部２１０が格納している複数の静止画を、どのように移り変わらせるかを示すトランジションデータを取得する。具体的には、トランジションデータ取得部２１２は、指示入力部２００にユーザ１９０から入力された静止画を移り変わらせるかを示す指示を取得する。そして、動画生成部２１４は、トランジションデータ取得部２１２が取得したトランジションデータに基づいて、画像格納部２１０が格納している静止画から複数の動画構成画像を生成して、生成した複数の動画構成画像を含む動画を生成する。具体的には、動画生成部２１４は、画像格納部２１０が格納している複数の静止画が移り変わるＭＰＥＧ符号化された動画を生成してよい。
【００２８】
具体的には、トランジションデータ取得部２１２は、画像格納部２１０が格納している静止画の少なくとも一部の移動領域の移動を示すトランジションデータを取得する。そして、領域移動ベクトル算出部２２５は、トランジションデータ取得部２１２が取得した移動領域の移動を示すトランジションデータに基づいて、一の動画構成画像における移動領域の位置と、画像格納部２１０が格納している静止画又は他の動画構成画像における移動領域の位置との間の位置の差を示す領域移動ベクトルを算出する。そして、同一部分領域特定部２４０は、領域移動ベクトル算出部２２５が算出した領域移動ベクトルに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域のうちの、移動領域に全範囲が含まれる部分領域のそれぞれと同一の画像内容の部分領域が、画像格納部２１０が格納している静止画又は他の動画構成画像に存在するか否かを特定する。
【００２９】
そして、動きベクトル算出部２５０は、領域移動ベクトル算出部２２５が算出した領域移動ベクトルを、同一部分領域特定部２４０が同一の画像内容の部分領域が存在すると判断した部分領域と、当該部分領域と同一の画像内容である、画像格納部２１０が格納している静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルとして算出する。そして、動画構成画像生成部２８０は、動きベクトル算出部２５０が算出した動きベクトルで表現される部分領域を含む動画構成画像を生成する。このように、動画構成画像生成部２８０は、他の動画構成画像と画像内容が同じ部分領域を、トランジションデータに基づいて容易に特定することができる。
【００３０】
以上説明したように、同一部分領域特定部２４０は、トランジションデータ取得部２１２が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域のそれぞれと同一の画像内容の部分領域が、画像格納部２１０が格納している静止画又は他の動画構成画像に存在するか否かを特定する。そして、動きベクトル算出部２５０は、トランジションデータ取得部２１２が取得したトランジションデータに基づいて、同一部分領域特定部２４０が同一の画像内容の部分領域が存在すると判断した部分領域と、当該部分領域と同一の画像内容である、画像格納部２１０が格納している静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルを算出する。
【００３１】
同一部分領域特定部２４０の動作について具体的に説明すると、境界部分領域特定部２４５は、領域移動ベクトル算出部２２５が算出した領域移動ベクトルに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域が移動領域の境界線に交差するか否かを特定する。そして、同一部分領域特定部２４０は、境界部分領域特定部２４５が境界線に交差しないと判断した部分領域を、同一の画像内容の部分画像が存在する部分領域であると判断する。また、同一部分領域特定部２４０は、境界部分領域特定部２４５が境界線に交差すると判断した部分領域を、同一の画像内容の部分画像が存在しないと判断した部分領域として判断する。このように、境界部分領域特定部２４５は、トランジションデータ取得部２１２が取得した移動領域の移動を示すトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域が移動領域の境界線に交差するか否かを特定する。
【００３２】
そして、部分領域画像生成部２７０は、トランジションデータ取得部２１２が取得した移動領域の移動を示すトランジションデータに基づいて、動画構成画像における移動領域の位置を特定し、特定した移動領域の位置に基づいて、境界部分領域特定部２４５が境界線に交差すると判断した部分領域に含まれるべき移動領域の画像と、当該部分領域の範囲内における画像格納部２１０が格納している静止画又は他の動画構成画像のうちの移動領域が含まれない領域の画像とを合成することによって、境界部分領域特定部２４５が境界線に交差すると判断した部分領域の画像内容を生成する。このように、部分領域画像生成部２７０は、トランジションデータ取得部２１２が取得した移動領域の移動を示すトランジションデータに基づいて、境界部分領域特定部２４５が境界線に交差すると判断した部分領域の画像内容を、画像格納部２１０が格納している静止画又は他の動画構成画像に含まれる複数の部分領域の一部と移動領域の画像とを組み合わせて生成する。
【００３３】
他にも、トランジションデータ取得部２１２は、画像格納部２１０が格納している静止画又は他の動画構成画像を背景として移動するオブジェクトの移動を示すトランジションデータを取得する。そして、オブジェクト移動ベクトル算出部２２０は、トランジションデータ取得部２１２が取得したオブジェクトの移動を示すトランジションデータに基づいて、一の動画構成画像におけるオブジェクトの位置と、画像格納部２１０が格納している静止画又は他の動画構成画像におけるオブジェクトの位置との間の位置の差を示すオブジェクト移動ベクトルを算出する。そして、オブジェクト位置特定部２３０は、オブジェクト移動ベクトル算出部２２０が算出したオブジェクト移動ベクトルと、他の動画構成画像におけるオブジェクトの位置とに基づいて、動画構成画像におけるオブジェクトの位置を特定する。なお、オブジェクト位置特定部２３０は、複数の動画構成画像のそれぞれにおけるオブジェクトの位置を特定してよい。
【００３４】
具体的には、トランジションデータ取得部２１２は、画像格納部２１０が格納している静止画又は動画構成画像を背景として移動するオブジェクトの移動量及び移動方向の時間的変化を示すトランジションデータを取得する。そして、オブジェクト移動ベクトル算出部２２０は、トランジションデータ取得部２１２が取得したトランジションデータに含まれるオブジェクトの移動量及び移動方向の時間的変化を時間的に積分することによって、一の動画構成画像と他の動画構成画像との間のオブジェクトの位置の差を示すオブジェクト移動ベクトルを算出する。具体的には、オブジェクト位置特定部２３０は、トランジションデータ取得部２１２が取得したオブジェクトの移動量及び移動方向の時間的変化を時間的に積分することによって、動画構成画像におけるオブジェクトの位置を特定する。より具体的には、トランジションデータ取得部２１２は、連続して再生されるべき各動画構成画像間における、オブジェクトのｘ方向及びｙ方向への移動量を示すトランジションデータを取得し、オブジェクト移動ベクトル算出部２２０は、トランジションデータ取得部２１２が取得したオブジェクトのｘ方向及びｙ方向への移動量を累積的に加算していくことによって、オブジェクト移動ベクトルを算出する。このようにして、オブジェクト位置特定部２３０は、トランジションデータ取得部２１２が取得したオブジェクトの移動を示すトランジションデータに基づいて、動画構成画像におけるオブジェクトの位置を特定する。
【００３５】
そして、境界部分領域特定部２４５は、オブジェクト位置特定部２３０が特定した動画構成画像におけるオブジェクトの位置に基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域が、オブジェクトと画像格納部２１０が格納している背景の静止画又は他の動画構成画像との境界線に交差するか否かを特定する。このように、境界部分領域特定部２４５は、トランジションデータ取得部２１２が取得したオブジェクトの移動を示すトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域が、オブジェクトと背景との境界線に交差するか否かを特定する。
【００３６】
そして、同一部分領域特定部２４０は、境界部分領域特定部２４５がオブジェクトと背景との境界線に交差しないと判断した部分領域を、同一の画像内容の部分画像が存在する部分領域であると判断する。また、同一部分領域特定部２４０は、境界部分領域特定部２４５が境界線に交差すると判断した部分領域を、同一の画像内容の部分画像が存在しないと判断した部分領域として判断する。そして、同一部分領域特定部２４０は、オブジェクト移動ベクトルに基づいてオブジェクト位置特定部２３０が特定したオブジェクトの位置に基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域のうちの、オブジェクトに全範囲が含まれる部分領域のそれぞれと同一の画像内容の部分領域が、画像格納部２１０が格納している静止画又は他の動画構成画像に存在するか否かを特定する。そして、動きベクトル算出部２５０は、オブジェクト移動ベクトル算出部２２０が算出したオブジェクト移動ベクトルを、同一部分領域特定部２４０が同一の画像内容の部分領域が存在すると判断した部分領域と、当該部分領域と同一の画像内容である、画像格納部２１０が格納している静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルとして算出する。
【００３７】
また、同一部分領域特定部２４０は、オブジェクト移動ベクトルに基づいてオブジェクト位置特定部２３０が算出したオブジェクトの位置に基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域のうちの、オブジェクトが移動する背景に全範囲が含まれる部分領域のそれぞれと同一の画像内容の部分領域が、画像格納部２１０が格納している静止画又は他の動画構成画像に存在するか否かをさらに特定する。そして、動きベクトル算出部２５０は、同一部分領域特定部２４０が同一の画像内容の部分領域が背景に含まれる部分領域の動きベクトルを０とする。
【００３８】
そして、部分領域画像生成部２７０は、オブジェクト位置特定部２３０が特定した動画構成画像におけるオブジェクトの位置及び境界部分領域特定部２４５が境界線に交差すると判断した部分領域の位置との相対的な位置から特定される、オブジェクトのうちの当該部分領域に含まれる画像と、当該部分領域の範囲内の背景画像のうちオブジェクトが含まれない領域の背景画像とを合成することによって、境界部分領域特定部２４５が境界線に交差すると判断した部分領域の画像内容を生成する。このようにして、部分領域画像生成部２７０は、境界部分領域特定部２４５が境界線に交差すると判断した部分領域の画像内容を、トランジションデータ取得部２１２が取得したオブジェクトの移動を示すトランジションデータに基づいて、オブジェクトと、画像格納部２１０が格納している静止画又は他の動画構成画像に含まれる複数の部分領域の一部とを組み合わせて生成する。
【００３９】
このようにして、部分領域画像生成部２７０は、トランジションデータ取得部２１２が取得したトランジションデータに基づいて、同一部分領域特定部２４０が同一の画像内容の部分画像が存在しないと判断した部分領域の画像内容を、画像格納部２１０が格納している静止画又は他の動画構成画像から生成する。また、部分領域画像生成部２７０は、トランジションデータ取得部２１２が取得したトランジションデータに基づいて、同一部分領域特定部２４０が同一の画像内容の部分画像が存在しないと判断した部分領域の画像内容を、画像格納部２１０が格納している静止画又は他の動画構成画像に含まれる複数の部分領域の一部を組み合わせて生成する。
【００４０】
類似部分領域特定部２６０は、オブジェクト位置特定部２３０が特定した複数の動画構成画像のそれぞれにおけるオブジェクトの位置に基づいて、境界部分領域特定部２４５が境界線に交差すると判断した部分領域の画像内容と類似する部分領域を持つ他の動画構成画像を特定する。この場合、部分領域画像生成部２７０は、一の動画構成画像における部分領域の位置と類似部分領域特定部２６０が特定した部分領域の位置との間の位置の差を示す動きベクトル、及び類似部分領域特定部２６０が特定した部分領域と当該一の動画構成画像における部分領域との差分画像によって、境界部分領域特定部２４５が境界線に交差すると判断した部分領域の画像内容を表現する。
【００４１】
具体的には、境界部分領域面積算出部２６２は、オブジェクト位置特定部２３０が特定した動画構成画像におけるオブジェクトの位置に基づいて、境界部分領域特定部２４５が境界線に交差すると判断した部分領域に含まれるオブジェクトの面積及び背景の面積をそれぞれ算出する。そして、類似部分領域選択部２６４は、境界部分領域面積算出部２６２が算出したオブジェクトの面積が境界部分領域面積算出部２６２が算出した背景の面積より大きい場合に、オブジェクト位置特定部２３０が特定した複数の動画構成画像のそれぞれにおけるオブジェクトの位置に基づいて、オブジェクトの画像を含む他の動画構成画像の中から境界部分領域特定部２４５が境界線に交差すると判断した部分領域と類似する部分領域を選択する。
【００４２】
また、境界部分領域面積算出部２６２が算出したオブジェクトの面積が境界部分領域面積算出部２６２が算出した背景の面積以下である場合に、オブジェクト位置特定部２３０が特定した複数の動画構成画像のそれぞれにおけるオブジェクトの位置に基づいて、オブジェクトの画像を含む他の動画構成画像の中から、境界部分領域特定部２４５が境界線に交差すると判断した部分領域の背景である画像を含む部分領域を選択する。そして、部分領域画像生成部２７０は、一の動画構成画像における部分領域の位置と類似部分領域選択部２６４が選択した部分領域の位置との間の位置の差を示す動きベクトル、及び類似部分領域選択部２６４が選択した部分領域と当該一の動画構成画像における部分領域との差分画像によって、境界部分領域特定部２４５が境界線に交差すると判断した部分領域の画像内容を表現する。
【００４３】
そして、動画構成画像生成部２８０は、動きベクトル算出部２５０が算出した動きベクトルで表現される部分領域、及び部分領域画像生成部２７０が生成した部分領域を含む動画構成画像を生成する。また、動画構成画像生成部２８０は、動きベクトル算出部２５０が算出した動きベクトルで表現される部分領域、及び部分領域画像生成部２７０が生成した部分領域の画像内容を含む動画構成画像を生成する。このため、動画生成装置１００は、動きベクトルのみで表現することができるマクロブロックをトランジションデータから特定することによって、ブロックマッチングによって探索することなく迅速に動画構成画像を生成することができる。
【００４４】
なお、動画生成部２１４がＭＰＥＧ符号化された動画を生成する場合には、同一部分領域特定部２４０は、トランジションデータ取得部２１２が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数のマクロブロックのそれぞれと同一の画像内容の部分領域が、画像格納部２１０が格納している静止画又は他の動画構成画像に存在するか否かを特定する。そして、動きベクトル算出部２５０は、トランジションデータ取得部２１２が取得したトランジションデータに基づいて、同一部分領域特定部２４０が同一の画像内容の部分領域が存在すると判断したマクロブロックと、当該マクロブロックと同一の画像内容である、画像格納部２１０が格納している静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルを算出する。また、部分領域画像生成部２７０は、トランジションデータ取得部２１２が取得したトランジションデータに基づいて、同一部分領域特定部２４０が同一の画像内容の部分画像が存在しないと判断したマクロブロックの画像内容を、画像格納部２１０が格納している静止画又は他の動画構成画像に含まれる複数の部分領域の一部を組み合わせて生成する。そして、動画構成画像生成部２８０は、動きベクトル算出部２５０が算出した動きベクトルで表現されるマクロブロック、及び部分領域画像生成部２７０が生成したマクロブロックを含む動画構成画像を生成する。
【００４５】
また、Ｉピクチャ生成部２８２は、トランジションデータ取得部２１２が取得したトランジションデータに基づいて、画像格納部２１０が格納している静止画から、動画構成画像をＩピクチャとして生成する。そして、Ｐピクチャ生成部２８４は、トランジションデータ取得部２１２が取得したトランジションデータ及びＩピクチャ生成部２８２が生成したＩピクチャに基づいて、動画構成画像をＰピクチャとして生成する。そして、同一部分領域特定部２４０は、トランジションデータ取得部２１２が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数のマクロブロックのそれぞれと同一の画像内容の部分領域が、Ｉピクチャ生成部２８２が生成したＩピクチャに存在するか否かを特定する。
【００４６】
そして、動きベクトル算出部２５０は、トランジションデータ取得部２１２が取得したトランジションデータに基づいて、同一部分領域特定部２４０が同一の画像内容の部分領域が存在すると判断したマクロブロックと、当該マクロブロックと同一の画像内容である、Ｉピクチャ生成部２８２が生成したＩピクチャに含まれる部分領域との間の位置の差を示す動きベクトルを算出する。そして、Ｐピクチャ生成部２８４は、動きベクトル算出部２５０が算出した動きベクトルで表現されるマクロブロック及び部分領域画像生成部２７０が生成したマクロブロックを含む動画構成画像をＰピクチャとして生成する。また、Ｂピクチャ生成部２８６は、トランジションデータ取得部２１２が取得したトランジションデータ並びにＩピクチャ生成部２８２が生成したＩピクチャ又はＰピクチャ生成部２８４が生成したＰピクチャとに基づいて、動画構成画像をＢピクチャとして生成する。
【００４７】
具体的には、同一部分領域特定部２４０は、トランジションデータ取得部２１２が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数のマクロブロックのそれぞれと同一の画像内容の部分領域が、Ｉピクチャ生成部２８２が生成したＩピクチャ又はＰピクチャ生成部２８４が生成したＰピクチャに存在するか否かを特定する。そして、動きベクトル算出部２５０は、トランジションデータ取得部２１２が取得したトランジションデータに基づいて、同一部分領域特定部２４０が同一の画像内容の部分領域が存在すると判断したマクロブロックと、当該マクロブロックと同一の画像内容である、Ｉピクチャ生成部２８２が生成したＩピクチャ又はＰピクチャ生成部２８４が生成したＰピクチャに含まれる部分領域との間の位置の差を示す動きベクトルを算出する。Ｂピクチャ生成部２８６は、動きベクトル算出部２５０が算出した動きベクトルで表現されるマクロブロック及び部分領域画像生成部２７０が生成したマクロブロックを含む動画構成画像をＢピクチャとして生成する。
【００４８】
なお、トランジションデータ取得部２１２が、画像格納部２１０が格納している静止画又は他の動画構成画像を背景として移動するオブジェクトの移動を示すトランジションデータを取得する場合、オブジェクト移動ベクトル算出部２２０は、トランジションデータ取得部２１２が取得したオブジェクトの移動を示すトランジションデータに基づいて、Ｐピクチャとして生成すべき動画構成画像におけるオブジェクトの位置と、Ｉピクチャ生成部２８２が生成したＩピクチャにおけるオブジェクトの位置との間の位置の差を示すオブジェクト移動ベクトルを算出する。
【００４９】
そして、同一部分領域特定部２４０は、オブジェクト移動ベクトル算出部２２０が算出したオブジェクト移動ベクトルに基づいて、Ｐピクチャとして生成すべき動画構成画像に含まれる複数のマクロブロックのうちの、オブジェクトに全範囲が含まれるマクロブロックのそれぞれと同一の画像内容の部分領域が、Ｉピクチャ生成部２８２が生成したＩピクチャに存在するか否かを特定する。そして、動きベクトル算出部２５０は、オブジェクト移動ベクトル算出部２２０が算出したオブジェクト移動ベクトルを、同一部分領域特定部２４０が同一の画像内容の部分領域が存在すると判断したマクロブロックと、当該マクロブロックと同一の画像内容である、Ｉピクチャ生成部２８２が生成したＩピクチャに含まれる部分領域との間の位置の差を示す動きベクトルとして算出する。そして、Ｐピクチャ生成部２８４は、動きベクトル算出部２５０が算出した動きベクトルで表現されるマクロブロック及び部分領域画像生成部２７０が生成したマクロブロックを含む動画構成画像をＰピクチャとして生成する。
【００５０】
また、オブジェクト移動ベクトル算出部２２０は、トランジションデータ取得部２１２が取得したオブジェクトの移動を示すトランジションデータに基づいて、Ｂピクチャとして生成すべき動画構成画像におけるオブジェクトの位置と、Ｉピクチャ生成部２８２が生成したＩピクチャ又はＰピクチャ生成部２８４が生成したＰピクチャにおけるオブジェクトの位置との間の位置の差を示すオブジェクト移動ベクトルを算出する。そして、同一部分領域特定部２４０は、オブジェクト移動ベクトル算出部２２０が算出したオブジェクト移動ベクトルに基づいて、Ｂピクチャとして生成すべき動画構成画像に含まれる複数のマクロブロックのうちの、オブジェクトに全範囲が含まれるマクロブロックのそれぞれと同一の画像内容の部分領域が、Ｉピクチャ生成部２８２が生成したＩピクチャ又はＰピクチャ生成部２８４が生成したＰピクチャに存在するか否かを特定する。そして、動きベクトル算出部２５０は、オブジェクト移動ベクトル算出部２２０が算出したオブジェクト移動ベクトルを、同一部分領域特定部２４０が同一の画像内容の部分領域が存在すると判断したマクロブロックと、当該マクロブロックと同一の画像内容である、Ｉピクチャ生成部２８２が生成したＩピクチャ又はＰピクチャ生成部２８４が生成したＰピクチャに含まれる部分領域との間の位置の差を示す動きベクトルとして算出する。そして、Ｂピクチャ生成部２８６は、動きベクトル算出部２５０が算出した動きベクトルで表現されるマクロブロック及び部分領域画像生成部２７０が生成したマクロブロックを含む動画構成画像をＢピクチャとして生成する。
【００５１】
ＤＣＴ変換部２９０は、動画構成画像生成部２８０がＩピクチャ、Ｐピクチャ、又はＢピクチャとして生成した、動画構成画像にＤＣＴ変換を施してＤＣＴ係数を算出する。ＤＣＴ係数量子化部２９２は、ＤＣＴ変換部２９０が算出したＤＣＴ係数に対して量子化を施すことによって、データ量が圧縮された動画構成画像を生成する。符号化部２９４は、ＤＣＴ係数量子化部２９２が生成した動画構成画像に対して符号化を施すことによって、データ量が圧縮された動画構成画像を含む動画を生成する。具体的には、符号化部２９４は、動画構成画像に対してランレングス符号化及びハフマン符号化を施してよい。画像出力部２０５は、符号化部２９４が生成した動画構成画像を含む動画を、動画生成装置１００の外部に出力する。例えば、画像出力部２０５は、ＤＶＤ等の記録媒体に出力する。
【００５２】
以上説明したように、本実施例における動画生成装置１００によれば、オブジェクト等の移動を示すトランジションデータから動きベクトルを直接的に算出することができる。また、動画生成装置１００は、オブジェクトの輪郭部におけるマクロブロックについて、トランジションデータから直接的にＤＣＴ係数を算出したり差分画像信号を取得することができる。このため、静止画を加工して動画構成画像の画素データを生成してからＭＰＥＧ符号化を施す場合に比べて、動画を高速に生成することができる。なお、本実施形態における静止画とは、アニメーションを構成する画像であってよく、アニメーションに含まれるオブジェクトの画像等の、アニメーションを構成する一枚の画像における部分画像であってよい。そして、動画生成装置１００は、それらの複数の静止画からアニメーションを生成してよい。この場合でも、動画生成装置１００はアニメーションを構成する画像の画素データを生成してからＭＰＥＧ符号化を施す場合に比べてアニメーションを高速に生成することができるのは言うまでもない。
【００５３】
図３は、動画生成部２１４が生成する動画データの一例を示す。本図の例では、動画生成装置１００は、静止画３００を背景とした太陽を示すオブジェクトの移動を示す動画データを生成する。トランジションデータ取得部２１２は、連続して再生される動画構成画像間における、太陽を示すオブジェクトの座標の差（ベクトルΔＴＶ３０１，３０２、３０３、３０４）をトランジションデータとして取得する。また、トランジションデータにはオブジェクトの初期位置も含まれており、動画生成部２１４は静止画３００のトランジションデータで示されるオブジェクトの初期位置にオブジェクトの画像を重ねて、動画構成画像３３１を生成する。このとき、動画生成装置１００は、動画構成画像３３１をＩピクチャとして生成する。
【００５４】
そして、オブジェクト移動ベクトル算出部２２０は、動画構成画像３３４（Ｐピクチャ）を生成する場合に、トランジションデータで示される各ベクトルΔＴＶを、動画構成画像３３１（Ｉピクチャ）から順に加算していくことによって、当該動画構成画像との間のオブジェクトの位置の差を示すオブジェクト移動ベクトルＶ３１４を算出する。本図の例では、オブジェクト移動ベクトルＴＶ３１４は、ΔＴＶ３０１＋ΔＴＶ３０２＋ΔＴＶ３０３で表現することができる。他にも、トランジションデータ取得部２１２は、オブジェクトの速度の時間依存データを取得してもよく、Ｉピクチャからの時間的な積分によってオブジェクトが移動したオブジェクト移動ベクトルを算出してもよい。このどちらの場合でも、オブジェクト移動ベクトルの算出方法は、オブジェクトの位置変化の時間的な積分となる。
【００５５】
また、動画構成画像３３４（Ｐピクチャ）におけるオブジェクトの位置、オブジェクトの輪郭情報、及びマクロブロックの位置とから、オブジェクトの輪郭を含むマクロブロック３７１、３７２、３７３、及び３７４を特定することができる。そして、動画構成画像３３４（Ｐピクチャ）におけるオブジェクトと背景の境界部分の近傍の領域３８０において、オブジェクトに全領域が含まれるマクロブロック３６１、３６２、及び３６３は、それぞれオブジェクト移動ベクトルＴＶ３１４の逆向きにずらせた位置のＩピクチャにおける部分領域３５１、３５２、３５３と同一の画像内容となる。
【００５６】
また、動画構成画像３３４（Ｐピクチャ）におけるオブジェクトの位置、オブジェクトの輪郭情報、及びマクロブロックの位置とから、オブジェクトの輪郭を含むマクロブロック３７１、３７２、３７３、及び３７４を特定することができる。そして、このオブジェクトの輪郭を含むマクロブロック３７１、３７２、３７３、及び３７４の、オブジェクトより外側の周囲に存在するマクロブロック（例えば、マクロブロック３８１）は、全領域が背景に含まれる。このような、全領域が背景に含まれるマクロブロックの画像内容は、Ｉピクチャにおける当該マクロブロックの範囲内にオブジェクトが含まれない限り、そのマクロブロックの範囲のＩピクチャの画像内容（背景の画像）と同一となる。したがって、全領域が背景に含まれるマクロブロックの画像内容は、動きベクトルを０、差分画像信号を０として表現することができる。
【００５７】
また、オブジェクトの輪郭を含むマクロブロック（例えば、マクロブロック３７２）は、背景画像とオブジェクトの画像とを合成することによって生成する。例えば、マクロブロック３７２におけるオブジェクトを含む領域３９１のオブジェクトの画像（例えば、動画構成画像３３１における画像３４１の部分）と、Ｉピクチャにおけるマクロブロック３７２で示される範囲の画像内容のうちの、オブジェクトの領域３９１以外の領域３４２の画像とを合成することによって、マクロブロック３７２の画像を生成することができる。
【００５８】
また、動画生成部２１４は、マクロブロック３７２の画像内容を、差分画像及び動きベクトルを用いて表現してもよい。例えば、オブジェクトの領域３９１の面積を算出して、マクロブロックの面積に対する領域３９１の面積が予め定められた基準面積より大きい場合に、動画構成画像３３１（Ｉピクチャ）の部分領域３５４との差分画像信号を生成し、生成した差分画像信号と、当該マクロブロックとの間のオブジェクト移動ベクトルによって、マクロブロック３７２の画像内容を表現してよい。また、マクロブロックの面積に対する領域３９１の面積が予め定められた基準面積以下である場合には、マクロブロック３７２の位置における動画構成画像３３１（Ｉピクチャ）の部分領域３５５との差分画像信号を生成し、生成した差分画像信号と動きベクトルを０として、マクロブロック３７２の画像内容を表現することができる。このように、動画生成装置１００は、ブロックマッチングを行うことなく、トランジションデータに基づいて容易に類似する部分領域を特定することができる。
【００５９】
以上説明したように、動画生成装置１００は、トランジションデータで示されるオブジェクトの移動情報の加算によって、同一の画像内容である画像を容易に特定することができる。このため、一旦動画構成画像の画素データを生成する場合に比べて、ＭＰＥＧ圧縮された動画をより迅速に生成することができる。特に、動きベクトルを算出するためのブロックマッチング等に相当する処理を、オブジェクトの移動情報の加算によって実現することができるので、動きベクトルをより高速に算出することができる。なお、トランジションデータで示されるオブジェクトの移動は、基準となる動画構成画像（例えば、Ｉピクチャ）におけるオブジェクトの位置と他の動画構成画像（Ｂピクチャ、Ｐピクチャ）におけるオブジェクトの位置の差が、１／２画素を最小単位とする値となることが望ましい。この場合、マクロブロックにおいては、ＭＰＥＧ符号化における動きベクトルはオブジェクト移動ベクトルと同一であり、かつ、差分データを０として表現することができるので、動画がより高い圧縮率で圧縮されるとともに、動画をより高速に生成することができる。
【００６０】
なお、本図の説明において、オブジェクトの移動を例に挙げて説明したが、トランジションデータは、静止画（Ｉピクチャ）に含まれる一部の領域の移動であってよい。この場合であっても、図３に関連した説明と同様の手法によって、トランジションデータに基づく領域の移動から、迅速に動画を生成することができる。
【００６１】
図４は、静止画の移り変わりの他の例を示す。本図の例では、動画生成部２１４は、画像の切り替わりを示す動画を生成する。具体的には、トランジションデータ取得部２１２は、静止画の移動を示すトランジションデータを取得する。図４の一例では、トランジションデータ取得部２１２は、静止画４００が表示領域の左端に向かって移動しつつ、静止画４０１が静止画４００と同じ速度で右端から移動してくるトランジションデータを取得する。具体的には、トランジションデータ取得部２１２は、静止画４００と静止画４０１との表示境界線の移動速度Ｖ４４０を規定したトランジションデータを取得する。また、本図の例では、動画生成部２１４は、静止画４００及び４０１を、それぞれ動画構成画像４１０及び４２０（Ｉピクチャ）として生成する。
【００６２】
そして、動画構成画像４１０（Ｉピクチャ）が再生されるタイミングから各動画構成画像を再生するそれぞれのタイミングまで境界線の速度を時間的に積分することによって、動画構成画像４１０（Ｉピクチャ）における境界線の位置（本図の例では、表示領域の右端）からの境界線の移動ベクトルＴＶ４２３を算出する。この場合、図３で説明したオブジェクトの移動におけるオブジェクト移動ベクトルと動きベクトルとの関連と同様に、マクロブロック４２３ａの画像内容は、動画構成画像４１０を参照して、境界線の移動ベクトルＴＶ４２３と０の差分画像信号で表現することができる。また、同様に、マクロブロック４２３ｂは、動画構成画像４２０（Ｉピクチャ）を参照して、境界線の移動ベクトルＴＶ４２３と０の差分画像信号で表現することができる。
【００６３】
また、本図における画像の切り替わりを示す他の例では、動画生成部２１４は、静止画４００から静止画４０１の表示を切り替える動画において、静止画４０１の画像内容を表示する領域を、右下から左上に向けて拡大していく動画を生成する。具体的には、動画生成部２１４は、静止画４００から動画構成画像４５０をＩピクチャとして生成し、静止画４０１から、当該Ｉピクチャの次のＩピクチャである動画構成画像４６０を生成する。具体的には、トランジションデータ取得部２１２は、Ｘ方向及びＹ方向のそれぞれの表示境界線の移動速度Ｖｘ４９０及びＶｙ４９０を示すトランジションデータを取得する。本例における動画では、動画構成画像４５１、４５２、４５３のマクロブロックの中で、表示境界線を含まないマクロブロックは、全て前後のIピクチャの動画構成画像に含まれている。したがって、動画構成画像を全てＢピクチャとして生成すれば、表示境界線を含むマクロブロック以外のマクロブロックでは、動きベクトルの成分を０で表現することができることがトランジションデータから直接的に判断することができる。
【００６４】
なお、上記いずれの画像の切り替え例においても、表示境界線を含むマクロブロックの画像内容を、図３における境界を含むマクロブロックの合成方法についての説明と同様にして、静止画４００及び４０１の画像内容、境界線の位置、及び当該マクロブロックの位置から容易に合成することができる。また、マクロブロックの画像内容をIピクチャとの差分により表現する場合であっても、静止画４００及び４１０どちらからとの差分をとるかの選択及び差分を算出する領域の選択を、トランジションデータから直接的に算出することができる。
【００６５】
以上説明したように、境界線の移動ベクトルから直接的に、動きベクトルと差分画像信号とを得ることができるので、動画構成画像の画素データを一旦生成してからＭＰＥＧ符号化を行う場合に比べて、動画の生成時間を大幅に削減することができる。なお、図３及び図４において、説明を簡単にするために、動画におけるＩピクチャを、１つの静止画とオブジェクトとから、又は１つの静止画から生成する場合について説明したが、複数の静止画を合成した画像をＩピクチャとして生成してよいのは言うまでもない。また、トランジションデータ取得部２１２は、複数の静止画を合成した画像を動画構成画像として生成する旨のトランジションデータを取得してよい。
【００６６】
図５は、動画生成装置１００の第２の実施例におけるブロック構成の一例を示す。本実施例の動画生成装置１００は、図２から図４にかけて説明した動画生成において、画像の境界部分のマクロブロックにおける画像の生成をより高速化することを目的とする。具体的には、本実施例の動画生成装置１００は、動画構成画像における静止画の境界部分を含むマクロブロックのＤＣＴ係数を、静止画における境界部分の画像内容を含むマクロブロックのＤＣＴ係数の加算によって直接的に生成することを特徴とする。したがって、第１の実施例における動画生成装置１００の機能に本実施例において説明する動画生成装置１００の機能を組み入れることによって、動画の生成速度をさらに向上することができる。
【００６７】
本実施例の動画生成装置１００は、指示入力部６００、画像出力部６０５、画像格納部６１０、トランジションデータ取得部６１２、及び動画生成部６１４を備える。動画生成部６１４は、境界部分領域特定部６４５、動きベクトル算出部６５０、境界部分領域面積算出部６６２、部分領域画像生成部６７０、動画構成画像生成部６８０、ＤＣＴ変換部６９０、ＤＣＴ係数量子化部６９２、及び符号化部６９４を有する。また、動画構成画像生成部６８０は、Ｉピクチャ生成部６８２、Ｐピクチャ生成部６８４、及びＢピクチャ生成部６８６を含む。
【００６８】
画像格納部６１０は、複数の静止画を格納する。そして、トランジションデータ取得部６１２は、画像格納部６１０が格納している第１静止画と第２静止画との境界線を動画においてどのように移動させるかを示すトランジションデータを取得する。そして、動画生成部６１４は、トランジションデータ取得部６１２が取得したトランジションデータに基づいて、画像格納部６１０が格納している静止画から複数の動画構成画像を生成して、生成した複数の動画構成画像を含む動画を生成する。
【００６９】
具体的には、ＤＣＴ変換部６９０は、画像格納部６１０が格納している第１静止画及び第２静止画にＤＣＴ変換を施して、第１静止画及び第２静止画に含まれる複数の部分領域のＤＣＴ係数を算出する。そして、境界部分領域特定部６４５は、トランジションデータ取得部６１２が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域が、画像格納部６１０が格納している第１静止画と第２静止画との境界線に交差するか否かを特定する。なお、境界部分領域特定部６４５は、第１の実施例において説明した境界部分領域特定部２４５の動作と同様に、例えばトランジションデータによって示される第１静止画及び第２静止画の移動に基づいて、部分領域が第１静止画と第２静止画との境界線に交差するか否かを特定することができる。
【００７０】
そして、部分領域画像生成部６７０は、境界部分領域特定部６４５が境界線に交差すると判断した部分領域のＤＣＴ係数を、境界線の近傍に存在する第１静止画内の部分領域についてＤＣＴ変換部６９０が算出したＤＣＴ係数と、境界線の近傍に存在する第２静止画内の部分領域についてＤＣＴ変換部６９０が算出したＤＣＴ係数とから生成する。そして、動画構成画像生成部６８０は、部分領域画像生成部６７０が生成した部分領域のＤＣＴ係数を含む動画構成画像を生成する。
【００７１】
具体的には、部分領域画像生成部６７０は、境界部分領域特定部６４５が境界線に交差すると判断した部分領域のＤＣＴ係数を、境界線の近傍に存在する第１静止画の部分領域のＤＣＴ係数と、境界線の近傍に存在する第２静止画内の部分領域のＤＣＴ係数とを周波数成分毎に平均化することによって生成する。また、部分領域画像生成部６７０は、境界部分領域特定部６４５が境界線に交差すると判断した部分領域のＤＣＴ係数を、境界線の近傍に存在する第１静止画内の部分領域のＤＣＴ係数と、境界線の近傍に存在する第２静止画内の部分領域のＤＣＴ係数とを、トランジションデータ取得部６１２が取得したトランジションデータに基づいて重み付けして平均化することによって生成してもよい。トランジションデータ取得部２１２は、境界において背景又はオブジェクトのどちらをより重み付けするかを示すトランジションデータを取得し、これを重み付け平均のためのデータとしてもよい。
【００７２】
なお、部分領域画像生成部６７０は、複数の動画構成画像のそれぞれにおいて境界部分領域特定部６４５が境界線に交差すると判断した部分領域のＤＣＴ係数を算出する場合に、トランジションデータ取得部６１２が取得したトランジションデータに基づいて、境界線の近傍に存在する第１静止画内の部分領域のＤＣＴ係数と、境界線の近傍に存在する第２静止画内の部分領域のＤＣＴ係数とを、動画において連続する複数の動画構成画像のそれぞれについて異なる重み付けで平均化することによって生成してもよい。これにより、動画生成装置１００は、例えばオブジェクトが移動するにつれてオブジェクトの背景に対する合成比率を徐々に上げていく等といった、動画の閲覧者に対する視覚的効果を容易に加えることができる。
【００７３】
また、境界部分領域面積算出部６６２は、トランジションデータ取得部６１２が取得したトランジションデータに基づいて、境界部分領域特定部６４５が境界線に交差すると判断した部分領域に含まれる第１静止画の面積を算出する。そして、部分領域画像生成部６７０は、境界部分領域面積算出部６６２が算出した第１静止画の面積がより大きい場合に、第１静止画内の部分領域のＤＣＴ係数をより大きく重み付けして、境界部分領域特定部６４５が境界線に交差すると判断した部分領域のＤＣＴ係数を算出する。例えば、部分領域画像生成部６７０は、境界部分領域面積算出部６６２が算出した第１静止画の面積の部分領域に対する比率がより大きい場合に、第１静止画内の部分領域のＤＣＴ係数をより大きく重み付けして、境界部分領域特定部６４５が境界線に交差すると判断した部分領域のＤＣＴ係数を算出する。
【００７４】
なお、トランジションデータ取得部６１２は、画像格納部６１０が格納している第２静止画に対する、画像格納部６１０が格納している第１静止画の移動を示すトランジションデータを取得してよい。そして、境界部分領域特定部６４５は、トランジションデータ取得部６１２が取得した第１静止画の移動を示すトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数の部分領域が、画像格納部６１０が格納している第１静止画と第２静止画との境界線に交差するか否かを特定する。そして、部分領域画像生成部６７０は、境界部分領域特定部６４５が境界線に交差すると判断した部分領域のＤＣＴ係数を、境界線の近傍に存在する第１静止画内の部分領域のＤＣＴ係数と、境界線の近傍に存在する第２静止画内の部分領域のＤＣＴ係数とから生成する。具体的には、部分領域画像生成部６７０は、境界線の近傍に存在する第１静止画内の部分領域のＤＣＴ係数と境界線の近傍に存在する第２静止画内の部分領域のＤＣＴ係数とを周波数成分毎に平均化することによって生成する。
【００７５】
また、動きベクトル算出部６５０は、トランジションデータ取得部６１２が取得したトランジションデータに基づいて、境界部分領域特定部６４５が境界線に交差しないと判断した部分領域と、当該部分領域と同一の画像内容である、画像格納部６１０が格納している静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルを算出する。例えば、動きベクトル算出部６５０は、トランジションデータ取得部６１２が取得した第２静止画に対する第１静止画の移動を示すトランジションデータに基づいて、動きベクトルを算出する。なお、動きベクトル算出部６５０の具体的な動作の詳細は、第１実施形態における動画生成装置１００の、動きベクトル算出部２５０と同様であるので、説明を省略する。そして、動画構成画像生成部６８０は、動きベクトル算出部６５０が算出した動きベクトルで表現される部分領域、及び部分領域画像生成部６７０が生成した部分領域のＤＣＴ係数を含む動画構成画像を生成する。
【００７６】
なお、動画生成部６１４は、画像格納部６１０が格納している複数の静止画が移り変わるＭＰＥＧ符号化された動画を生成してよい。具体的には、境界部分領域特定部６４５は、トランジションデータ取得部６１２が取得したトランジションデータに基づいて、一の動画構成画像に含まれる予め定められた複数のマクロブロックが、画像格納部６１０が格納している第１静止画と第２静止画との境界線に交差するか否かを特定する。そして、部分領域画像生成部６７０は、境界部分領域特定部６４５が境界線に交差すると判断したマクロブロックのＤＣＴ係数を、境界線の近傍に存在する第１静止画内のマクロブロックのＤＣＴ係数と、境界線の近傍に存在する第２静止画内のマクロブロックのＤＣＴ係数とを周波数成分毎に平均化することによって生成する。
【００７７】
また、動きベクトル算出部６５０は、トランジションデータ取得部６１２が取得したトランジションデータに基づいて、境界部分領域特定部６４５が境界線に交差しないと判断したマクロブロックと、当該マクロブロックと同一の画像内容である、画像格納部６１０が格納している静止画又は他の動画構成画像に含まれる部分領域との間の位置の差を示す動きベクトルを算出する。そして、動画構成画像生成部６８０は、動きベクトル算出部６５０が算出した動きベクトルで表現されるマクロブロック、及び部分領域画像生成部６７０が生成したマクロブロックのＤＣＴ係数を含む動画構成画像を生成する。
【００７８】
具体的には、Ｉピクチャ生成部６８２は、動画構成画像生成部６８０は、トランジションデータ取得部６１２が取得したトランジションデータに基づいて、画像格納部６１０が格納している静止画から、動画構成画像をＩピクチャとして生成する。また、Ｐピクチャ生成部６８４は、トランジションデータ取得部６１２が取得したトランジションデータ及びＩピクチャ生成部６８２が生成したＩピクチャとに基づいて、動画構成画像をＰピクチャとして生成する。そして、動きベクトル算出部６５０は、トランジションデータ取得部６１２が取得したトランジションデータに基づいて、境界部分領域特定部６４５が境界線に交差しないと判断したマクロブロックと、当該マクロブロックと同一の画像内容である、Ｉピクチャ生成部６８２が生成したＩピクチャに含まれる部分領域との間の位置の差を示す動きベクトルを算出する。そして、Ｐピクチャ生成部６８４は、動きベクトル算出部６５０が算出した動きベクトルで表現されるマクロブロックを含む動画構成画像をＰピクチャとして生成する。
【００７９】
また、Ｂピクチャ生成部６８６は、トランジションデータ取得部６１２が取得したトランジションデータ並びにＩピクチャ生成部６８２が生成したＩピクチャ又Ｐピクチャ生成部６８４が生成したＰピクチャとに基づいて、動画構成画像をＢピクチャとして生成する。そして、動きベクトル算出部６５０は、トランジションデータ取得部６１２が取得したトランジションデータに基づいて、境界部分領域特定部６４５が境界線に交差しないと判断したマクロブロックと、当該マクロブロックと同一の画像内容である、Ｉピクチャ生成部６８２が生成したＩピクチャ又はＰピクチャ生成部６８４が生成したＰピクチャに含まれる部分領域との間の位置の差を示す動きベクトルを算出する。そして、Ｂピクチャ生成部６８６は、動きベクトル算出部６５０が算出した動きベクトルで表現されるマクロブロックを含む動画構成画像をＢピクチャとして生成する。
【００８０】
ＤＣＴ係数量子化部２９２は、動画構成画像生成部２８０がＩピクチャ、Ｐピクチャ、又はＢピクチャとして生成した動画構成画像に含まれるＤＣＴ係数に対して量子化を施すことによって、データ量が圧縮された動画構成画像を生成する。符号化部２９４は、ＤＣＴ係数量子化部２９２が生成した動画構成画像に対して符号化を施すことによって、データ量が圧縮された動画構成画像を含む動画を生成する。画像出力部２０５は、符号化部２９４が生成した動画構成画像を含む動画を、動画生成装置１００の外部に出力する。例えば、画像出力部２０５は、ＤＶＤ等の記録媒体等に出力する。
【００８１】
以上説明したように、本実施例における動画生成装置１００によれば、Ｐ又はＢピクチャを生成するためにＤＣＴ変換をすることないので、画素データを生成してＤＣＴ変換を施す場合に比べてより高速に生成することができる。
【００８２】
図６は、境界線を含むマクロブロックのＤＣＴ係数を算出する処理の一例を示す。本図における処理の一例は、境界線を含むマクロブロックの画像データの算出方法以外は、図３において説明したトランジションデータと同等であるので、相違点を除いて説明を省略する。
【００８３】
ＤＣＴ変換部６９０は、動画構成画像３３１（Ｉピクチャ）に含まれる各マクロブロックに対してＤＣＴ変換を施すことによって、ＤＣＴ係数を算出する。具体的には、ＤＣＴ変換部６９０は、オブジェクトを含む、動画構成画像における縦横それぞれ１６画素のマクロブロック３５４の輝度信号を、縦横それぞれ８画素を有する４つのブロック毎にＤＣＴ係数をそれぞれ算出する。また、ＤＣＴ変換部６９０は、マクロブロック３５４において、Ｃｒ及びＣｂの色差信号のそれぞれについて、縦横それぞれ８画素分のブロックのＤＣＴ係数としてそれぞれ算出する。同様に、オブジェクトの背景となるマクロブロック３５５についても、輝度信号、並びにＣｒ及びＣｂの色差信号のそれぞれのブロックにおいて、それぞれＤＣＴ係数を算出する。
【００８４】
そして、マクロブロック３５４及び３５５の各ブロックについて計算されたＤＣＴ係数を、周波数成分毎に加重平均することによって、マクロブロックの、輝度信号、並びに色差信号Ｃｒ及びＣｂのＤＣＴ係数を算出する。なお、輝度信号の各ブロックにおけるＤＣＴ係数の平均化は、同じ位置のブロックとのＤＣＴ係数の平均化であることは言うまでもない。また、言うまでもなく、マクロブロック３５４のＣｒ信号のＤＣＴ係数とマクロブロック３５５のＣｒ信号のＤＣＴ係数とを平均化し、ブロック３５４のＣｂ信号のＤＣＴ係数とブロック３５５のＣｂ信号のＤＣＴ係数とを平均化する。本図の例では、マクロブロック３５４の輝度信号における１つのブロックのＤＣ成分Ｉ７０１と、マクロブロック３５５の輝度信号における１つのブロックのＤＣ成分Ｉ７０２と、それぞれに対する重み付け係数α及びβを用いて、マクロブロック３７２の輝度信号における１つのブロックのＤＣ成分（α×Ｉ７０１＋β×Ｉ７０２）を算出する例が図示されている。
【００８５】
以上説明した処理によって、境界部を含むマクロブロックの画像内容のＤＣＴ係数を、予め計算されたＤＣＴ係数の平均化によって直接的に算出することができる。したがって、画素データからＤＣＴ変換を施す場合に比べて、境界部を含むマクロブロックの画像内容のＤＣＴ係数をより高速に生成することができる。このようなＤＣＴ係数の平均化によって得られる画像は、背景とオブジェクトとを重ね合わせた画像となるので、例えば背景画像をオブジェクトが移動する画像において、オブジェクトと背景の境界部分を正確に表現された画像にはならない。しかし、動画の閲覧者の目には、移動するオブジェクトの周囲には背景とオブジェクトの画像とが残像として残るので、動くオブジェクトはぼやけて見える。このため、オブジェクトの輪郭を含むマクロブロックの画像が、背景とオブジェクトとが重畳されても、閲覧者は違和感を感じることなく閲覧することができる。
【００８６】
なお、このようなＤＣＴ係数の平均化処理を施す場合、ＩピクチャにおけるオブジェクトとＰ又はＢピクチャにおけるオブジェクトとの、ｘ方向及びｙ方向の位置の差はマクロブロックのサイズ（１６画素）と一致することが望ましい。当該差が一致する場合、Ｐ又はＢピクチャにおいて境界線を含むマクロブロックに含まれるオブジェクトの部分及び背景の部分と一致する部分は、Ｉピクチャにおけるいずれかのマクロブロックに含まれることになるので、マクロブロックの画像内容をより正確に生成することができる。一方、当該差が一致しない場合であっても、境界線を含むマクロブロックに含まれるオブジェクトと一致する面積が最も大きいマクロブロックと、境界線を含むマクロブロックに含まれる背景と一致する面積の画像が最も大きいマクロブロックとについてＤＣＴ係数を平均化してよい。このように、オブジェクトと背景の境界線の近傍に存在するマクロブロックのＤＣＴ係数を平均化することによって、境界線に交差するマクロブロック画像内容を表すＤＣＴ係数を近似的に算出することができる。また、ＤＣＴ係数の平均化における重み付け係数α及びβで重み付けすることによって、オブジェクトの境界部分において視覚的効果を含ませることができる。例えば、複数の動画構成画像において、より後のタイミングで再生される動画構成画像におけるオブジェクトの重み（α）を増加させていくことによって、境界におけるオブジェクトの強調度を変化させることもできる。
【００８７】
図７は、第１及び第２の実施例に係る動画生成装置１００のハードウェア構成の一例を示す。動画生成装置１００は、ホスト・コントローラ１５８２により相互に接続されるＣＰＵ１５０５、ＲＡＭ１５２０、グラフィック・コントローラ１５７５、及び表示装置１５８０を有するＣＰＵ周辺部と、入出力コントローラ１５８４によりホスト・コントローラ１５８２に接続される通信インターフェイス１５３０、ハードディスクドライブ１５４０、及びＣＤ−ＲＯＭドライブ１５６０を有する入出力部と、入出力コントローラ１５８４に接続されるＲＯＭ１５１０、フレキシブルディスク・ドライブ１５５０、及び入出力チップ１５７０を有するレガシー入出力部とを備える。
【００８８】
ホスト・コントローラ１５８２は、ＲＡＭ１５２０と、高い転送レートでＲＡＭ１５２０をアクセスするＣＰＵ１５０５、及びグラフィック・コントローラ１５７５とを接続する。ＣＰＵ１５０５は、ＲＯＭ１５１０、及びＲＡＭ１５２０に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ１５７５は、ＣＰＵ１５０５等がＲＡＭ１５２０内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置１５８０上に表示させる。これに代えて、グラフィック・コントローラ１５７５は、ＣＰＵ１５０５等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【００８９】
入出力コントローラ１５８４は、ホスト・コントローラ１５８２と、比較的高速な入出力装置であるハードディスクドライブ１５４０、通信インターフェイス１５３０、ＣＤ−ＲＯＭドライブ１５６０を接続する。ハードディスクドライブ１５４０は、ＣＰＵ１５０５が使用するプログラム、及びデータを格納する。通信インターフェイス１５３０は、ネットワーク通信装置１５９８に接続してプログラムまたはデータを送受信する。ＣＤ−ＲＯＭドライブ１５６０は、ＣＤ−ＲＯＭ１５９５からプログラムまたはデータを読み取り、ＲＡＭ１５２０を介してハードディスクドライブ１５４０、及び通信インターフェイス１５３０に提供する。
【００９０】
また、入出力コントローラ１５８４には、ＲＯＭ１５１０と、フレキシブルディスク・ドライブ１５５０、及び入出力チップ１５７０の比較的低速な入出力装置とが接続される。ＲＯＭ１５１０は、動画生成装置１００が起動時に実行するブート・プログラムや、動画生成装置１００のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ１５５０は、フレキシブルディスク１５９０からプログラムまたはデータを読み取り、ＲＡＭ１５２０を介してハードディスクドライブ１５４０、及び通信インターフェイス１５３０に提供する。入出力チップ１５７０は、フレキシブルディスク・ドライブ１５５０や、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を接続する。
【００９１】
ＣＰＵ１５０５が実行するプログラムは、フレキシブルディスク１５９０、ＣＤ−ＲＯＭ１５９５、またはＩＣカード等の記録媒体に格納されて利用者によって提供される。記録媒体に格納されたプログラムは圧縮されていても非圧縮であってもよい。プログラムは、記録媒体からハードディスクドライブ１５４０にインストールされ、ＲＡＭ１５２０に読み出されてＣＰＵ１５０５により実行される。
【００９２】
ＣＰＵ１５０５により実行されるプログラムは、第１の実施例における動画生成装置１００を、図１から図４にかけて説明した、指示入力部２００、画像出力部２０５、画像格納部２１０、トランジションデータ取得部２１２、動画生成部２１４として機能させる。また、当該プログラムは、動画生成部２１４を、オブジェクト移動ベクトル算出部２２０、領域移動ベクトル算出部２２５、オブジェクト位置特定部２３０、同一部分領域特定部２４０、動きベクトル算出部２５０、類似部分領域特定部２６０、部分領域画像生成部２７０、動画構成画像生成部２８０、ＤＣＴ変換部２９０、ＤＣＴ係数量子化部２９２、及び符号化部２９４として機能させる。また、当該プログラムは、類似部分領域特定部２６０を、境界部分領域面積算出部２６２及び類似部分領域選択部２６４として機能させ、同一部分領域特定部２４０を、境界部分領域特定部２４５として機能させる。また、当該プログラムは、動画構成画像生成部２８０を、Ｉピクチャ生成部２８２、Ｐピクチャ生成部２８４、及びＢピクチャ生成部２８６として機能させる。また、ＣＰＵ１５０５により実行されるプログラムは、第２の実施例における動画生成装置１００を、図１、図５、及び図６に関連して説明した、指示入力部６００、画像出力部６０５、画像格納部６１０、トランジションデータ取得部６１２、及び動画生成部６１４として機能させる。また、当該プログラムは、動画生成部６１４を、境界部分領域特定部６４５、動きベクトル算出部６５０、境界部分領域面積算出部６６２、部分領域画像生成部６７０、動画構成画像生成部６８０、ＤＣＴ変換部６９０、ＤＣＴ係数量子化部６９２、及び符号化部６９４として機能させる。また、当該プログラムは、動画構成画像生成部６８０を、Ｉピクチャ生成部６８２、Ｐピクチャ生成部６８４、及びＢピクチャ生成部６８６として機能させる。
【００９３】
以上に示したプログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク１５９０、ＣＤ−ＲＯＭ１５９５の他に、ＤＶＤやＰＤ等の光学記録媒体、ＭＤ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシステムに設けたハードディスクまたはＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムを動画生成装置１００に提供してもよい。
【００９４】
以上、実施形態を用いて本発明を説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。上記実施形態に、多様な変更又は改良を加えることができる。そのような変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【図面の簡単な説明】
【００９５】
【図１】動画生成装置１００の利用環境の一例を示す図である。
【図２】動画生成装置１００の第１の実施例におけるブロック構成の一例を示す図である。
【図３】動画生成部２１４が生成する動画データの一例を示す図である。
【図４】動画生成部２１４が生成する動画データの他の一例を示す図である。
【図５】動画生成装置１００の第２の実施例におけるブロック構成の一例を示す図である。
【図６】境界線を含むマクロブロックのＤＣＴ係数を算出する処理の一例を示す図である。
【図７】動画生成装置１００のハードウェア構成の一例を示す図である。
【符号の説明】
【００９６】
１００  動画生成装置
１１０  撮像装置
１３０  動画データ
１５０  ＤＶＤ
１７０  デジタルフォトショップ
１９０  ユーザ
２００  指示入力部
２０５  画像出力部
２１０  画像格納部
２１２  トランジションデータ取得部
２１４  動画生成部
２２０  オブジェクト移動ベクトル算出部
２２５  領域移動ベクトル算出部
２３０  オブジェクト位置特定部
２４０  同一部分領域特定部
２４５  境界部分領域特定部
２５０  動きベクトル算出部
２６０  類似部分領域特定部
２６２  境界部分領域面積算出部
２６４  類似部分領域選択部
２７０  部分領域画像生成部
２８０  動画構成画像生成部
２８２  Ｉピクチャ生成部
２８４  Ｐピクチャ生成部
２８６  Ｂピクチャ生成部
２９０  ＤＣＴ変換部
２９２  ＤＣＴ係数量子化部
２９４  符号化部
６００  指示入力部
６０５  画像出力部
６１０  画像格納部
６１２  トランジションデータ取得部
６１４  動画生成部
６４５  境界部分領域特定部
６５０  動きベクトル算出部
６６２  境界部分領域面積算出部
６７０  部分領域画像生成部
６８０  動画構成画像生成部
６８２  Ｉピクチャ生成部
６８４  Ｐピクチャ生成部
６８６  Ｂピクチャ生成部
６９０  ＤＣＴ変換部
６９２  ＤＣＴ係数量子化部
６９４  符号化部
【図１】
0004633594.tif 000002
【図２】
0004633594.tif 000003
【図３】
0004633594.tif 000004
【図４】
0004633594.tif 000005
【図５】
0004633594.tif 000006
【図６】
0004633594.tif 000007
【図７】
0004633594.tif 000008