IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ▲騰▼▲訊▼科技(深▲セン▼)有限公司の特許一覧

特許7508171仮想オブジェクトのモーションシーケンスの合成方法及び生成方法、並びに合成装置、コンピュータプログラム
<>
  • 特許-仮想オブジェクトのモーションシーケンスの合成方法及び生成方法、並びに合成装置、コンピュータプログラム 図1
  • 特許-仮想オブジェクトのモーションシーケンスの合成方法及び生成方法、並びに合成装置、コンピュータプログラム 図2A
  • 特許-仮想オブジェクトのモーションシーケンスの合成方法及び生成方法、並びに合成装置、コンピュータプログラム 図2B
  • 特許-仮想オブジェクトのモーションシーケンスの合成方法及び生成方法、並びに合成装置、コンピュータプログラム 図2C
  • 特許-仮想オブジェクトのモーションシーケンスの合成方法及び生成方法、並びに合成装置、コンピュータプログラム 図3A
  • 特許-仮想オブジェクトのモーションシーケンスの合成方法及び生成方法、並びに合成装置、コンピュータプログラム 図3B
  • 特許-仮想オブジェクトのモーションシーケンスの合成方法及び生成方法、並びに合成装置、コンピュータプログラム 図4
  • 特許-仮想オブジェクトのモーションシーケンスの合成方法及び生成方法、並びに合成装置、コンピュータプログラム 図5
  • 特許-仮想オブジェクトのモーションシーケンスの合成方法及び生成方法、並びに合成装置、コンピュータプログラム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-21
(45)【発行日】2024-07-01
(54)【発明の名称】仮想オブジェクトのモーションシーケンスの合成方法及び生成方法、並びに合成装置、コンピュータプログラム
(51)【国際特許分類】
   G06T 13/40 20110101AFI20240624BHJP
   G06F 16/73 20190101ALI20240624BHJP
