(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-06-11
(54)【発明の名称】ディスプレイ上に仮想衣服を生成するための方法、コンピューティングデバイス及びプログラム
(51)【国際特許分類】
G06T 15/04 20110101AFI20240604BHJP
【FI】
G06T15/04
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023573678
(86)(22)【出願日】2022-05-10
(85)【翻訳文提出日】2023-11-29
(86)【国際出願番号】 SG2022050294
(87)【国際公開番号】W WO2022271086
(87)【国際公開日】2022-12-29
(32)【優先日】2021-06-21
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】521388058
【氏名又は名称】レモン インコーポレイテッド
【氏名又は名称原語表記】Lemon Inc.
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】リ,ユンヂュ
(72)【発明者】
【氏名】チェン,ハイイン
(72)【発明者】
【氏名】スン,チェン
(57)【要約】
ディスプレイ上に仮想衣服を生成するためのシステム及び方法が説明される。いくつかの例は、映像データとオーディオデータを取得することと、映像データを分析して、映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、を含んでもよい。決定された1つ又は複数の身体関節に基づくメッシュが生成されてもよい。オーディオデータは、オーディオデータに関連付けられたオーディオ特性を決定するために分析されてもよい。仮想衣服に関連付けられたテクスチャレンダリング情報が、オーディオ特性に基づいて決定されてもよい。テクスチャレンダリング情報を使用して、生成されたメッシュに仮想衣服をレンダリングすることによって、レンダリングされた映像が生成されてもよい。
【選択図】
図4
【特許請求の範囲】
【請求項1】
映像データとオーディオデータとを取得することと、
前記映像データを分析して、前記映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、
決定された前記1つ又は複数の身体関節に基づいてメッシュを生成することと、
前記オーディオデータを分析してオーディオ特性を決定することと、
仮想衣服に関連付けられたテクスチャレンダリング情報を、前記オーディオ特性に基づいて決定することと、
前記テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、
を含む、
ディスプレイ上に仮想衣服を生成するための方法。
【請求項2】
前記オーディオデータから拍子特性又は周波数スペクトル値のうちの少なくとも1つを決定することと、
前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに基づいて、少なくとも1つの映像効果パラメータを選択することと、
前記少なくとも1つの映像効果パラメータに基づいて、テクスチャレンダリング情報を決定することと、
前記テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることと、
をさらに含み、
前記テクスチャレンダリング情報は、前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに基づく、
請求項1に記載の方法。
【請求項3】
第1シェーダを使用して前記仮想衣服をレンダリングすることと、
前記第1シェーダとは異なる第2シェーダを使用して1つ又は複数のグラフィックをレンダリングすることと、
をさらに含み、
前記1つ又は複数のグラフィックは、前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに従ってレンダリングされる、
請求項2に記載の方法。
【請求項4】
前記オーディオデータから第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つを決定することと、
前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づいて、第2映像効果パラメータを選択することと、
前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づいて、第2テクスチャレンダリング情報を決定することと、
前記第2テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることと、
をさらに含み、
前記第2テクスチャレンダリング情報は、前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づく、
請求項2に記載の方法。
【請求項5】
前記オーディオデータに基づいて、前記テクスチャレンダリング情報から前記第2テクスチャレンダリング情報への変更を同期させることをさらに含む、
請求項4に記載の方法。
【請求項6】
前記テクスチャレンダリング情報は、不透明度、透明性、及び金属性のうちの少なくとも1つを含む、
請求項1に記載の方法。
【請求項7】
前記メッシュは、前記映像データに示された決定された前記1つ又は複数の身体関節の周りの3次元メッシュを含む、
請求項1に記載の方法。
【請求項8】
前記オーディオデータを取得することは、
音楽ライブラリから前記オーディオデータを選択することを含み、
前記オーディオ特性は、メタデータとして前記オーディオデータに埋め込まれている、
請求項1に記載の方法。
【請求項9】
ディスプレイ上に仮想衣服を生成するためのコンピューティングデバイスであって、
プロセッサと、
複数の命令が格納されたメモリと
を備え、
前記複数の命令は、前記プロセッサによって実行された場合に、前記コンピューティングデバイスに、
映像データとオーディオデータとを取得することと、
前記映像データを分析して、前記映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、
決定された前記1つ又は複数の身体関節に基づいてメッシュを生成することと、
前記オーディオデータを分析してオーディオ特性を決定することと、
仮想衣服に関連付けられたテクスチャレンダリング情報を、前記オーディオ特性に基づいて決定することと、
前記テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、
を行わせる、
コンピューティングデバイス。
【請求項10】
前記複数の命令は、実行された場合に、前記コンピューティングデバイスに、
前記オーディオデータから拍子特性又は周波数スペクトル値のうちの少なくとも1つを決定することと、
前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに基づいて、少なくとも1つの映像効果パラメータを選択することと、
前記少なくとも1つの映像効果パラメータに基づいて、テクスチャレンダリング情報を決定することと、
前記テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることと、
をさらに行わせ、
前記テクスチャレンダリング情報は、前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに基づく、
請求項9に記載のコンピューティングデバイス。
【請求項11】
前記複数の命令は、実行された場合に、前記コンピューティングデバイスに、
第1シェーダを使用して前記仮想衣服をレンダリングすることと、
前記第1シェーダとは異なる第2シェーダを使用して1つ又は複数のグラフィックをレンダリングすることと、
をさらに行わせ、
前記1つ又は複数のグラフィックは、前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに従ってレンダリングされる、
請求項10に記載のコンピューティングデバイス。
【請求項12】
前記複数の命令は、実行された場合に、前記コンピューティングデバイスに、
前記オーディオデータから第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つを決定することと、
前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づいて、第2映像効果パラメータを選択することと、
前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づいて、第2テクスチャレンダリング情報を決定することと、
前記第2テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることと、
をさらに行わせ、
前記第2テクスチャレンダリング情報は、前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づく、
請求項10に記載のコンピューティングデバイス。
【請求項13】
前記複数の命令は、実行された場合に、前記コンピューティングデバイスに、
前記オーディオデータに基づいて、前記テクスチャレンダリング情報から前記第2テクスチャレンダリング情報への変更を同期させることをさらに行わせる、請求項12に記載のコンピューティングデバイス。
【請求項14】
前記テクスチャレンダリング情報は、不透明度、透明性、及び金属性のうちの少なくとも1つを含む、
請求項9に記載のコンピューティングデバイス。
【請求項15】
前記メッシュは、前記映像データに示された1つ又は複数の身体関節の周りの3次元メッシュである、
請求項9に記載のコンピューティングデバイス。
【請求項16】
ディスプレイ上に仮想衣服を生成するための命令を格納する非一時的なコンピュータ可読媒体であって、
前記命令は、コンピューティングデバイスの1つ又は複数のプロセッサによって実行された場合に、前記コンピューティングデバイスに、
映像データとオーディオデータとを取得することと、
前記映像データを分析して、前記映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、
決定された前記1つ又は複数の身体関節に基づいてメッシュを生成することと、
前記オーディオデータを分析してオーディオ特性を決定することと、
仮想衣服に関連付けられたテクスチャレンダリング情報を、前記オーディオ特性に基づいて決定することと、
前記テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、
を行わせる、
非一時的なコンピュータ可読媒体。
【請求項17】
前記命令は、前記1つ又は複数のプロセッサによって実行された場合に、前記コンピューティングデバイスに、
前記オーディオデータから拍子特性又は周波数スペクトル値のうちの少なくとも1つを決定することと、
前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに基づいて、少なくとも1つの映像効果パラメータを選択することと、
前記少なくとも1つの映像効果パラメータに基づいて、テクスチャレンダリング情報を決定することと、
前記テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることと、
をさらに行わせ、
前記テクスチャレンダリング情報は、前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに基づく、
請求項16に記載の非一時的なコンピュータ可読媒体。
【請求項18】
前記命令は、前記1つ又は複数のプロセッサによって実行された場合に、前記コンピューティングデバイスに、
第1シェーダを使用して前記仮想衣服をレンダリングすることと、
前記第1シェーダとは異なる第2シェーダを使用して1つ又は複数のグラフィックをレンダリングすることと、
をさらに行わせ、
前記1つ又は複数のグラフィックは、前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに従ってレンダリングされる、
請求項17に記載の非一時的なコンピュータ可読媒体。
【請求項19】
前記命令は、前記1つ又は複数のプロセッサによって実行された場合に、前記コンピューティングデバイスに、
前記オーディオデータから第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つを決定することと、
前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づいて、第2映像効果パラメータを選択することと、
前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づいて、第2テクスチャレンダリング情報を決定することと、
前記第2テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることと、
をさらに行わせ、
前記第2テクスチャレンダリング情報は、前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づく、
請求項17に記載の非一時的なコンピュータ可読媒体。
【請求項20】
前記テクスチャレンダリング情報は、不透明度、透明性、及び金属性のうちの少なくとも1つを含む、
請求項16に記載の非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、2021年6月21日に出願された米国特許出願(出願番号17/353,296、名称「RENDERING VIRTUAL ARTICLES OF CLOTHING BASED ON AUDIO CHARACTERISTICS」)の優先権を主張するものであり、参照することによりその全体が本明細書に組み込まれる。
【背景技術】
【0002】
映像編集技術は広く普及しており、ユーザに様々な映像編集方法を提供している。例えば、ユーザは映像を編集して、映像に視覚効果及び/又は音楽を追加することができる。しかし、多くの映像編集技術では、オーディオデータに基づいて視覚効果を制御することは考慮されていない。したがって、ユーザエクスペリエンス向上のために、映像効果の同期をレンダリングするための映像編集技術を開発する必要がある。
【0003】
本明細書に開示される態様は、上記及び他の一般的な考慮事項に関し説明される。また、比較的具体的な問題が論じられる場合があるが、実施例は、本開示の背景部分又は他の箇所で特定された具体的な問題の解決に限定されるべきではないことを理解されたい。
【発明の概要】
【0004】
本開示の少なくとも1つの実施例に従って、ディスプレイ上に仮想衣服を生成するための方法について説明する。方法は、映像データとオーディオデータを取得することと、映像データを分析して、映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、決定された1つ又は複数の身体関節に基づいてメッシュを生成することと、オーディオデータを分析してオーディオ特性を決定することと、仮想衣服に関連付けられたテクスチャレンダリング情報を、オーディオ特性に基づいて決定することと、テクスチャレンダリング情報を使用して、生成されたメッシュに仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、を含んでもよい。
【0005】
本開示の実施例に従って、ディスプレイ上に仮想衣服を生成するためのコンピューティングデバイスについて説明する。コンピューティングデバイスは、プロセッサと、複数の命令が格納されたメモリとを含んでもよく、複数の命令は、プロセッサによって実行された場合に、コンピューティングデバイスに、映像データとオーディオデータを取得することと、映像データを分析して、映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、決定された1つ又は複数の身体関節に基づいてメッシュを生成することと、オーディオデータを分析してオーディオ特性を決定することと、仮想衣服に関連付けられたテクスチャレンダリング情報を、オーディオ特性に基づいて決定することと、テクスチャレンダリング情報を使用して、生成されたメッシュに仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、を行わせる。
【0006】
本開示の実施例に従って、ディスプレイ上に仮想衣服を生成するための命令を格納する非一時的なコンピュータ可読媒体について説明する。命令は、コンピューティングデバイスの1つ又は複数のプロセッサによって実行された場合に、コンピューティングデバイスに、映像データとオーディオデータを取得することと、映像データを分析して、映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、決定された1つ又は複数の身体関節に基づいてメッシュを生成することと、オーディオデータを分析してオーディオ特性を決定することと、仮想衣服に関連付けられたテクスチャレンダリング情報を、オーディオ特性に基づいて決定することと、テクスチャレンダリング情報を使用して、生成されたメッシュに仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、を行わせる。
【0007】
1つ又は複数の上述の態様のいずれかは、1つ又は複数の態様の他のいずれかと組み合わせられる。1つ又は複数の態様は全て、本明細書で説明される。
【0008】
本発明の概要は、概念の一部を選び取って簡単に紹介したものであり、これについては、発明を実施するための形態においてさらに説明する。本発明の概要は、特許を請求する主題の重要な特徴又は必須の特徴を特定することを意図したものではなく、特許を請求する主題の範囲を限定するために使用されることを意図したものでもない。実施例の追加の態様、特徴、及び/又は利点は、以下の説明において部分的に記載されており、一定程度はその説明により明らかにされ、あるいは本開示を実施することによって理解されることになる。
【図面の簡単な説明】
【0009】
以下の図を参照して、非限定的かつ非網羅的な実施例を説明する。
【0010】
【
図1】本開示の実施例にかかる、仮想衣服レンダリングシステムの例を示す。
【0011】
【
図2】本開示の実施例にかかる、
図1の仮想衣服レンダリングシステムのコンピューティングデバイスの詳細を示す。
【0012】
【
図3A】本開示の実施例にかかる、身体の一部に関連付けられたメッシュを生成する例を示す。
【
図3B】本開示の実施例にかかる、身体の一部に関連付けられたメッシュを生成する例を示す。
【0013】
【
図3C】本開示の実施例にかかる、映像効果のレンダリングされたフレームの例を示す。
【
図3D】本開示の実施例にかかる、映像効果のレンダリングされたフレームの例を示す。
【
図3E】本開示の実施例にかかる、映像効果のレンダリングされたフレームの例を示す。
【0014】
【
図4】本開示の実施例にかかる、仮想衣服レンダリング方法の詳細を示す。
【
図5】本開示の実施例にかかる、仮想衣服レンダリング方法の詳細を示す。
【0015】
【
図6】本開示の態様が実施され得るコンピューティングデバイスの物理的構成要素(例えばハードウェア)を表すブロック図を示す。
【0016】
【
図7A】本開示の態様が実施され得るコンピューティングデバイスの第1の例を示す。
【0017】
【
図7B】本開示の態様が実施され得るコンピューティングデバイスの第2の例を示す。
【0018】
【
図8】本開示の実施例にかかる、データ処理システムのアーキテクチャの少なくとも1つの態様を示す。
【発明を実施するための形態】
【0019】
以下の詳細な説明では添付図面を参照するが、添付図面は本明細書の一部を構成し、添付の図面には具体的な態様や例が図解で示されている。これらの態様は組み合わされてもよく、他の態様が利用されてもよく、また、本開示から逸脱することなく構造的な変更が加えられてもよい。態様は、方法、システム、又は装置として実施されてもよい。したがって態様は、ハードウェアの実装、全てソフトウェアの実装、又はソフトウェアとハードウェアの態様を組み合わせた実装の形態をとってもよい。よって、以下の詳細な説明は限定的な意味でとらえられるものではなく、本開示の範囲は、添付の特許請求の範囲及びその均等物によって定義される。
【0020】
本開示の実施例によれば、映像効果同期システムは、映像クリップに表示される1つ又は複数の仮想衣服に対し、オーディオに反応した映像効果を適用することによって、ユーザが衣服とかかわることを可能にし、衣服をより生き生きとした、より相互作用的なものとする。例えば、ユーザは、衣服ライブラリから仮想衣服を選択してもよい。仮想衣服は、身体関節の組合せに基づいて生成される3次元メッシュにレンダリングされるか、さもなければ装着されてもよい。いくつかの例において、仮想衣服は、身体関節の組合せに基づいて生成される3次元メッシュにレンダリングするか、さもなければ装着することができる任意のオブジェクトであってもよい。いくつかの例において衣服は、仮想衣服に関連付けられた1つ又は複数の映像効果パラメータによって設定された映像効果を含んでもよい。一例として、映像効果パラメータは、衣服の透明性、仮想衣服に関連付けられた輝き効果(Sparkle
Effect)、仮想衣服の色、及び/又は仮想衣服に関連付けられ反射率を含んでもよいが、これらに限定されない。仮想衣服は、特定の三次元メッシュ(例えば、胴体メッシュ、頭部メッシュ、脚部メッシュ)に関連付けられてもよく、したがって、生成されたメッシュに対し、仮想衣服を装着するか、さもなければレンダリングすることができる。映像シーケンスに示されるユーザが動くと、仮想衣服が動くように見えてもよいことを理解されたい。いくつかの例では、手、頭、足等のユーザの体の一部が仮想衣服を隠してもよい。したがって、仮想衣服がメッシュに装着される際に、身体の一部が仮想衣服の前に現れてもよい。
【0021】
例示的な態様では、3次元メッシュに対し、仮想衣服に関連付けられたテクスチャがマッピングされてもよい。3次元メッシュは、映像クリップ内で追跡される対象オブジェクトの1つ又は複数の身体関節の組合せに基づいて生成される。そのため、映像クリップの1つ又は複数の対象から身体関節のリストを分離又は識別できるように身体関節識別を実行してもよい。3次元メッシュは、1つ又は複数の関節に基づいて生成されてもよい。テクスチャ、色、色の変化速度、及び物理ベースレンダリング(PBR)のマテリアルパラメータは、オーディオ音楽の音楽特性に基づいてもよい。
【0022】
例えば、オーディオ音楽の音楽特性(例えば、拍子情報及び/又は周波数情報)に基づいて、テクスチャの1つ又は複数の特性が、仮想衣服のテクスチャをレンダリングするように設定されたシェーダによって変更されてもよい。例として、オーディオ音楽の音楽特性を決定するために、音楽の特徴付けを実行してもよい。あるいは、オーディオ音楽がユーザによって音楽ライブラリから選択される場合、音楽特性はメタデータとしてオーディオ音楽に埋め込まれてもよい。一例として、仮想衣服のテクスチャは、仮想衣服の周囲に位置するレンダリング効果を含んでもよく、このような効果は、オーディオ音楽の対応する拍子特性又は周波数スペクトルに基づいて変化してもよい。したがって、1つ又は複数の映像効果パラメータは、オーディオ音楽と映像クリップに基づいて定期的に(例えば、1拍ごとに)更新されてもよい。映像効果の同期により、仮想衣服のテクスチャがオーディオ音楽の音楽の拍子に反応するようになる。いくつかの例では、1つ又は複数の身体部分(例えば、ユーザの手)の間の距離もテクスチャに影響を与える場合がある。例えば、シェーダによってレンダリングされるテクスチャの色は、映像に示された手の間の距離に基づいて変更されてもよい。さらに、輝きシェーダ(sparkle
shader)のような第2シェーダを仮想衣服に適用し、且つ/又はクリスタル、アニメーション、その他のグラフィック等の別の効果を映像内で生み出すために第2シェーダを使用してもよい。
【0023】
図1は、本開示の実施例にかかる、1つ又は複数の映像効果をレンダリングするための仮想衣服レンダリングシステム100を示す。例えば、ユーザ102は、映像クリップ108を生成、受信、取得し、又は他の方法で取得してもよい。その後、ユーザは映像クリップ108に追加するオーディオ音楽110を選択してもよい。いくつかの例では、音楽110はシステム100によって予め設定されてもよい。仮想衣服レンダリングシステム100により、ユーザ102は、仮想衣服を仮想で試着することができる。仮想衣服は、音楽110に基づいて、映像クリップ108内の対象の1つ又は複数の、対象となる身体関節から作成された1つ又は複数の3次元メッシュに装着してもよい。このため仮想衣服レンダリングシステム100は、ユーザ102に関連付けられたコンピューティングデバイス104と、ネットワーク114を介してコンピューティングデバイス104と通信可能に結合されたサーバ106とを含む。ネットワーク114は、有線又は無線のローカルエリアネットワーク(LAN)、有線又は無線のワイドエリアネットワーク(WAN)、及び/又はインターネットを含むがこれらに限定されない、あらゆる種類のコンピューティングネットワークを含んでもよい。
【0024】
例として、ユーザ102は、映像クリップ108と音楽110を取得するためにコンピューティングデバイス104を利用してもよい。ユーザ102は、コンピューティングデバイス104に通信可能に結合されたカメラを使用して、映像クリップ108を生成してもよい。このような例では、仮想衣服の色、不透明度、回転、及び他の複数のグラフィック(例えば、輝き)のような(但しこれらに限定されない)映像効果を、ユーザ102が仮想衣服を実際に着用しているかのように、リアルタイム又はほぼリアルタイムで音楽110に同期させてもよく、したがって仮想衣服のテクスチャ情報の変化は、音楽に応じて変化してもよい。例として、ユーザは、自身がコンピューティングデバイス104で映像を撮影しているときに、仮想衣服が追加された映像をディスプレイ(例えば、ディスプレイ705)上で視認してもよい。代替として、又は追加で、ユーザ102は、コンピューティングデバイス104上で映像クリップ108を受信、取得し、又は他の方法で取得してもよい。いくつかの例では、ユーザ102は、音楽110に基づいて、映像クリップ108を編集し映像効果を追加してもよい。いくつかの態様では、ユーザ102は、コンピューティングデバイス104を利用して、映像クリップ108と音楽110をネットワーク114を介してサーバ106に送信してもよい。コンピューティングデバイス104は、ポータブルのコンピューティングデバイス又はポータブルではないコンピューティングデバイスのいずれであってもよい。例えば、コンピューティングデバイス104は、スマートフォン、ラップトップ、デスクトップ、サーバであってもよい。映像クリップ108は、任意のフォーマットで取得することができ、圧縮及び/又は解凍された形態であってもよい。
【0025】
コンピューティングデバイス104は、映像クリップ108の各フレームを分析し、フレーム内の1つ又は複数の対象の身体関節を識別するように設定されている。例えば、身体関節アルゴリズムが、映像クリップ108から識別及び抽出される身体関節のリストを定義してもよい。身体関節には、頭部、頸部、骨盤、脊椎、左右の肩、左右の上腕、左右の前腕、左右の手、左右の大腿、左右の脚、左右の足、及び左右の足指が含まれてもよいが、これらに限定されない。
【0026】
コンピューティングデバイス104は、オーディオ音楽110を受信するように設定されている。オーディオ音楽110は、音楽ライブラリから映像クリップ108に追加するためにユーザ102によって選択される。あるいは、いくつかの態様では、オーディオ音楽110は映像効果に関連付けられてもよい。このような態様では、映像クリップ108に追加されるデフォルトの音楽が、映像効果に含まれていてもよい。いくつかの態様では、オーディオ音楽110は映像クリップ108から抽出されてもよい。コンピューティングデバイス104は、オーディオデータを分析して、オーディオ音楽110の拍子情報又は周波数スペクトル情報を決定するように設定されている。例えば、上述したように、コンピューティングデバイス104は、自動拍子追跡アルゴリズムを通して各拍子の拍子特性を決定してもよい。いくつかの態様では、音楽の拍子の特徴付けがメタデータとして音楽に埋め込まれていてもよいことを理解されたい。音楽の拍子の特徴付けには、オーディオ音楽110のアクセントのある拍子及びアクセントのない拍子の数及び相対的な位置が含まれてもよい。例えば、オーディオ音楽110が4/4拍子の構成を有する場合、各セクションには、強拍、弱拍、2番目の強拍、弱拍という拍子の強さが異なる4つの拍子が存在する。
【0027】
代替として、又は追加で、コンピューティングデバイス104はオーディオ音楽の周波数スペクトルの特徴付けを決定してもよい。例えば、コンピューティングデバイス104は、オーディオ音楽の各拍子の平均周波数スペクトルを決定してもよい。いくつかの態様では、周波数スペクトルの特徴付けがメタデータとして音楽に埋め込まれていてもよいことを理解されたい。
【0028】
映像効果には、仮想衣服がどのように見えるか、又はどのようにレンダリングされるかを制御する映像効果パラメータが含まれる。いくつかの態様では、映像効果パラメータは、シェーダによってレンダリングされるテクスチャに関連付けられたPBRマテリアルを制御してもよい。例示的な態様では、映像効果のパラメータは、オーディオ音楽と映像クリップに基づいて定期的に(例えば、1拍ごとに)更新されてもよい。いくつかの例では、1つ又は複数の映像効果パラメータは、ユーザの2つの身体部分の距離に基づいて設定されてもよい。言い換えれば、映像効果の同期により、仮想衣服が映像クリップの音楽の拍子に反応するようになる。
【0029】
いくつかの態様では、ユーザは、映像効果パラメータに基づいて、映像クリップ108に適用する仮想衣服及び/又は映像効果を選択してもよい。映像効果パラメータは、映像クリップ内のユーザのどの複数の関節の周りのどの3次元メッシュにどの仮想衣服を適用するか、及び/又はPBRマテリアルが音楽によってどのように影響されるかを制御するように設定されている。言い換えれば、映像効果パラメータは、複数の身体関節に基づく1つ又は複数のメッシュを定義し、メッシュは、仮想衣服がレンダリングされ得る装着の点又は表面を提供することができる。仮想衣服には、例えば、映像効果を適用してもよい。あるいは、仮想衣服の視覚的特徴は、音楽の拍子の強さに基づいてもよい。例えば、オーディオ音楽が4/4拍子の構成を有し、且つ強い場合、1つの映像効果パラメータセットが選択されてもよい(例えば、
図3A)。オーディオ音楽が4/4拍子の構成を有し、且つ弱い場合、別の映像効果パラメータセットが選択されてもよい(例えば、
図3B)。オーディオ音楽が4/4拍子の構成を有し、且つ弱い場合、第3の映像効果パラメータセットが選択されてもよい(例えば、
図3C)。別の例として、4/4拍子の構成の映像効果パラメータは、3/4拍子の構成の映像効果パラメータとは異なっていてもよい。すなわち、拍子の構成及び追跡される拍子が、映像効果パラメータを選択するために使用されてもよく、映像効果パラメータは、ディスプレイに仮想衣服をレンダリングするためのシェーダの1つ又は複数の態様に影響を与えてもよい。代替として、又は追加で、映像効果パラメータは周波数スペクトル範囲に基づいて決定されてもよい。例えば、第1周波数スペクトルに応じて第1映像効果パラメータが選択されてもよく、第2周波数スペクトルに応じて第2映像効果パラメータが選択されてもよく、第3周波数スペクトルに応じて第3映像効果パラメータが選択されてもよい。例として、異なる周波数スペクトルが、高スペクトル範囲(例えば、4kHz~20Hz)、中スペクトル範囲(例えば、500Hz~4kHz)、低スペクトル範囲(例えば、20Hz~500Hz)に対応してもよい。言い換えれば、オーディオ音楽の拍子又はスペクトルは、シェーダが映像クリップに仮想衣服をレンダリングする方法に関連付けられるテクスチャ情報を制御してもよい。
【0030】
また、オーディオ音楽の音楽特性は、映像に示されたユーザの周りの仮想衣服及び/又は他のグラフィックに適用される1つ又は複数の輝き効果を制御することもできる。例えば、メタリック効果が仮想衣服に適用されてもよく、映像効果パラメータは、輝きシェーダが仮想衣服のどの部分に適用されるか、及び/又は、どのような種類の輝きグラフィック(例えば、クリスタル)が映像クリップに適用されるかを制御してもよい。したがって、コンピューティングデバイス104は、拍子特性に基づいて輝き特性を決定してもよい。例えば、オーディオ音楽が4/4拍子の構成を有する場合、強拍には強い輝き効果を適用し、弱拍には弱い輝き効果を適用してもよい。あるいは、周波数スペクトル範囲に基づいて輝き特性を決定してもよい。
【0031】
追加で、又は代替として、拍子特性又は周波数スペクトル範囲に基づいて、輝きシェーダによってレンダリングされる追加グラフィックのアニメーション速度を制御してもよい。例えば、強拍の間は、クリスタルがユーザの周りで速く回転してもよく、弱拍の間は当該クリスタルがユーザの周りで遅く回転してもよい。
【0032】
映像クリップに映像効果を追加する準備が完了すると、コンピューティングデバイス104は、仮想衣服の2次元(2D)テクスチャを身体関節の周りの3次元(3D)メッシュと調和させるために、仮想衣服を修正してもよい。3Dメッシュ上に2Dアニメーションのオブジェクトを重ね、調和させることで、3Dのような仮想衣服を作成してもよい。その後、コンピューティングデバイス104は、映像効果をオーディオ音楽の音楽の拍子に同期させて、映像効果を有するレンダリングされた映像を生成してもよい。この映像は、コンピューティングデバイス104に通信可能に結合されたディスプレイ(例えば、ディスプレイ705)上でユーザに示されてもよい。ユーザが映像を撮影しているときに、1つ又は複数の身体関節に基づいて生成されたメッシュの周りの映像効果をユーザがディスプレイ上で視認できるように、映像効果をリアルタイム又はほぼリアルタイムで音楽の拍子に同期させてもよいことを理解されたい。代替として、又は追加で、サーバ106によって映像効果を音楽の拍子に同期させてもよい。このような態様では、映像効果は、映像効果をレンダリングするために映像クリップ108がサーバ106にアップロードされたときに、映像クリップ108に適用されてもよい。
【0033】
次に
図2を参照すると、本開示の実施例にかかるコンピューティングデバイス202が描かれている。コンピューティングデバイス202は、先に
図1で描かれたコンピューティングデバイス104と同じか、類似していてもよい。コンピューティングデバイス202は、通信インターフェース204、プロセッサ206、及びコンピュータ可読ストレージ208を含んでもよい。例として、通信インターフェース204はネットワークに結合され、映像クリップ108とオーディオ音楽110(
図1)とを受信してもよい。映像クリップ108(
図1)は映像フレーム246として格納されてもよく、音楽110は入力242のオーディオデータ248として格納されてもよい。
【0034】
いくつかの例では、1つ又は複数の映像効果も、通信インターフェース204で受信され、映像効果データ252として格納されてもよい。映像効果データ252は、映像効果に関連付けられた1つ又は複数の映像効果パラメータを含んでもよい。映像効果パラメータは、仮想衣服のテクスチャが映像クリップ内の身体の1つ又は複数の関節の周りのメッシュにどのようにレンダリングされるか、及び/又はどのように装着されるかを定義することができるが、これらに限定されない。
【0035】
例として、1つ又は複数のアプリケーション210がコンピューティングデバイス104によって提供されてもよい。1つ又は複数のアプリケーション210は、映像処理モジュール212、オーディオ処理モジュール214、映像効果モジュール216、シェーダ218、及び輝きシェーダ220を含んでもよい。映像処理モジュール212は、映像取得マネージャ224、身体関節識別器226、及びメッシュ生成器228を含んでもよい。映像取得マネージャ224は、1つ又は複数の映像フレームを含む映像データを受信、取得し、又は他の方法で取得するように設定されている。さらに、身体関節識別器226は、フレーム内の1つ又は複数の対象の1つ又は複数の身体関節を識別するように設定されている。メッシュ生成器228は、フレーム内の1つ又は複数の対象の1つ又は複数の身体関節に基づいてメッシュを生成するように設定されており、メッシュは、1つ又は複数の身体関節の組合せに基づいて決定されてもよい。例示的な態様では、対象は人である。したがって、身体分割アルゴリズムが、映像クリップ108から識別及び抽出される身体関節のリストを定義してもよい。身体関節には、頭部、頸部、骨盤、脊椎、左右の肩、左右の上腕、左右の前腕、左右の手、左右の大腿、左右の脚、左右の足、及び左右の足指が含まれてもよいが、これらに限定されない。いくつかの例では、身体関節のリストは通信インターフェース204で受信され、身体関節250として格納されてもよい。いくつかの態様では、身体関節のリストはサーバ(例えば106)から受信されてもよい。
【0036】
さらに、オーディオ処理モジュール214は、オーディオ取得マネージャ232とオーディオアナライザ234を含んでもよい。オーディオ取得マネージャ232は、オーディオデータを受信、取得し、又は他の方法で取得するように設定されている。オーディオアナライザ234は、オーディオデータのオーディオ情報を決定するように設定されている。例えば、オーディオ情報には、オーディオデータの各拍子の拍子情報及び周波数スペクトル情報が含まれてもよいが、これらに限定されない。一例として、拍子情報を決定するために自動拍子追跡アルゴリズムが使用されてもよい。いくつかの態様では、拍子情報はメタデータとしてオーディオデータにすでに埋め込まれてもよい。他の態様では、拍子情報は通信インターフェース204で受信され、オーディオデータ248として格納されてもよい。拍子情報は、各拍子の拍子特性を提供する。拍子特性には、拍子の構成、強拍と弱拍の繰り返し順、アクセントのある拍子とアクセントのない拍子の数、アクセントのある拍子とアクセントのない拍子の相対的な位置が含まれるが、これらに限定されない。例えば、オーディオ音楽が4/4拍子の構成を有する場合、各セクションには、強拍、最初の弱拍、2番目の強拍、弱拍という拍子の強さが異なる4つの拍子が存在する。さらに、周波数スペクトル情報は、オーディオデータから所定の期間ごと(例えば、1拍ごと)に抽出されてもよい。いくつかの態様では、周波数スペクトル情報は、メタデータとしてオーディオデータにすでに埋め込まれてもよい。他の態様では、周波数スペクトル情報は通信インターフェース204で受信され、オーディオデータ248として格納されてもよい。
【0037】
さらに、映像効果モジュール216は、衣服効果生成器238と映像効果シンクロナイザ240をさらに含んでもよい。衣服効果生成器238は、オーディオデータに基づいて、仮想衣服、ひいては映像データに適用される効果を決定するように設定されている。具体的には、衣服効果生成器238は、1つ又は複数の映像効果パラメータを決定するように設定されている。例えば、衣服効果生成器238は、オーディオデータに基づいて1つ又は複数の映像効果パラメータを決定するように設定されている。決定された1つ又は複数の映像効果パラメータは、仮想衣服に関連付けられたテクスチャをシェーダがレンダリングする方法を制御するためにシェーダに渡されてもよい。1つの例示的な態様では、仮想衣服は、対象の複数の身体関節を囲むメッシュに装着されるか、さもなければレンダリングされる。仮想衣服は、映像クリップ内でユーザが移動するのに伴い、移動、変化し、さもなければユーザに追従してもよい。例示的な態様では、仮想衣服のテクスチャは1拍ごとに変化してもよい。言い換えれば、選択されたオーディオ音楽の拍子が、仮想衣服の外観を制御する映像効果の変化を制御してもよい。別の例として、映像内の仮想衣服及び/又は画像の1つ又は複数の他の属性が、オーディオ音楽に応じて変化してもよい。例えば、輝きの量、テクスチャマップの不透明度、色、及び動きの速さが、オーディオ音楽に基づいてもよい。
【0038】
映像効果シンクロナイザ240は、選択されたオーディオ音楽の音楽の拍子に映像効果を同期させて、映像効果を有するレンダリングされた映像を生成するように設定されている。レンダリングされた映像は、出力244のレンダリングされた映像フレーム254として格納されるか、さもなければ提供される。いくつかの態様では、映像効果シンクロナイザ240は、仮想衣服の2Dテクスチャを身体関節の周りの3Dメッシュと調和させるために、仮想衣服を修正するように設定されている。3Dメッシュ上に2Dアニメーションのオブジェクトを重ね、調和させることで、3Dのようなアニメーション効果を作り出してもよいことを理解されたい。
【0039】
映像効果シンクロナイザ240は、シェーダ218及び/又は輝きシェーダ220を含むか、さもなければシェーダ218及び/又は輝きシェーダ220と通信する。シェーダ218は、映像効果パラメータを受信するように設定されている。映像効果パラメータに基づいて、シェーダ218は、効果を生み出すか、さもなければ効果をレンダリングするように設定されている。例えばシェーダ218は、色、反射、拡散、透光性、透明性、金属性、フレネル反射、及び微細表面散乱(microsurface
scattering)を含むがこれらに限定されない、映像効果に関連付けられた視覚効果を変更してもよい。別の例として、輝きシェーダ220は、色、反射、拡散、透光性、透明性、金属性、フレネル反射、及び微細表面散乱(microsurface
scattering)を含むがこれらに限定されない、映像効果に関連付けられた視覚効果を変更してもよい。さらに、輝きシェーダは、映像効果パラメータ及び/又はオーディオ音楽に基づいて、映像クリップに1つ又は複数のグラフィックをレンダリングしてもよい。たとえば、輝きシェーダは、ユーザの周りで回転するクリスタルを、金属的で且つ反射して見えるようにレンダリングすべきであると決定してもよい。
【0040】
図3A-3Bは、1つ又は複数の身体関節302を決定し、1つ又は複数の身体関節302に関連付けられたメッシュ304を生成する例を示す。
図3Aに示すように、1つ又は複数の身体関節302が識別されてもよく、各身体関節302は、身体関節の予め定義されたリストに関連付けられてもよい。識別された身体関節302に基づいて、衣服を受けるように設定された身体部分が識別されてもよい。例えば、身体関節302の位置に基づいてシャツが識別されてもよく、この場合、上半身の胴体がシャツを受けるように設定されている。
図3Bに示すように、メッシュ304が生成されてもよく、この場合、メッシュ304は
図3Aの身体関節302に基づく。例として、
図3Bのメッシュ304は、仮想衣服をユーザに装着するために使用されてもよい。したがって、メッシュ304は、人物の身体の一部が仮想衣服の後ろにあり、人物の手が見えない可能性がある場合に、オクルージョンをアシストする。
【0041】
図3C~3Eは、本開示の実施例にかかる、メッシュ304等のメッシュに装着された例示的な衣服306を示す例示的な映像フレーム310~330を示す。すなわち、仮想衣服306は、ユーザ308が仮想的に着用可能な衣服の架空の表示であってもよい。例示として、フレーム310内の仮想衣服306の表示は、オーディオデータ312に反応したものであってもよい。例えば、オーディオデータ312の拍子特性及び/又は周波数スペクトルによって、仮想衣服の色が変化してもよい。すなわち、オーディオデータ312の特性が決定され、映像効果パラメータの特定に使用されてもよく、映像効果パラメータは、シェーダがメッシュ上に仮想衣服のテクスチャをレンダリングする方法を決定するか、さもなければ変更するために使用されてもよい。さらに、輝きシェーダが、仮想衣服の他の特性(例えば、輝きの量)を決定し、且つ/又は、映像フレーム310において他のグラフィック314(例えば、クリスタル)がどのように示されるかを決定してもよい。
【0042】
図3Dのフレーム320に示すように、オーディオデータ316は、フレーム310のオーディオデータ312とは異なっていてもよい。したがって、シェーダは、フレーム320において、フレーム310における仮想衣服306のテクスチャとは異なる仮想衣服のテクスチャをレンダリングしてもよい。代替として、又は追加で、仮想衣服318は、フレーム310の仮想衣服306と同じか、又は類似していてもよい。さらに、輝きシェーダによってレンダリングされるグラフィック322及び/又は他の効果は、フレーム310のグラフィック314と異なっていてもよい。
図3Dにさらに示すように、仮想衣服318は、身体関節に基づいて生成されたメッシュに装着されるか、さもなければレンダリングされてもよい。したがって、ユーザ308が腕を上げると、仮想衣服318は新しい関節位置、ひいては身体部分(例えば、胴体)の新しい構成に適合する。
【0043】
図3Eのフレーム330に示すように、オーディオデータ324は、フレーム320のオーディオデータ316とは異なっていてもよい。したがって、シェーダは、フレーム330において、フレーム320の仮想衣服318のテクスチャとは異なる仮想衣服326のテクスチャをレンダリングしてもよい。代替として、又は追加で、仮想衣服326は、フレーム320の仮想衣服318と同じか、又は類似していてもよい。さらに、輝きシェーダによってレンダリングされるグラフィック328及び/又は他の効果は、フレーム320のグラフィック322とは異なっていてもよい。
図3Eにさらに示すように、仮想衣服326は、身体関節に基づいて生成されたメッシュに装着されるか、さもなければレンダリングされてもよい。したがって、ユーザ308が腕を上げると、仮想衣服326は新しい関節位置、ひいては身体部分(例えば、胴体)の新しい構成に適合する。
【0044】
上述したように、仮想衣服は、オーディオデータに反応したものであってもよい。例として、映像クリップに追加されるオーディオデータを受信する際に、オーディオデータのオーディオ情報(例えば、拍子特性及び/又は周波数スペクトル)が、所定の期間(例えば、音楽の拍子)ごとに決定されてもよい。オーディオ情報に基づいて、シェーダによってレンダリングされるテクスチャが変更されてもよい。例えば、オーディオ音楽が4/4拍子の構成を有する場合、第1テクスチャがレンダリングされてもよく、音楽が3/4拍子の構成を有する場合、第2テクスチャがレンダリングされてもよく、音楽が2/4拍子の構成を有する場合、第3テクスチャがレンダリングされてもよい。第1テクスチャ、第2テクスチャ、及び第3テクスチャは互いに異なる。別の例として、オーディオ音楽が強拍を有する場合、第4テクスチャがレンダリングされてもよく、音楽が最初の弱拍を有する場合、第5テクスチャがレンダリングされてもよく、音楽が2番目の弱拍を有する場合、第6テクスチャがレンダリングされてもよい。第4テクスチャ、第5テクスチャ、及び第6テクスチャは互いに異なる。あるいは、前述のように周波数スペクトル範囲に基づいて、アニメーション効果を決定してもよい。言い換えれば、オーディオ音楽の拍子又はスペクトルは、映像クリップ内の仮想衣服にレンダリングされるテクスチャを制御する。
【0045】
次に
図4を参照すると、本開示の実施例にかかる、オーディオデータに基づいて仮想衣服をレンダリングするための簡略的な方法が説明されている。方法400のステップの一般的な順序を
図4~5に示す。一般的に、方法400は402で始まり460で終わる。方法400は、
図4~5に示したものよりステップが多くても少なくてもよく、あるいは、ステップの順序が
図4~5に示したものとは異なるように設定されてもよい。方法400は、コンピュータシステムによって実行される、コンピュータ可読媒体において符号化又は格納されたコンピュータ可読命令のセットとして、実行することができる。例示的な態様において、方法400は、ユーザ(例えば、102)に関連付けられたコンピューティングデバイスによって実行される。しかしながら、方法400の態様は、コンピュータ又はサーバ(例えば、104、106)等の1つ又は複数の処理装置によって実行されてもよいことを理解されたい。さらに、方法400は、プロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、システムオンチップ(SOC)、ニューラルプロセッシングユニット、又は他のハードウェアデバイスに関連付けられたゲート又は回路によって実行することができる。以下、
図1及び
図2とともに描かれたシステム、構成要素、モジュール、ソフトウェア、データ構造、ユーザインターフェース等を参照して、方法400を説明する。
【0046】
方法400は402から始まり、フローは404に進む。404で、コンピューティングデバイスは、1つ又は複数の映像フレームを含む映像データ(例えば、映像クリップ108)を受信する。例えば、ユーザ102は、コンピューティングデバイスを介して映像クリップ108を生成、受信、取得し、又はその他の方法で取得してもよい。408で、コンピューティングデバイスは、映像データの各フレームを処理し、フレーム内の1つ又は複数の対象の身体関節を識別する。例えば、身体関節アルゴリズムが、映像クリップ108から識別及び抽出される身体関節のリストを定義してもよい。身体関節には、頭部、頸部、骨盤、脊椎、左右の肩、左右の上腕、左右の前腕、左右の手、左右の大腿、左右の脚、左右の足、及び左右の足指が含まれてもよいが、これらに限定されない。
【0047】
再びスタートの402を参照すると、方法400は412に進んでもよい。コンピューティングデバイスは、操作404、412を同時に実行してもよいことを理解されたい。あるいは、操作412は操作404の後に実行されてもよい。いくつかの態様では、操作404が操作412の後に実行されてもよい。
【0048】
412で、コンピューティングデバイスは、映像データに追加するためにユーザ102によって選択されたオーディオデータ(例えば、オーディオ音楽110)を受信する。続いて416で、コンピューティングデバイスはオーディオデータを分析し、オーディオ音楽110のオーディオ情報を決定する。例えば、オーディオ情報には、各拍子の拍子特性及び/又は周波数スペクトルが含まれる。いくつかの態様において、コンピューティングデバイスは、自動拍子追跡アルゴリズムを通じて各拍子の拍子特性を決定してもよい。拍子特性には、拍子の構成、強拍と弱拍の繰り返し順、アクセントのある拍子とアクセントのない拍子の数、アクセントのある拍子とアクセントのない拍子の相対的な位置が含まれるが、これらに限定されない。例えば、オーディオ音楽110が4/4拍子の構成を有する場合、各セクションには、強拍、弱拍、2番目の強拍、弱拍という拍子の強さが異なる4つの拍子が存在する。他の態様では、コンピューティングデバイスは、特定の周波数範囲(例えば、高域、中域、低域)に関連付けるために、各拍子の周波数を決定してもよい。
【0049】
操作404-416で映像データとオーディオデータが受信されて分析されると、方法400は418に進む。418で、コンピューティングデバイスは、408で識別された身体関節に基づいてメッシュを生成してもよい。例えば、上半身の胴体のメッシュは、左右の腕、頭、首の身体関節が識別されたことに基づいてもよい。方法400は、420に進んでもよい。ここでコンピューティングデバイスは、418で生成されたメッシュに適用される仮想衣服を決定する。例えば、ユーザは仮想で試着するために仮想衣服を選択してもよい。ここで仮想衣服は、衣服の架空の表示であってもよく、オーディオデータに反応したものであってもよい。別の例として、仮想衣服は、デフォルトの衣服であってもよい。その後、方法400は424に進んでもよく、決定された衣服に関連付けられるテクスチャレンダリング情報を決定してもよい。例えば、映像効果パラメータは、416で分析されたオーディオデータに基づいてもよい。映像効果パラメータは、シェーダがテクスチャをどのようにレンダリングするかを制御してもよい。例として、レンダリング情報は、色、反射率、不透明度、透明性等を含んでもよいが、これらに限定されず、オーディオデータと仮想衣服との組合せに固有のものであってもよい。すなわち、ある拍子の構成及び拍子の強度を持つオーディオ音楽と、異なる拍子の構成及び/又は異なる拍子の強度を持つオーディオ音楽とでは、映像効果パラメータが異なっていてもよい。その後、方法400は、
図4及び
図5の英数字Aで示すように、
図5の444に進む。
【0050】
444では、オーディオ音楽及び/又は仮想衣服に関連付けられた輝き効果を決定してもよい。例として、輝きシェーダを使用してもよく、輝きシェーダは、仮想衣服のテクスチャ情報をレンダリングするためのメインシェーダとは異なる。輝きシェーダは、映像フレーム及び/又は映像フレーム内のグラフィックに適用される、メインシェーダとは異なる特性を決定してもよい。一例として、グラフィックの情報は、フレーム内で回転するクリスタル、又はキラキラ光る性質の他のグラフィックを含んでもよい。いくつかの例では、輝き効果は、映像フレーム内の仮想衣服及び/又は他のグラフィックに影響を与える、光る効果又は他の効果であってもよい。
【0051】
424と444でそれぞれ、テクスチャレンダリング情報と輝き効果がアニメーションのオブジェクトに対し決定され、対応する(複数の)アニメーション効果が決定されると、方法400は操作448に進む。448で、コンピューティングデバイスは、416で分析されたオーディオデータに従って、テクスチャと輝き効果をレンダリングする。いくつかの例では、452において、選択されたオーディオ音楽の音楽の拍子又はスペクトルに映像効果を同期させ、仮想衣服を有するレンダリングされた映像を生成する。例えば、映像効果は、仮想衣服の色又はその他の認識される性質がどの程度速く変化するかに関連していてもよい。456で、コンピューティングデバイスは、映像効果を有するレンダリングされた映像を、ディスプレイ(例えば、ディスプレイ705)上でユーザに示す。1つ又は複数の身体関節の周りに生成されたメッシュに装着される際に、仮想衣服をユーザが視認できるように、仮想衣服の変化をリアルタイム又はほぼリアルタイムで音楽の拍子に同期させてもよいことを理解されたい。別の例として、ビデオに示されたユーザが動くと、仮想衣服がユーザと共に動いてもよい。方法は460で終了する。
【0052】
方法400は、ユーザに関連付けられたコンピューティングデバイスによって実行されるものとして説明されているが、方法400の1つ又は複数の操作は、サーバ106等の任意のコンピューティングデバイス又はサーバによって実行されてもよいことを理解されたい。例えば、音楽の拍子への映像効果の同期は、ユーザに関連付けられたコンピューティングデバイスから音楽と映像クリップを受信するサーバによって実行されてもよい。
【0053】
図6は、本開示の態様が実施され得るコンピューティングデバイス600の物理的構成要素(例えばハードウェア)を表すブロック図である。以下に説明するコンピューティングデバイスの構成要素は、上述したコンピューティングデバイスに適している可能性がある。例えば、コンピューティングデバイス600は、
図1のコンピューティングデバイス104を表してもよい。基本的な構成では、コンピューティングデバイス600は、少なくとも1つのプロセッシングユニット602と、システムメモリ604とを含んでもよい。コンピューティングデバイスの構成及びタイプに応じて、システムメモリ604は、揮発性ストレージ(例えば、ランダムアクセスメモリ)、不揮発性ストレージ(例えば、リードオンリーメモリ)、フラッシュメモリ、又はかかるメモリの任意の組合せを含んでもよいが、これらに限定されない。
【0054】
システムメモリ604は、オペレーティングシステム605と、本明細書に開示された様々な態様を実行するのに適した1つ又は複数のプログラムモジュール606とを含んでもよい。オペレーティングシステム605は、例えば、コンピューティングデバイス600の動作を制御するのに適しているものであってもよい。さらに、本開示の態様は、グラフィックライブラリ、他のオペレーティングシステム、又は任意の他のアプリケーションプログラムと組み合わせて実施されてもよく、特定のアプリケーション又はシステムに限定されない。この基本構成は、
図6において破線608内の構成要素によって示されている。コンピューティングデバイス600は、追加の特徴又は機能を有してもよい。例えば、コンピューティングデバイス600は、例えば磁気ディスク、光ディスク、又はテープ等の追加のデータ記憶装置(取り外し可能なもの及び/又は取り外し不可能なもの)も含むことができる。このような追加のストレージは、
図6では、取り外し可能な記憶装置609と取り外し不可能な記憶装置610として示されている。
【0055】
上述したように、システムメモリ604には複数のプログラムモジュール及びデータファイルが格納されていてもよい。プログラムモジュール606は、少なくとも1つのプロセッシングユニット602において実行されている間、本明細書で説明したように、1つ又は複数の態様を含むがこれに限定されないプロセスを実行してもよい。(複数の)アプリケーション607は、
図1に関してより詳細に説明したように、映像処理モジュール623、オーディオ処理モジュール624、映像効果モジュール625、及びシェーダモジュール626を含む。本開示の態様に従って使用され得る他のプログラムモジュールには、電子メール及び連絡先アプリケーション、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション、データベースアプリケーション、スライドプレゼンテーションアプリケーション、描画又はコンピュータ支援アプリケーションプログラム等、及び/又は本明細書に記載のシステムによってサポートされる1つ又は複数の構成要素が含まれてもよい。
【0056】
さらに、本開示の態様は、個別の電子部品を含む電気回路、論理ゲートを含みパッケージ化若しくは集積化された電子チップ、マイクロプロセッサを利用する回路、又は電子部品若しくはマイクロプロセッサを含む単一チップにおいて実施されてもよい。例えば、本開示の態様は、
図6に示される各構成要素又は複数の構成要素が単一の集積回路上に集積され得るシステムオンチップ(SOC)を介して実施されてもよい。このようなSOCデバイスは、1つ又は複数のプロセッシングユニット、グラフィックユニット、通信ユニット、システム仮想化ユニット、及び様々なアプリケーション機能を含んでもよく、これらは全て、単一の集積回路としてチップ基板上に集積(又は「焼き付け」)されている。SOCを介して操作する場合、プロトコルを切り替えるクライアントの能力に関して、本明細書に記載の機能は、単一集積回路(チップ)においてコンピューティングデバイス600の他の構成要素と統合されたアプリケーション固有のロジックを介して操作されてもよい。本開示の態様は、例えばAND、OR、及びNOT等の論理演算を実行できる他の技術を使用して実施されてもよい。こうした技術には、機械技術、光学技術、流体技術、及び量子技術が含まれるが、これらに限定されない。さらに、本開示の態様は、汎用コンピュータ内で、又はその他の回路若しくはシステムにおいて実施されてもよい。
【0057】
コンピューティングデバイス600は、キーボード、マウス、ペン、音声入力装置、タッチ又はスワイプによる入力装置等、1つ又は複数の入力装置612も有することができる。また、ディスプレイ、スピーカ、プリンタ等の(複数の)出力装置614Aも含むことができる。仮想ディスプレイに対応する出力614Bも含むことができる。前述した装置は例示であり、他の装置が使用されてもよい。コンピューティングデバイス600は、他のコンピューティングデバイス650との通信を可能にする1つ又は複数の通信接続616を含んでもよい。適切な通信接続616の例には、無線周波数(RF)送信機、受信機、及び/又はトランシーバ回路が含まれ、ユニバーサルシリアルバス(USB)、パラレルポート、及び/又はシリアルポートが含まれるが、これらに限定されない。
【0058】
本明細書で使用するコンピュータ可読媒体という用語は、コンピュータ記憶媒体を含んでもよい。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール等の情報を格納するための、任意の方法又は技術で実装された揮発性及び不揮発性、取外し可能及び取外し不可能な媒体が含まれてもよい。システムメモリ604、取り外し可能な記憶装置609、及び取り外し不可能な記憶装置610は全て、コンピュータ記憶媒体の例(例えばメモリストレージ)である。コンピュータ記憶媒体には、RAM、ROM、電気的に消去可能なリードオンリーメモリ(EEPROM)、フラッシュメモリ若しくは他のメモリ技術、CD-ROM、デジタル多用途ディスク(DVD)若しくは他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ若しくは他の磁気記憶装置、又は、情報格納用に使用可能な、コンピューティングデバイス600がアクセス可能な任意の他の製品が含まれてもよい。このようなコンピュータ記憶媒体は、コンピューティングデバイス600の一部であってもよい。コンピュータ記憶媒体には、搬送波、又はその他の伝送若しくは変調されるデータ信号は含まれない。
【0059】
通信媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又は搬送波若しくは他のトランスポートメカニズム等の変調データ信号内の他のデータによって具現化されてもよく、あらゆる情報配信媒体を含む。「変調データ信号」という用語は、信号に情報をエンコードするような方法で設定又は変更された1つ又は複数の特性を持つ信号を表してもよい。例として、通信媒体には、有線ネットワーク又は直接有線接続等の有線媒体、及び、音響、無線周波数(RF)、赤外線その他の無線媒体等の無線媒体が含まれてもよいが、これらに限定されない。
【0060】
図7Aと
図7Bは、本開示の態様が実施され得る、例えば、携帯電話、スマートフォン、ウェアラブルコンピュータ(スマートウォッチ等)、タブレットコンピュータ、ラップトップコンピュータ等のコンピューティングデバイス又はモバイルコンピューティングデバイス700を示す。
図7Aを参照すると、態様を実施するためのモバイルコンピューティングデバイス700の一態様が示されている。基本的な構成では、モバイルコンピューティングデバイス700は、入力要素と出力要素の両方を持つ携帯式のコンピュータである。モバイルコンピューティングデバイス700は、典型的には、ディスプレイ705と、ユーザによるモバイルコンピューティングデバイス700への情報入力を可能にする1つ又は複数の入力ボタン709/710とを含む。モバイルコンピューティングデバイス700のディスプレイ705は、入力装置(例えば、タッチスクリーンディスプレイ)としても機能し得る。オプションとしてサイド入力要素715が含まれている場合、これによって、さらなるユーザ入力が可能となる。サイド入力要素715は、ロータリスイッチ、ボタン、又は他のタイプの手動入力要素であってもよい。代替的な態様では、モバイルコンピューティングデバイス700により多くの、又はより少ない入力要素が組み込まれてもよい。例えば、いくつかの態様において、ディスプレイ705はタッチスクリーンでない場合がある。さらに別の代替的な態様では、モバイルコンピューティングデバイス700は、セルラーフォン等の携帯電話システムである。モバイルコンピューティングデバイス700は、オプションとしてキーパッド735も含むことができる。オプションのキーパッド735は、物理的なキーパッドであってもよく、又は、タッチスクリーンディスプレイ上に生成される「ソフト」キーパッドであってもよい。様々な態様において、出力要素は、グラフィカルユーザインターフェース(GUI)を表示するためのディスプレイ705、視覚インジケータ731(例えば、発光ダイオード)、及び/又は音響変換器725(例えば、スピーカ)を含む。いくつかの態様において、モバイルコンピューティングデバイス700には、ユーザに触覚のフィードバックを提供するための振動変換器が組み込まれている。さらに別の態様において、モバイルコンピューティングデバイス700には、外部ソースに信号を送信するため、又は外部ソースから信号を受信するための、オーディオ入力(例えば、マイクジャック)、オーディオ出力(例えば、ヘッドフォンジャック)、及び映像出力(例えば、HDMI(登録商標)ポート)等の入力及び/又は出力ポート730が組み込まれている。
【0061】
図7Bは、コンピューティングデバイス、サーバ、又はモバイルコンピューティングデバイスの一態様のアーキテクチャを示すブロック図である。すなわち、モバイルコンピューティングデバイス700には、いくつかの態様を実施するためのシステム(702)(例えば、アーキテクチャ)を組み込むことができる。システム702は、1つ又は複数のアプリケーション(例えば、ブラウザ、電子メール、カレンダー、コンタクトマネージャ、メッセージングクライアント、ゲーム、及びメディアクライアント/プレーヤ)を実行可能な「スマートフォン」として実装することができる。いくつかの態様では、システム702は、統合型パーソナルデジタルアシスタント(PDA)や無線電話等のコンピューティングデバイスとして統合されている。
【0062】
1つ又は複数のアプリケーションプログラム766は、メモリ762にロードされ、オペレーティングシステム764上で、又はオペレーティングシステム764に関連して実行されてもよい。アプリケーションプログラムの例には、電話ダイヤラプログラム、電子メールプログラム、個人情報管理(PIM)プログラム、ワードプロセッシングプログラム、スプレッドシートプログラム、インターネットブラウザプログラム、メッセージングプログラム、及び/又は本明細書に記載のシステムによってサポートされる1つ又は複数の構成要素が含まれる。システム702は、メモリ762内の不揮発性記憶領域768も含む。不揮発性記憶領域768は、システム702の電源が落ちても失われるべきでない永続的な情報を格納するために使用されてもよい。アプリケーションプログラム766は、電子メールアプリケーションで使用される電子メール又は他のメッセージ等の情報を、不揮発性記憶領域768において使用し格納してもよい。システム702には同期アプリケーション(図示せず)も常駐しており、ホストコンピュータに常駐する対応する同期アプリケーションと相互作用して、不揮発性記憶領域768に格納された情報を、ホストコンピュータに格納された対応する情報と同期させるようにプログラミングされている。理解されるように、他のアプリケーションがメモリ762にロードされ、本明細書に記載のモバイルコンピューティングデバイス700上で実行されてもよい(例えば、映像処理モジュール623、オーディオ処理モジュール624、映像効果モジュール625、及びシェーダモジュール626等)。
【0063】
システム702は電源770を有し、この電源は1つ又は複数のバッテリとして実装されてもよい。電源770は、ACアダプタ、又はバッテリを補充若しくは充電する電源付きドッキングクレードル等の外部電源をさらに含む場合がある。
【0064】
システム702は、無線周波数通信を送受信する機能を実行する無線インターフェース層772も含むことができる。無線インターフェース層772は、通信キャリア又はサービスプロバイダを介して、システム702と「外の世界」との間の無線接続を容易にする。無線インターフェース層772への送信、又は無線インターフェース層772からの送信は、オペレーティングシステム764の制御下で行われる。言い換えれば、無線インターフェース層772によって受信された通信は、オペレーティングシステム764を介してアプリケーションプログラム766に伝えられてもよく、逆もまた同様である。
【0065】
視覚インジケータ720は、視覚的通知を提供するために使用されてもよく、且つ/又は、オーディオインターフェース774は、音響変換器725を介して通知音を生成するために使用されてもよい。図示の構成では、視覚インジケータ720は発光ダイオード(LED)であり、音響変換器725はスピーカである。これらのデバイスは、電源770に直接結合されてもよい。こうすることで、これらデバイスは、起動されると、プロセッサ760/761及び他の構成要素がバッテリ電力節約のためにシャットダウンする可能性があっても、通知メカニズムによって指示された期間中はオンのままとなる。LEDは、ユーザがデバイスの電源オン状態を示すアクションを起こすまで、無期限にオンのままであるようにプログラミングされてもよい。オーディオインターフェース774は、可聴信号をユーザに提供し、ユーザから可聴信号を受信するために使用される。オーディオインターフェース774は、例えば、音響変換器725に結合されることに加えて、電話での会話を容易にする目的等のために、可聴入力を受け付けるマイクロフォンに結合されてもよい。本開示の態様に従い、マイクは、後述するように、通知の制御を容易にするためのオーディオセンサとしても機能することができる。システム702は、静止画像や映像ストリーム等を記録するための搭載カメラの操作を可能にする映像インターフェース776をさらに含んでもよい。
【0066】
システム702を実装するモバイルコンピューティングデバイス700は、追加の特徴又は機能を有してもよい。例えば、モバイルコンピューティングデバイス700は、磁気ディスク、光ディスク、テープ等の追加のデータ記憶装置(取り外し可能なもの及び/又は取り外し不可能なもの)も含むことができる。このような追加ストレージは、
図7Bでは不揮発性記憶領域768によって示されている。
【0067】
モバイルコンピューティングデバイス700によって生成又は取得され、システム702を介して格納されるデータ/情報は、上述のように、モバイルコンピューティングデバイス700上にローカルに格納されてもよい。あるいはデータは、無線インターフェース層772を介して、又はモバイルコンピューティングデバイス700と、モバイルコンピューティングデバイス700に関連付けられた別のコンピューティングデバイス、例えば、インターネット等の分散コンピューティングネットワーク内のサーバコンピュータとの間の有線接続を介して、デバイスによってアクセスされ得る任意の数の記憶媒体に格納されてもよい。理解されるように、このようなデータ/情報は、無線インターフェース層772を介して、又は分散コンピューティングネットワークを介して、モバイルコンピューティングデバイス700を介してアクセスされてもよい。同様に、このようなデータ/情報は、電子メールや共同データ/情報共有システムを含む周知のデータ/情報の転送・格納手段に従って、格納及び使用のためにコンピューティングデバイス間で容易に転送されてもよい。
【0068】
図8は、上述したように、コンピューティングデバイス804、タブレットコンピューティングデバイス806、又はモバイルコンピューティングデバイス808等のリモートソースからコンピューティングシステムにおいて受信したデータを処理するシステムのアーキテクチャの一態様を示す。サーバ装置802に表示されるコンテンツは、異なる通信チャネル又は他のストレージタイプに格納されてもよい。例えば、コンピューティングデバイス804、806、808は、
図1のコンピューティングデバイス104を表してもよく、サーバ装置802は、
図1のサーバ106を表してもよい。
【0069】
いくつかの態様では、映像処理モジュール823、オーディオ処理モジュール824、及び映像効果モジュール825のうち1つ又は複数が、サーバ装置802によって採用されてもよい。サーバ装置802は、ネットワーク812を通して、コンピューティングデバイス804、タブレットコンピューティングデバイス806、及び/又はモバイルコンピューティングデバイス808(例えば、スマートフォン)等のクライアントコンピューティングデバイスへデータを提供してもよく、クライアントコンピューティングデバイスからデータを提供してもよい。上述のコンピュータシステムは、例として、コンピューティングデバイス804、タブレットコンピューティングデバイス806、及び/又はモバイルコンピューティングデバイス808(例えば、スマートフォン)によって具現化されてもよい。コンピューティングデバイスのこれらの態様では、グラフィック生成元のシステムで前処理されるか、受信したコンピューティングシステムで後処理されるかのいずれかである使用可能なグラフィックデータを受信するが、これに加えて、ストア816からコンテンツを取得してもよい。コンテンツストアは、映像データ818、オーディオデータ820、及びレンダリングされた映像データ822を含んでもよい。
【0070】
図8は、本明細書に開示された1つ又は複数の態様を実行し得る例示的なモバイルコンピューティングデバイス808を示す。さらに、本明細書に記載の態様及び機能は、分散システム(例えば、クラウドベースのコンピューティングシステム)上で動作してもよく、この場合、アプリケーション機能、メモリ、データ格納及び検索、並びに様々な処理機能は、インターネット又はイントラネット等の分散コンピューティングネットワーク上で互いに遠隔で動作してもよい。様々なタイプのユーザインターフェース及び情報は、コンピューティングデバイスの搭載ディスプレイを介して、又は1つ又は複数のコンピューティングデバイスに関連付けられたリモートディスプレイユニットを介して表示されてもよい。例えば、様々なタイプのユーザインターフェース及び情報が投影された壁面に、様々なタイプのユーザインターフェース及び情報が表示され、相互作用が行われてもよい。本発明の態様が実施され得る多数のコンピューティングシステムとの相互作用には、キー入力、タッチスクリーン入力、音声入力、ジェスチャー入力(関連するコンピューティングデバイスが、コンピューティングデバイスの機能を制御するためのユーザによるジェスチャを取り込んで解釈するための検出機能(例えばカメラ)を含んでいる場合)等が含まれる。
【0071】
「少なくとも1つ」、「1つ又は複数」、「又は」、「及び/又は」という語句は、使用される場合、接続及び離接の両方の意味を持つ、制約のない表現形式である。例えば、「A、B、及びCのうちの少なくとも1つ」、「A、B、又はCのうちの少なくとも1つ」、「A、B、及びCのうち1つ又は複数」、「A、B、又はCのうち1つ又は複数」、「A、B、及び/又はC」、「A、B、又はC」という表現は、Aのみ、Bのみ、Cのみ、AとB、AとC、BとC、又は、AとBとCを意味する。
【0072】
「1」又は「1つ」の実体という用語は、1つ又は複数のその実体を指す。そのため、本明細書では、「1」(又は「1つ」)、「1つ又は複数」、及び「少なくとも1つ」という用語を互換的に使用することができる。また、「含む」、「含む」、「有する」という用語が互換的に使用できることにも留意されたい。
【0073】
本明細書で使用される用語「自動」及びその変形は、プロセス又は操作が実行されるときに、典型的には連続的又は半連続的であり、人間による重要な入力なしに行われる、あらゆるプロセス又は操作を指す。しかし、プロセス又は操作の実行が人間による重要な、又は重要ではない入力によるとしても、プロセス又は操作の実行前に入力を受け取った場合は、プロセス又は操作は自動となり得る。かかる入力がプロセス又は操作の実行方法に影響を与える場合、人間による入力が重要であるとみなされる。人間による、プロセス又は操作の実行を承諾する入力は、「重要」とはみなされない。
【0074】
本明細書で論じたステップ、機能、及び操作は、いずれも連続的かつ自動的に実行することができる。
【0075】
本開示の例示的なシステム及び方法について、コンピューティングデバイスに関連して説明してきた。しかしながら、本開示を不必要に曖昧にすることを避けるため、先の説明ではいくつかの既知の構造及び装置が省略されている。この省略は、限定として解釈されるものではない。また、本開示を理解してもらうために具体的な詳細が記載されているが、本開示は、本明細書に記載された具体的な詳細以外の様々な方法で実施され得ることを理解されたい。
【0076】
さらに、本明細書で説明した例示的な態様ではシステムの様々な構成要素の配置が示されているが、システムの特定の構成要素は、LAN及び/若しくはインターネット等の分散ネットワークの遠隔部分、又は専用システム内に、遠隔で配置することができる。したがって、システムの構成要素は、サーバ、通信装置等の1つ又は複数の装置に組み合わせることができ、又は、アナログ及び/若しくはデジタルの電気通信ネットワーク、パケット交換ネットワーク、又は回線交換ネットワーク等の分散ネットワークの特定のノードに配置できることを理解されたい。前述の説明から、またコンピュータの効率上の理由で、システムの構成要素は、システムの操作に影響を与えることなく、構成要素の分散ネットワーク内の任意の場所に配置できることが理解されるであろう。
【0077】
さらに、要素を接続する様々なリンクは、有線/無線リンク、若しくはそれらの任意の組合せ、又は、接続された要素との間でデータの供給及び/若しくは通信が可能な、任意の他の既知の要素若しくは後に開発される(複数の)要素とすることができることを理解されたい。これらの有線又は無線のリンクは、セキュアなリンクとすることもでき、暗号化された情報の通信が可能なものであってもよい。例えば、リンクとして使用される通信媒体は、同軸ケーブル、銅線、光ファイバーを含む、電気信号に適した任意のキャリアとすることができ、電波及び赤外線データ通信中に発生するような音響波や光波の形態をとってもよい。
【0078】
フローチャートは、イベントの特定の順序に関連して論じられ、示されてきたが、開示された構成及び態様の動作に重大な影響を与えることなく、この順序に対し変更、追加、及び省略が可能であることを理解されたい。
【0079】
本開示については、いくつかの変形及び修正が可能である。本開示のいくつかの機能を、他の機能を提供せずに提供することは可能である。
【0080】
さらに別の構成では、本開示のシステム及び方法は、特定用途向けコンピュータ、プログラミングされたマイクロプロセッサ又はマイクロコントローラ及び周辺集積回路素子、ASIC又は他の集積回路、デジタル信号プロセッサ、個別の素子回路等ハードウェアに組み込まれた電子回路又は論理回路、PLD、PLA、FPGA、PAL等のプログラマブルロジックデバイス又はゲートアレイ、特定用途向けコンピュータ、任意の同等の手段等と組み合わせて実装することができる。一般に、本明細書で説明した方法を実施可能な任意の装置又は手段は、本開示の様々な態様を実施するために使用することができる。本開示のために使用可能な例示的なハードウェアには、コンピュータ、携帯式のデバイス、電話(セルラ、インターネット対応、デジタル、アナログ、ハイブリッド等)、及び本技術分野で既知の他のハードウェアが含まれる。これらのデバイスのいくつかには、プロセッサ(単一又は複数のマイクロプロセッサ等)、メモリ、不揮発性ストレージ、入力装置、及び出力装置が含まれる。さらに、本明細書に記載の方法を実施するために、代替的なソフトウェアの実装を構築することもできる。代替的なソフトウェアの実装には、分散処理若しくは構成要素/オブジェクト分散処理、並列処理、又は仮想マシン処理が含まれるが、これらに限定されない。
【0081】
さらに別の構成において、開示された方法は、様々なコンピュータ又はワークステーションのプラットフォームで使用できる移植可能なソースコードを提供する、オブジェクトを使用するソフトウェア又はオブジェクト指向のソフトウェア開発環境と組み合わせて容易に実施してもよい。あるいは、開示されたシステムは、標準的な論理回路又はVLSI設計を使用して、部分的又は完全にハードウェアに実装されてもよい。本開示にかかるシステムを実装するためにどのソフトウェア又はハードウェアを使用するかは、システムの速度及び/又は効率の要件、特定の機能、並びに、利用される特定のソフトウェア若しくはハードウェアのシステム、又はマイクロプロセッサ若しくはマイクロコンピュータのシステムに依存する。
【0082】
さらに別の構成では、開示された方法は、コントローラ及びメモリと協働するプログラミングされた汎用コンピュータ、特定用途向けコンピュータ、マイクロプロセッサ等において実行可能で、記憶媒体に記憶可能なソフトウェアにおいて、部分的に実施されてもよい。このような場合、本開示のシステム及び方法は、アプレット、JAVA(登録商標)又はCGIスクリプト等のパーソナルコンピュータに組み込まれたプログラムとして、サーバ又はコンピュータワークステーションに常駐するリソースとして、専用の測定システム、システムコンポーネントに組み込まれたルーチン等として実装することができる。システムは、システム及び/又は方法をソフトウェア及び/又はハードウェアのシステムに物理的に組み込むことによっても実装することができる。
【0083】
本開示は、記載された規格やプロトコルに限定されない。本明細書では言及していない他の類似の規格やプロトコルが存在する場合、これらも本開示に含まれる。さらに、本明細書で言及した規格及びプロトコル、並びに本明細書で言及していない他の類似の規格及びプロトコルについては、定期的に、本質的に同じ機能を持つより高速又はより効果的な均等物に差し替えられる。同じ機能を持つこうした差し替えられた規格及びプロトコルは、本開示に含まれる均等物とみなされる。
【0084】
本開示は、少なくとも以下の段落に示す実施例に従った、ディスプレイ上に仮想衣服を生成するためのシステム及び方法に関する。
【0085】
(Al)1つの態様において、いくつかの例は、ディスプレイ上に仮想衣服を生成するための方法を含む。方法は、映像データとオーディオデータを取得することと、映像データを分析して、映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、決定された1つ又は複数の身体関節に基づいてメッシュを生成することと、オーディオデータを分析してオーディオ特性を決定することと、仮想衣服に関連付けられたテクスチャレンダリング情報を、オーディオ特性に基づいて決定することと、テクスチャレンダリング情報を使用して、生成されたメッシュに仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、を含んでもよい。
【0086】
(A2)Alのいくつかの例において、方法は、オーディオデータから拍子特性又は周波数スペクトル値のうちの少なくとも1つを決定することと、拍子特性又は周波数スペクトル値のうちの少なくとも1つに基づいて、少なくとも1つの映像効果パラメータを選択することと、少なくとも1つの映像効果パラメータに基づいてテクスチャレンダリング情報を決定することと、テクスチャレンダリング情報を使用して、生成されたメッシュに仮想衣服をレンダリングすることと、をさらに含む。テクスチャレンダリング情報は、拍子特性又は周波数スペクトル値のうちの少なくとも1つに基づく。
【0087】
(A3)A1-A2のいくつかの例において、方法は、第1シェーダを使用して仮想衣服をレンダリングすることと、第1シェーダとは異なる第2シェーダを使用して1つ又は複数のグラフィックをレンダリングすることと、をさらに含み、1つ又は複数のグラフィックは、拍子特性又は周波数スペクトル値のうちの少なくとも1つに従ってレンダリングされる。
【0088】
(A4)A1~A3のいくつかの例において、方法は、オーディオデータから第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つを決定することと、第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つに基づいて、第2映像効果パラメータを選択することと、第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つに基づいて、第2テクスチャレンダリング情報を決定することと、第2テクスチャレンダリング情報を使用して、生成されたメッシュに仮想衣服をレンダリングすることと、をさらに含む。第2テクスチャレンダリング情報は、第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つに基づく。
【0089】
(A5)A1~A4のいくつかの例において、方法は、オーディオデータに基づいて、第1テクスチャレンダリング情報から第2テクスチャレンダリング情報への変更を同期させることをさらに含む。
【0090】
(A6)A1~A5のいくつかの例において、テクスチャレンダリング情報は、不透明度、透明性、及び金属性のうちの少なくとも1つを含む。
【0091】
(A7)A1~A6のいくつかの例において、メッシュは、映像データに示された決定された1つ又は複数の身体関節の周りの3次元メッシュを含む。
【0092】
(A8)A1~A7のいくつかの例において、オーディオデータを取得することは、音楽ライブラリからオーディオデータを選択することを含み、オーディオ特性は、メタデータとしてオーディオデータに埋め込まれている。
【0093】
さらに別の態様において、いくつかの例は、1つ又は複数のプロセッサと、1つ又は複数のプロセッサに結合されたメモリとを含むシステムを含む。メモリは、1つ又は複数のプロセッサによって実行された場合に、1つ又は複数のプロセッサに本明細書に記載の方法(例えば、上述のA1~A8)のいずれかを実行させる1つ又は複数の命令を格納している。
【0094】
さらに別の態様において、いくつかの例は、デバイスの1つ又は複数のプロセッサによる実行のための1つ又は複数のプログラムを格納したコンピュータ可読記憶媒体を含む。1つ又は複数のプログラムは、本明細書に記載の方法(例えば、上述のA1~A8)のいずれかを実行するための命令を含む。
【0095】
本開示には、様々な構成及び態様において、本明細書に示されて説明された構成要素、方法、プロセス、システム、及び/又は装置が実質的に含まれ、それらの様々な組合せ、副次的な組合せ、及びサブセットが含まれる。当業者であれば、本開示を理解した後に、本明細書に開示されたシステム及び方法の構築方法及び使用方法を理解できるはずである。本開示は、様々な構成及び態様において、本明細書又は本明細書の様々な構成又は態様において説明及び/又は記載がない項目が存在しない場合に、例えば性能を向上させ、容易さを求め、且つ/又は実施コストを削減するために、以前の装置又はプロセスにおいて使用されていた可能性があるような項目が存在しない場合等に、装置及びプロセスを提供することを含む。
【手続補正書】
【提出日】2023-11-29
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【0001】
本願は、2021年6月21日に出願された米国特許出願(出願番号17/353,296、名称「RENDERING VIRTUAL ARTICLES OF CLOTHING BASED ON AUDIO CHARACTERISTICS」)の優先権を主張するものであり、参照することによりその全体が本明細書に組み込まれる。
【背景技術】
【0002】
映像編集技術は広く普及しており、ユーザに様々な映像編集方法を提供している。例えば、ユーザは映像を編集して、映像に視覚効果及び/又は音楽を追加することができる。しかし、多くの映像編集技術では、オーディオデータに基づいて視覚効果を制御することは考慮されていない。したがって、ユーザエクスペリエンス向上のために、映像効果の同期をレンダリングするための映像編集技術を開発する必要がある。
【0003】
本明細書に開示される態様は、上記及び他の一般的な考慮事項に関し説明される。また、比較的具体的な問題が論じられる場合があるが、実施例は、本開示の背景部分又は他の箇所で特定された具体的な問題の解決に限定されるべきではないことを理解されたい。
【発明の概要】
【0004】
本開示の少なくとも1つの実施例に従って、ディスプレイ上に仮想衣服を生成するための方法について説明する。方法は、映像データとオーディオデータを取得することと、映像データを分析して、映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、決定された1つ又は複数の身体関節に基づいてメッシュを生成することと、オーディオデータを分析してオーディオ特性を決定することと、仮想衣服に関連付けられたテクスチャレンダリング情報を、オーディオ特性に基づいて決定することと、テクスチャレンダリング情報を使用して、生成されたメッシュに仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、を含んでもよい。
【0005】
本開示の実施例に従って、ディスプレイ上に仮想衣服を生成するためのコンピューティングデバイスについて説明する。コンピューティングデバイスは、プロセッサと、複数の命令が格納されたメモリとを含んでもよく、複数の命令は、プロセッサによって実行された場合に、コンピューティングデバイスに、映像データとオーディオデータを取得することと、映像データを分析して、映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、決定された1つ又は複数の身体関節に基づいてメッシュを生成することと、オーディオデータを分析してオーディオ特性を決定することと、仮想衣服に関連付けられたテクスチャレンダリング情報を、オーディオ特性に基づいて決定することと、テクスチャレンダリング情報を使用して、生成されたメッシュに仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、を行わせる。
【0006】
本開示の実施例に従って、ディスプレイ上に仮想衣服を生成するための命令を格納する非一時的なコンピュータ可読媒体について説明する。命令は、コンピューティングデバイスの1つ又は複数のプロセッサによって実行された場合に、コンピューティングデバイスに、映像データとオーディオデータを取得することと、映像データを分析して、映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、決定された1つ又は複数の身体関節に基づいてメッシュを生成することと、オーディオデータを分析してオーディオ特性を決定することと、仮想衣服に関連付けられたテクスチャレンダリング情報を、オーディオ特性に基づいて決定することと、テクスチャレンダリング情報を使用して、生成されたメッシュに仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、を行わせる。
【0007】
1つ又は複数の上述の態様のいずれかは、1つ又は複数の態様の他のいずれかと組み合わせられる。1つ又は複数の態様は全て、本明細書で説明される。
【0008】
本発明の概要は、概念の一部を選び取って簡単に紹介したものであり、これについては、発明を実施するための形態においてさらに説明する。本発明の概要は、特許を請求する主題の重要な特徴又は必須の特徴を特定することを意図したものではなく、特許を請求する主題の範囲を限定するために使用されることを意図したものでもない。実施例の追加の態様、特徴、及び/又は利点は、以下の説明において部分的に記載されており、一定程度はその説明により明らかにされ、あるいは本開示を実施することによって理解されることになる。
【図面の簡単な説明】
【0009】
以下の図を参照して、非限定的かつ非網羅的な実施例を説明する。
【0010】
【
図1】本開示の実施例にかかる、仮想衣服レンダリングシステムの例を示す。
【0011】
【
図2】本開示の実施例にかかる、
図1の仮想衣服レンダリングシステムのコンピューティングデバイスの詳細を示す。
【0012】
【
図3A】本開示の実施例にかかる、身体の一部に関連付けられたメッシュを生成する例を示す。
【
図3B】本開示の実施例にかかる、身体の一部に関連付けられたメッシュを生成する例を示す。
【0013】
【
図3C】本開示の実施例にかかる、映像効果のレンダリングされたフレームの例を示す。
【
図3D】本開示の実施例にかかる、映像効果のレンダリングされたフレームの例を示す。
【
図3E】本開示の実施例にかかる、映像効果のレンダリングされたフレームの例を示す。
【0014】
【
図4】本開示の実施例にかかる、仮想衣服レンダリング方法の詳細を示す。
【
図5】本開示の実施例にかかる、仮想衣服レンダリング方法の詳細を示す。
【0015】
【
図6】本開示の態様が実施され得るコンピューティングデバイスの物理的構成要素(例えばハードウェア)を表すブロック図を示す。
【0016】
【
図7A】本開示の態様が実施され得るコンピューティングデバイスの第1の例を示す。
【0017】
【
図7B】本開示の態様が実施され得るコンピューティングデバイスの第2の例を示す。
【0018】
【
図8】本開示の実施例にかかる、データ処理システムのアーキテクチャの少なくとも1つの態様を示す。
【発明を実施するための形態】
【0019】
以下の詳細な説明では添付図面を参照するが、添付図面は本明細書の一部を構成し、添付の図面には具体的な態様や例が図解で示されている。これらの態様は組み合わされてもよく、他の態様が利用されてもよく、また、本開示から逸脱することなく構造的な変更が加えられてもよい。態様は、方法、システム、又は装置として実施されてもよい。したがって態様は、ハードウェアの実装、全てソフトウェアの実装、又はソフトウェアとハードウェアの態様を組み合わせた実装の形態をとってもよい。よって、以下の詳細な説明は限定的な意味でとらえられるものではなく、本開示の範囲は、添付の特許請求の範囲及びその均等物によって定義される。
【0020】
本開示の実施例によれば、映像効果同期システムは、映像クリップに表示される1つ又は複数の仮想衣服に対し、オーディオに反応した映像効果を適用することによって、ユーザが衣服とかかわることを可能にし、衣服をより生き生きとした、より相互作用的なものとする。例えば、ユーザは、衣服ライブラリから仮想衣服を選択してもよい。仮想衣服は、身体関節の組合せに基づいて生成される3次元メッシュにレンダリングされるか、さもなければ装着されてもよい。いくつかの例において、仮想衣服は、身体関節の組合せに基づいて生成される3次元メッシュにレンダリングするか、さもなければ装着することができる任意のオブジェクトであってもよい。いくつかの例において衣服は、仮想衣服に関連付けられた1つ又は複数の映像効果パラメータによって設定された映像効果を含んでもよい。一例として、映像効果パラメータは、衣服の透明性、仮想衣服に関連付けられた輝き効果(Sparkle
Effect)、仮想衣服の色、及び/又は仮想衣服に関連付けられ反射率を含んでもよいが、これらに限定されない。仮想衣服は、特定の三次元メッシュ(例えば、胴体メッシュ、頭部メッシュ、脚部メッシュ)に関連付けられてもよく、したがって、生成されたメッシュに対し、仮想衣服を装着するか、さもなければレンダリングすることができる。映像シーケンスに示されるユーザが動くと、仮想衣服が動くように見えてもよいことを理解されたい。いくつかの例では、手、頭、足等のユーザの体の一部が仮想衣服を隠してもよい。したがって、仮想衣服がメッシュに装着される際に、身体の一部が仮想衣服の前に現れてもよい。
【0021】
例示的な態様では、3次元メッシュに対し、仮想衣服に関連付けられたテクスチャがマッピングされてもよい。3次元メッシュは、映像クリップ内で追跡される対象オブジェクトの1つ又は複数の身体関節の組合せに基づいて生成される。そのため、映像クリップの1つ又は複数の対象から身体関節のリストを分離又は識別できるように身体関節識別を実行してもよい。3次元メッシュは、1つ又は複数の関節に基づいて生成されてもよい。テクスチャ、色、色の変化速度、及び物理ベースレンダリング(PBR)のマテリアルパラメータは、オーディオ音楽の音楽特性に基づいてもよい。
【0022】
例えば、オーディオ音楽の音楽特性(例えば、拍子情報及び/又は周波数情報)に基づいて、テクスチャの1つ又は複数の特性が、仮想衣服のテクスチャをレンダリングするように設定されたシェーダによって変更されてもよい。例として、オーディオ音楽の音楽特性を決定するために、音楽の特徴付けを実行してもよい。あるいは、オーディオ音楽がユーザによって音楽ライブラリから選択される場合、音楽特性はメタデータとしてオーディオ音楽に埋め込まれてもよい。一例として、仮想衣服のテクスチャは、仮想衣服の周囲に位置するレンダリング効果を含んでもよく、このような効果は、オーディオ音楽の対応する拍子特性又は周波数スペクトルに基づいて変化してもよい。したがって、1つ又は複数の映像効果パラメータは、オーディオ音楽と映像クリップに基づいて定期的に(例えば、1拍ごとに)更新されてもよい。映像効果の同期により、仮想衣服のテクスチャがオーディオ音楽の音楽の拍子に反応するようになる。いくつかの例では、1つ又は複数の身体部分(例えば、ユーザの手)の間の距離もテクスチャに影響を与える場合がある。例えば、シェーダによってレンダリングされるテクスチャの色は、映像に示された手の間の距離に基づいて変更されてもよい。さらに、輝きシェーダ(sparkle
shader)のような第2シェーダを仮想衣服に適用し、且つ/又はクリスタル、アニメーション、その他のグラフィック等の別の効果を映像内で生み出すために第2シェーダを使用してもよい。
【0023】
図1は、本開示の実施例にかかる、1つ又は複数の映像効果をレンダリングするための仮想衣服レンダリングシステム100を示す。例えば、ユーザ102は、映像クリップ108を生成、受信、取得し、又は他の方法で取得してもよい。その後、ユーザは映像クリップ108に追加するオーディオ音楽110を選択してもよい。いくつかの例では、音楽110はシステム100によって予め設定されてもよい。仮想衣服レンダリングシステム100により、ユーザ102は、仮想衣服を仮想で試着することができる。仮想衣服は、音楽110に基づいて、映像クリップ108内の対象の1つ又は複数の、対象となる身体関節から作成された1つ又は複数の3次元メッシュに装着してもよい。このため仮想衣服レンダリングシステム100は、ユーザ102に関連付けられたコンピューティングデバイス104と、ネットワーク114を介してコンピューティングデバイス104と通信可能に結合されたサーバ106とを含む。ネットワーク114は、有線又は無線のローカルエリアネットワーク(LAN)、有線又は無線のワイドエリアネットワーク(WAN)、及び/又はインターネットを含むがこれらに限定されない、あらゆる種類のコンピューティングネットワークを含んでもよい。
【0024】
例として、ユーザ102は、映像クリップ108と音楽110を取得するためにコンピューティングデバイス104を利用してもよい。ユーザ102は、コンピューティングデバイス104に通信可能に結合されたカメラを使用して、映像クリップ108を生成してもよい。このような例では、仮想衣服の色、不透明度、回転、及び他の複数のグラフィック(例えば、輝き)のような(但しこれらに限定されない)映像効果を、ユーザ102が仮想衣服を実際に着用しているかのように、リアルタイム又はほぼリアルタイムで音楽110に同期させてもよく、したがって仮想衣服のテクスチャ情報の変化は、音楽に応じて変化してもよい。例として、ユーザは、自身がコンピューティングデバイス104で映像を撮影しているときに、仮想衣服が追加された映像をディスプレイ(例えば、ディスプレイ705)上で視認してもよい。代替として、又は追加で、ユーザ102は、コンピューティングデバイス104上で映像クリップ108を受信、取得し、又は他の方法で取得してもよい。いくつかの例では、ユーザ102は、音楽110に基づいて、映像クリップ108を編集し映像効果を追加してもよい。いくつかの態様では、ユーザ102は、コンピューティングデバイス104を利用して、映像クリップ108と音楽110をネットワーク114を介してサーバ106に送信してもよい。コンピューティングデバイス104は、ポータブルのコンピューティングデバイス又はポータブルではないコンピューティングデバイスのいずれであってもよい。例えば、コンピューティングデバイス104は、スマートフォン、ラップトップ、デスクトップ、サーバであってもよい。映像クリップ108は、任意のフォーマットで取得することができ、圧縮及び/又は解凍された形態であってもよい。
【0025】
コンピューティングデバイス104は、映像クリップ108の各フレームを分析し、フレーム内の1つ又は複数の対象の身体関節を識別するように設定されている。例えば、身体関節アルゴリズムが、映像クリップ108から識別及び抽出される身体関節のリストを定義してもよい。身体関節には、頭部、頸部、骨盤、脊椎、左右の肩、左右の上腕、左右の前腕、左右の手、左右の大腿、左右の脚、左右の足、及び左右の足指が含まれてもよいが、これらに限定されない。
【0026】
コンピューティングデバイス104は、オーディオ音楽110を受信するように設定されている。オーディオ音楽110は、音楽ライブラリから映像クリップ108に追加するためにユーザ102によって選択される。あるいは、いくつかの態様では、オーディオ音楽110は映像効果に関連付けられてもよい。このような態様では、映像クリップ108に追加されるデフォルトの音楽が、映像効果に含まれていてもよい。いくつかの態様では、オーディオ音楽110は映像クリップ108から抽出されてもよい。コンピューティングデバイス104は、オーディオデータを分析して、オーディオ音楽110の拍子情報又は周波数スペクトル情報を決定するように設定されている。例えば、上述したように、コンピューティングデバイス104は、自動拍子追跡アルゴリズムを通して各拍子の拍子特性を決定してもよい。いくつかの態様では、音楽の拍子の特徴付けがメタデータとして音楽に埋め込まれていてもよいことを理解されたい。音楽の拍子の特徴付けには、オーディオ音楽110のアクセントのある拍子及びアクセントのない拍子の数及び相対的な位置が含まれてもよい。例えば、オーディオ音楽110が4/4拍子の構成を有する場合、各セクションには、強拍、弱拍、2番目の強拍、弱拍という拍子の強さが異なる4つの拍子が存在する。
【0027】
代替として、又は追加で、コンピューティングデバイス104はオーディオ音楽の周波数スペクトルの特徴付けを決定してもよい。例えば、コンピューティングデバイス104は、オーディオ音楽の各拍子の平均周波数スペクトルを決定してもよい。いくつかの態様では、周波数スペクトルの特徴付けがメタデータとして音楽に埋め込まれていてもよいことを理解されたい。
【0028】
映像効果には、仮想衣服がどのように見えるか、又はどのようにレンダリングされるかを制御する映像効果パラメータが含まれる。いくつかの態様では、映像効果パラメータは、シェーダによってレンダリングされるテクスチャに関連付けられたPBRマテリアルを制御してもよい。例示的な態様では、映像効果のパラメータは、オーディオ音楽と映像クリップに基づいて定期的に(例えば、1拍ごとに)更新されてもよい。いくつかの例では、1つ又は複数の映像効果パラメータは、ユーザの2つの身体部分の距離に基づいて設定されてもよい。言い換えれば、映像効果の同期により、仮想衣服が映像クリップの音楽の拍子に反応するようになる。
【0029】
いくつかの態様では、ユーザは、映像効果パラメータに基づいて、映像クリップ108に適用する仮想衣服及び/又は映像効果を選択してもよい。映像効果パラメータは、映像クリップ内のユーザのどの複数の関節の周りのどの3次元メッシュにどの仮想衣服を適用するか、及び/又はPBRマテリアルが音楽によってどのように影響されるかを制御するように設定されている。言い換えれば、映像効果パラメータは、複数の身体関節に基づく1つ又は複数のメッシュを定義し、メッシュは、仮想衣服がレンダリングされ得る装着の点又は表面を提供することができる。仮想衣服には、例えば、映像効果を適用してもよい。あるいは、仮想衣服の視覚的特徴は、音楽の拍子の強さに基づいてもよい。例えば、オーディオ音楽が4/4拍子の構成を有し、且つ強い場合、1つの映像効果パラメータセットが選択されてもよい(例えば、
図3A)。オーディオ音楽が4/4拍子の構成を有し、且つ弱い場合、別の映像効果パラメータセットが選択されてもよい(例えば、
図3B)。オーディオ音楽が4/4拍子の構成を有し、且つ弱い場合、第3の映像効果パラメータセットが選択されてもよい(例えば、
図3C)。別の例として、4/4拍子の構成の映像効果パラメータは、3/4拍子の構成の映像効果パラメータとは異なっていてもよい。すなわち、拍子の構成及び追跡される拍子が、映像効果パラメータを選択するために使用されてもよく、映像効果パラメータは、ディスプレイに仮想衣服をレンダリングするためのシェーダの1つ又は複数の態様に影響を与えてもよい。代替として、又は追加で、映像効果パラメータは周波数スペクトル範囲に基づいて決定されてもよい。例えば、第1周波数スペクトルに応じて第1映像効果パラメータが選択されてもよく、第2周波数スペクトルに応じて第2映像効果パラメータが選択されてもよく、第3周波数スペクトルに応じて第3映像効果パラメータが選択されてもよい。例として、異なる周波数スペクトルが、高スペクトル範囲(例えば、4kHz~20Hz)、中スペクトル範囲(例えば、500Hz~4kHz)、低スペクトル範囲(例えば、20Hz~500Hz)に対応してもよい。言い換えれば、オーディオ音楽の拍子又はスペクトルは、シェーダが映像クリップに仮想衣服をレンダリングする方法に関連付けられるテクスチャ情報を制御してもよい。
【0030】
また、オーディオ音楽の音楽特性は、映像に示されたユーザの周りの仮想衣服及び/又は他のグラフィックに適用される1つ又は複数の輝き効果を制御することもできる。例えば、メタリック効果が仮想衣服に適用されてもよく、映像効果パラメータは、輝きシェーダが仮想衣服のどの部分に適用されるか、及び/又は、どのような種類の輝きグラフィック(例えば、クリスタル)が映像クリップに適用されるかを制御してもよい。したがって、コンピューティングデバイス104は、拍子特性に基づいて輝き特性を決定してもよい。例えば、オーディオ音楽が4/4拍子の構成を有する場合、強拍には強い輝き効果を適用し、弱拍には弱い輝き効果を適用してもよい。あるいは、周波数スペクトル範囲に基づいて輝き特性を決定してもよい。
【0031】
追加で、又は代替として、拍子特性又は周波数スペクトル範囲に基づいて、輝きシェーダによってレンダリングされる追加グラフィックのアニメーション速度を制御してもよい。例えば、強拍の間は、クリスタルがユーザの周りで速く回転してもよく、弱拍の間は当該クリスタルがユーザの周りで遅く回転してもよい。
【0032】
映像クリップに映像効果を追加する準備が完了すると、コンピューティングデバイス104は、仮想衣服の2次元(2D)テクスチャを身体関節の周りの3次元(3D)メッシュと調和させるために、仮想衣服を修正してもよい。3Dメッシュ上に2Dアニメーションのオブジェクトを重ね、調和させることで、3Dのような仮想衣服を作成してもよい。その後、コンピューティングデバイス104は、映像効果をオーディオ音楽の音楽の拍子に同期させて、映像効果を有するレンダリングされた映像を生成してもよい。この映像は、コンピューティングデバイス104に通信可能に結合されたディスプレイ(例えば、ディスプレイ705)上でユーザに示されてもよい。ユーザが映像を撮影しているときに、1つ又は複数の身体関節に基づいて生成されたメッシュの周りの映像効果をユーザがディスプレイ上で視認できるように、映像効果をリアルタイム又はほぼリアルタイムで音楽の拍子に同期させてもよいことを理解されたい。代替として、又は追加で、サーバ106によって映像効果を音楽の拍子に同期させてもよい。このような態様では、映像効果は、映像効果をレンダリングするために映像クリップ108がサーバ106にアップロードされたときに、映像クリップ108に適用されてもよい。
【0033】
次に
図2を参照すると、本開示の実施例にかかるコンピューティングデバイス202が描かれている。コンピューティングデバイス202は、先に
図1で描かれたコンピューティングデバイス104と同じか、類似していてもよい。コンピューティングデバイス202は、通信インターフェース204、プロセッサ206、及びコンピュータ可読ストレージ208を含んでもよい。例として、通信インターフェース204はネットワークに結合され、映像クリップ108とオーディオ音楽110(
図1)とを受信してもよい。映像クリップ108(
図1)は映像フレーム246として格納されてもよく、音楽110は入力242のオーディオデータ248として格納されてもよい。
【0034】
いくつかの例では、1つ又は複数の映像効果も、通信インターフェース204で受信され、映像効果データ252として格納されてもよい。映像効果データ252は、映像効果に関連付けられた1つ又は複数の映像効果パラメータを含んでもよい。映像効果パラメータは、仮想衣服のテクスチャが映像クリップ内の身体の1つ又は複数の関節の周りのメッシュにどのようにレンダリングされるか、及び/又はどのように装着されるかを定義することができるが、これらに限定されない。
【0035】
例として、1つ又は複数のアプリケーション210がコンピューティングデバイス104によって提供されてもよい。1つ又は複数のアプリケーション210は、映像処理モジュール212、オーディオ処理モジュール214、映像効果モジュール216、シェーダ218、及び輝きシェーダ220を含んでもよい。映像処理モジュール212は、映像取得マネージャ224、身体関節識別器226、及びメッシュ生成器228を含んでもよい。映像取得マネージャ224は、1つ又は複数の映像フレームを含む映像データを受信、取得し、又は他の方法で取得するように設定されている。さらに、身体関節識別器226は、フレーム内の1つ又は複数の対象の1つ又は複数の身体関節を識別するように設定されている。メッシュ生成器228は、フレーム内の1つ又は複数の対象の1つ又は複数の身体関節に基づいてメッシュを生成するように設定されており、メッシュは、1つ又は複数の身体関節の組合せに基づいて決定されてもよい。例示的な態様では、対象は人である。したがって、身体分割アルゴリズムが、映像クリップ108から識別及び抽出される身体関節のリストを定義してもよい。身体関節には、頭部、頸部、骨盤、脊椎、左右の肩、左右の上腕、左右の前腕、左右の手、左右の大腿、左右の脚、左右の足、及び左右の足指が含まれてもよいが、これらに限定されない。いくつかの例では、身体関節のリストは通信インターフェース204で受信され、身体関節250として格納されてもよい。いくつかの態様では、身体関節のリストはサーバ(例えば106)から受信されてもよい。
【0036】
さらに、オーディオ処理モジュール214は、オーディオ取得マネージャ232とオーディオアナライザ234を含んでもよい。オーディオ取得マネージャ232は、オーディオデータを受信、取得し、又は他の方法で取得するように設定されている。オーディオアナライザ234は、オーディオデータのオーディオ情報を決定するように設定されている。例えば、オーディオ情報には、オーディオデータの各拍子の拍子情報及び周波数スペクトル情報が含まれてもよいが、これらに限定されない。一例として、拍子情報を決定するために自動拍子追跡アルゴリズムが使用されてもよい。いくつかの態様では、拍子情報はメタデータとしてオーディオデータにすでに埋め込まれてもよい。他の態様では、拍子情報は通信インターフェース204で受信され、オーディオデータ248として格納されてもよい。拍子情報は、各拍子の拍子特性を提供する。拍子特性には、拍子の構成、強拍と弱拍の繰り返し順、アクセントのある拍子とアクセントのない拍子の数、アクセントのある拍子とアクセントのない拍子の相対的な位置が含まれるが、これらに限定されない。例えば、オーディオ音楽が4/4拍子の構成を有する場合、各セクションには、強拍、最初の弱拍、2番目の強拍、弱拍という拍子の強さが異なる4つの拍子が存在する。さらに、周波数スペクトル情報は、オーディオデータから所定の期間ごと(例えば、1拍ごと)に抽出されてもよい。いくつかの態様では、周波数スペクトル情報は、メタデータとしてオーディオデータにすでに埋め込まれてもよい。他の態様では、周波数スペクトル情報は通信インターフェース204で受信され、オーディオデータ248として格納されてもよい。
【0037】
さらに、映像効果モジュール216は、衣服効果生成器238と映像効果シンクロナイザ240をさらに含んでもよい。衣服効果生成器238は、オーディオデータに基づいて、仮想衣服、ひいては映像データに適用される効果を決定するように設定されている。具体的には、衣服効果生成器238は、1つ又は複数の映像効果パラメータを決定するように設定されている。例えば、衣服効果生成器238は、オーディオデータに基づいて1つ又は複数の映像効果パラメータを決定するように設定されている。決定された1つ又は複数の映像効果パラメータは、仮想衣服に関連付けられたテクスチャをシェーダがレンダリングする方法を制御するためにシェーダに渡されてもよい。1つの例示的な態様では、仮想衣服は、対象の複数の身体関節を囲むメッシュに装着されるか、さもなければレンダリングされる。仮想衣服は、映像クリップ内でユーザが移動するのに伴い、移動、変化し、さもなければユーザに追従してもよい。例示的な態様では、仮想衣服のテクスチャは1拍ごとに変化してもよい。言い換えれば、選択されたオーディオ音楽の拍子が、仮想衣服の外観を制御する映像効果の変化を制御してもよい。別の例として、映像内の仮想衣服及び/又は画像の1つ又は複数の他の属性が、オーディオ音楽に応じて変化してもよい。例えば、輝きの量、テクスチャマップの不透明度、色、及び動きの速さが、オーディオ音楽に基づいてもよい。
【0038】
映像効果シンクロナイザ240は、選択されたオーディオ音楽の音楽の拍子に映像効果を同期させて、映像効果を有するレンダリングされた映像を生成するように設定されている。レンダリングされた映像は、出力244のレンダリングされた映像フレーム254として格納されるか、さもなければ提供される。いくつかの態様では、映像効果シンクロナイザ240は、仮想衣服の2Dテクスチャを身体関節の周りの3Dメッシュと調和させるために、仮想衣服を修正するように設定されている。3Dメッシュ上に2Dアニメーションのオブジェクトを重ね、調和させることで、3Dのようなアニメーション効果を作り出してもよいことを理解されたい。
【0039】
映像効果シンクロナイザ240は、シェーダ218及び/又は輝きシェーダ220を含むか、さもなければシェーダ218及び/又は輝きシェーダ220と通信する。シェーダ218は、映像効果パラメータを受信するように設定されている。映像効果パラメータに基づいて、シェーダ218は、効果を生み出すか、さもなければ効果をレンダリングするように設定されている。例えばシェーダ218は、色、反射、拡散、透光性、透明性、金属性、フレネル反射、及び微細表面散乱(microsurface
scattering)を含むがこれらに限定されない、映像効果に関連付けられた視覚効果を変更してもよい。別の例として、輝きシェーダ220は、色、反射、拡散、透光性、透明性、金属性、フレネル反射、及び微細表面散乱(microsurface
scattering)を含むがこれらに限定されない、映像効果に関連付けられた視覚効果を変更してもよい。さらに、輝きシェーダは、映像効果パラメータ及び/又はオーディオ音楽に基づいて、映像クリップに1つ又は複数のグラフィックをレンダリングしてもよい。たとえば、輝きシェーダは、ユーザの周りで回転するクリスタルを、金属的で且つ反射して見えるようにレンダリングすべきであると決定してもよい。
【0040】
図3A-3Bは、1つ又は複数の身体関節302を決定し、1つ又は複数の身体関節302に関連付けられたメッシュ304を生成する例を示す。
図3Aに示すように、1つ又は複数の身体関節302が識別されてもよく、各身体関節302は、身体関節の予め定義されたリストに関連付けられてもよい。識別された身体関節302に基づいて、衣服を受けるように設定された身体部分が識別されてもよい。例えば、身体関節302の位置に基づいてシャツが識別されてもよく、この場合、上半身の胴体がシャツを受けるように設定されている。
図3Bに示すように、メッシュ304が生成されてもよく、この場合、メッシュ304は
図3Aの身体関節302に基づく。例として、
図3Bのメッシュ304は、仮想衣服をユーザに装着するために使用されてもよい。したがって、メッシュ304は、人物の身体の一部が仮想衣服の後ろにあり、人物の手が見えない可能性がある場合に、オクルージョンをアシストする。
【0041】
図3C~3Eは、本開示の実施例にかかる、メッシュ304等のメッシュに装着された例示的な衣服306を示す例示的な映像フレーム310~330を示す。すなわち、仮想衣服306は、ユーザ308が仮想的に着用可能な衣服の架空の表示であってもよい。例示として、フレーム310内の仮想衣服306の表示は、オーディオデータ312に反応したものであってもよい。例えば、オーディオデータ312の拍子特性及び/又は周波数スペクトルによって、仮想衣服の色が変化してもよい。すなわち、オーディオデータ312の特性が決定され、映像効果パラメータの特定に使用されてもよく、映像効果パラメータは、シェーダがメッシュ上に仮想衣服のテクスチャをレンダリングする方法を決定するか、さもなければ変更するために使用されてもよい。さらに、輝きシェーダが、仮想衣服の他の特性(例えば、輝きの量)を決定し、且つ/又は、映像フレーム310において他のグラフィック314(例えば、クリスタル)がどのように示されるかを決定してもよい。
【0042】
図3Dのフレーム320に示すように、オーディオデータ316は、フレーム310のオーディオデータ312とは異なっていてもよい。したがって、シェーダは、フレーム320において、フレーム310における仮想衣服306のテクスチャとは異なる仮想衣服のテクスチャをレンダリングしてもよい。代替として、又は追加で、仮想衣服318は、フレーム310の仮想衣服306と同じか、又は類似していてもよい。さらに、輝きシェーダによってレンダリングされるグラフィック322及び/又は他の効果は、フレーム310のグラフィック314と異なっていてもよい。
図3Dにさらに示すように、仮想衣服318は、身体関節に基づいて生成されたメッシュに装着されるか、さもなければレンダリングされてもよい。したがって、ユーザ308が腕を上げると、仮想衣服318は新しい関節位置、ひいては身体部分(例えば、胴体)の新しい構成に適合する。
【0043】
図3Eのフレーム330に示すように、オーディオデータ324は、フレーム320のオーディオデータ316とは異なっていてもよい。したがって、シェーダは、フレーム330において、フレーム320の仮想衣服318のテクスチャとは異なる仮想衣服326のテクスチャをレンダリングしてもよい。代替として、又は追加で、仮想衣服326は、フレーム320の仮想衣服318と同じか、又は類似していてもよい。さらに、輝きシェーダによってレンダリングされるグラフィック328及び/又は他の効果は、フレーム320のグラフィック322とは異なっていてもよい。
図3Eにさらに示すように、仮想衣服326は、身体関節に基づいて生成されたメッシュに装着されるか、さもなければレンダリングされてもよい。したがって、ユーザ308が腕を上げると、仮想衣服326は新しい関節位置、ひいては身体部分(例えば、胴体)の新しい構成に適合する。
【0044】
上述したように、仮想衣服は、オーディオデータに反応したものであってもよい。例として、映像クリップに追加されるオーディオデータを受信する際に、オーディオデータのオーディオ情報(例えば、拍子特性及び/又は周波数スペクトル)が、所定の期間(例えば、音楽の拍子)ごとに決定されてもよい。オーディオ情報に基づいて、シェーダによってレンダリングされるテクスチャが変更されてもよい。例えば、オーディオ音楽が4/4拍子の構成を有する場合、第1テクスチャがレンダリングされてもよく、音楽が3/4拍子の構成を有する場合、第2テクスチャがレンダリングされてもよく、音楽が2/4拍子の構成を有する場合、第3テクスチャがレンダリングされてもよい。第1テクスチャ、第2テクスチャ、及び第3テクスチャは互いに異なる。別の例として、オーディオ音楽が強拍を有する場合、第4テクスチャがレンダリングされてもよく、音楽が最初の弱拍を有する場合、第5テクスチャがレンダリングされてもよく、音楽が2番目の弱拍を有する場合、第6テクスチャがレンダリングされてもよい。第4テクスチャ、第5テクスチャ、及び第6テクスチャは互いに異なる。あるいは、前述のように周波数スペクトル範囲に基づいて、アニメーション効果を決定してもよい。言い換えれば、オーディオ音楽の拍子又はスペクトルは、映像クリップ内の仮想衣服にレンダリングされるテクスチャを制御する。
【0045】
次に
図4を参照すると、本開示の実施例にかかる、オーディオデータに基づいて仮想衣服をレンダリングするための簡略的な方法が説明されている。方法400のステップの一般的な順序を
図4~5に示す。一般的に、方法400は402で始まり460で終わる。方法400は、
図4~5に示したものよりステップが多くても少なくてもよく、あるいは、ステップの順序が
図4~5に示したものとは異なるように設定されてもよい。方法400は、コンピュータシステムによって実行される、コンピュータ可読媒体において符号化又は格納されたコンピュータ可読命令のセットとして、実行することができる。例示的な態様において、方法400は、ユーザ(例えば、102)に関連付けられたコンピューティングデバイスによって実行される。しかしながら、方法400の態様は、コンピュータ又はサーバ(例えば、104、106)等の1つ又は複数の処理装置によって実行されてもよいことを理解されたい。さらに、方法400は、プロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、システムオンチップ(SOC)、ニューラルプロセッシングユニット、又は他のハードウェアデバイスに関連付けられたゲート又は回路によって実行することができる。以下、
図1及び
図2とともに描かれたシステム、構成要素、モジュール、ソフトウェア、データ構造、ユーザインターフェース等を参照して、方法400を説明する。
【0046】
方法400は402から始まり、フローは404に進む。404で、コンピューティングデバイスは、1つ又は複数の映像フレームを含む映像データ(例えば、映像クリップ108)を受信する。例えば、ユーザ102は、コンピューティングデバイスを介して映像クリップ108を生成、受信、取得し、又はその他の方法で取得してもよい。408で、コンピューティングデバイスは、映像データの各フレームを処理し、フレーム内の1つ又は複数の対象の身体関節を識別する。例えば、身体関節アルゴリズムが、映像クリップ108から識別及び抽出される身体関節のリストを定義してもよい。身体関節には、頭部、頸部、骨盤、脊椎、左右の肩、左右の上腕、左右の前腕、左右の手、左右の大腿、左右の脚、左右の足、及び左右の足指が含まれてもよいが、これらに限定されない。
【0047】
再びスタートの402を参照すると、方法400は412に進んでもよい。コンピューティングデバイスは、操作404、412を同時に実行してもよいことを理解されたい。あるいは、操作412は操作404の後に実行されてもよい。いくつかの態様では、操作404が操作412の後に実行されてもよい。
【0048】
412で、コンピューティングデバイスは、映像データに追加するためにユーザ102によって選択されたオーディオデータ(例えば、オーディオ音楽110)を受信する。続いて416で、コンピューティングデバイスはオーディオデータを分析し、オーディオ音楽110のオーディオ情報を決定する。例えば、オーディオ情報には、各拍子の拍子特性及び/又は周波数スペクトルが含まれる。いくつかの態様において、コンピューティングデバイスは、自動拍子追跡アルゴリズムを通じて各拍子の拍子特性を決定してもよい。拍子特性には、拍子の構成、強拍と弱拍の繰り返し順、アクセントのある拍子とアクセントのない拍子の数、アクセントのある拍子とアクセントのない拍子の相対的な位置が含まれるが、これらに限定されない。例えば、オーディオ音楽110が4/4拍子の構成を有する場合、各セクションには、強拍、弱拍、2番目の強拍、弱拍という拍子の強さが異なる4つの拍子が存在する。他の態様では、コンピューティングデバイスは、特定の周波数範囲(例えば、高域、中域、低域)に関連付けるために、各拍子の周波数を決定してもよい。
【0049】
操作404-416で映像データとオーディオデータが受信されて分析されると、方法400は418に進む。418で、コンピューティングデバイスは、408で識別された身体関節に基づいてメッシュを生成してもよい。例えば、上半身の胴体のメッシュは、左右の腕、頭、首の身体関節が識別されたことに基づいてもよい。方法400は、420に進んでもよい。ここでコンピューティングデバイスは、418で生成されたメッシュに適用される仮想衣服を決定する。例えば、ユーザは仮想で試着するために仮想衣服を選択してもよい。ここで仮想衣服は、衣服の架空の表示であってもよく、オーディオデータに反応したものであってもよい。別の例として、仮想衣服は、デフォルトの衣服であってもよい。その後、方法400は424に進んでもよく、決定された衣服に関連付けられるテクスチャレンダリング情報を決定してもよい。例えば、映像効果パラメータは、416で分析されたオーディオデータに基づいてもよい。映像効果パラメータは、シェーダがテクスチャをどのようにレンダリングするかを制御してもよい。例として、レンダリング情報は、色、反射率、不透明度、透明性等を含んでもよいが、これらに限定されず、オーディオデータと仮想衣服との組合せに固有のものであってもよい。すなわち、ある拍子の構成及び拍子の強度を持つオーディオ音楽と、異なる拍子の構成及び/又は異なる拍子の強度を持つオーディオ音楽とでは、映像効果パラメータが異なっていてもよい。その後、方法400は、
図4及び
図5の英数字Aで示すように、
図5の444に進む。
【0050】
444では、オーディオ音楽及び/又は仮想衣服に関連付けられた輝き効果を決定してもよい。例として、輝きシェーダを使用してもよく、輝きシェーダは、仮想衣服のテクスチャ情報をレンダリングするためのメインシェーダとは異なる。輝きシェーダは、映像フレーム及び/又は映像フレーム内のグラフィックに適用される、メインシェーダとは異なる特性を決定してもよい。一例として、グラフィックの情報は、フレーム内で回転するクリスタル、又はキラキラ光る性質の他のグラフィックを含んでもよい。いくつかの例では、輝き効果は、映像フレーム内の仮想衣服及び/又は他のグラフィックに影響を与える、光る効果又は他の効果であってもよい。
【0051】
424と444でそれぞれ、テクスチャレンダリング情報と輝き効果がアニメーションのオブジェクトに対し決定され、対応する(複数の)アニメーション効果が決定されると、方法400は操作448に進む。448で、コンピューティングデバイスは、416で分析されたオーディオデータに従って、テクスチャと輝き効果をレンダリングする。いくつかの例では、452において、選択されたオーディオ音楽の音楽の拍子又はスペクトルに映像効果を同期させ、仮想衣服を有するレンダリングされた映像を生成する。例えば、映像効果は、仮想衣服の色又はその他の認識される性質がどの程度速く変化するかに関連していてもよい。456で、コンピューティングデバイスは、映像効果を有するレンダリングされた映像を、ディスプレイ(例えば、ディスプレイ705)上でユーザに示す。1つ又は複数の身体関節の周りに生成されたメッシュに装着される際に、仮想衣服をユーザが視認できるように、仮想衣服の変化をリアルタイム又はほぼリアルタイムで音楽の拍子に同期させてもよいことを理解されたい。別の例として、ビデオに示されたユーザが動くと、仮想衣服がユーザと共に動いてもよい。方法は460で終了する。
【0052】
方法400は、ユーザに関連付けられたコンピューティングデバイスによって実行されるものとして説明されているが、方法400の1つ又は複数の操作は、サーバ106等の任意のコンピューティングデバイス又はサーバによって実行されてもよいことを理解されたい。例えば、音楽の拍子への映像効果の同期は、ユーザに関連付けられたコンピューティングデバイスから音楽と映像クリップを受信するサーバによって実行されてもよい。
【0053】
図6は、本開示の態様が実施され得るコンピューティングデバイス600の物理的構成要素(例えばハードウェア)を表すブロック図である。以下に説明するコンピューティングデバイスの構成要素は、上述したコンピューティングデバイスに適している可能性がある。例えば、コンピューティングデバイス600は、
図1のコンピューティングデバイス104を表してもよい。基本的な構成では、コンピューティングデバイス600は、少なくとも1つのプロセッシングユニット602と、システムメモリ604とを含んでもよい。コンピューティングデバイスの構成及びタイプに応じて、システムメモリ604は、揮発性ストレージ(例えば、ランダムアクセスメモリ)、不揮発性ストレージ(例えば、リードオンリーメモリ)、フラッシュメモリ、又はかかるメモリの任意の組合せを含んでもよいが、これらに限定されない。
【0054】
システムメモリ604は、オペレーティングシステム605と、本明細書に開示された様々な態様を実行するのに適した1つ又は複数のプログラムモジュール606とを含んでもよい。オペレーティングシステム605は、例えば、コンピューティングデバイス600の動作を制御するのに適しているものであってもよい。さらに、本開示の態様は、グラフィックライブラリ、他のオペレーティングシステム、又は任意の他のアプリケーションプログラムと組み合わせて実施されてもよく、特定のアプリケーション又はシステムに限定されない。この基本構成は、
図6において破線608内の構成要素によって示されている。コンピューティングデバイス600は、追加の特徴又は機能を有してもよい。例えば、コンピューティングデバイス600は、例えば磁気ディスク、光ディスク、又はテープ等の追加のデータ記憶装置(取り外し可能なもの及び/又は取り外し不可能なもの)も含むことができる。このような追加のストレージは、
図6では、取り外し可能な記憶装置609と取り外し不可能な記憶装置610として示されている。
【0055】
上述したように、システムメモリ604には複数のプログラムモジュール及びデータファイルが格納されていてもよい。プログラムモジュール606は、少なくとも1つのプロセッシングユニット602において実行されている間、本明細書で説明したように、1つ又は複数の態様を含むがこれに限定されないプロセスを実行してもよい。(複数の)アプリケーション607は、
図1に関してより詳細に説明したように、映像処理モジュール623、オーディオ処理モジュール624、映像効果モジュール625、及びシェーダモジュール626を含む。本開示の態様に従って使用され得る他のプログラムモジュールには、電子メール及び連絡先アプリケーション、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション、データベースアプリケーション、スライドプレゼンテーションアプリケーション、描画又はコンピュータ支援アプリケーションプログラム等、及び/又は本明細書に記載のシステムによってサポートされる1つ又は複数の構成要素が含まれてもよい。
【0056】
さらに、本開示の態様は、個別の電子部品を含む電気回路、論理ゲートを含みパッケージ化若しくは集積化された電子チップ、マイクロプロセッサを利用する回路、又は電子部品若しくはマイクロプロセッサを含む単一チップにおいて実施されてもよい。例えば、本開示の態様は、
図6に示される各構成要素又は複数の構成要素が単一の集積回路上に集積され得るシステムオンチップ(SOC)を介して実施されてもよい。このようなSOCデバイスは、1つ又は複数のプロセッシングユニット、グラフィックユニット、通信ユニット、システム仮想化ユニット、及び様々なアプリケーション機能を含んでもよく、これらは全て、単一の集積回路としてチップ基板上に集積(又は「焼き付け」)されている。SOCを介して操作する場合、プロトコルを切り替えるクライアントの能力に関して、本明細書に記載の機能は、単一集積回路(チップ)においてコンピューティングデバイス600の他の構成要素と統合されたアプリケーション固有のロジックを介して操作されてもよい。本開示の態様は、例えばAND、OR、及びNOT等の論理演算を実行できる他の技術を使用して実施されてもよい。こうした技術には、機械技術、光学技術、流体技術、及び量子技術が含まれるが、これらに限定されない。さらに、本開示の態様は、汎用コンピュータ内で、又はその他の回路若しくはシステムにおいて実施されてもよい。
【0057】
コンピューティングデバイス600は、キーボード、マウス、ペン、音声入力装置、タッチ又はスワイプによる入力装置等、1つ又は複数の入力装置612も有することができる。また、ディスプレイ、スピーカ、プリンタ等の(複数の)出力装置614Aも含むことができる。仮想ディスプレイに対応する出力614Bも含むことができる。前述した装置は例示であり、他の装置が使用されてもよい。コンピューティングデバイス600は、他のコンピューティングデバイス650との通信を可能にする1つ又は複数の通信接続616を含んでもよい。適切な通信接続616の例には、無線周波数(RF)送信機、受信機、及び/又はトランシーバ回路が含まれ、ユニバーサルシリアルバス(USB)、パラレルポート、及び/又はシリアルポートが含まれるが、これらに限定されない。
【0058】
本明細書で使用するコンピュータ可読媒体という用語は、コンピュータ記憶媒体を含んでもよい。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール等の情報を格納するための、任意の方法又は技術で実装された揮発性及び不揮発性、取外し可能及び取外し不可能な媒体が含まれてもよい。システムメモリ604、取り外し可能な記憶装置609、及び取り外し不可能な記憶装置610は全て、コンピュータ記憶媒体の例(例えばメモリストレージ)である。コンピュータ記憶媒体には、RAM、ROM、電気的に消去可能なリードオンリーメモリ(EEPROM)、フラッシュメモリ若しくは他のメモリ技術、CD-ROM、デジタル多用途ディスク(DVD)若しくは他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ若しくは他の磁気記憶装置、又は、情報格納用に使用可能な、コンピューティングデバイス600がアクセス可能な任意の他の製品が含まれてもよい。このようなコンピュータ記憶媒体は、コンピューティングデバイス600の一部であってもよい。コンピュータ記憶媒体には、搬送波、又はその他の伝送若しくは変調されるデータ信号は含まれない。
【0059】
通信媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又は搬送波若しくは他のトランスポートメカニズム等の変調データ信号内の他のデータによって具現化されてもよく、あらゆる情報配信媒体を含む。「変調データ信号」という用語は、信号に情報をエンコードするような方法で設定又は変更された1つ又は複数の特性を持つ信号を表してもよい。例として、通信媒体には、有線ネットワーク又は直接有線接続等の有線媒体、及び、音響、無線周波数(RF)、赤外線その他の無線媒体等の無線媒体が含まれてもよいが、これらに限定されない。
【0060】
図7Aと
図7Bは、本開示の態様が実施され得る、例えば、携帯電話、スマートフォン、ウェアラブルコンピュータ(スマートウォッチ等)、タブレットコンピュータ、ラップトップコンピュータ等のコンピューティングデバイス又はモバイルコンピューティングデバイス700を示す。
図7Aを参照すると、態様を実施するためのモバイルコンピューティングデバイス700の一態様が示されている。基本的な構成では、モバイルコンピューティングデバイス700は、入力要素と出力要素の両方を持つ携帯式のコンピュータである。モバイルコンピューティングデバイス700は、典型的には、ディスプレイ705と、ユーザによるモバイルコンピューティングデバイス700への情報入力を可能にする1つ又は複数の入力ボタン709/710とを含む。モバイルコンピューティングデバイス700のディスプレイ705は、入力装置(例えば、タッチスクリーンディスプレイ)としても機能し得る。オプションとしてサイド入力要素715が含まれている場合、これによって、さらなるユーザ入力が可能となる。サイド入力要素715は、ロータリスイッチ、ボタン、又は他のタイプの手動入力要素であってもよい。代替的な態様では、モバイルコンピューティングデバイス700により多くの、又はより少ない入力要素が組み込まれてもよい。例えば、いくつかの態様において、ディスプレイ705はタッチスクリーンでない場合がある。さらに別の代替的な態様では、モバイルコンピューティングデバイス700は、セルラーフォン等の携帯電話システムである。モバイルコンピューティングデバイス700は、オプションとしてキーパッド735も含むことができる。オプションのキーパッド735は、物理的なキーパッドであってもよく、又は、タッチスクリーンディスプレイ上に生成される「ソフト」キーパッドであってもよい。様々な態様において、出力要素は、グラフィカルユーザインターフェース(GUI)を表示するためのディスプレイ705、視覚インジケータ731(例えば、発光ダイオード)、及び/又は音響変換器725(例えば、スピーカ)を含む。いくつかの態様において、モバイルコンピューティングデバイス700には、ユーザに触覚のフィードバックを提供するための振動変換器が組み込まれている。さらに別の態様において、モバイルコンピューティングデバイス700には、外部ソースに信号を送信するため、又は外部ソースから信号を受信するための、オーディオ入力(例えば、マイクジャック)、オーディオ出力(例えば、ヘッドフォンジャック)、及び映像出力(例えば、HDMI(登録商標)ポート)等の入力及び/又は出力ポート730が組み込まれている。
【0061】
図7Bは、コンピューティングデバイス、サーバ、又はモバイルコンピューティングデバイスの一態様のアーキテクチャを示すブロック図である。すなわち、モバイルコンピューティングデバイス700には、いくつかの態様を実施するためのシステム(702)(例えば、アーキテクチャ)を組み込むことができる。システム702は、1つ又は複数のアプリケーション(例えば、ブラウザ、電子メール、カレンダー、コンタクトマネージャ、メッセージングクライアント、ゲーム、及びメディアクライアント/プレーヤ)を実行可能な「スマートフォン」として実装することができる。いくつかの態様では、システム702は、統合型パーソナルデジタルアシスタント(PDA)や無線電話等のコンピューティングデバイスとして統合されている。
【0062】
1つ又は複数のアプリケーションプログラム766は、メモリ762にロードされ、オペレーティングシステム764上で、又はオペレーティングシステム764に関連して実行されてもよい。アプリケーションプログラムの例には、電話ダイヤラプログラム、電子メールプログラム、個人情報管理(PIM)プログラム、ワードプロセッシングプログラム、スプレッドシートプログラム、インターネットブラウザプログラム、メッセージングプログラム、及び/又は本明細書に記載のシステムによってサポートされる1つ又は複数の構成要素が含まれる。システム702は、メモリ762内の不揮発性記憶領域768も含む。不揮発性記憶領域768は、システム702の電源が落ちても失われるべきでない永続的な情報を格納するために使用されてもよい。アプリケーションプログラム766は、電子メールアプリケーションで使用される電子メール又は他のメッセージ等の情報を、不揮発性記憶領域768において使用し格納してもよい。システム702には同期アプリケーション(図示せず)も常駐しており、ホストコンピュータに常駐する対応する同期アプリケーションと相互作用して、不揮発性記憶領域768に格納された情報を、ホストコンピュータに格納された対応する情報と同期させるようにプログラミングされている。理解されるように、他のアプリケーションがメモリ762にロードされ、本明細書に記載のモバイルコンピューティングデバイス700上で実行されてもよい(例えば、映像処理モジュール623、オーディオ処理モジュール624、映像効果モジュール625、及びシェーダモジュール626等)。
【0063】
システム702は電源770を有し、この電源は1つ又は複数のバッテリとして実装されてもよい。電源770は、ACアダプタ、又はバッテリを補充若しくは充電する電源付きドッキングクレードル等の外部電源をさらに含む場合がある。
【0064】
システム702は、無線周波数通信を送受信する機能を実行する無線インターフェース層772も含むことができる。無線インターフェース層772は、通信キャリア又はサービスプロバイダを介して、システム702と「外の世界」との間の無線接続を容易にする。無線インターフェース層772への送信、又は無線インターフェース層772からの送信は、オペレーティングシステム764の制御下で行われる。言い換えれば、無線インターフェース層772によって受信された通信は、オペレーティングシステム764を介してアプリケーションプログラム766に伝えられてもよく、逆もまた同様である。
【0065】
視覚インジケータ720は、視覚的通知を提供するために使用されてもよく、且つ/又は、オーディオインターフェース774は、音響変換器725を介して通知音を生成するために使用されてもよい。図示の構成では、視覚インジケータ720は発光ダイオード(LED)であり、音響変換器725はスピーカである。これらのデバイスは、電源770に直接結合されてもよい。こうすることで、これらデバイスは、起動されると、プロセッサ760/761及び他の構成要素がバッテリ電力節約のためにシャットダウンする可能性があっても、通知メカニズムによって指示された期間中はオンのままとなる。LEDは、ユーザがデバイスの電源オン状態を示すアクションを起こすまで、無期限にオンのままであるようにプログラミングされてもよい。オーディオインターフェース774は、可聴信号をユーザに提供し、ユーザから可聴信号を受信するために使用される。オーディオインターフェース774は、例えば、音響変換器725に結合されることに加えて、電話での会話を容易にする目的等のために、可聴入力を受け付けるマイクロフォンに結合されてもよい。本開示の態様に従い、マイクは、後述するように、通知の制御を容易にするためのオーディオセンサとしても機能することができる。システム702は、静止画像や映像ストリーム等を記録するための搭載カメラの操作を可能にする映像インターフェース776をさらに含んでもよい。
【0066】
システム702を実装するモバイルコンピューティングデバイス700は、追加の特徴又は機能を有してもよい。例えば、モバイルコンピューティングデバイス700は、磁気ディスク、光ディスク、テープ等の追加のデータ記憶装置(取り外し可能なもの及び/又は取り外し不可能なもの)も含むことができる。このような追加ストレージは、
図7Bでは不揮発性記憶領域768によって示されている。
【0067】
モバイルコンピューティングデバイス700によって生成又は取得され、システム702を介して格納されるデータ/情報は、上述のように、モバイルコンピューティングデバイス700上にローカルに格納されてもよい。あるいはデータは、無線インターフェース層772を介して、又はモバイルコンピューティングデバイス700と、モバイルコンピューティングデバイス700に関連付けられた別のコンピューティングデバイス、例えば、インターネット等の分散コンピューティングネットワーク内のサーバコンピュータとの間の有線接続を介して、デバイスによってアクセスされ得る任意の数の記憶媒体に格納されてもよい。理解されるように、このようなデータ/情報は、無線インターフェース層772を介して、又は分散コンピューティングネットワークを介して、モバイルコンピューティングデバイス700を介してアクセスされてもよい。同様に、このようなデータ/情報は、電子メールや共同データ/情報共有システムを含む周知のデータ/情報の転送・格納手段に従って、格納及び使用のためにコンピューティングデバイス間で容易に転送されてもよい。
【0068】
図8は、上述したように、コンピューティングデバイス804、タブレットコンピューティングデバイス806、又はモバイルコンピューティングデバイス808等のリモートソースからコンピューティングシステムにおいて受信したデータを処理するシステムのアーキテクチャの一態様を示す。サーバ装置802に表示されるコンテンツは、異なる通信チャネル又は他のストレージタイプに格納されてもよい。例えば、コンピューティングデバイス804、806、808は、
図1のコンピューティングデバイス104を表してもよく、サーバ装置802は、
図1のサーバ106を表してもよい。
【0069】
いくつかの態様では、映像処理モジュール823、オーディオ処理モジュール824、及び映像効果モジュール825のうち1つ又は複数が、サーバ装置802によって採用されてもよい。サーバ装置802は、ネットワーク812を通して、コンピューティングデバイス804、タブレットコンピューティングデバイス806、及び/又はモバイルコンピューティングデバイス808(例えば、スマートフォン)等のクライアントコンピューティングデバイスへデータを提供してもよく、クライアントコンピューティングデバイスからデータを提供してもよい。上述のコンピュータシステムは、例として、コンピューティングデバイス804、タブレットコンピューティングデバイス806、及び/又はモバイルコンピューティングデバイス808(例えば、スマートフォン)によって具現化されてもよい。コンピューティングデバイスのこれらの態様では、グラフィック生成元のシステムで前処理されるか、受信したコンピューティングシステムで後処理されるかのいずれかである使用可能なグラフィックデータを受信するが、これに加えて、ストア816からコンテンツを取得してもよい。コンテンツストアは、映像データ818、オーディオデータ820、及びレンダリングされた映像データ822を含んでもよい。
【0070】
図8は、本明細書に開示された1つ又は複数の態様を実行し得る例示的なモバイルコンピューティングデバイス808を示す。さらに、本明細書に記載の態様及び機能は、分散システム(例えば、クラウドベースのコンピューティングシステム)上で動作してもよく、この場合、アプリケーション機能、メモリ、データ格納及び検索、並びに様々な処理機能は、インターネット又はイントラネット等の分散コンピューティングネットワーク上で互いに遠隔で動作してもよい。様々なタイプのユーザインターフェース及び情報は、コンピューティングデバイスの搭載ディスプレイを介して、又は1つ又は複数のコンピューティングデバイスに関連付けられたリモートディスプレイユニットを介して表示されてもよい。例えば、様々なタイプのユーザインターフェース及び情報が投影された壁面に、様々なタイプのユーザインターフェース及び情報が表示され、相互作用が行われてもよい。本発明の態様が実施され得る多数のコンピューティングシステムとの相互作用には、キー入力、タッチスクリーン入力、音声入力、ジェスチャー入力(関連するコンピューティングデバイスが、コンピューティングデバイスの機能を制御するためのユーザによるジェスチャを取り込んで解釈するための検出機能(例えばカメラ)を含んでいる場合)等が含まれる。
【0071】
「少なくとも1つ」、「1つ又は複数」、「又は」、「及び/又は」という語句は、使用される場合、接続及び離接の両方の意味を持つ、制約のない表現形式である。例えば、「A、B、及びCのうちの少なくとも1つ」、「A、B、又はCのうちの少なくとも1つ」、「A、B、及びCのうち1つ又は複数」、「A、B、又はCのうち1つ又は複数」、「A、B、及び/又はC」、「A、B、又はC」という表現は、Aのみ、Bのみ、Cのみ、AとB、AとC、BとC、又は、AとBとCを意味する。
【0072】
「1」又は「1つ」の実体という用語は、1つ又は複数のその実体を指す。そのため、本明細書では、「1」(又は「1つ」)、「1つ又は複数」、及び「少なくとも1つ」という用語を互換的に使用することができる。また、「含む」、「含む」、「有する」という用語が互換的に使用できることにも留意されたい。
【0073】
本明細書で使用される用語「自動」及びその変形は、プロセス又は操作が実行されるときに、典型的には連続的又は半連続的であり、人間による重要な入力なしに行われる、あらゆるプロセス又は操作を指す。しかし、プロセス又は操作の実行が人間による重要な、又は重要ではない入力によるとしても、プロセス又は操作の実行前に入力を受け取った場合は、プロセス又は操作は自動となり得る。かかる入力がプロセス又は操作の実行方法に影響を与える場合、人間による入力が重要であるとみなされる。人間による、プロセス又は操作の実行を承諾する入力は、「重要」とはみなされない。
【0074】
本明細書で論じたステップ、機能、及び操作は、いずれも連続的かつ自動的に実行することができる。
【0075】
本開示の例示的なシステム及び方法について、コンピューティングデバイスに関連して説明してきた。しかしながら、本開示を不必要に曖昧にすることを避けるため、先の説明ではいくつかの既知の構造及び装置が省略されている。この省略は、限定として解釈されるものではない。また、本開示を理解してもらうために具体的な詳細が記載されているが、本開示は、本明細書に記載された具体的な詳細以外の様々な方法で実施され得ることを理解されたい。
【0076】
さらに、本明細書で説明した例示的な態様ではシステムの様々な構成要素の配置が示されているが、システムの特定の構成要素は、LAN及び/若しくはインターネット等の分散ネットワークの遠隔部分、又は専用システム内に、遠隔で配置することができる。したがって、システムの構成要素は、サーバ、通信装置等の1つ又は複数の装置に組み合わせることができ、又は、アナログ及び/若しくはデジタルの電気通信ネットワーク、パケット交換ネットワーク、又は回線交換ネットワーク等の分散ネットワークの特定のノードに配置できることを理解されたい。前述の説明から、またコンピュータの効率上の理由で、システムの構成要素は、システムの操作に影響を与えることなく、構成要素の分散ネットワーク内の任意の場所に配置できることが理解されるであろう。
【0077】
さらに、要素を接続する様々なリンクは、有線/無線リンク、若しくはそれらの任意の組合せ、又は、接続された要素との間でデータの供給及び/若しくは通信が可能な、任意の他の既知の要素若しくは後に開発される(複数の)要素とすることができることを理解されたい。これらの有線又は無線のリンクは、セキュアなリンクとすることもでき、暗号化された情報の通信が可能なものであってもよい。例えば、リンクとして使用される通信媒体は、同軸ケーブル、銅線、光ファイバーを含む、電気信号に適した任意のキャリアとすることができ、電波及び赤外線データ通信中に発生するような音響波や光波の形態をとってもよい。
【0078】
フローチャートは、イベントの特定の順序に関連して論じられ、示されてきたが、開示された構成及び態様の動作に重大な影響を与えることなく、この順序に対し変更、追加、及び省略が可能であることを理解されたい。
【0079】
本開示については、いくつかの変形及び修正が可能である。本開示のいくつかの機能を、他の機能を提供せずに提供することは可能である。
【0080】
さらに別の構成では、本開示のシステム及び方法は、特定用途向けコンピュータ、プログラミングされたマイクロプロセッサ又はマイクロコントローラ及び周辺集積回路素子、ASIC又は他の集積回路、デジタル信号プロセッサ、個別の素子回路等ハードウェアに組み込まれた電子回路又は論理回路、PLD、PLA、FPGA、PAL等のプログラマブルロジックデバイス又はゲートアレイ、特定用途向けコンピュータ、任意の同等の手段等と組み合わせて実装することができる。一般に、本明細書で説明した方法を実施可能な任意の装置又は手段は、本開示の様々な態様を実施するために使用することができる。本開示のために使用可能な例示的なハードウェアには、コンピュータ、携帯式のデバイス、電話(セルラ、インターネット対応、デジタル、アナログ、ハイブリッド等)、及び本技術分野で既知の他のハードウェアが含まれる。これらのデバイスのいくつかには、プロセッサ(単一又は複数のマイクロプロセッサ等)、メモリ、不揮発性ストレージ、入力装置、及び出力装置が含まれる。さらに、本明細書に記載の方法を実施するために、代替的なソフトウェアの実装を構築することもできる。代替的なソフトウェアの実装には、分散処理若しくは構成要素/オブジェクト分散処理、並列処理、又は仮想マシン処理が含まれるが、これらに限定されない。
【0081】
さらに別の構成において、開示された方法は、様々なコンピュータ又はワークステーションのプラットフォームで使用できる移植可能なソースコードを提供する、オブジェクトを使用するソフトウェア又はオブジェクト指向のソフトウェア開発環境と組み合わせて容易に実施してもよい。あるいは、開示されたシステムは、標準的な論理回路又はVLSI設計を使用して、部分的又は完全にハードウェアに実装されてもよい。本開示にかかるシステムを実装するためにどのソフトウェア又はハードウェアを使用するかは、システムの速度及び/又は効率の要件、特定の機能、並びに、利用される特定のソフトウェア若しくはハードウェアのシステム、又はマイクロプロセッサ若しくはマイクロコンピュータのシステムに依存する。
【0082】
さらに別の構成では、開示された方法は、コントローラ及びメモリと協働するプログラミングされた汎用コンピュータ、特定用途向けコンピュータ、マイクロプロセッサ等において実行可能で、記憶媒体に記憶可能なソフトウェアにおいて、部分的に実施されてもよい。このような場合、本開示のシステム及び方法は、アプレット、JAVA(登録商標)又はCGIスクリプト等のパーソナルコンピュータに組み込まれたプログラムとして、サーバ又はコンピュータワークステーションに常駐するリソースとして、専用の測定システム、システムコンポーネントに組み込まれたルーチン等として実装することができる。システムは、システム及び/又は方法をソフトウェア及び/又はハードウェアのシステムに物理的に組み込むことによっても実装することができる。
【0083】
本開示は、記載された規格やプロトコルに限定されない。本明細書では言及していない他の類似の規格やプロトコルが存在する場合、これらも本開示に含まれる。さらに、本明細書で言及した規格及びプロトコル、並びに本明細書で言及していない他の類似の規格及びプロトコルについては、定期的に、本質的に同じ機能を持つより高速又はより効果的な均等物に差し替えられる。同じ機能を持つこうした差し替えられた規格及びプロトコルは、本開示に含まれる均等物とみなされる。
【0084】
本開示は、少なくとも以下の段落に示す実施例に従った、ディスプレイ上に仮想衣服を生成するためのシステム及び方法に関する。
【0085】
(Al)1つの態様において、いくつかの例は、ディスプレイ上に仮想衣服を生成するための方法を含む。方法は、映像データとオーディオデータを取得することと、映像データを分析して、映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、決定された1つ又は複数の身体関節に基づいてメッシュを生成することと、オーディオデータを分析してオーディオ特性を決定することと、仮想衣服に関連付けられたテクスチャレンダリング情報を、オーディオ特性に基づいて決定することと、テクスチャレンダリング情報を使用して、生成されたメッシュに仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、を含んでもよい。
【0086】
(A2)Alのいくつかの例において、方法は、オーディオデータから拍子特性又は周波数スペクトル値のうちの少なくとも1つを決定することと、拍子特性又は周波数スペクトル値のうちの少なくとも1つに基づいて、少なくとも1つの映像効果パラメータを選択することと、少なくとも1つの映像効果パラメータに基づいてテクスチャレンダリング情報を決定することと、テクスチャレンダリング情報を使用して、生成されたメッシュに仮想衣服をレンダリングすることと、をさらに含む。テクスチャレンダリング情報は、拍子特性又は周波数スペクトル値のうちの少なくとも1つに基づく。
【0087】
(A3)A1-A2のいくつかの例において、方法は、第1シェーダを使用して仮想衣服をレンダリングすることと、第1シェーダとは異なる第2シェーダを使用して1つ又は複数のグラフィックをレンダリングすることと、をさらに含み、1つ又は複数のグラフィックは、拍子特性又は周波数スペクトル値のうちの少なくとも1つに従ってレンダリングされる。
【0088】
(A4)A1~A3のいくつかの例において、方法は、オーディオデータから第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つを決定することと、第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つに基づいて、第2映像効果パラメータを選択することと、第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つに基づいて、第2テクスチャレンダリング情報を決定することと、第2テクスチャレンダリング情報を使用して、生成されたメッシュに仮想衣服をレンダリングすることと、をさらに含む。第2テクスチャレンダリング情報は、第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つに基づく。
【0089】
(A5)A1~A4のいくつかの例において、方法は、オーディオデータに基づいて、第1テクスチャレンダリング情報から第2テクスチャレンダリング情報への変更を同期させることをさらに含む。
【0090】
(A6)A1~A5のいくつかの例において、テクスチャレンダリング情報は、不透明度、透明性、及び金属性のうちの少なくとも1つを含む。
【0091】
(A7)A1~A6のいくつかの例において、メッシュは、映像データに示された決定された1つ又は複数の身体関節の周りの3次元メッシュを含む。
【0092】
(A8)A1~A7のいくつかの例において、オーディオデータを取得することは、音楽ライブラリからオーディオデータを選択することを含み、オーディオ特性は、メタデータとしてオーディオデータに埋め込まれている。
【0093】
さらに別の態様において、いくつかの例は、1つ又は複数のプロセッサと、1つ又は複数のプロセッサに結合されたメモリとを含むシステムを含む。メモリは、1つ又は複数のプロセッサによって実行された場合に、1つ又は複数のプロセッサに本明細書に記載の方法(例えば、上述のA1~A8)のいずれかを実行させる1つ又は複数の命令を格納している。
【0094】
さらに別の態様において、いくつかの例は、デバイスの1つ又は複数のプロセッサによる実行のための1つ又は複数のプログラムを格納したコンピュータ可読記憶媒体を含む。1つ又は複数のプログラムは、本明細書に記載の方法(例えば、上述のA1~A8)のいずれかを実行するための命令を含む。
【0095】
本開示には、様々な構成及び態様において、本明細書に示されて説明された構成要素、方法、プロセス、システム、及び/又は装置が実質的に含まれ、それらの様々な組合せ、副次的な組合せ、及びサブセットが含まれる。当業者であれば、本開示を理解した後に、本明細書に開示されたシステム及び方法の構築方法及び使用方法を理解できるはずである。本開示は、様々な構成及び態様において、本明細書又は本明細書の様々な構成又は態様において説明及び/又は記載がない項目が存在しない場合に、例えば性能を向上させ、容易さを求め、且つ/又は実施コストを削減するために、以前の装置又はプロセスにおいて使用されていた可能性があるような項目が存在しない場合等に、装置及びプロセスを提供することを含む。
【手続補正2】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
映像データとオーディオデータとを取得することと、
前記映像データを分析して、前記映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、
決定された前記1つ又は複数の身体関節に基づいてメッシュを生成することと、
前記オーディオデータを分析してオーディオ特性を決定することと、
仮想衣服に関連付けられたテクスチャレンダリング情報を、前記オーディオ特性に基づいて決定することと、
前記テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、
を含む、
ディスプレイ上に仮想衣服を生成するための方法。
【請求項2】
前記オーディオデータから拍子特性又は周波数スペクトル値のうちの少なくとも1つを決定することと、
前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに基づいて、少なくとも1つの映像効果パラメータを選択することと、
前記少なくとも1つの映像効果パラメータに基づいて、テクスチャレンダリング情報を決定することと、
前記テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることと、
をさらに含み、
前記テクスチャレンダリング情報は、前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに基づく、
請求項1に記載の方法。
【請求項3】
第1シェーダを使用して前記仮想衣服をレンダリングすることと、
前記第1シェーダとは異なる第2シェーダを使用して1つ又は複数のグラフィックをレンダリングすることと、
をさらに含み、
前記1つ又は複数のグラフィックは、前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに従ってレンダリングされる、
請求項2に記載の方法。
【請求項4】
前記オーディオデータから第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つを決定することと、
前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づいて、第2映像効果パラメータを選択することと、
前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づいて、第2テクスチャレンダリング情報を決定することと、
前記第2テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることと、
をさらに含み、
前記第2テクスチャレンダリング情報は、前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づく、
請求項2に記載の方法。
【請求項5】
前記オーディオデータに基づいて、前記テクスチャレンダリング情報から前記第2テクスチャレンダリング情報への変更を同期させることをさらに含む、
請求項4に記載の方法。
【請求項6】
前記テクスチャレンダリング情報は、不透明度、透明性、及び金属性のうちの少なくとも1つを含む、
請求項1に記載の方法。
【請求項7】
前記メッシュは、前記映像データに示された決定された前記1つ又は複数の身体関節の周りの3次元メッシュを含む、
請求項1に記載の方法。
【請求項8】
前記オーディオデータを取得することは、
音楽ライブラリから前記オーディオデータを選択することを含み、
前記オーディオ特性は、メタデータとして前記オーディオデータに埋め込まれている、
請求項1に記載の方法。
【請求項9】
ディスプレイ上に仮想衣服を生成するためのコンピューティングデバイスであって、
プロセッサと、
複数の命令が格納されたメモリと
を備え、
前記複数の命令は、前記プロセッサによって実行された場合に、前記コンピューティングデバイスに、
映像データとオーディオデータとを取得することと、
前記映像データを分析して、前記映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、
決定された前記1つ又は複数の身体関節に基づいてメッシュを生成することと、
前記オーディオデータを分析してオーディオ特性を決定することと、
仮想衣服に関連付けられたテクスチャレンダリング情報を、前記オーディオ特性に基づいて決定することと、
前記テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、
を行わせる、
コンピューティングデバイス。
【請求項10】
前記複数の命令は、実行された場合に、前記コンピューティングデバイスに、
前記オーディオデータから拍子特性又は周波数スペクトル値のうちの少なくとも1つを決定することと、
前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに基づいて、少なくとも1つの映像効果パラメータを選択することと、
前記少なくとも1つの映像効果パラメータに基づいて、テクスチャレンダリング情報を決定することと、
前記テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることと、
をさらに行わせ、
前記テクスチャレンダリング情報は、前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに基づく、
請求項9に記載のコンピューティングデバイス。
【請求項11】
前記複数の命令は、実行された場合に、前記コンピューティングデバイスに、
第1シェーダを使用して前記仮想衣服をレンダリングすることと、
前記第1シェーダとは異なる第2シェーダを使用して1つ又は複数のグラフィックをレンダリングすることと、
をさらに行わせ、
前記1つ又は複数のグラフィックは、前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに従ってレンダリングされる、
請求項10に記載のコンピューティングデバイス。
【請求項12】
前記複数の命令は、実行された場合に、前記コンピューティングデバイスに、
前記オーディオデータから第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つを決定することと、
前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づいて、第2映像効果パラメータを選択することと、
前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づいて、第2テクスチャレンダリング情報を決定することと、
前記第2テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることと、
をさらに行わせ、
前記第2テクスチャレンダリング情報は、前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づく、
請求項10に記載のコンピューティングデバイス。
【請求項13】
前記複数の命令は、実行された場合に、前記コンピューティングデバイスに、
前記オーディオデータに基づいて、前記テクスチャレンダリング情報から前記第2テクスチャレンダリング情報への変更を同期させることをさらに行わせる、請求項12に記載のコンピューティングデバイス。
【請求項14】
前記テクスチャレンダリング情報は、不透明度、透明性、及び金属性のうちの少なくとも1つを含む、
請求項9に記載のコンピューティングデバイス。
【請求項15】
前記メッシュは、前記映像データに示された1つ又は複数の身体関節の周りの3次元メッシュである、
請求項9に記載のコンピューティングデバイス。
【請求項16】
ディスプレイ上に仮想衣服を生成するための命令を
含むコンピュータプログラムであって、
前記命令は、コンピューティングデバイスの1つ又は複数のプロセッサによって実行された場合に、前記コンピューティングデバイスに、
映像データとオーディオデータとを取得することと、
前記映像データを分析して、前記映像データに登場する対象オブジェクトの1つ又は複数の身体関節を決定することと、
決定された前記1つ又は複数の身体関節に基づいてメッシュを生成することと、
前記オーディオデータを分析してオーディオ特性を決定することと、
仮想衣服に関連付けられたテクスチャレンダリング情報を、前記オーディオ特性に基づいて決定することと、
前記テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることによって、レンダリングされた映像を生成することと、
を行わせる、
コンピュータプログラム。
【請求項17】
前記命令は、前記1つ又は複数のプロセッサによって実行された場合に、前記コンピューティングデバイスに、
前記オーディオデータから拍子特性又は周波数スペクトル値のうちの少なくとも1つを決定することと、
前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに基づいて、少なくとも1つの映像効果パラメータを選択することと、
前記少なくとも1つの映像効果パラメータに基づいて、テクスチャレンダリング情報を決定することと、
前記テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることと、
をさらに行わせ、
前記テクスチャレンダリング情報は、前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに基づく、
請求項16に記載の
コンピュータプログラム。
【請求項18】
前記命令は、前記1つ又は複数のプロセッサによって実行された場合に、前記コンピューティングデバイスに、
第1シェーダを使用して前記仮想衣服をレンダリングすることと、
前記第1シェーダとは異なる第2シェーダを使用して1つ又は複数のグラフィックをレンダリングすることと、
をさらに行わせ、
前記1つ又は複数のグラフィックは、前記拍子特性又は前記周波数スペクトル値のうちの前記少なくとも1つに従ってレンダリングされる、
請求項17に記載の
コンピュータプログラム。
【請求項19】
前記命令は、前記1つ又は複数のプロセッサによって実行された場合に、前記コンピューティングデバイスに、
前記オーディオデータから第2拍子特性又は第2周波数スペクトル値のうちの少なくとも1つを決定することと、
前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づいて、第2映像効果パラメータを選択することと、
前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づいて、第2テクスチャレンダリング情報を決定することと、
前記第2テクスチャレンダリング情報を使用して、生成された前記メッシュに前記仮想衣服をレンダリングすることと、
をさらに行わせ、
前記第2テクスチャレンダリング情報は、前記第2拍子特性又は前記第2周波数スペクトル値のうちの前記少なくとも1つに基づく、
請求項17に記載の
コンピュータプログラム。
【請求項20】
前記テクスチャレンダリング情報は、不透明度、透明性、及び金属性のうちの少なくとも1つを含む、
請求項16に記載の
コンピュータプログラム。
【国際調査報告】