【FI】
G06T13/40
G06F16/73
【請求項の数】 13
(21)【出願番号】P 2022532845
(86)(22)【出願日】2020-11-09
(65)【公表番号】
(43)【公表日】2023-02-06
(86)【国際出願番号】 CN2020127484
(87)【国際公開番号】W WO2021174898
(87)【国際公開日】2021-09-10
【審査請求日】2022-06-01
(31)【優先権主張番号】202010142920.2
(32)【優先日】2020-03-04
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】517392436
【氏名又は名称】▲騰▼▲訊▼科技(深▲セン▼)有限公司
【氏名又は名称原語表記】TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
【住所又は居所原語表記】35/F,Tencent Building,Kejizhongyi Road,Midwest District of Hi-tech Park,Nanshan District, Shenzhen,Guangdong 518057,CHINA
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100150197
【弁理士】
【氏名又は名称】松尾 直樹
(72)【発明者】
【氏名】康 ▲ディ▼
(72)【発明者】
【氏名】李 晶
(72)【発明者】
【氏名】▲陳▼ ▲衛▼▲東▼
(72)【発明者】
【氏名】▲張▼ ▲維▼
(72)【発明者】
【氏名】▲喬▼ ▲亮▼
(72)【発明者】
【氏名】暴 林超
【審査官】中田 剛史
(56)【参考文献】
【文献】特開2019-103728(JP,A)
【文献】特開2002-269580(JP,A)
【文献】米国特許出願公開第2004/0246255(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 13/40
G06F 16/73
(57)【特許請求の範囲】
【請求項1】
電子機器によって実行される、仮想オブジェクトのモーションシーケンスの合成方法であって、
前記仮想オブジェクトのモーションシーケンスの記述情報を取得するステップと、
ビデオ素材から、運動オブジェクトのモーション情報、モーション属性情報及びセマンティック情報を抽出するステップと、
前記運動オブジェクトの前記モーション情報に基づいて、前記ビデオ素材を複数の連続モーションクリップに分割するステップと、
各連続モーションクリップに対応するモーション属性情報及びセマンティック情報を、前記連続モーションクリップに対応する表現ベクトルに変換するステップと、
各連続モーションクリップに対応する表現ベクトルと前記モーション情報とを対応づけて記憶するステップと、
によって連続モーションクリップライブラリを構築するステップと、
前記記述情報と、ビデオ素材で構築された連続モーションクリップライブラリとに基づいて、前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットを決定するステップと、
前記連続モーションクリップセットに基づいて、前記仮想オブジェクトのモーションシーケンスを合成するステップと、を含み、
前記連続モーションクリップライブラリにおける各連続モーションクリップは、前記連続モーションクリップの一意識別子、前記連続モーションクリップのモーション情報、及び前記連続モーションクリップに対応する表現ベクトルを含み、
前記記述情報はオーディオ情報を含み、
前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットを決定するステップは、
前記記述情報に基づいて、前記仮想オブジェクトのモーションシーケンスの表現ベクトルを取得するステップであって、前記仮想オブジェクトのモーションシーケンスの表現ベクトルは、前記モーションシーケンスのセマンティック情報とモーション属性情報とが融合されたものであり、前記モーション属性情報は、前記オーディオ情報から抽出され、運動オブジェクトのモーションリズム、モーションムードのうちの少なくとも1つを含む、ステップと、
前記仮想オブジェクトのモーションシーケンスの表現ベクトルに基づいて、連続モーションクリップライブラリにおける、前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットを決定するステップと
を含む、方法。
【請求項2】
合成されたモーションシーケンスを、仮想オブジェクトにリターゲットするステップをさらに含む、請求項1に記載の方法。
【請求項3】
前記モーション情報は、前記運動オブジェクトの各モーション部分の位置、速度、加速度のうちの少なくとも1つを含み、
前記モーション属性情報及び前記セマンティック情報はそれぞれ、前記ビデオ素材のオーディオデータ及びテキストデータから抽出されるものである、請求項1に記載の方法。
【請求項4】
抽出された運動オブジェクトのモーション情報を次元削減するステップをさらに含む、請求項1に記載の方法。
【請求項5】
前記ビデオ素材を複数の連続モーションクリップに分割するステップは、
前記ビデオ素材の各フレームにおける運動オブジェクトの運動状態を決定するステップと、
少なくとも1つの特定のフレームにおける前記運動オブジェクトの運動状態が静止している場合、前記少なくとも1つの特定のフレームを分割点として、前記ビデオ素材を複数の連続モーションクリップに分割するステップと、を含む、請求項1に記載の方法。
【請求項6】
連続モーションクリップライブラリにおける、前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットを決定するステップは、
前記仮想オブジェクトのモーションシーケンスの表現ベクトルに基づいて、第1のモーションシーケンスクリップの表現ベクトルを取得するステップと、
前記第1のモーションシーケンスクリップの表現ベクトルに基づいて、第1の連続モーションクリップを取得するステップであって、前記第1の連続モーションクリップの表現ベクトルは、前記第1のモーションシーケンスクリップの表現ベクトルと第1の類似度を有する、ステップと、を含み
前記第1の類似度は、連続モーションクリップライブラリにおける他の連続モーションクリップの表現ベクトルと前記第1のモーションシーケンスクリップの表現ベクトルとの類似度以上である、請求項1に記載の方法。
【請求項7】
連続モーションクリップライブラリにおける、前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットを決定するステップは、
前記仮想オブジェクトのモーションシーケンスの表現ベクトルに基づいて、第2のモーションシーケンスクリップの表現ベクトルを取得するステップであって、前記第2のモーションシーケンスクリップは、前記第1のモーションシーケンスクリップの次のモーションシーケンスクリップである、ステップと
前記第1の連続モーションクリップの末尾の複数のフレームのモーション情報、前記第2のモーションシーケンスクリップの表現ベクトルに基づいて、第2の連続モーションクリップを取得するステップであって、前記第2の連続モーションクリップの表現ベクトルは、前記第2のモーションシーケンスクリップの表現ベクトルと第2の類似度を有する、ステップと、を含み
前記第2の類似度は、連続モーションクリップライブラリにおける他の連続モーションクリップの表現ベクトルと前記第2のモーションシーケンスクリップの表現ベクトルとの類似度以上である、請求項6に記載の方法。
【請求項8】
前記仮想オブジェクトのモーションシーケンスを合成するステップは、
前記連続モーションクリップセットを、前記仮想オブジェクトのモーションシーケンスのタイミング情報でスプライシングするステップを含み、
前記スプライシングするステップは、隣接する連続モーションクリップのうち、前側の連続モーションクリップの末尾の複数のフレームと後側の連続モーションクリップの開始の複数のフレームのモーション情報とを融合するステップを含む、請求項1に記載の方法。
【請求項9】
電子機器により実行される、仮想オブジェクトモーションのビデオの生成方法であって、
仮想オブジェクトのモーションシーケンスを記述するオーディオ情報を取得するステップと、
前記オーディオ情報に基づいて、前記仮想オブジェクトのモーションシーケンスを仮想オブジェクトリターゲットして、前記仮想オブジェクトモーションのビデオを出力するステップと、を含み、
前記仮想オブジェクトモーションのビデオは、ビデオ素材で構築された連続モーションクリップライブラリにおける、前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットに基づいて合成されるものであり、
前記連続モーションクリップライブラリにおける各連続モーションクリップは、前記連続モーションクリップの一意識別子、前記連続モーションクリップのモーション情報、及び前記連続モーションクリップに対応する表現ベクトルを含み、
前記連続モーションクリップセットは前記仮想オブジェクトの前記モーションシーケンスの表現ベクトルに基づいて決定され、前記表現ベクトルにおいてセマンティック情報及びモーション属性情報が融合され、前記モーション属性情報は、前記オーディオ情報から抽出され、運動オブジェクトのモーションリズム、モーションムードのうちの少なくとも1つを含み
ビデオ素材から、運動オブジェクトのモーション情報、モーション属性情報及びセマンティック情報を抽出するステップと、
前記運動オブジェクトの前記モーション情報に基づいて、前記ビデオ素材を複数の連続モーションクリップに分割するステップと、
各連続モーションクリップに対応するモーション属性情報及びセマンティック情報を、前記連続モーションクリップに対応する表現ベクトルに変換するステップと、
各連続モーションクリップに対応する表現ベクトルと前記モーション情報とを対応づけて記憶するステップと、
によって前記連続モーションクリップライブラリが構築される、
方法。
【請求項10】
前記仮想オブジェクトは、仮想ニュースキャスター、仮想ゲームアンカー、仮想グリーター、仮想ショッピングガイドのうちのいずれか1つである、請求項9に記載の方法。
【請求項11】
仮想オブジェクトのモーションシーケンスの合成機器であって、
前記仮想オブジェクトのモーションシーケンスの記述情報を取得し、
ビデオ素材から、運動オブジェクトのモーション情報、モーション属性情報及びセマンティック情報を抽出する
うに配置されるモーションシーケンス取得モジュールと、
前記記述情報と、ビデオ素材で構築された連続モーションクリップライブラリとに基づいて、前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットを決定するように配置される類似モーションクリップ取得モジュールと、
前記運動オブジェクトの前記モーション情報に基づいて、前記ビデオ素材を複数の連続モーションクリップに分割し、
前記連続モーションクリップセットに基づいて、前記仮想オブジェクトのモーションシーケンスを合成し、
各連続モーションクリップに対応するモーション属性情報及びセマンティック情報を、前記連続モーションクリップに対応する表現ベクトルに変換し、
各連続モーションクリップに対応する表現ベクトルと前記モーション情報とを対応づけて記憶すること、
によって前記連続モーションクリップライブラリを構築するように配置されるモーション合成モジュールと、を含み、
前記連続モーションクリップライブラリにおける各連続モーションクリップは、前記連続モーションクリップの一意識別子、前記連続モーションクリップのモーション情報、及び前記連続モーションクリップに対応する表現ベクトルを含み、
前記記述情報はオーディオ情報を含み、
前記類似モーションクリップ取得モジュールは、
前記記述情報に基づいて、前記仮想オブジェクトのモーションシーケンスの表現ベクトルを取得するように構成され、
前記仮想オブジェクトのモーションシーケンスの表現ベクトルは、前記モーションシーケンスのセマンティック情報とモーション属性情報とが融合されたものであり、
前記モーション属性情報は、前記オーディオ情報から抽出され、運動オブジェクトのモーションリズム、モーションムードのうちの少なくとも1つを含み、
前記仮想オブジェクトのモーションシーケンスの表現ベクトルに基づいて、連続モーションクリップライブラリにおける、前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットを決定する
ように構成される
機器。
【請求項12】
仮想オブジェクトのモーションシーケンスの合成装置であって、
プロセッサと、
コンピュータコマンドが記憶されているメモリと、を含み、
前記コンピュータコマンドは、前記プロセッサによって実行されるときに、請求項1から10のいずれか一項に記載の方法を実現させる、装置。
【請求項13】
コンピュータプログラムであって、コンピュータ可読記憶媒体に記憶されており、
前記コンピュータプログラムは、プロセッサによって実行されるときに、請求項1から10のいずれか一項に記載の方法を、前記プロセッサを含む電子機器に実現させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、2020年3月4日に中国専利局に出願された、出願番号が第202010142920.2号であって、発明の名称が「仮想オブジェクトのモーションシーケンスの合成方法及び機器」である中国特許出願の優先権を主張し、その全ての内容をここに援用する。
【0002】
本願は、人工知能のサービス分野に関し、具体的には、仮想オブジェクトのモーションシーケンスの合成方法、機器、装置およびコンピュータ可読記憶媒体に関する。本願は、さらに、仮想オブジェクトモーションのビデオの生成方法に関する。
【背景技術】
【0003】
現在、仮想オブジェクト(仮想人物、仮想動物、三次元動画オブジェクトなど)のモーションは、主にアーティストの手動設計に依存している。通常、アーティストは、1つまたは複数のモーション(例えば、仮想オブジェクトの走り、ジャンプ、歩行など)のデザインを完了した後、これをモーションのキーワードと対応づけてデータベースに記憶する。コンピュータは、仮想人物のモーション記述情報、例えば、「小明はしばらく歩いてからジャンプする」を読み取ると、キーワードマッチングを利用して、対応するモーションデザインを読み出して、仮想オブジェクトである「小明」のモーションシーケンスの連結を完了する。
【発明の概要】
【課題を解決するための手段】
【0004】
本願の実施例は、仮想オブジェクトのモーションシーケンスの合成方法、機器、電子機器及びコンピュータ可読記憶媒体を提供する。
【0005】
本願の実施例は、電子機器が実行する仮想オブジェクトのモーションシーケンスの合成方法を提供し、前記仮想オブジェクトのモーションシーケンスの記述情報を取得し、前記記述情報、及びビデオ素材で構築された連続モーションクリップライブラリに基づいて、前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットを決定し、前記連続モーションクリップセットに基づいて、前記仮想オブジェクトのモーションシーケンスを合成することを含み、前記連続モーションクリップライブラリにおける各連続モーションクリップは、前記連続モーションクリップの一意識別子、前記連続モーションクリップのモーション情報、及び前記連続モーションクリップに対応する表現ベクトルを含む。
【0006】
本願の実施例は、電子機器によって実行される仮想オブジェクトモーションのビデオの生成方法を提供し、前記仮想オブジェクトのモーションシーケンスを記述するテキスト情報又はオーディオ情報を取得し、前記テキスト情報又はオーディオ情報に基づいて、前記仮想オブジェクトのモーションシーケンスを仮想オブジェクトにリターゲットして、前記仮想オブジェクトモーションのビデオを出力することを含み、前記仮想オブジェクトモーションのビデオは、ビデオ素材で構築された連続モーションクリップライブラリにおける、前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットに基づいて合成されるものであり、前記連続モーションクリップライブラリにおける各連続モーションクリップは、前記連続モーションクリップの一意識別子、前記連続モーションクリップのモーション情報、及び前記連続モーションクリップに対応する表現ベクトルを含む。
【0007】
本願の実施例は、仮想オブジェクトのモーションシーケンスの合成機器を提供し、前記仮想オブジェクトのモーションシーケンスの記述情報を取得するように配置されるモーションシーケンス取得モジュールと、前記記述情報、及びビデオ素材で構築された連続モーションクリップライブラリに基づいて、前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットを決定するように配置される類似モーションクリップ取得モジュールと、前記連続モーションクリップセットに基づいて、前記仮想オブジェクトのモーションシーケンスを合成するように配置されるモーション合成モジュールと、を含み、前記連続モーションクリップライブラリにおける各連続モーションクリップは、前記連続モーションクリップの一意識別子、前記連続モーションクリップのモーション情報、及び前記連続モーションクリップに対応する表現ベクトルを含む。
【0008】
本願の実施例は、仮想オブジェクトのモーションシーケンスの合成装置を提供し、プロセッサと、コンピュータコマンドが記憶されているメモリとを含み、当該コンピュータコマンドは、プロセッサによって実行されるときに、上記方法を前記装置に実現させる。
【0009】
本願の実施例は、コンピュータコマンドが記憶されているコンピュータ可読記憶媒体を提供し、前記コンピュータコマンドは、プロセッサによって実行されるときに、上記の方法を、前記プロセッサを含む電子機器に実現させる。
【0010】
本願の実施例の技術案をより明確に説明するために、以下で実施例の記述において使用する必要がある図面を簡単に紹介する。以下に記述の図面は本出願の例示的な実施例に過ぎない。
【図面の簡単な説明】
【0011】
図1】仮想オブジェクトに対してモーションシーケンスを設計するシナリオの例示的な模式図である。
図2A】本出願の実施例による仮想オブジェクトのモーションシーケンスの合成方法を示すフローチャートである。
図2B】本出願の実施例による仮想オブジェクトのモーションシーケンスの合成方法を示すフローチャートである。
図2C】本出願の実施例による仮想オブジェクトのモーションシーケンスを合成する装置を示す構成図である。
図3A】本出願の実施例による連続モーションクリップライブラリを構築する動作を示すフローチャートである。
図3B】本出願の実施例による連続モーションクリップライブラリを構築する模式図である。
図4】本出願の実施例による連続モーションクリップライブラリにおける前記モーションシーケンスの少なくとも一部のモーションと類似する連続モーションクリップセットを決定する概略図である。
図5】本出願の実施例による仮想オブジェクトモーションのビデオを生成する方法を示すフローチャートである。
図6】本出願の実施例による仮想オブジェクトのモーションシーケンスを合成する装置を示す構成図である。
【発明を実施するための形態】
【0012】
本出願の目的、技術案及び利点をより明らかにするために、以下、図面を参照しながら本出願による例示的な実施例を詳しく記述する。記述される実施例は本出願の全ての実施例ではなく、単なる一部である。本出願は、本明細書に記載の例示的な実施例によって限定されないことを理解されたい。
【0013】
本明細書及び図面において、実質的に同じまたは類似のステップおよび要素は、同じまたは類似の参照記号で表され、これらのステップ及び元素についての重複記述は省略される。本出願の記述における用語である「第1」「第2」などは、単に記述を区別するために使用され、相対的な重要性またはソートを示すまたは暗示するものとして解釈されない。
【0014】
本願を説明し易くするために、以下に本願に関する概念について説明する。
【0015】
AI(Artificial Intelligence、人工知能)は、デジタルコンピュータ又はデジタルコンピュータによって制御されるマシンを使用して、人間の知能をシミュレート、延長、拡張し、環境を感知し、知識を取得し、知識を使用して最適な結果を得る理論、方法、技術、及びアプリケーションシステムである。言い換えれば、人工知能は、計算機科学の総合的な技術であり、知能の本質を理解し、人間の知能と類似するように反応できる新しいインテリジェントマシンを生み出そうとする。人工知能は、様々なインテリジェントマシンの設計原理と実現方法を研究して、マシンに感知、推論、決定の機能を持たせる。
【0016】
人工知能技術は、総合的な学科であり、ハードウェア技術とソフトウェア技術の両方を含む幅広い分野に係る。人工知能の基本的な技術は、一般的に、センサー、AI専用チップ、クラウドコンピューティング、分散ストレージ、ビッグデータ処理技術、オペレーティング/インタラクションシステム、メカトロニクスなどの技術を含む。人工知能のソフトウェア技術は、主に、コンピュータビジョン技術、音声処理技術、自然言語処理技術、機械学習/深層学習などを含む。
【0017】
自然言語処理(Nature Language processing、NLP)は、コンピュータ科学の分野と人工知能の分野における重要な方向である。それは、人間とコンピュータの間の効果的な通信を自然言語で実現できる様々な理論及び方法を研究している。自然言語処理は、言語学、コンピュータ科学、数学を統合した科学である。したがって、この分野の研究は、自然言語、即ち人々が日常的に使用する言語に関わるため、言語学の研究と密接に関連している。一般的には、自然言語処理技術は、テキスト処理、セマンティック理解、機械翻訳、ロボットの質問応答、知識グラフなどの技術を含む。
【0018】
機械学習(Machine Learning、ML)は、複数の分野の交差学科であり、確率論、統計学、近似論、凸解析、アルゴリズム複雑度理論などの複数の学科に関する。コンピュータがどのように人間の学習行為をシミュレートまたは実現し、新たな知識またはスキルを取得し、従来の知識構造を改めて組織して性能を改善させるかを専門に学習する。機械学習は、人工知能のコアであり、コンピュータに知能を与える基本的な方法であり、人工知能の各分野に応用されている。機械学習及び深層学習は、通常、人工ニューラルネットワーク、信念ネットワーク、強化学習、転移学習、帰納学習、教示学習などの技術を含む。
【0019】
本願の実施例では、以下のモデルはすべてAIモデル、特にAIによるニューラルネットワークモデルであり得る。通常、AIによるニューラルネットワークモデルは、非巡回グラフとして実現されており、ニューロンは、異なる層に配置されている。通常、ニューラルネットワークモデルには、少なくとも1つの隠れ層によって分離された入力層及び出力層を含む。隠れ層は、入力層によって受け取られた入力を、出力層において出力を生成するための表現に変換する。ネットワークノードは、エッジを介して隣接する層におけるノードに完全に結合されるが、各層内のノード同士の間にエッジを有しない。ニューラルネットワークの入力層のノードで受信されたデータは、隠れ層、活性化層、プーリング層、畳み込み層のいずれかを介して出力層のノードに伝播される。ニューラルネットワークモデルの入力/出力は様々な形式を採用し得るが、本願ではそれを制限しない。
【0020】
人工知能技術の研究及び進歩に伴って、人工知能技術は、通常のスマートホーム、スマートウェアラブルデバイス、仮想アシスタント、スマートスピーカー、スマートマーケティング、無人運転、自動運転、ドローン、ロボット、スマート医療、スマートカスタマーサービスなどの複数の分野において研究及び応用が展開されており、人工知能技術は、技術の発展に伴って、より多くの分野において応用され、ますます重要な機能を発揮していく。
【0021】
本願の実施例によって提供されるスキームは、人工知能、自然言語処理及び機械学習などの技術に関し、具体的に、以下の実施例により説明する。
【0022】
アーティストの手動設計に依存して完成された仮想オブジェクトのモーションシーケンスによれば、通常、仮想オブジェクトのモーションが硬直している。さらに、モーションを手動で設計するには、多数のアーティストが必要され、仮想オブジェクトのモーションの作成は、高価なコストがかかる。図1は、仮想オブジェクトに対してモーションシーケンスを設計するシナリオ100の例示的な概略図である。
【0023】
現在、仮想オブジェクト(例えば、仮想人物、仮想動物、三次元動画オブジェクトなど)のモーションは、主にアーティストの手動設計に依存している。例えば、図1の仮想人物である「小明」に対して手振り動作を設計することをアーティストが希望していると仮定され、アーティストは、「小明」による、手振りモーションを行われる期間における、各運動部分(頭、左手、右手、左腕、右腕、左脚、右脚など)のモーション情報を設計する。運動情報には、このフレーム内の各運動部分の三次元座標、回転角、運動加速度などが含まれる。たとえば、第1のフレームでは、「小明」の頭の3次元座標が(X,Y,Z)であり、第2のフレームでは、「小明」の頭の3次元座標が(X’,Y’,Z’)である。
【0024】
アーティストが各フレームでの仮想オブジェクト「小明」についてのモーション設計を完了した後、当該モーションのモーション情報と「手を振る」というモーション名称とを対応付けて記憶する。仮想オブジェクトは、多くのモーションを有する可能性があり、モーションを設計するには大量のアーティストが必要され、仮想オブジェクトのモーションアニメーションの設計には高価なコストがかかる。
【0025】
各単一のモーションの設計が完了した後、計算装置は、仮想オブジェクトである「小明」のモーション記述情報、例えば、「小明はしばらく歩いてから手を振る」を読み取って、キーワードマッチングを利用して、対応するモーションデザイン「歩く」及び「手を振る」を読み出することにより、相応するモーションをトリガーする。よって、仮想オブジェクトである「小明」のモーションシーケンスの連結及び合成を完了する。モーション記述情報にはモーション名称と全く同じキーワードが含まれた場合のみに相応するモーションをトリガーし、その以外の期間において、仮装人物である「小明」は静止のまま保持しているため、合成効果が硬直になってしまう。例えば、モーション記述情報には、「小明はしばらく歩いてから両手を振る」が記載されている場合、モーションライブラリにおいて「両手を振る」というモーションがないため、最終的に合成されたモーションは、「小明」が、両手を振る効果がなく、しばらく歩いてから静止になるおそれがある。
【0026】
本願の実施例は、仮想オブジェクトのモーションシーケンスの合成方法を提供する。当該方法は、実際のビデオからモーション情報を抽出するため、アーティストによる作業量を大幅に軽減することができる。同時に、当該方法は、合成された仮想オブジェクトのモーションが硬直になることを回避するために、連続モーションクリップライブラリからモーション記述情報のキーワードと類似したモーションを探索することもできる。
【0027】
図2Aは、本出願の実施例による仮想オブジェクトのモーションシーケンスの合成方法200を示すフローチャートである。図2Bは、本出願の実施例による仮想オブジェクトのモーションシーケンスの合成方法200を示す模式図である。図2Cは、本出願の実施例による仮想オブジェクトのモーションシーケンスを合成する機器2000を示す構成図である。
【0028】
本出願の実施例による仮想オブジェクトのモーションシーケンスの合成方法200は、任意の電子機器に適用可能である。電子機器は、異なるタイプのハードウェアデバイス、例えば、携帯情報端末(PDA)、オーディオ/ビデオデバイス、携帯電話、動画像専門家グループオーディオレイヤIII(MP3)プレーヤーなどであり得ることを理解されたい。例えば、当該電子機器は、図2C中の仮想オブジェクトのモーションシーケンスを合成する機器2000であってもよい。以下、本出願では、機器2000を例として説明し、当業者であれば、本願はそれに限定されないことを理解されるべきである。
【0029】
図2Cを参照し、機器2000は、プロセッサ2001及びメモリ2002を含んでもよい。プロセッサ2001及びメモリ2002は、バス2003を介して接続され得る。
【0030】
プロセッサ2001は、メモリ2002に格納されたプログラムに従って様々な動作および処理を実行することができる。具体的には、プロセッサ2001は集積回路チップである可能性があり、信号の処理能力を有する。上記のプロセッサは汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)或いはその他のプログラマブルロジックデバイス、離散ゲート或いはトランジスタ論理デバイス、離散ハードウェアコンポーネントであってもよい。本願の実施例に開示された各方法、ステップ及び論理ブロック図を実現或いは実行することができる。汎用プロセッサはマイクロプロセッサであってよく或いは該プロセッサは任意の従来のプロセッサ等であってもよく、X87アーキテクチャや、ARMアーキテクチャであってもよい。
【0031】
メモリ2002にコンピュータコマンドが記憶されており、当該コンピュータコマンドはマイクロプロセッサによって実行されるときに、方法200を実現させる。メモリ2002は揮発性メモリ又は不揮発性メモリであってもよく、又は揮発性と不揮発性メモリをともに含んでもよい。不揮発性メモリは読み取り専用メモリ(ROM)、プログラマブル読み取り専用メモリ(PROM)、消去可能なプログラマブル読み取り専用メモリ(EPROM)、電気的に消去可能なプログラマブル読み取り専用メモリ(EPROM、EEPROM)又はフラッシュメモリであってもよい。揮発性メモリはランダムアクセスメモリ(RAM)であってもよく、外部キャッシュとして使用される。制限ではなく、例示的な説明によって、複数の形式のRAMを利用することができ、例えばスタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、同期ダイナミックランダムアクセスメモリ(SDRAM)、ダブルデータ速率同期ダイナミックランダムアクセスメモリ(DDRSDRAM)、強化型同期ダイナミックランダムアクセスメモリ(ESDRAM)、同期接続ダイナミックランダムアクセスメモリ(SLDRAM)及び直接メモリバスランダムアクセスメモリ(DRRAM)を利用することができる。注意すべきなのは、本出願に記載の方法のメモリはこれらと任意の他の適合なタイプのメモリを含むが、これらに限定されない。
【0032】
図2Aを参照し、まず、動作201において、機器2000は、仮想オブジェクトのモーションシーケンスの記述情報を取得することができる。
【0033】
仮想オブジェクトは仮想人物、仮想動物、三次元動画オブジェクトなどを含む。仮想オブジェクトのモーションシーケンスは、ビデオの各フレームまたは別の表示方法における仮想オブジェクトの各運動部分の運動情報を含んでもよい。運動情報は、運動部分の位置、速度、または加速度のうちの少なくとも1つを含む。仮想人物の場合、運動部分には、頭、両手、および肘などの運動関節を含んでもよい。仮想動物の場合、運動部分には、四肢や、尾などの運動関節を含んでもよい。運動情報は、3d poseとして記憶され得る。本願では、仮想オブジェクト及び運動部分のタイプを制限しない。
【0034】
仮想オブジェクトのモーションシーケンスの記述情報は、図2Bに示す記述情報220であってもよい。記述情報220は、図2Bに示す「小明はしばらく歩いてから両手を振る」のようにテキストの形で仮想オブジェクトのモーション状況のクリップを記載する場合だけでなく、記述情報220は、音声の形で仮想オブジェクトのモーション状況を記述することもできる。例えば、記述情報220は、激越な音楽で仮想オブジェクトのモーション状況を記述するか、又は太鼓のリズムで仮想オブジェクトのモーション状況を記述してもよい。記述情報220がオーディオ情報である場合、記述情報220は仮想オブジェクトの対話、又はシナリオのアサイドなどを含んでもよい。本願では、記述情報220の形を制限しない。
【0035】
次に、動作202において、前記記述情報、及び連続モーションクリップライブラリに基づいて、機器2000は、モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットを決定する。
【0036】
図2Bを参照し、機器2000は、様々な形態で、連続モーションクリップライブラリ210におけるモーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセット230を決定することができる。例えば、機器2000は、連続モーションクリップライブラリ210における各連続モーションクリップのセマンティック情報(例えば、タイトル、字幕、モーションの記述など)、及びモーション属性情報(例えば、モーションリズム、モーションムード)のうちのいずれか1つと、記述情報220における一部のクリップとを比較し、両者の類似度を計算して、そして、類似度の高い上位k個の連続モーションクリップを連続モーションクリップセット230として選択してもよい。なお、kは0よりも大きい整数である。図2Bに示すように、連続モーションクリップセット230は、複数の連続モーションクリップ、例えば、連続モーションクリップ231と232を含んでもよい。
【0037】
本願の実施例では、動作202は、前記記述情報に基づいて、仮想オブジェクトのモーションシーケンスの表現ベクトルを取得し、当該仮想オブジェクトのモーションシーケンスの表現ベクトルに基づいて、連続モーションクリップライブラリにおけるモーションシーケンス内の各モーションと類似する連続モーションクリップセットを決定することをさらに含んでもよく、当該表現ベクトルはモーションシーケンスのセマンティック情報、及びモーション属性情報が融合されたものである。
【0038】
仮想オブジェクトのモーションシーケンスの表現ベクトルは、マルチモダリティの表現ベクトルであってもよい。モダリティ(modality)は、情報の由来または形式を指示してもよい。例えば、記述情報220にテキスト情報とオーディオ情報との両方が含まれる場合、記述情報220のオーディオ情報とテキスト情報等のいずれもモダリティと呼ばれてもよい。モダリティが異なれば、統計的特性も異なり、異なる情報を含む。たとえば、オーディオ情報は、通常、周波数、振幅、音色などで表されるが、テキスト情報は、通常、個別の文で表される。したがって、記述情報220の特徴をよりよく表すために、機器2000は、記述情報220のオーディオ情報、テキスト情報からそれぞれ異なる特徴情報を抽出し、特徴情報に対して融合および関連分析を行うことができる。
【0039】
記述情報220の表現ベクトルを取得するために、機器2000は、記述情報220のオーディオ情報からモーション属性情報を抽出できる。なお、モーション属性情報は、仮想オブジェクトのモーションリズム、モーションムードのうちの少なくとも1つを含んでもよい。本出願の実施例では、モーション属性情報は、仮想オブジェクトのモーションリズム、モーションムードを、1つの表現ベクトルに融合することができる。例えば、機器2000は、Vggishモデルで記述情報220のオーディオ情報を記述情報220の音声特徴の表現ベクトルに変換することができる。機器2000は、オーディオ情報を解析することで、オーディオ情報を代表するCoefficients(Mel-Frequency Cepstral Coefficients、MFCC)特徴又はLog-Mel特徴を構築する。本出願の実施例では、機器2000は、さらに、MFCC特徴又はLog-Mel特徴に対してタイミング融合を行うことで、より代表的な表現ベクトルを構築することができる。もちろん、機器2000は、他のニューラルネットワークモデルを使用して記述情報220のオーディオ情報の表現ベクトルを取得してもよく、本出願は、それを制限しない。
【0040】
記述情報220の表現ベクトルを取得するために、機器2000は、記述情報220の文字情報からセマンティック情報を抽出することができる。機器2000は、文字の形でモダリティ情報(例えば、図2Bの「小明はしばらく歩いてから両手を振る」)をさらに解析することで、記述情報220のセマンティック情報を取得し、さらに、それを記述情報220の表現ベクトルに変換することができる。例えば、機器2000は、BERT(Bidirectional Encoder Representations from Transformers、トランスフォーマーによる双方向のエンコード表現)アルゴリズムで、記述情報220の文字情報をそれぞれ複数の単語に分割し、次に、これらの単語を単語の埋め込み(word embedding)で単語ベクトルに変換し、最後、これらの単語ベクトルを記述情報220の表現ベクトルとしてスプライシングする。BERTアルゴリズムにおける符号化ニューラルネットワークモデル(Encoder)は、これらの単語ベクトルを符号化隠れ状態ベクトルに変換することができる。幾つかの実施例において、符号化ニューラルネットワークモデルは、長短期記憶ニューラルネットワークモデルとして実現され、符号化ニューラルネットワークモデルは、さらに、任意の単語ベクトルを符号化することで符号化隠れ状態ベクトルを取得することができるニューラルネットワークモデルとして実現され得ることを理解されたい。BERTアルゴリズムにより、機器2000は記述情報220におけるコンテクストに関連する自然言語特徴を抽出でき、当該アルゴリズムは、単語を単語ベクトルにマッピングすることで、セマンティックが近い単語に対応する単語ベクトルもより類似する。もちろん、機器2000は、他のニューラルネットワークモデルを使用して記述情報220のセマンティック情報の表現ベクトルを取得してもよいが、本願は、それを制限しない。
【0041】
記述情報220は文字情報及びオーディオ情報の両方を含む場合、文字情報の表現ベクトル及びオーディオ情報の表現ベクトルは、相補的かつ冗長であり得る。機器2000は、記述情報220の2つの表現ベクトルを様々な方式でさらに処理することで、文字情報及びオーディオ情報の両者を表可能な表現ベクトルを取得することができる。通常、複数のモダリティのデータに含まれる特徴情報を実数値ベクトルにデジタル化するプロセスは、マルチモダリティ表現と呼ばれる。マルチモダリティ表現はマルチモダリティ融合表現、及びマルチモダリティディープ表現を含んでもよい。なお、異なるモダリティの特徴を(例えば、シンプルなスプライシング)単一のベクトルに統合するプロセスはマルチモダリティ融合表現と呼ばれ得、統合された単一ベクトルはマルチモダリティ融合表現ベクトルと呼ばれ得る。マルチモダリティ融合表現ベクトルをさらに分析することで得られるベクトルはマルチモダリティディープ表現ベクトルと呼ばれ得る。例えば、ニューラルネットワークモデルにより記述情報220のマルチモダリティ融合表現ベクトルをより高いレベルのベクトルにさらに抽象化され得、当該ベクトルはマルチモダリティディープ表現ベクトルとも呼ばれる。マルチモダリティディープ表現ベクトルは、多次元浮動小数点数ベクトル、例えば、128ビット浮動小数点型ベクトルであり得る。本願に記載された表現ベクトルはマルチモダリティ融合表現ベクトルであってもよいし、マルチモダリティディープ表現ベクトルであってもよい。本出願では、記述情報220の表現ベクトルの具体的な表現方式を制限しない。
【0042】
マルチモダリティディープ表現ベクトルは、ベクトルの形で記述情報220を表し、且つ複数のモダリティの情報をカバーするため、マルチモダリティディープ表現ベクトルを使用することにより、連続モーションクリップをより速くより正確に探索することができ、連続モーションクリップセット230をより便利に得ることができる。
【0043】
連続モーションクリップライブラリ210は、ビデオ素材に基づいて構築される。これらのビデオ素材は、既存の映画、テレビドラマ、短編映画などであってもよいし、オンラインビデオ素材であってもよい。機器2000はビデオ素材から運動オブジェクト(例えば、真の俳優)の1つ又は複数の連続モーションの運動情報を抽出して連続モーションクリップライブラリ210を構築する。例えば、1つの連続モーションは、運動オブジェクトが1つのステップを完了するモーション、又はジャンプから着陸までのモーションなどを含む。連続モーションクリップはこの完全な連続モーションのモーション情報を含む。もちろん、各連続モーションの時間長は同じであってもよいし、異なってもよいが、本出願は、それを制限しない。
【0044】
連続モーションクリップライブラリ210における各連続モーションクリップは、連続モーションクリップの一意識別子、連続モーションクリップのモーション情報及び連続モーションクリップに対応する表現ベクトルを含む。連続モーションクリップに対応する表現ベクトルは、上記のマルチモダリティ融合表現ベクトル、又はマルチモダリティディープ表現ベクトルであってもよく、当該モーションクリップにおけるビデオ素材のモーション属性情報及びセマンティック情報だけではなく、画面情報さえも融合する。なお、モーション属性情報及びセマンティック情報はビデオ素材のオーディオデータ及びテキストデータから抽出される。図2Bに連続モーションクリップセット230における2つの連続モーションクリップを概略的に示している。例えば、連続モーションクリップ231の場合、その表現ベクトルは「歩く」セマンティック情報、及びモーション属性情報(即ち、運動オブジェクトが歩く場合におけるモーションリズム及びモーションムードなど)を融合する。連続モーションクリップ232の表現ベクトルは「手を振る」というセマンティック情報を融合している。
【0045】
これにより、機器2000は、仮想オブジェクトのモーションシーケンスの表現ベクトル内の各モーションシーケンスクリップの表現ベクトルと、連続モーションクリップライブラリ210における各連続モーションシーケンスクリップに対応する表現ベクトルとを比較することができる。2つの表現ベクトルの間の距離が小さいほど、2つの表現ベクトルの間の類似性が高くなる。これにより、仮想オブジェクトのモーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセット230を得ることができる。
【0046】
最後に、動作203において、前記連続モーションクリップセットに基づいて、機器2000は記仮想オブジェクトのモーションシーケンスを合成する。
【0047】
記述情報220で記述されるモーションシーケンス内の各モーションのモーション情報と、連続モーションクリップ231又は232とは類似すれば、仮想オブジェクトの運動シーケンスは、連続モーションクリップ231及び232におけるモーション情報を使用して表現してもよい。これにより、機器2000は、連続モーションクリップセット230に応じて、「小明はしばらく歩いてから両手を振る」という記述情報220のモーション情報に「歩く」及び「手を振る」というモーション情報を含み得ることを予測することができる。機器2000は、連続モーションクリップセット230を仮想オブジェクトのモーションシーケンスのタイミング情報の順序でスプライシングすることで、仮想オブジェクトのモーションシーケンスを合成することができる。
【0048】
本願の実施例では、機器2000は、合成されたモーションを、仮想ニュースキャスター、仮想ゲームアンカー、仮想グリーター、仮想ショッピングガイドのいずれか1つにリターゲット(retarget)することができる。リターゲット、特に、運動リターゲット(motion retarget)は、オブジェクトのサイズ及び比率(例えば、手、脚、胴など)が異なる場合、運動情報を1つのソースキャラクターから別のターゲットキャラクターにコピーするプロセスである。例えば、ビデオ素材において、1.6メートルの俳優が歩いているが、仮想オブジェクトは1.8メートルの仮想グリーターである可能性がある。従って、仮想グリーターのモーション状態によりよく適合するように、俳優のモーション情報を変化させる必要がある。運動リターゲットは、いくつかの制約に従って、あるセットの骨格のモーションを別のセットの骨格に遷移させてもよく、異なる骨格の長さ、比例が異なる場合がある。一般的な制約について、たとえば、足が地面上に位置しなければならないことや骨格のそれぞれによる回転角がそれぞれのしきい値を超えてはいけないことがある。
【0049】
方法200は、ビデオ素材からモーション情報を推定することで、仮想オブジェクトのモーションがアーティストに依存する問題を解決した。方法200は、インターネット上の大量のビデオデータ、またはオンラインビデオデータさえも利用することができるため、連続モーションクリップライブラリ210のコンテンツはより豊富であり、繰り返される可能性が低い。セマンティック情報及びモーション属性情報を融合した表現ベクトルの比較により、合成されたモーションシーケンスのリズムは、文字データにおけるセマンティックに合わせることに加えて、音声のリズム及びムードに合わせることもでき、合成されたモーションシーケンスはより自然である。方法200は、例えば、仮想ニュースキャスターが減速してある単語を強調する場合に、一字が話されるたびに手が上下に振られることを実現することができる。方法200は、連続モーションクリップライブラリ210からモーション記述情報のキーワードと類似するモーションを探索することもでき、これにより、より多くの候補連続モーションクリップを取得でき、ひいては、合成された仮想オブジェクトが大分の期間において硬直した静止状態にあることを回避し、仮想現実のアプリケーションシナリオでより柔軟なシミュレーション効果を実現する。
【0050】
図3Aは、本出願の実施例による連続モーションクリップライブラリを構築する動作300を示すフローチャートである。図3Bは、本出願の実施例による連続モーションクリップライブラリを構築する模式図である。
【0051】
図3Bを参照し、ビデオライブラリ310は、複数のビデオ素材のビデオ情報を含み、なお、各ビデオ素材のビデオ情報は、ビデオ素材の一意識別子(id)、音楽、せりふ、字幕、ビデオファイルなどを含む。ビデオライブラリ310は、関係データベースでビデオ情報を記憶するデータベースであってもよい。
【0052】
連続モーションクリップライブラリ210は、これらの連続モーションクリップの表現ベクトルをキーとして、モーション情報を値としてキー値ペア(key-value pairs)を構築することができ、連続モーションクリップライブラリ210は、連続モーションクリップの表現ベクトルとモーション情報とを対応づけて記憶することができる。連続モーションクリップライブラリ210は、近似最近傍(Approximate Nearest Neighbor、ANN)探索データベースであってもよい。近似最近傍探索ライブラリにおいて、近似最近傍探索で探索キー(例えば、仮想オブジェクトのモーションシーケンスの表現ベクトル)と類似する1つ又は複数のデータを快速に見つけることができる。具体的には、近似最近傍探索は、大量のデータ間で形成されるクラスター化分布の特性を利用し、データに対してクラスタリング方法を分析することで連続モーションクリップライブラリ210における連続モーションクリップに対応する表現ベクトルを分類又は符号化する。続いて、近似最近傍探索は、クエリキーに応じて、それが属するデータカテゴリを予測し、カテゴリの一部またはすべてを探索結果として返す。本出願の実施例では、連続モーションクリップライブラリ210は、Annoy、Faissなどのツールを利用して近似最近傍探索ライブラリとして構築され得る。もちろん、他のツールを使用して近似最近傍探索ライブラリを構築することもでき、本出願は、それを制限しない。連続モーションクリップライブラリ210は、他のタイプのデータベース、例えば、経典的な関係データベースであってもよい。
【0053】
図3Bに連続モーションクリップライブラリ210及びビデオライブラリ310をそれぞれ示したが、当業者であれば、連続モーションクリップライブラリ210は、ビデオライブラリ310から生成される独立したデータベースであってもよいし、ビデオライブラリ310の一部であってもよく、相応する情報を記憶できればよいことを理解されるべきである。
【0054】
ビデオライブラリ310からこのような連続モーションクリップライブラリ210を構築するために、機器2000は図3A中の動作301-304を実行することができる。
【0055】
図3Aを参照し、動作301において、機器2000は、ビデオ素材から運動オブジェクトのモーション情報、モーション属性情報及びセマンティック情報を抽出することができる。このように、モーション情報は、運動部分位置、速度、加速度のうちの少なくとも1つを含んでもよい。モーション属性情報は、運動オブジェクトのモーションリズム、モーションムードのうちの少なくとも1つを含んでもよい。なお、モーション属性情報及びセマンティック情報は、ビデオ素材のオーディオデータ及びテキストデータから抽出されるものである。モーション情報はビデオ素材における画面データから抽出されるものである。例えば、機器2000は、ビデオ素材の各フレーム画面から運動部分(例えば、頭、手、および肘などの人体の関節)の3次元座標を推定することができる。次に、機器2000は、隣接する2つのフレーム又は複数のフレーム間の同一の運動部分の3次元座標から、当該運動部分の回転角、加速度(回転加速度、直線加速度を含む)、速度などのパラメータを推定することができる。
【0056】
本出願の実施例では、動作301は、抽出された運動オブジェクトのモーション情報を次元削減することをさらに含むことができる。例えば、機器2000は、主成分分析アルゴリズム(Principal Components Analysis、PCA)により、ビデオから推定された全ての人体の関節の位置、速度、加速度などの特徴を次元削減することで、モーション情報の最も重要なコンポーネントのみを保留し、ノイズを破棄することができ、抽出されたモーション情報はよりスムーズで安定する。
【0057】
また、セマンティック情報、及びモーション属性情報は、図2A及び図2Bに説明された形態で表現ベクトルと表現され得、当該表現ベクトルはタイミング情報を含む。
【0058】
動作302において、機器2000は、前記運動オブジェクトのモーション情報に基づいて、前記ビデオ素材を複数の連続モーションクリップに分割する。ビデオの時間長は、最短で数分、最長で数時間である。時間長が長すぎる(フレームが多すぎる)場合、完全なビデオのモーション情報のセマンティック、リズムなどがニーズを満たすことは難しく、大量の計算につながる可能性があり、特徴類似度の比較には役立たない。モーションを合成しやすいために、機器2000は、モーションに従って、多すぎるフレームを含むこれらのモーション情報を、より少ないフレームを含むモーション情報クリップに分割することができ、このようなモーション情報クリップは、連続モーションクリップである。各連続モーションクリップは、運動オブジェクトが完全なモーションを完了する運動情報、例えば、ジャンプから着陸までを含む。機器2000は、リズム、セマンティックに合わせるモーションをより容易に見つけ、ひいては、より多様な動作を合成することができる。
【0059】
本出願の実施例では、動作302は、ビデオ素材の各フレームにおける運動オブジェクトの運動状態を決定し、少なくとも1つの特定のフレームにおける前記運動オブジェクトの運動状態が静止している場合に、少なくとも1つの特定のフレームを分割点としてビデオ素材を複数のモーションクリップに分割することをさらに含むことができる。例えば、機器2000は、サポートベクターマシン(SVM)分類器をトレーニングして、各フレームの仮想オブジェクトが運動状態にあるか静止状態にあるかを判断することができる。SVM分類器は、教師あり機械学習アルゴリズムにより入力情報を分類することができる。あるフレームの仮想オブジェクトが静止状態にある場合、当該フレームは、1つの特定のフレームと見なすことができる。次に、機器2000は、2つの特定のフレームの間の複数のフレームが1つの完全なモーションを構成すると決定することができる。又は、機器2000は、さらに、1つの標準モーションフレームをプリセットすることもでき、当該フレームは1つのモーションの開始状態及び終了状態(1つのモーションの開始状態と終了状態が同じであると仮定され、例えば、ジャンプの開始状態と終了状態はじっと立っていることである)。次に、機器2000は、各フレームのモーション情報と標準モーションフレームのモーション情報とを比較し、第nのフレーム、及び第n+kのフレームの両方は標準モーションフレームにおけるモーション情報と類似すると、第nのフレームと第n+kのフレームの間の複数のフレームが1つの完全なモーションを構成すると見なすことができる。機器2000は、さらに、上記の2つの方法を組み合わせて、例えば、上方に跳ね返る過程において、人物がまだ着陸していない場合におけるモーション情報が、標準モーションフレームにおける運動情報と同じまたは類似している場合があり、この場合、静止状態及び運動状態の分類情報により、人はまだ動いており、完全なモーションが完了していないと決定することができる。従って、この2つを組み合わせることで、より良い分類結果を得ることができる。当業者は、ビデオ素材の分割が他の多くの方式で行われ得ることを理解されるべきであり、本願では、それに限定されない。
【0060】
動作303において、機器2000は、各連続モーションクリップに対応するモーション属性情報、及びセマンティック情報を、連続モーションクリップに対応する表現ベクトルに変換することができる。機器2000は、上記の分類結果に従ってモーションシーケンス、及びそれに対応するセマンティック情報、モーション属性情報をクリップに分割し、それとモーション情報とを関連付けする。本願の実施例では、ビデオ素材におけるセマンティック情報及びモーション属性情報を表す表現ベクトルは、上記の分類方式に従って、複数の表現ベクトルに分割することができ、各表現ベクトルは1つの連続モーションクリップに対応し、それは、当該連続モーションクリップのセマンティック情報、モーション属性情報を融合する。
【0061】
動作304において、機器2000は、各モーションクリップに対応する表現ベクトル、モーションクリップの一意識別子、モーション情報を対応づけて記憶する。例えば、これらの情報を対応づけて連続モーションクリップライブラリ210に記憶する。
【0062】
これにより、動作301ないし動作304により、機器2000は連続モーションクリップライブラリ210を快速に取得することができる。
【0063】
図4は、本出願の実施例による連続モーションクリップライブラリにおける前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットを決定する模式図である。
【0064】
例えば、図4を参照し、機器2000は仮想オブジェクトのモーションシーケンスの表現ベクトルに基づいて、第1のモーションシーケンスクリップの表現ベクトルを取得することができる。次に、機器2000は、第1のモーションシーケンスクリップの表現ベクトルに基づいて、第1の連続モーションクリップを取得することができる。第1の連続モーションクリップの表現ベクトルは、前記第1のモーションシーケンスクリップの表現ベクトルと第1の類似度を有する。なお、第1の類似度は、連続モーションクリップライブラリにおける他の連続モーションクリップの表現ベクトルと第1のモーションシーケンスクリップの表現ベクトルとの類似度よりも大きい。
【0065】
例えば、連続モーションクリップライブラリ210に100個の連続モーションクリップを含むと仮定され、各連続モーションクリップの時間長/代表されるフレーム数は異なる場合がある。機器2000は、第1のモーションシーケンスクリップを取得する際に、仮想オブジェクトのモーションシーケンスの表現ベクトルから、連続モーションクリップライブラリ210におけるいずれか1つの連続モーションクリップの時間長と同じな表現ベクトルを、候補モーションシーケンスクリップAの表現ベクトルとして切り取り、次に、候補モーションシーケンスクリップAの表現ベクトルと当該連続モーションクリップの表現ベクトルとの間の類似度A’を計算することができる。続いて、機器2000は、仮想オブジェクトのモーションシーケンスの表現ベクトルから、別の連続モーションクリップの時間長と同じな表現ベクトルを、候補モーションシーケンスクリップBの表現ベクトルとして切り取り、次に、候補モーションシーケンスクリップBの表現ベクトルと当該連続モーションクリップの表現ベクトルとの間の類似度B’を計算することができる。機器2000は、類似度A’と類似度B’とを比較し、100個の連続モーションクリップの比較が完了するまで、類似度が高い候補モーションシーケンスクリップを選択し、それを他の候補モーションシーケンスクリップと比較し続けることにより、類似度が最も高い連続モーションクリップを第1の連続モーションクリップとして選択する。時間長が異なる連続モーションクリップは、対応する候補モーションシーケンスクリップと同じ類似性を持っている場合、時間長が短い連続モーションクリップを第1の連続モーションクリップとして選択する。
【0066】
次に、機器2000は、仮想オブジェクトのモーションシーケンスの表現ベクトルに基づいて、第2のモーションシーケンスクリップの表現ベクトルを取得することができ、第2のモーションシーケンスクリップは第1のモーションシーケンスクリップの次のモーションシーケンスクリップである。次に、機器2000は、第1の連続モーションクリップの末尾の複数のフレームのモーション情報、第2のモーションシーケンスクリップの表現ベクトルに基づいて、第2の連続モーションクリップを取得することができる。なお、第2の連続モーションクリップの表現ベクトルは、第2のモーションシーケンスクリップの表現ベクトルと第2の類似度を有し、第2の類似度は、連続モーションクリップライブラリにおける他のモーションクリップの表現ベクトルと第2のモーションシーケンスクリップの表現ベクトルとの類似度以上である。図4に示すように、第1の連続モーションクリップの灰色の部分は、第1の連続モーションクリップの末尾のnフレームを示す。第1の連続モーションクリップの表現ベクトルは、仮想オブジェクトのモーションシーケンスにおける第1のフレームから第kのフレームまでの表現ベクトルと最も類似していると仮定されている。第2の連続モーションクリップを取得する際に、機器2000は、第k-nのフレームから仮想オブジェクトのモーションシーケンスの表現ベクトルを、第2の連続モーションクリップを取得するための候補モーションシーケンスクリップとして切り取り始めることができる。例えば、候補モーションクリップCと同じ時間長の第2の連続モーションクリップを切り取る必要があり、且つ候補モーションクリップCにmフレームがあると仮定されている。仮想オブジェクトのモーションシーケンスの表現ベクトルにおける第k-nのフレームから第k-n+mのフレームまでの表示情報を切り取ることができる。そして、機器2000は、第1の連続モーションクリップの取得と類似する方式により、第2の連続モーションクリップを得ることができる。
【0067】
本願は、上記の第1の連続モーションクリップ及び第2の連続モーションクリップを取得する方式に限定されない。例えば、機器2000は、連続モーションクリップライブラリ210における連続モーションクリップを同じ時間長に圧縮し、次に、固定長さのモーションシーケンスクリップの表現ベクトルと比較する。又は、機器2000は、さらに、近傍探索ライブラリの特性を利用して第1の連続モーションクリップ及び第2の連続モーションクリップの探索を完了してもよい。
【0068】
連続モーションクリップセット230を取得した後に、機器2000は、連続モーションクリップセット230における連続モーションクリップをスプライシングすることができる。なお、前記スプライシングは、隣接する連続モーションクリップのうちの前側の連続モーションクリップの末尾の複数のフレームと、後側の連続モーションクリップの開始の複数のフレームのモーション情報とを融合することを含む。例えば、機器2000は、合成モーションが異なる連続モーションクリップ間でスムーズに遷移できるように、各連続モーションクリップの末尾のnフレームと、後側の連続モーションクリップの開始のnフレームの回転角に対して加重平均を行うことができ、なお、nは偶数である。例えば、第1の連続モーションクリップが仮想オブジェクトのモーションシーケンス内の第iのフレームから第i+l1のフレームまでのモーションを示すと仮定されている。第2の連続モーションクリップは、仮想オブジェクトのモーションシーケンスにおける第i+l1-nのフレームから第i+l1-n+l2フレームまでのモーションを示す。連続モーションクリップがスムーズに遷移するために、機器は、第1の連続モーションクリップのうちの仮想オブジェクトのモーションシーケンスにおける第i+l1-nフレームから第i+l1フレームまでのnフレームを示すモーション情報と、第2の連続モーションクリップのうちの仮想オブジェクトのモーションシーケンスにおける第i+l1-nフレームから第i+l1フレームまでのnフレームを示すモーション情報とを融合する。例えば、機器2000は、以下の式を使用して現在の連続モーションクリップの第xフレームの各運動部分の出力回転角
【数1】
を計算することができる。
【0069】
【数2】
【0070】
【数3】
は1つのベクトルであり、前側の連続モーションクリップの第xのフレーム仮想オブジェクトのモーション情報を、各運動部分のモーション情報は回転角で表されることができる。例えば、ベクトル
【数4】
における各要素は、人体のある関節の回転角を表す。
【数5】
は現在のモーションクリップの第xのフレームの各運動部分の回転角を表す。xの値の範囲は
【数6】
である。例えば、現在の連続モーションクリップが第2の連続モーションクリップであると仮定されている。x=0の場合、
【数7】
は第1の連続モーションクリップの第l1-0.5*nのフレームの仮想オブジェクトの各モーション部分の回転角である(それは第1の連続モーションクリップにより近似する場合における仮想オブジェクトのモーションシーケンスにおける第i+l1-0.5*nのフレームのモーション情報を表す)。
【数8】
は第2の連続モーションクリップの第0.5*nのフレームの仮想オブジェクトの各モーション部分の回転角である(それは、第2の連続モーションクリップにより近似する場合における仮想オブジェクトのモーションシーケンスにおける第i+l1-0.5*nのフレームのモーション情報を表す)。この場合、x=0を上記の式に代入することで、仮想オブジェクトのモーションシーケンスにおける第i+l1-0.5*nのフレームの回転角を得ることができる。
【0071】
上記の式により、前側の連続モーションクリップの末尾のnフレームと後側の連続モーションクリップの開始nフレームの回転角に対して加重平均を行い、前側の連続モーションクリップの重みはxの増加に伴い減少し、現在の連続モーションクリップの重みはxの増加にとともに増加することを実現する。
【0072】
図5は、本出願の実施例による仮想オブジェクトモーションのビデオを生成する方法500を示すフローチャートである。
【0073】
動作501において、機器2000は、前記仮想オブジェクトのモーションシーケンスを記述するテキスト情報又はオーディオ情報を取得することができる。仮想オブジェクトのモーションシーケンスを記述するテキスト情報又はオーディオ情報は、方法200における記述情報220であり得る。例えば、テキスト情報は、「小明はしばらく歩いてから両手を振る」ことであってもよい。オーディオ情報は、激越な音楽で仮想オブジェクトモーションのムードを記述するか、又は太鼓のリズムで仮想オブジェクトのリズムを記述してもよい。
【0074】
動作502において、機器2000は、テキスト情報又はオーディオ情報に基づいて、仮想オブジェクトのモーションシーケンスを、仮想オブジェクトにリターゲットすることで、仮想オブジェクトモーションのビデオを出力する。
【0075】
なお、前記仮想オブジェクトモーションのビデオは、ビデオ素材で構築された連続モーションクリップライブラリにおけるモーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットに基づいて合成されるものであり、前記連続モーションクリップライブラリにおける各連続モーションクリップは前記連続モーションクリップの一意識別子、前記連続モーションクリップのモーション情報及び前記連続モーションクリップに対応する表現ベクトルを含む。方法200と同様に、機器2000は、テキスト情報又はオーディオ情報を仮想オブジェクトのモーションシーケンスの表現ベクトルに変換し、次に、連続モーションクリップライブラリ210において類似する連続モーションクリップセット230を探索することができる。連続モーションクリップセット230のスプライシングを完了した後に、機器2000は仮想オブジェクトのモーションシーケンスを取得する。
【0076】
機器2000は、合成されたモーションを、仮想ニュースキャスター、仮想ゲームアンカー、仮想グリーター、仮想ショッピングガイドのいずれか1つにリターゲット(retarget)することができる。リターゲットは、オブジェクトのサイズ及び比率(例えば、手、脚、胴など)が異なる場合に、運動情報を1つのソースキャラクターから別のターゲットキャラクターにコピーしてもよい。例えば、オンラインビデオ素材において、1.6メートルの俳優が歩いているが、仮想オブジェクトは1.8メートルの仮想グリーターである可能性がある。従って、仮想グリーターのモーション状態によりよく適合するように、俳優の運動情報を変化させる必要がある。運動リターゲットは、いくつかの制約に従って、あるセットの骨格のモーションを別のセットの骨格に遷移させてもよく、異なる骨格の長さ、比例が異なる場合がある。一般的な制約は、たとえば、足が地面上に位置しなければならないことや骨格のそれぞれによる回転角がそれぞれのしきい値を超えてはいけないことがある。リターゲットを完了した後に、仮想オブジェクトモーションのビデオを出力することができる。
【0077】
方法500は、テキスト情報又はオーディオ情報を入力するだけで、テキスト情報に適するセマンティック情報、及びオーディオ情報に適するモーションリズム情報の仮想オブジェクトのビデオを出力することができ、そして、当該ビデオにおいて、仮想オブジェクトのモーションは自然で、硬直しないものである。
【0078】
図6は、本出願の実施例による仮想オブジェクトのモーションシーケンスを合成する機器2000を示す構成図である。
【0079】
機器2000は、モーションシーケンス取得モジュール601、類似モーションクリップ取得モジュール602、及びモーション合成モジュール603を含んでもよい。
【0080】
モーションシーケンス取得モジュール601は、前記仮想オブジェクトのモーションシーケンスの記述情報を取得するように配置されることができる。仮想オブジェクトは、仮想人物、仮想動物、三次元動画オブジェクトなどを含む。仮想オブジェクトのモーションシーケンスは、ビデオ又は他の表示方式の各フレームでの仮想オブジェクトの各運動部分のモーション情報を含んでもよい。これらのモーション情報は、運動部分位置、速度、加速度のうちの少なくとも1つを含む。
【0081】
類似モーションクリップ取得モジュール602は、前記記述情報、及びビデオ素材で構築された連続モーションクリップライブラリに基づいて、前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットを決定するように配置されてもよい。本出願の実施例では、類似モーションクリップ取得モジュール602は、さらに、前記記述情報に基づいて、前記モーションシーケンスのセマンティック情報とモーション属性情報とを融合した前記仮想オブジェクトのモーションシーケンスの表現ベクトルを取得し、前記仮想オブジェクトのモーションシーケンスの表現ベクトルに基づいて、連続モーションクリップライブラリにおける前記モーションシーケンス内の少なくとも一部のモーションと類似する連続モーションクリップセットを決定するように配置されてもよい。なお、前記連続モーションクリップライブラリにおける各連続モーションクリップは、前記連続モーションクリップの一意識別子、前記連続モーションクリップのモーション情報、及び前記連続モーションクリップに対応する表現ベクトルを含む。
【0082】
モーション合成モジュール603は、前記連続モーションクリップセットに基づいて、前記仮想オブジェクトのモーションシーケンスを合成するように配置されてもよい。本願の実施例では、機器2000は、さらに、合成されたモーションを仮想ニュースキャスター、仮想ゲームアンカー、仮想グリーター、仮想ショッピングガイドのうちのいずれか1つ仮想オブジェクトにリターゲット(retarget)ことができる。リターゲット、特に、運動リターゲット(motion retarget)は、オブジェクトのサイズ及び比率(例えば、手、脚、胴など)が異なる場合に、運動情報を1つのソースキャラクターから別のターゲットキャラクターにコピーするプロセスである。例えば、ビデオ素材において、1.6メートルの俳優が歩いているが、仮想オブジェクトは1.8メートルの仮想グリーターである可能性がある。従って、仮想グリーターのモーション状態によりよく適合するように、俳優のモーション情報を変化させる必要がある。運動リターゲットは、いくつかの制約に従って、あるセットの骨格のモーションを別のセットの骨格に遷移させてもよく、異なる骨格の長さ、比例が異なる場合がある。一般的な制約は、たとえば、足が地面上に位置しなければならないことや骨格のそれぞれによる回転角がそれぞれのしきい値を超えてはいけないことがある。
【0083】
機器2000は、ビデオ素材から運動情報を推定することで、仮想オブジェクトのモーションがアーティストに依存する問題を解決した。機器2000は、連続モーションクリップライブラリからモーション記述情報のキーワードと類似するモーションを探索することもでき、これにより、より多くの候補連続モーションクリップを取得でき、ひいては、合成された仮想オブジェクトが大分の期間において硬直した静止状態にあることを回避し、仮想現実のアプリケーションシナリオでより柔軟なシミュレーション効果を実現する。
【0084】
本出願の実施例は、仮想オブジェクトのモーションシーケンスを合成する装置を提供し、
プロセッサと、
コンピュータコマンドが記憶されているメモリと、を含み、
当該コンピュータコマンドは、プロセッサによって実行されるときに、方法200及び方法500を前記装置に実現させる。
【0085】
本出願の実施例は、コンピュータコマンドが記憶されているコンピュータ可読記憶媒体を提供し、当該コンピュータコマンドは、プロセッサによって実行されるときに、方法200及び方法500を、前記プロセッサを含む電子機器実に実現させる。
【0086】
本出願の実施例による方法200及び方法500は、ビデオ素材からモーション情報を推定することで、仮想オブジェクトのモーションがアーティストに依存する問題を解決する。上記方法は、インターネット上の大量のビデオデータを利用できるので、連続モーションクリップライブラリのコンテンツはより豊富であり、繰り返される可能性が低い。セマンティック情報及びモーション属性情報を融合した表現ベクトルの比較により、合成されたモーションシーケンスのリズムは、文字データにおけるセマンティックに合わせることに加えて、音声のリズム及びムードに合わせることもでき、合成されたモーションシーケンスはより自然である。方法200及び方法500は、例えば、仮想ニュースキャスターが減速してある単語を強調する場合に、一字が話されるたびに手が上下に振られることを実現することができる。方法200は、連続モーションクリップライブラリからモーション記述情報のキーワードと類似するモーションを探索することもでき(キーワードと完全に同じなモーションを探し出す必要がない)、これにより、より多くの候補連続モーションクリップを取得でき、ひいては、合成された仮想オブジェクトが大分の期間において硬直した静止状態にあることを回避し、仮想現実のアプリケーションシナリオでより柔軟なシミュレーション効果を実現する。
【0087】
なお、図面における流れ図とブロック図は本出願の各実施例によるシステム、方法及びコンピュータプログラム製品の実現可能なアーキテクチャ、機能及び動作を図示する。この点に関して、流れ図又はブロック図内の各ブロックはモジュール、プログラムセグメント、又はコードの一部を表してよく、当該モジュール、プログラムセグメント、又はコードの一部は一つ以上の規定する論理機能を実現するために用いられる実行可能なコマンドを含む。いくつかの代替としての実現において、ブロックに付けられる機能は、図面に付けられる順番と違う順番に従って実現されることも注意すべきである。例えば、二つの連続的に示されるブロックは、実際には、基本的に並列的に実行してもよいし、時には逆の順で実行させてもよいし、それは係る機能によって決定する。注意すべきことは、ブロック図及び/又は流れ図内の各ブロック、及びブロック図及び/又は流れ図内のブロックの組み合わせは、規定する機能又は動作を実行する専用のハードウェアに基づくシステムによって実現でき、専用のハードウェアとコンピュータコマンドとの組み合わせによって実現できることである。
【0088】
一般的に、本出願の様々な例示的な実施例は、ハードウェア又は専用回路、ソフトウェア、ファームウェア、ロジック又はそれらの任意の組み合わせで実施することができる。いくつかの態様がハードウェアで実現されうる一方、他の態様は、コントローラ、マイクロプロセッサ、又は他のコンピューティングデバイスによって実行されうるファームウェア又はソフトウェアで実装されうる。本出願の実施例の様々な態様は、ブロック図として、フローチャートとして、又は他の何らかの図形表現を使用して、図示及び記載されうるが、本明細書に記載のこれらのブロック、装置、システム、技術又は方法は、非限定的な例として、ハードウェア、ソフトウェア、ファームウェア、専用回路又はロジック、汎用ハードウェア又はコントローラ、又は他のコンピューティングデバイス、又はそれらの何らかの組み合わせで実装されうることが十分に理解される。
【0089】
上記で詳細に説明された本発明の例示的な実施例は、限定的ではなく単に例示的なものである。当業者であれば、本発明の原理および精神から逸脱することなく、その実施例または特徴を様々な方式で変更および組み合わせることができ、そのような変更は、本発明の範囲内に入ることが理解されるべきである。
【符号の説明】
【0090】
100 仮想オブジェクトに対してモーションシーケンスを設計するシナリオ
200 仮想オブジェクトのモーションシーケンスの合成方法
201,202,203 動作
210 連続モーションクリップライブラリ
220 記述情報
230 連続モーションクリップセット
231,232 連続モーションクリップ
240 モーションシーケンス
250 仮想オブジェクト動画
300 連続モーションクリップライブラリを構築する動作
301,302,303,304 動作
310 ビデオライブラリ
500 仮想オブジェクトモーションのビデオを作成する方法
501,502 動作
601 モーションシーケンス取得モジュール
602 類似モーションクリップ取得モジュール
603 モーション合成モジュール
2000 機器
2001 プロセッサ
2002 メモリ
2003 バス
図1
図2A
図2B
図2C
図3A
図3B
図4
図5
図6