(57)【特許請求の範囲】
【請求項１】
コンピューター装置によって実行されると、プレイヤーの現在の外観(appearance)を反映するアバター(avatar)を生成する方法を実行する、具体化されたコンピューター実行可能命令を有するコンピューターハードウェアデバイスであって、前記方法は、
プレイヤーの現在の外観を記述するデーターを受信するステップを含み、前記データーは、前記プレイヤーの可視スペクトル(visible spectrum)画像と、前記プレイヤーおよび現在の背景の両方を含む深度画像(depth image)と、前記プレイヤーに関する骨格(skeletal)データーと、を含み、前記骨格データーは、前記プレイヤーの骨格(skeleton)の輪郭(outline)を示し、
前記方法は、さらに、前記プレイヤーの顔を識別するステップ、および、
前記プレイヤーの顔の特徴を識別し、前記受信された可視スペクトル画像の前記プレイヤーの顔を含む部分を、前記識別された顔の特徴に基づいて顔テクスチャーマップにワーピングするステップによって、
前記受信されたデーターに少なくとも部分的に基づいて、前記プレイヤーの顔の外観を取り込むステップであって、前記顔テクスチャーマップが、前記プレーヤーの顔を含む前記受信された可視スペクトル画像の一部のＵＶ空間マップであるものと、
前記プレイヤーの髪の範囲を識別するステップ、
前記プレイヤーの髪の前記識別された範囲を、予め決められた髪型テンプレートにマッチングするステップ、
前記プレイヤーの髪の色を識別するステップによって、
前記受信されたデーターに少なくとも部分的に基づいて、前記プレイヤーの髪の外観を取り込むステップと、
前記プレイヤーと前記現在の背景の双方を含む受信された深度画像、及び、前記受信された前記プレーヤーの可視スペクトラム画像を用いて、エッジ検出を用いて外側の衣類の境界を判断し、
前記受信された前記プレーヤーの可視スペクトラム画像を用いて、判断された色勾配に基づいて、皮膚から衣類を区別することによって、少なくとも１つの内側の衣類の境界を判断し、
そして、
プレイヤーの衣類を、少なくとも部分的に、前記外側の衣類の境界と、前記少なくとも１つの内側の衣類の境界、に囲まれた領域として識別し、
更に、
前記生成された３Ｄアバターが、前記識別されたプレーヤーの衣類に類似する衣類を有することによって、
少なくとも部分的に、前記受信されたデータに基づいて前記プレーヤーの衣類の外観を取り込むステップと、
前記顔テクスチャーマップ、前記プレイヤーの髪の前記識別された範囲にマッチする髪型テンプレート、および前記識別されたプレイヤーの髪の色を、予め決められたアバターの特徴と組み合わせることによって、前記取り込まれた前記プレイヤーの顔の外観および髪の外観を反映する前記３Ｄアバターを、前記プレイヤーに似るように生成するステップと、を含む、コンピューターハードウェアデバイス。
【請求項２】
前記プレイヤーの顔を識別するステップは、
前記受信された前記プレイヤーに関する骨格データーを解析することによって、前記プレイヤーの頭部を識別するステップと、
前記プレイヤーの頭部に対応する前記受信された可視スペクトル(visible spectrum)画像の頭部部分を識別するステップと、
前記受信された可視スペクトル画像の前記頭部部分に顔検出アルゴリズムを適用するステップと、を含む、請求項１に記載のコンピューターハードウェアデバイス。
【請求項３】
前記プレイヤーの顔の外観を取り込むことが、更に、識別された顔の特徴に対応する顔のアライメント点を識別することを含み、
前記識別された顔の特徴に基づいて、前記プレーヤーの顔を、顔のテクスチャーマップに含ませる、前記受信された可視スペクトラム画像の一部のワーピングが、
前記識別された顔のアライメント点を、テンプレートテクスチャーマップ上のデスティネーション点にマッチングすることによって、前記顔テクスチャーマップが、前記テンプレートテクスチャーマップの前記デスティネーション点にマッピングされた前記プレーヤの顔の前記識別された顔の特徴に対応する、前記顔アライメント点を含むようになることを含む、
請求項１に記載のデバイス。
【請求項４】
前記３Ｄアバターを生成することが、
前記マッピングされた顔のアライメント点に対応する、複数の前記識別された顔の特徴に対して、前記顔テクスチャーマップの、前記マッピングされた顔のアライメント点を分析し、
前記複数の識別された顔の特徴のサイズを計算し、
前記顔のテクスチャーマップと、前記計算された前記複数の識別された顔の特徴のサイズに基づいて、複数の予め決定された頭部モデルを結合して、様式化された３Ｄ頭部モデルを生成することによって、
様式化された３Ｄの頭部モデルを生成することを含む、
請求項３に記載のデバイス。
【請求項５】
前記プレイヤーの顔に対応する領域内の前記受信された可視スペクトル画像の１つまたは複数の領域の色を標本化する(sampling)ステップと、
プレイヤーの肌の色を決定するために、前記１つまたは複数の領域の前記標本化された色を混合する(blending)ステップと、によって、
前記受信されたデーターに少なくとも部分的に基づいて、前記プレイヤーの肌の色を取り込む(capturing)ステップをさらに含み、
前記生成された３Ｄアバターは、前記決定されたプレイヤーの肌の色を反映する肌の色を有する、請求項１に記載のコンピューター可読媒体。
【請求項６】
実行されると、プレーヤーの現在の外観を反映するアバターを生成する方法を実行するコンピューター実行可能命令を含む、具体化されたシステムを有する１つまたは複数のコンピューターハードウェアデバイスであって、前記システムは、
プレイヤーの現在の外観を記述するデーターを受信するデーター取得構成要素(data acquisition component)を備え、
前記データーは、
前記プレイヤーの可視スペクトル画像と、
前記プレイヤーおよび現在の背景の両方を含む深度画像と、
前記プレイヤーに関する骨格データーと、
を含み、
前記骨格データーは、前記プレイヤーの骨格の輪郭を示し、
前記システムは、さらに、
前記受信されたデーターに少なくとも部分的に基づいて、前記プレイヤーの顔の外観を取り込む顔取り込み構成要素であって、前記プレーヤーの前記顔の外観を取り込むことが、前記プレイヤーの顔を、顔テクスチャーマップに含ませる、前記受信された可視スペクトラム画像の一部をワーピングすることを含み、前記顔テクスチャーマップが、前記プレイヤーの顔を含む、前記受信された可視スペクトラム画像の前記一部のＵＶ空間マップであるものと、
前記受信されたデーターに少なくとも部分的に基づいて、前記プレイヤーの髪の外観を取り込む髪取り込み構成要素と、
前記プレイヤーと前記現在の背景の双方を含む受信された深度画像、及び、前記受信された前記プレーヤーの可視スペクトラム画像を用いて、エッジ検出を用いて外側の衣類の境界を判断し、
前記受信された前記プレーヤーの可視スペクトラム画像を用いて、判断された色勾配に基づいて、皮膚から衣類を区別することによって、少なくとも１つの内側の衣類の境界を判断し、
そして、
プレイヤーの衣類を、少なくとも部分的に、前記外側の衣類の境界と、前記少なくとも１つの内側の衣類の境界、に囲まれた領域として識別すること、
によって、
少なくとも部分的に、前記受信されたデータに基づいて前記プレーヤーの衣類の外観を取り込むこと、
によって、前記受信されたデーターに少なくとも部分的に基づいて、前記プレイヤーの衣類の外観を取り込む衣類取り込み構成要素と、
前記取り込まれた顔の外観、髪の外観、および衣類の外観を、予め決められたアバターの特徴と組み合わせることによって、前記プレイヤーに似ている３Ｄアバターを生成するアバター生成構成要素と、を備える、コンピューターハードウェアデバイス。
【請求項７】
前記受信されたデーターに少なくとも部分的に基づいて、（１）シャツの袖(sleeve)、（２）ズボンまたは半ズボンの脚(leg)、および（３）スカートまたはドレスの裾(hem)の少なくとも１つを識別する袖検出構成要素と、
前記受信されたデーターに少なくとも部分的に基づいて、前記プレイヤーの肌の色を識別する肌の色取り込み構成要素と、をさらに備え、
前記アバター生成構成要素は、前記プレイヤーに似ている３Ｄアバターを生成するために、前記識別された（１）シャツの袖、（２）ズボンまたは半ズボンの脚、および（３）スカートまたはドレスの裾の少なくとも１つと、前記識別された肌の色とを組み合わせる、請求項６に記載のコンピューターハードウェアデバイス。
【請求項８】
プレイヤーの現在の外観を反映するアバターを生成するための、コンピューター実施方法であって、前記方法は、
前記プレイヤーの現在の外観を記述するデーターを受信するステップを含み、前記データーは、前記プレイヤーの可視スペクトル画像と、前記プレイヤーおよび現在の背景の両方を含む深度画像と、前記プレイヤーに関する骨格データーと、を含み、前記骨格データーは、前記プレイヤーの骨格の輪郭を示し、
前記方法は、さらに、
前記プレイヤーの顔を識別するステップ、および、
前記プレイヤーの顔の特徴を識別し、前記受信された可視スペクトル画像の前記プレイヤーの顔を含む部分を、前記識別された顔の特徴に基づいて顔テクスチャーマップにワーピングする(warping)ステップであって、前記顔テクスチャーマップが、前記プレーヤーの顔を含む前記受信された可視スペクトル画像の一部のＵＶ空間マップであるものと、
によって、
前記受信されたデーターに少なくとも部分的に基づいて、前記プレイヤーの顔の外観を取り込むステップと、
前記プレイヤーの髪の範囲を識別するステップ、
前記プレイヤーの髪の前記識別された範囲を、予め決められた髪型テンプレートにマッチングするステップ、および、
前記プレイヤーの髪の色を識別するステップによって、
前記受信されたデーターに少なくとも部分的に基づいて、前記プレイヤーの髪の外観を取り込むステップと、
前記受信されたプレイヤーおよび現在の背景の両方を含む深度画像、並びに前記プレイヤーの受信された可視スペクトル画像を使用し、エッジ検出を使用して外側の衣類の境界を決定するステップ、
前記受信されたプレイヤーの可視スペクトル画像を使用し、決定された色勾配に基づいて、肌から衣類を区別することによって、少なくとも１つの内側の衣類の境界を決定するステップ、並びに、
前記外側の衣類の境界および前記少なくとも１つの内側の衣類の境界によって少なくとも部分的に囲まれた領域としてプレイヤーの衣類を識別するステップによって、
前記受信されたデーターに少なくとも部分的に基づいて、前記プレイヤーの衣類の外観を取り込むステップと、
前記プレイヤーの顔に対応する領域内の前記受信された可視スペクトル画像の１つまたは複数の領域の色を標本化するステップ、および、
プレイヤーの肌の色を決定するために、前記１つまたは複数の領域の前記標本化された色を混合するステップによって、
前記受信されたデーターに少なくとも部分的に基づいて、前記プレイヤーの肌の色を取り込むステップと、
前記顔テクスチャーマップ、前記プレイヤーの髪の前記識別された範囲にマッチする髪型テンプレート、および前記識別されたプレイヤーの髪の色を、予め決められたアバターの特徴と組み合わせることによって、前記取り込まれた前記プレイヤーの顔の外観、髪の外観、衣類の外観および肌の外観を反映する前記３Ｄアバターを、前記プレイヤーに似るように生成するように、コンピューター装置のプロセッサーを使用するステップと、を含む、コンピューター実施方法。
【請求項９】
前記プレイヤーの前記衣類の外観を取り込むステップは、さらに、
前記受信された骨格データーを使用し、前記プレイヤーの腕および脚に対応する領域を識別するステップと、
（１）シャツの袖、（２）ズボンまたは半ズボンの脚、および（３）スカートまたはドレスの裾の少なくとも１つを検出するために、前記プレイヤーの腕および脚に対応する前記識別された領域に沿って、前記受信されたプレイヤーの可視スペクトル画像の色勾配を解析するステップと、を含む、請求項８に記載の方法。
【請求項１０】
前記プレイヤーの前記衣類の外観を取り込むことが、更に、
前記受信した骨格データを用いて、プレイヤーの脚に対応する領域を識別し、
前記プレイヤーと現在の背景との双方を含む、前記受信した深度画像を用いて、前記プレイヤーの前記脚に対応する、前記識別された複数の領域の間の領域を分析して、
プレイヤー深度から、背景深度を区別し、前記背景深度を、前記プレイヤー深度から分離する、実質的に水平のエッジを識別する、ことによりスカート又はドレスのエッジを検出すること、
を含む、請求項８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本願発明の一実施例は、例えば、プレイヤーの外観を反映するアバターの生成に関する。
【背景技術】
【０００２】
[0001]ビデオゲームは、近年大幅に進歩してきた。数ある領域の中で、処理能力、画像処理、およびグラフィックスの改善が、概念およびグラフィックの複雑さを増大させるゲームを可能にした。従来、プレイヤーは、既定のキャラクターを選択するか、単純な定義済みのキャラクターのグループのうちの１つを選択した。ビデオゲームが進化するにつれて、単純なキャラクターではなく、プレイヤーのアバターの使用が、ますます一般的になってきた。いくつかのゲームは、プレイヤーが、定義済みのアバターのグループの中から選択することを可能にし、または、アバターの様々な特徴をカスタマイズすることを可能にする。プレイヤーは、髪の色、性別、身長、眼鏡、などのような特徴を手作業でカスタマイズすることによって、自分自身に似ているアバターを作成しようと試みることができる。このような手作業のカスタマイズは、時間がかかり、依然として、プレイヤーの外観に実際に似ているアバターを結果として生じない。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本願発明の一実施例は、例えば、プレイヤーの外観を反映するアバターの生成に関する。
【課題を解決するための手段】
【０００４】
[0002]本発明の実施形態は、プレイヤーの現在の外観を反映するアバターを生成するためのシステム、方法、およびコンピューター媒体に関する。プレイヤーの現在の外観を記述するデーターが受信される。データーは、プレイヤーの可視スペクトル画像、プレイヤーおよび現在の背景の両方を含む深度画像、並びに、プレイヤーに関する骨格データーを含む。骨格データーは、プレイヤーの骨格の輪郭を示す。受信したデーターに少なくとも部分的に基づいて、プレイヤーの顔の外観、プレイヤーの髪の外観、プレイヤーの衣類の外観、およびプレイヤーの肌の色の１つまたは複数が取り込まれる。シャツの袖、ズボンもしくは半ズボンの脚、または、スカートもしくはドレスの裾が検出されてもよい。取り込まれた顔の外観、髪の外観、衣類の外観、肌の色、および／または、検出されたシャツの袖、ズボンもしくは半ズボンの脚、または、スカートもしくはドレスの裾を、予め決められたアバターの特徴と組み合わせることによって、プレイヤーに似た３Ｄアバターが生成される。
【０００５】
[0003]この概要は、詳細な説明でさらに後述される概念の選択を単純化された形式で紹介するために提供される。この要約は、特許請求された主題の主要な特徴または本質的な特徴を識別することを意図するものではなく、特許請求された主題の範囲を限定するために使用されることを意図するものでもない。
【０００６】
[0004]本発明は、添付の図面を参照しながら、以下に詳細に説明される。
【図面の簡単な説明】
【０００７】
【図１】[0005]本発明の実施形態を実施する際に使用するのに適した例示的な計算環境のブロック図である。
【図２】[0006]本発明の実施形態によるプレイヤーの頭部の可視スペクトル画像の斜視図である。
【図３】[0007]本発明の実施形態によるプレイヤーの可視スペクトル画像の斜視図である。
【図４】[0008]本発明の実施形態による図２および３のプレイヤーに似ている３Ｄアバターの斜視図である。
【図５】[0009]本発明の実施形態によるプレイヤーの現在の外観を反映するアバターを生成するための例示的な方法のフローチャートである。
【図６】[0010]本発明の実施形態による例示的なアバター生成システムである。
【図７】[0011]本発明の実施形態によるプレイヤーの現在の外観を反映するアバターを生成するための例示的な方法のフローチャートであって、顔の外観の取り込み、髪の外観の取り込み、衣類の取り込み、および肌の色の取り込みのためのサブステップが示される。
【図８】[0012]本発明の実施形態によるプレイヤーの可視スペクトル画像の斜視図である。
【図９】[0013]本発明の実施形態によるプレイヤーの頭部の可視スペクトル画像の斜視図である。
【図１０】[0014]本発明の実施形態によるプレイヤーの頭部の可視スペクトル画像の部分的な斜視図であり、画像は、顔、および頭部の他の部分を示す。
【図１１】[0015]本発明の実施形態によるアライメント点と共に示される図１０の像である。
【図１２】[0016]本発明の実施形態によるデスティネーション点を有するテンプレートテクスチャーマップである。
【図１３】[0017]アライメント点を図１２のデスティネーション点にマッチングすることによって図１１の像をワーピングすることから結果として生じる顔テクスチャーマップである。
【図１４】[0018]図８〜１１および１３の画像のプレイヤーの現在の外観を反映する３Ｄアバターである。
【図１５】[0019]本発明の実施形態によるプレイヤーの可視スペクトル画像の斜視図である。
【図１６】[0020]図１５に示すプレイヤーの深度画像であり、単純化された骨格が確認される。
【発明を実施するための形態】
【０００８】
[0021]本発明の実施形態は、法的要件を満たすために、本明細書で具体的に説明される。しかしながら、説明自体は、本発明の範囲を限定することを意図しない。むしろ、本発明者らは、特許請求された主題は、他の現在または将来の技術と組み合わせて、本明細書に記載のものと同様の異なるステップまたはステップの組み合わせを含むように、他の方法で具体化されてもよいと考えた。さらに、「ステップ」および／もしくは「ブロック」、または「モジュール」などの用語は、本明細書で、用いられる方法またはシステムの異なる構成要素を暗示するために使用され得るが、用語は、個々のステップの順序が明示的に記載された場合でなければ、本明細書に開示された様々なステップ間のどのような特定の順序を意味するものとも解釈されるべきではない。
【０００９】
[0022]本発明の実施形態は、プレイヤーの現在の外観を反映するアバターを生成するためのシステム、方法、およびコンピューター媒体に関する。本発明の実施形態によれば、アバターは、プレイヤーの現在の外観を記述するデーターから生成される。プレイヤーに似ている３Ｄアバターを生成するために、プレイヤーの外観の様々な側面が、データーに基づいて取り込まれ、予め決められたアバターの特徴と組み合わされる。
【００１０】
[0023]上述のように、プレイヤーは、特定の特徴を手作業でカスタマイズすることによって、自分自身に似ているアバターを作成しようと試みることができるが、結果として生じるアバターは、依然として、プレイヤーの外観を実際に反映しない。
【００１１】
[0024]しかしながら、プレイヤーの現在の外観を記述するデーターを収集するために、様々なセンサーが使用され得る。これらのセンサーは、数あるデーターの中で、可視スペクトル画像、深度画像、および骨格データーを提供し、これらは、プレイヤーの外観を記述する詳細な情報を含み、プレイヤーの外観を正確に反映するアバターを生成するために使用され得る。可視スペクトルデーター、深度データー、および骨格データーの組み合わせは、以前は不可能だったプレイヤーの外観の詳細な側面の取り込みを可能にする。加えて、プレイヤーに似ているアバターは、センサーデーターが取得された後、様々な特徴のプレイヤーの選択なしに、自動的に生成され得る。
【００１２】
[0025]本発明の一実施形態では、プレイヤーの現在の外観を記述するデーターが受信される。データーは、プレイヤーの可視スペクトル画像、プレイヤーおよび現在の背景の両方を含む深度画像、並びに、プレイヤーに関する骨格データーを含む。骨格データーは、プレイヤーの骨格の輪郭を示す。プレイヤーの顔の外観が、受信されたデーターに少なくとも部分的に基づいて取り込まれる。顔の外観は、プレイヤーの顔を識別し、プレイヤーの顔の特徴を識別し、識別された顔の特徴に基づいて、受信された可視スペクトル画像のプレイヤーの顔を含む部分を顔テクスチャーマップにワーピングすることによって取り込まれる。プレイヤーの髪の外観が、受信されたデーターに少なくとも部分的に基づいて取り込まれる。髪の外観は、プレイヤーの髪の範囲を識別し、プレイヤーの髪の識別された範囲を予め決められた髪型テンプレートにマッチングし、プレイヤーの髪の色を識別することによって取り込まれる。取り込まれたプレイヤーの顔の特徴および髪の特徴を反映する３Ｄアバターが、３Ｄアバターがプレイヤーに似ているように生成される。３Ｄアバターは、顔テクスチャーマップ、プレイヤーの髪の識別された範囲にマッチする髪型テンプレート、および、識別されたプレイヤーの髪の色を、予め決められたアバターの特徴と組み合わせることによって生成される。
【００１３】
[0026]別の実施形態では、データー取得構成要素は、プレイヤーの現在の外観を記述するデーターを受信する。データーは、プレイヤーの可視スペクトル画像、プレイヤーおよび現在の背景の両方を含む深度画像、並びに、プレイヤーに関する骨格データーを含む。骨格データーは、プレイヤーの骨格の輪郭を示す。顔取り込み構成要素は、プレイヤーの顔の外観を、受信されたデーターに少なくとも部分的に基づいて取り込む。髪取り込み構成要素は、プレイヤーの髪の外観を、受信されたデーターに少なくとも部分的に基づいて取り込む。衣類取り込み構成要素は、プレイヤーの衣類の外観を、受信されたデーターに少なくとも部分的に基づいて取り込む。アバター生成構成要素は、取り込まれた顔の外観、髪の外観、および、衣類の外観を、予め決められたアバターの特徴と組み合わせることによって、プレイヤーに似ている３Ｄアバターを生成する。
【００１４】
[0027]さらに別の実施形態では、プレイヤーの現在の外観を記述するデーターが受信される。データーは、プレイヤーの可視スペクトル画像、プレイヤーおよび現在の背景の両方を含む深度画像、並びに、プレイヤーに関する骨格データーを含む。骨格データーは、プレイヤーの骨格の輪郭を示す。プレイヤーの顔の外観が、受信されたデーターに少なくとも部分的に基づいて取り込まれる。顔の外観は、プレイヤーの顔を識別し、プレイヤーの顔の特徴を識別し、識別された顔の特徴に基づいて、受信された可視スペクトル画像のプレイヤーの顔を含む部分を、顔テクスチャーマップ内にワーピングすることによって取り込まれる。プレイヤーの髪の外観が、受信されたデーターに少なくとも部分的に基づいて取り込まれる。髪の外観は、プレイヤーの髪の範囲を識別し、プレイヤーの髪の識別された範囲を、予め決められた髪型テンプレートにマッチングし、プレイヤーの髪の色を識別することによって取り込まれる。
【００１５】
[0028]プレイヤーの衣類の外観が、受信されたデーターに少なくとも部分的に基づいて取り込まれる。衣類の外観は、プレイヤーおよび現在の背景の両方を含む受信された深度画像、並びに、受信されたプレイヤーの可視スペクトル画像を使用し、エッジ検出を使用して外側の衣類の境界を決定することによって取り込まれる。衣類の外観は、受信されたプレイヤーの可視スペクトル画像を使用し、決定された色勾配に基づいて肌から衣類を区別することによって少なくとも１つの内側の衣類の境界を決定することによっても取り込まれる。衣類の外観は、さらに、外側の衣類の境界および少なくとも１つの内側の衣類の境界によって少なくとも部分的に囲まれた領域としてプレイヤーの衣類を識別することによって取り込まれる。
【００１６】
[0029]プレイヤーの肌の色が、受信されたデーターに少なくとも部分的に基づいて取り込まれる。肌の色は、プレイヤーの顔に対応する領域内の受信された可視スペクトル画像の１つまたは複数の領域の色を標本化し、プレイヤーの肌の色を決定するために１つまたは複数の領域の標本化された色を混合することによって取り込まれる。コンピューター装置のプロセッサーが、３Ｄアバターがプレイヤーに似ているように、プレイヤーの取り込まれた顔の外観、髪の外観、衣類の外観、および肌の色を反映する３Ｄアバターを生成するために使用される。３Ｄアバターは、顔テクスチャーマップ、プレイヤーの髪の識別された範囲にマッチする髪型テンプレート、および、識別されたプレイヤーの髪の色を、予め決められたアバターの特徴と組み合わせることによって生成される。
【００１７】
[0030]本発明のいくつかの実施形態の概要を簡単に説明して、本発明の実施形態が実施され得る例示的な動作環境が、本発明の様々な態様に関する一般的な文脈を与えるために後述される。最初に、図１を特に参照し、本発明の実施形態を実施するための例示的な動作環境が、全体的にコンピューター装置１００として示され、指示される。コンピューター装置１００は、適切な計算環境の一例に過ぎず、本発明の実施形態の使用または機能の範囲について何ら限定を示唆することを意図しない。コンピューター装置１００は、図示された構成要素のいずれか１つまたは組み合わせに関するどのような依存性も要件も有するものとして解釈されるべきではない。
【００１８】
[0031]本発明の実施形態は、コンピューター、または、パーソナルデーターアシスタントもしくは他のハンドヘルド装置のような他の機械によって実行される、プログラムモジュールのようなコンピューター実行可能命令を含むコンピューターコードまたは機械使用可能命令の一般的な文脈で説明することができる。一般的に、ルーチン、プログラム、オブジェクト、構成要素、データー構造、などを含むプログラムモジュールは、特定のタスクを実行する、または、特定の抽象データー型を実現するコードを指す。本発明の実施形態は、ハンドヘルド装置、民生用電子機器、汎用コンピューター、より専門的なコンピューター装置、などを含む、様々なシステム構成で実施されてよい。本発明の実施形態は、通信ネットワークを介してリンクされた遠隔処理装置によってタスクが実行される分散計算環境で実施されてもよい。
【００１９】
[0032]図１を参照して、コンピューター装置１００は、直接または間接的に以下の装置を結合するバス１１０、メモリー１１２、１つまたは複数のプロセッサー１１４、１つまたは複数のプレゼンテーション構成要素１１６、入力／出力ポート１１８、入力／出力構成要素１２０、および、例示的な電源１２２を含む。バス１１０は、（アドレスバス、データーバス、またはそれらの組み合わせのような）１つまたは複数のバスであってよいものを表す。図１の様々なブロックは、明瞭さのために線で示されているが、実際には、描写する様々な構成要素は、それほど明確ではなく、比喩的に、線は、より正確には、グレーで曖昧であろう。例えば、表示装置のようなプレゼンテーション構成要素を、Ｉ／Ｏ構成要素であるとみなすことができる。また、プロセッサーは、メモリーを有する。我々は、技術の本質はこのようなものであることを認識し、図１の図は、本発明の１つまたは複数の実施形態に関連して使用され得る例示的なコンピューター装置の単なる例示であることを繰り返す。すべてが、図１の範囲内と考えられ、「コンピューター装置」を参照するため、「ワークステーション」、「サーバー」、「ラップトップ」、「ハンドヘルド装置」などとして、このようなカテゴリー間で区別は行われない。
【００２０】
[0033]コンピューター装置１００は、典型的には、様々なコンピューター可読媒体を含む。コンピューター可読媒体は、コンピューター装置１００によってアクセスされることが可能な任意の利用可能な媒体であってよく、揮発性媒体および不揮発性媒体、取り外し可能な媒体および取り外し不可能な媒体の両方を含む。例として、限定ではなく、コンピューター可読媒体は、コンピューター記憶媒体および通信媒体を含むことができる。コンピューター記憶媒体は、コンピューター可読命令、データー構造、プログラムモジュールまたは他のデーターなどの情報を記録するための任意の方法または技術において実装される揮発性媒体および不揮発性媒体、取り外し可能な媒体および取り外し不可能な媒体の両方を含む。コンピューター記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリーもしくは他のメモリー技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）もしくは他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または、所望の情報を記憶するために使用されることが可能で、コンピューター装置１００によってアクセスされることが可能な任意の他の媒体を含むが、これらに限定されない。
【００２１】
[0034]通信媒体は、典型的には、搬送波のような変調データー信号内のコンピューター可読命令、データー構造、プログラムモジュール、または他のデーターを具体化する。「変調データー信号」という用語は、その特性の１つまたは複数が、情報を信号内に符号化するように設定または変更された、伝播された信号を指す。例として、限定ではなく、通信媒体は、有線ネットワークまたは直接配線接続のような有線媒体、並びに、音響、ＲＦ、赤外線、無線、マイクロ波、スペクトル拡散、および他の無線媒体を含む無線媒体を含む。上記の組み合わせは、コンピューター可読媒体の範囲内に含まれる。
【００２２】
[0035]メモリー１１２は、揮発性および／または不揮発性メモリーの形態のコンピューター記憶媒体を含む。メモリーは、取り外し可能、取り外し不可能、またはそれらの組み合わせであってよい。例示的なハードウェア装置は、固体メモリー、ハードドライブ、光ディスクドライブ、などを含む。コンピューター装置１００は、メモリー１１２またはＩ／Ｏ構成要素１２０のような様々な実体からデーターを読み出す１つまたは複数のプロセッサーを含む。プレゼンテーション構成要素１１６は、データー表示をユーザーまたは他の装置に提示する。例示的なプレゼンテーション構成要素は、表示装置、スピーカー、印刷構成要素、振動構成要素、などを含む。
【００２３】
[0036]Ｉ／Ｏポート１１８は、コンピューター装置１００が、Ｉ／Ｏ構成要素１２０を含む他の装置と論理的に結合されることを可能にし、Ｉ／Ｏ構成要素１２０のいくつかは、組み込まれてよい。例示的な構成要素は、マイクロホン、ジョイスティック、ゲームパッド、サテライトディッシュ、スキャナー、プリンター、無線装置、などを含む。
【００２４】
[0037]前述したように、本発明の実施形態は、プレイヤーの現在の外観に似ているアバターを生成するためのシステム、方法、およびコンピューター媒体に関する。本発明の実施形態が、図２〜１６を参照して説明されることになる。
【００２５】
[0038]図２〜４は、プレイヤーを記述するデーターを取得し、プレイヤーの現在の外観に似ているアバターを生成するための、本発明の実施形態の実施を示す。図２は、プレイヤー２０１の可視スペクトル画像２００を示す。画像２００は、プレイヤー２０１の顔２０２、髪２０４、および衣類２０６を含む。一実施形態では、プレイヤー２００は、画像２０１の取り込みを容易にするためにガイドマーカー２０８にしたがって自分自身をカメラの前に位置させる。プレイヤー２０１の身体の実質的にすべてが、画像３００に含まれる。図３は、画像３０８の取り込みを容易にするために、ガイドマーカー３０８も含む。
【００２６】
[0039]可視スペクトル画像２００および３００に加えて、センサーは、プレイヤー２０１の１つまたは複数の深度画像を収集する。深度画像は、画像中の各画素の深度を示し、画像の背景が、画像内の人物または物体から区別されることを可能にし、深度に基づいて、顔の特徴のような人物の様々な身体の特徴の識別も可能にする。人物は、画像の前景内の同様の深度である画素を含むものとして識別されることができ、背景は、より大きい深度を有する画素であると判定される。
【００２７】
[0040]深度データーは、当該技術分野で既知のような骨格データーの作成も可能にする。一実施形態では、人物を表す画像の部分は、深度情報を使用して、画像の背景から区別され得る。人物を表す画像の部分は、次に、識別された人物のポーズとの一致を識別するために、ポーズのデーターベースと比較されてよい。一致が識別されると、一致に対応する単純化された骨格構造が、識別され得る。単純化された骨格構造は、プレイヤーの骨格の輪郭を示すことができ、付属器官または他の身体の特徴を表すために、関節を表す点、および点を接続する線を含むことができる。単純化されたプレイヤーの骨格を深度データーから識別する他の方法も想定される。
【００２８】
[0041]可視スペクトル画像２００および３００は、骨格データーおよび深度画像と共に、プレイヤー２０１に似ている図４に示すアバター４００を生成するために、予め決められたアバターの特徴と組み合わされる。いくつかの実施形態では、生成されたアバターは、高さおよび幅のような、特定の予め決められた割合、並びに、手、脚、目、腕、および脚の幅、または他の特徴のような、特定の予め決められた特徴を有する。アバター４００は、プレイヤー２０１の顔２０２、髪２０４、および衣類２０６を反映し、様々な特徴の手作業の選択が達成することができるプレイヤー２０１を大幅により正確に表すアバターを達成する。
【００２９】
[0042]図５は、プレイヤーの現在の外観を反映するアバターを生成する方法を示す。ステップ５０２では、プレイヤーの現在の外観を記述するデーターが受信される。データーは、プレイヤーの可視スペクトル画像、プレイヤーおよび現在の背景の両方を含む深度画像、並びに、プレイヤーに関する骨格データーを含む。骨格データーは、プレイヤーの骨格の輪郭を示す。ステップ５０４では、プレイヤーの顔の外観が、受信されたデーターに少なくとも部分的に基づいて取り込まれる。また、受信されたデーターに少なくとも部分的に基づいて、髪の外観および衣類の外観が、ステップ５０６および５０８で取り込まれ、袖、ズボンの脚、または裾が、ステップ５１０で検出され、肌の色が、ステップ５１２で取り込まれる。ステップ５１４では、プレイヤーに似ている３Ｄアバターが、取り込まれた顔の外観、髪の外観、衣類の外観、袖／脚／裾、および肌の色を、予め決められたアバターの特徴と組み合わせることによって生成される。
【００３０】
[0043]図６は、本発明の実施形態によるシステム６００を示す。データー取得構成要素６０２は、プレイヤーの現在の外観を記述するデーターをセンサー６０４から受信する。データーは、プレイヤーの可視スペクトル画像、プレイヤーおよび現在の背景の両方を含む深度画像、並びに、プレイヤーに関する骨格データーを含む。骨格データーは、プレイヤーの骨格の輪郭を示す。センサー６０４は、ＲＧＢカメラ、および赤外線または他の深度センサーを含むことができる。一実施形態では、プレイヤーは、センサーデーターの取得を容易にするために、センサー６０４の経路内で、様々な好適な位置に立つ。データー取得構成要素６０２は、受信されたデーターを、顔取り込み構成要素６０６、髪取り込み構成要素６０８、衣類取り込み構成要素６１０、袖検出構成要素６１２、および肌の色取り込み構成要素６１４に提供する。構成要素６０６、６０８、６１０、６１２、および６１４は、情報を取り込みまたは検出し、この情報をアバター生成構成要素６１６に提供し、アバター生成構成要素６１６は、情報を使用して、プレイヤーに似ている３Ｄアバターを生成する。
【００３１】
[0044]様々な実施形態に、構成要素６０６、６０８、６１０、６１２、および６１４の任意の組み合わせが含まれる。顔取り込み構成要素６０６は、受信されたデーターに少なくとも部分的に基づいて、プレイヤーの顔の外観を取り込む。髪取り込み構成要素６０８は、受信されたデーターに少なくとも部分的に基づいて、プレイヤーの髪の外観を取り込む。衣類取り込み構成要素６１０は、受信されたデーターに少なくとも部分的に基づいて、衣類の外観を取り込む。袖検出構成要素６１２は、受信されたデーターに少なくとも部分的に基づいて、（１）シャツの袖、（２）ズボンまたは半ズボンの脚、および（３）スカートまたはドレスの裾の少なくとも１つを識別する。肌の色取り込み構成要素６１４は、受信されたデーターに少なくとも部分的に基づいて、プレイヤーの肌の色を識別する。アバター生成構成要素６１６は、プレイヤーに似ている３Ｄアバターを、取り込まれた顔の外観、髪の外観、および衣類の外観を、予め決められたアバターの特徴と組み合わせることによって生成する。構成要素６０２、６０６、６０８、６１０、６１２、６１４、および６１６の機能は、別個の物理的構成要素もしくは装置に存在してよく、または、一緒に実装されてよいことが想定される。
【００３２】
[0045]図７は、プレイヤーの現在の外観を反映するアバターを生成する方法７００を示す。方法７００のステップは、図６のシステム６００の構成要素によって実施されてよい。ステップ７０２では、プレイヤーの現在の外観を記述するデーターが受信される。このデーターは、プレイヤーの少なくとも１つの可視スペクトル画像７０２Ａ、プレイヤーおよび現在の背景の両方を含む少なくとも１つの深度画像７０２Ｂ、並びに、プレイヤーに関する骨格データー７０２Ｃを含む。骨格データー７０２Ｃは、プレイヤーの骨格の輪郭を示し、少なくとも１つの深度画像７０２Ｂから導き出されてよい。
【００３３】
[0046]ステップ７０４では、プレイヤーの顔の外観が、受信されたデーターに少なくとも部分的に基づいて取り込まれる。ステップ７０４は、サブステップ７０４Ａ〜７０４Ｃによって実施されてよい。サブステップ７０４Ａでは、プレイヤーの顔が識別される。サブステップ７０４Ｂでは、プレイヤーの顔の特徴が識別される。サブステップ７０４Ｃでは、受信された可視スペクトル画像のプレイヤーの顔を含む部分が、識別された顔の特徴に基づいて、顔テクスチャーマップにワーピングされる。顔テクスチャーマップは、２Ｄ画像点を３Ｄモデルにどのようにマップするかを特定するＵＶ空間マップである。
【００３４】
[0047]ステップ７０６では、プレイヤーの髪の外観が、受信されたデーターに少なくとも部分的に基づいて取り込まれる。ステップ７０６は、サブステップ７０６Ａ〜７０６Ｃによって実施されてよい。サブステップ７０６Ａでは、プレイヤーの髪の範囲が識別される。サブステップ７０６Ｂでは、プレイヤーの髪の識別された範囲が、予め決められた髪型テンプレートにマッチングされる。サブステップ７０６Ｃでは、プレイヤーの髪の色が識別される。
【００３５】
[0048]ステップ７０８では、プレイヤーの衣類の外観が、受信されたデーターに少なくとも部分的に基づいて取り込まれる。ステップ７０８は、サブステップ７０８Ａ〜７０８Ｃによって実施されてよい。サブステップ７０８Ａでは、プレイヤーおよび現在の背景の両方を含む受信された深度画像、並びに、プレイヤーの受信された可視スペクトル画像を使用し、外側の衣類の境界が、エッジ検出を使用して決定される。サブステップ７０８Ｂでは、プレイヤーの受信された可視スペクトル画像を使用し、少なくとも１つの内側の衣類の境界が、決定された色勾配に基づいて肌から衣類を区別することによって決定される。サブステップ７０８Ｃでは、プレイヤーの衣類が、外側の衣類の境界および少なくとも１つの内側の衣類の境界によって少なくとも部分的に囲まれた領域として識別される。
【００３６】
[0049]プレイヤーの肌の色が、ステップ７１０で取り込まれ、取り込みは、受信されたデーターに少なくとも部分的に基づく。ステップ７１０は、サブステップ７１０Ａ〜７１０Ｂによって実施されてよい。サブステップ７１０Ａでは、受信された可視スペクトル画像の１つまたは複数の領域の色は、プレイヤーの顔に対応する領域内で標本化される。サブステップ７１０Ｂでは、プレイヤーの肌の色を決定するために、１つまたは複数の領域の標本化された色が混合される。
【００３７】
[0050]ステップ７１２では、顔テクスチャーマップ、プレイヤーの髪の識別された範囲に一致する髪型テンプレート、および識別されたプレイヤーの髪の色を、予め決められたアバターの特徴と組み合わせることによって、プレイヤーの取り込まれた顔の外観、髪の外観、衣類の外観、および髪の色を反映する３Ｄアバターが、プレイヤーに似るように生成される。
【００３８】
[0051]図５〜７を参照して説明した顔の外観の取り込み、髪の外観の取り込み、衣類の外観の取り込み、および袖／脚／裾の検出が、ここでより詳細に説明される。
[0052]顔の外観の取り込み
[0053]上述のように、可視スペクトル画像、深度画像、および骨格データーが、プレイヤーの顔の外観を取り込むために使用され得る。取り込まれた顔の外観は、次に、３Ｄアバターに組み込まれてよい。一実施形態では、プレイヤーの頭部が、受信されたプレイヤーに関する骨格データーを解析することによって識別されてよい。プレイヤーの頭部に対応する受信された可視スペクトル画像の頭部部分が、次に識別されてよい。このように、プレイヤーの頭部および顔の大まかな位置が、骨格データーを用いて最初に識別されてよく、この位置に対応する可視スペクトル画像の部分が、さらに解析されてよい。一実施形態では、顔検出アルゴリズムが、受信された可視スペクトル画像の頭部部分に適用される。ある特定のアルゴリズムでは、顔を既知の顔のデーターベースと比較する機械学習技術が使用される。
【００３９】
[0054]識別された顔から、様々な顔の特徴が識別され得る。いくつかの実施形態では、識別された顔の特徴に対応する顔のアライメント点が決定される。識別された顔のアライメント点は、テンプレートテクスチャーマップ上のデスティネーション点にマッチングされる。プレイヤーの顔を含む受信された可視スペクトル画像の部分は、顔テクスチャーマップが、テンプレートテクスチャーマップのデスティネーション点にマッピングされたプレイヤーの顔の識別された顔の特徴に対応する顔のアライメント点を含むように、顔テクスチャーマップにワーピングされる。これを行うことによって、プレイヤーの顔の画像は、デスティネーションテンプレートに適合するようにわずかに変形される。本出願で使用されるテクスチャーマップは、ＵＶ空間にあり、それらが３Ｄモデルにマッピングされることを可能にする情報を含む。これにより、顔の特徴および対応するアライメント点を識別し、アライメント点をテンプレートテクスチャーマップのデスティネーション点にマッピングすることによって、ここで、プレイヤーの顔の３Ｄモデルが作成され得る。
【００４０】
[0055]これは、図８〜１３に示される。図８は、プレイヤー８０２の可視スペクトル画像８００を示す。図９は、プレイヤー８０２の第２の可視スペクトル画像９００を示す。図８および９に示すガイドマーカーは、特徴検出を容易にするために示され、プレイヤー８０２が、自分自身をシステムが期待している位置に位置させると、特徴検出がより正確になる。図１０は、プレイヤー８０２の顔１０００を示す。顔１０００は、ここで、髪およびプレイヤーの衣類の一部と共に示される。図１１は、識別された顔の特徴に対応する例示的な顔アライメント点１１０２を示す。顔の特徴は、目、顎先、耳、鼻、口、眉、顎、および他の特徴を含むことができる。一実施形態では、９９の顔アライメント点が、以下のように、すなわち、０〜７が左目に、８〜１５が右目に、１６〜２５が左眉に、２６〜３５が右眉に、３６〜４７が鼻に、４８〜５９が外口に、６０〜６７が内口に、６８〜８６が顎先のラインに、８７が左目の中心に、８８が右目の中心に、８９が鼻の中心に、９０〜９９が眉の上に使用される。
【００４１】
[0056]図１２は、デスティネーション点１２０２および３Ｄモデル間の関係を定義するテンプレートテクスチャーマップ１２００を示す。ＵＶ空間内のテクスチャーマップは、当該技術分野で周知である。顔アライメント点１１０２は、デスティネーション点１２０２に対するソース点として機能する。テンプレートテクスチャーマップ１２００は、特定の様式化された３Ｄ頭部モデルにマッピングするためにアーティストに作成されたマップであってよい。様々なテンプレートテクスチャーマップが使用されてよい。いくつかの実施形態では、すべてのアライメント点が、デスティネーション点と整列される必要はない。例えば、目および口のアライメント点は、プレイヤーの表情をよりよく維持するために、マッチングされなくてよい。図１３は、結果として生じる顔テクスチャーマップ１３００を示す。顔テクスチャーマップ１３００は、図１０の画像１０００と比較して、わずかに変形されている。顔テクスチャーマップ１３００は、プレイヤー８０２の現在の外観を反映する３Ｄアバターの一部として含まれるプレイヤー８０２の頭部を表すベースの３Ｄ頭部モデルにモーフィングされ得る。図１４は、プレイヤー８０２に似ている顔および頭部１４０２を有するアバター１４００を示す。
【００４２】
[0057]いくつかの実施形態では、プレイヤーの現在の外観を記述するデーターが、プレイヤーの前面に関してのみ受信される。プレイヤーの側面および背面に関するデーターは、推定される。他の実施形態では、複数の角度または側面からのプレイヤーの画像が受信され、特徴認識が、プレイヤーの頭部および身体の各側面に対して実行される。
【００４３】
[0058]様々なフィルターリングおよび処理ステップが行われてもよい。一実施形態では、以下のフィルターおよび値、すなわち、ＲＧＢ画像に対するカーネル半径３画素、２０のエッジしきい値（０〜２５５）のバイラテラルフィルターと、カーネル半径５画素、４２のエッジしきい値（０〜２５５）の色ノイズ低減（バイラテラルフィルター、ＨＳＶ色空間）と、０．５４の再中心値（０〜１）、０．１５の再標準偏差値（０〜１）、および、０．５のオリジナル（０〜１）との混合の自動コントラスト（ＨＳＶ空間）と、０．６、１．０の曲線点１、０．５のオリジナル（０〜１）との混合の調整輝度曲線（ＨＳＶ空間）と、が適用される。
【００４４】
[0059]いくつかの実施形態では、顔テクスチャーマップを３Ｄ頭部モデルにモーフィングする前に、アライメント点が解析され、顔の特徴に対応する大きさが計算される。顔テクスチャーマップ、および複数の識別された顔の特徴の計算された大きさに基づいて、複数の予め決められた頭部モデルが、モーフィングされた３Ｄ頭部モデルを作成するために組み合わされる。
【００４５】
[0060]一実施形態では、測定値は、画像が近寄ったまたは遠方の頭部のものであることを考慮するために、可視スペクトル画像内のプレイヤーの頭部の実際の大きさを考慮するために、正規化される。モーフ構成が、次に、正規化された値を平均および標準偏差値と比較することによって、各特徴に対して決定される。これは、特定の特徴が平均と比較して、どのくらい大きいか／小さいか／広いか／狭いか、などに関する情報を効果的に提供する。アーティストに作成された様々な３Ｄ頭部モデルが存在し、様々なモデルからの適切な特徴が、モーフ構成にしたがって組み合わされる。このように、正規化された顔寸法が、モーフ構成に変換され、モーフ構成は、プレイヤーの特徴を反映するために、様々な頭部モデルをどのように混合するかを指定する。
【００４６】
[0061]特定の一実施形態では、モーフ構成は、以下のように、すなわち、顎／顎先が、広い、狭い、長い、短いとして、鼻が、狭い、広い、短い、長い、として、目の領域が、広い間隔、狭い間隔、高く位置する、低く位置する、として分類される。
【００４７】
[0062]髪の外観の取り込み
[0063]プレイヤーの顔を取り込むことに加えて、プレイヤーの髪の外観が取り込まれてよい。髪の外観は、髪の色、並びにおおよその髪型を含む。一実施形態では、前髪、上部の量、各側部の量、顎先を越えた量、額を覆う範囲、などのような、プレイヤーの髪の様々な側面が解析され、定義済みの髪型テンプレートに一致するように組み合わされる。
【００４８】
[0064]一実施形態では、プレイヤーの髪の範囲が、内側および外側の髪の境界を決定することによって識別される。受信されたプレイヤーおよび現在の背景を含む深度画像を使用して、外側の髪の境界が、プレイヤーの髪の深度から背景の深度を区別することによって決定される。受信されたプレイヤーの可視スペクトル画像を使用して、内側の髪の境界が、プレイヤーの髪からプレイヤーの肌および／または衣類を区別することによって決定される。一実施形態では、内側の髪の境界は、プレイヤーによって着用される衣類からプレイヤーの髪を区別し、プレイヤーの顔の外観を取り込む際に識別された顔の特徴を使用して、プレイヤーの額の範囲を決定することによって決定される。プレイヤーの額の位置を知ることは、髪のために可視スペクトル画像を解析する場所を狭くするのを助ける。
【００４９】
[0065]プレイヤーの髪は、外側および内側の髪の境界によって少なくとも部分的に囲まれた領域として識別される。いくつかの実施形態では、プレイヤーの髪の複数の髪の属性が識別され、複数の髪の属性の各々は、プレイヤーの髪の一部または特性を記述する。髪の属性は、前髪、上部の量、各側部の量、顎先を越えた量、額を覆う範囲、などを含むが、これらに限定されない。識別された複数の髪の属性は、次に、ベストマッチを見つけるために、予め決められた髪型テンプレートのライブラリーと比較されてよい。いくつかの実施形態では、ライブラリーは、１０と２０の間の予め決められた髪型を含む。他の実施形態では、プレイヤーの頭部からの距離は、特定の画素が髪として分類されるべきか否かの可能性に影響し、プレイヤーの頭部により近くなると、画素が髪とみなされるべきである可能性はより高くなる。
【００５０】
[0066]髪の外観の取り込みの細部は、様々な方法で実施されてよい。髪の外観の取り込みの様々な態様のいくつかの具体例が、以下に示される。髪は、深度情報に基づく背景除去、額推定、および顔除去を使用し、カラー可視スペクトル画像から分類され得る。深度情報に基づく背景除去は、背景しきい値（例えば、顔の距離＋２０ｃｍ）を決定するステップと、すべての背景（特別な色またはアルファーを有するタグ）にカラー画像を初期化するステップと、値＞背景または値＝０（深穴）のいずれかを有するすべての深度画素を背景としてマーキングするステップと、すぐ隣の画素が以前に背景としてマーキングされたすべての深度画素を（しかしながら、新しい画素からは広がらない）背景としてマーキングする（これは、深度エッジの内側を侵食する）ステップと、色画素を深度画素にマッピングするステップと、非背景深度画素に対応するすべてのソースカラー画像を目標カラー画像に複製するステップと、特定の距離を移動したか、ソース画像の画素色が、オリジナルのエッジの画素色から過度にずれるまで、エッジから外側に移動し、ソース画像からの画素を目標画像に複製して、範囲を限定した塗りつぶしを、背景画素に境界を接するどの所与の非背景色画素にも使用して背景エッジに沿ってカラー画像をいっぱいに塗りなおすステップと、によって、達成され得る。
【００５１】
[0067]額推定は、顔検出境界を使用して中心顔色基準を標本化し、この色で色平均をシードするステップと、色の移動平均を維持して、眉のすぐ上から開始して額に進み、額領域の幅にわたって標本化するステップと、標本色の１ラインが平均から有意に異なる場合、移動平均をリセットし、遷移点を記録するステップと、背景画素のみが標本化される場合、上方への移動を停止し、遷移点を記録するステップと、によって達成され得る。最初の記録された遷移点は、おそらく生え際レベルであり、最後の遷移点は、髪の最上部である。眉のレベルは、額の最低部である。
【００５２】
[0068]顔除去は、額ではない、より下方の顔の良好な輪郭を与える顔検出特徴点の２Ｄ凸閉包を計算するステップと、反射点を生え際レベルの上に配置するのを回避するために、額生え際推定を使用し、下顎の輪郭の点のいくつかを目を通るラインの上に反射し、それらを凸閉包に加えるステップと、凸包内のすべての色画素を背景としてマーキングするステップと、耳を除く、口と目の間の垂直方向の領域内のすべての色画素を背景としてマーキングするステップと、によって達成され得る。
【００５３】
[0069]別の実施形態では、髪の色は、標本化を、高い髪を取得するのに十分に高く、肩の長さの長い髪を取得するのに十分に低い、顔の周囲の矩形に限定するステップと、マーキングされていないすべての色画素を、全体の平均に対する背景として標本化するステップと、カスタムスケール化ＨＣＶ色空間内の平均色と有意に異なるどの画素も除外し、再び、すべての非背景色画素を標本化するステップと、によって標本化される。髪型推定が完了すると、側部は、照明の状態によってあまり影響されない傾向があるため、プレイヤーの頭部の側部から収集された色は、上部から収集された色以上に強調されてよい。
【００５４】
[0070]一実施形態では、髪型は、髪標本化領域を５個の領域、上部中央、左上／右上、および左下／右下に分割することによって推定される。上部と左上／右上の間の水平方向のしきい値は、眉のエッジであり、上部と下の間のしきい値は、顔（耳の除去から空白であるべきである）の中央である。髪の色の分類は、各領域内の髪の画素数を標本化するために使用され、額推定は、額の高さおよび最上部の髪の高さを測定するために使用される。５個の値、すなわち、額の高さ、最上部の髪の高さ、上部の髪領域、上側部領域、下側部領域がここで得られている。最上部の髪の高さおよび領域値は、単一の値に混合されてよく、結果として４個の値が生じる。値は、顔検出に基づいて画素での推定される顔の大きさに正規化される。各値は、次に、「なし」、「いくつか」、「多数」のようなビンに分類されてよく、ここで、しきい値は、人間または機械学習により経験的に導かれる。ビニングされた値は、特定のプレイヤーのためのフィードバックとして表示するために、視覚的な髪型を選択するために、資産マトリックスに対してマッチングされる。
【００５５】
[0071]色相−彩度−明度（ＨＣＶ）色空間が、知覚色差比較に使用されてよい。この色空間は、底の１点として黒を有し、上部の１点として白を有する円錐状であり、飽和色は、上部に円錐の最も広い部分を形成する。ＨＳＶは、円筒の底を横切って広く広がるほとんど黒の色を有し、これは、画像ノイズが色相および彩度の広い変動を誘発する可能性がある場合、問題を引き起こす。２つの値間の距離は、ＨＣ平面上の極座標の距離を使用し、Ｖに関するユークリッド距離を加算して測定される。円錐の半径および高さは、色の異なる特性を強調するために、拡大縮小されてよい。色空間距離しきい値は、操作するための別の変数であるが、３つの変数のうち１つは、固定されてよい。異なる拡大縮小アプローチは、円錐の頂点を、１の固定された半径に保持し、代わりに、色相および彩度を、距離しきい値の２分の１の半径と混合することによって、円錐の底の点を円板に広げる。このアプローチは、擬似円錐の上部にある飽和色に影響を与えることなしに、すべての暗い色が、互いのしきい値距離内にあることを保証する。一実施形態では、髪に関する具体的な調整値は、距離しきい値＝０．１、Ｈ’＝Ｈ、Ｃ’＝ｌｅｒｐ（Ｓ，Ｃ，距離しきい値／２）（しきい値＝０は、純粋なＨＣＶを生成する）、および、Ｖ’＝Ｖ×０．５を含む。
【００５６】
[0072]衣類の外観の取り込み
[0073]衣類の外観は、プレイヤーの現在の外観を記述する受信されたデーターから取り込まれてもよい。生成された３Ｄアバター画像は、このとき、プレイヤーが着用しているのと同様な衣類を含むことができる。
【００５７】
[0074]一実施形態では、衣類の外観は、プレイヤーおよび現在の背景の両方を含む受信された深度画像、並びに、プレイヤーの受信された可視スペクトル画像を使用し、エッジ検出を使用して、外側の衣類の境界を決定するステップと、プレイヤーの受信された可視スペクトル画像を使用し、色解析に基づいて肌から衣類を区別して、少なくとも１つの内側の衣類の境界を決定するステップと、外側の衣類の境界および少なくとも１つの内側の衣類の境界によって少なくとも部分的に囲まれた領域として、プレイヤーの衣類を識別するステップと、によって取り込まれる。別の実施形態では、エッジ検出は、受信された深度画像内のプレイヤーの深度から背景の深度を区別し、受信された可視スペクトル画像内の背景の色から衣類の色を区別する。
【００５８】
[0075]いくつかの実施形態では、プレイヤーの身体の特徴は、受信された骨格データーを使用して識別される。外側の衣類の境界および少なくとも１つの内側の衣類の境界は、受信された可視スペクトル画像の領域、および、衣類が典型的に着用されるプレイヤーの識別された身体の特徴に対応する、受信された深度データーの領域を解析することによって決定される。例えば、手首、肘、肩、膝、腰、などが、衣類を認識するための狭くされた解析領域をシステムに提供することにより、骨格データーから識別され得る。
【００５９】
[0076]他の実施形態では、プレイヤーの衣類の外観の取り込みは、さらに、拡大縮小されたプレイヤーの骨格を形成するために、プレイヤーに関する骨格データーを、予め決められた骨格サイズに拡大縮小するステップと、拡大縮小されたプレイヤーの骨格を予め決められたポーズにリポーズするステップと、リポーズされ拡大縮小されたプレイヤーの骨格、および識別されたプレイヤーの衣類に基づいて、衣類テクスチャーマップを作成するステップと、を含む。衣類テクスチャーマップから生成された３Ｄ身体モデルは、その後、３Ｄアバターを生成する際に使用される。
【００６０】
[0077]いくつかの実施形態では、衣類の特定の物が識別され、取り込まれる。他の実施形態では、身体の衣類全体の取り込みが行われる。さらに他の実施形態では、衣類の外観取り込みが、最小しきい値まで特定の衣類を検出することができない場合、半袖シャツおよびズボンもしくは半ズボンが、デフォルトとして使用される。同様に、衣類がプレイヤーの胴体上に検出されない場合、半袖シャツが、アバターに含まれてよい。
【００６１】
[0078]一実施形態では、追跡された骨格上への、提供された取り込まれた深度マップ位置のスキニングが実行される。次に、メッシュが生成される。次に、肌の除去が、肌画素を検出し、肌として登録されていない可能性があるが肌画素に取り付けられた領域にインテリジェントに充填することによって実行される。背景は、キャニーエッジ検出を使用し、プレイヤーとして識別された領域のエッジに近い可視スペクトル画像内のエッジを検出することによって、プレイヤーのマスクを侵食して除去される。次に、マスクを満たすように骨の長さ方向および幅方向を延ばそうとするために、骨の拡大縮小の計算が実行される。骨格データーは、骨格を、提供された２Ｄ骨格位置にリポーズするために使用される。可視スペクトル画像は、次に、新たにリターゲットされたメッシュを使用し、マスク上に適用される。画素単位の伸長および／または単純なＲＧＢの塗りつぶしが、マスクの残りの空白を埋めるために使用される。
【００６２】
[0079]袖／脚／裾検出
[0080]シャツの袖、ズボンもしくは半ズボンの脚、または、スカートまたはドレスの裾の検出は、別々の機能として、または、衣類の外観の検出の一部として考えられてよい。一実施形態では、プレイヤーの腕および脚に対応する領域が、受信された骨格データーを使用して識別される。プレイヤーの受信された可視スペクトル画像の色は、（１）シャツの袖、（２）ズボンまたは半ズボンの脚、および（３）スカートまたはドレスの裾の少なくとも１つを検出するために、プレイヤーの腕および脚に対応する識別された領域に沿って解析される。解析は、例えば、色の分類または勾配の解析であってよい。一実施形態では、骨格データーは、可視スペクトル画像の色を解析するために沿う経路を識別するために使用されてよい。例えば、骨格の腕の位置は、既知であるため、画素の色は、袖が生じる場所を調べるために、肩から腕を下方に移動して解析されてよい。
【００６３】
[0081]別の実施形態では、スカートまたはドレスの裾が検出されてよい。受信された骨格データーを使用し、プレイヤーの脚に対応する領域が識別される。受信されたプレイヤーおよび現在の背景の両方を含む深度画像を使用し、プレイヤーの脚に対応する識別された領域間の領域が、プレイヤーの深度から背景の深度を区別し、背景の深度をプレイヤーの深度から分離する実質的に水平方向のエッジを識別することによって、スカートまたはドレスのエッジを検出するために解析される。
【００６４】
[0082]骨格データーは、上記開示の様々な箇所で説明されている。図１５は、プレイヤー１５０２の可視スペクトル画像１５００を示し、図１６は、プレイヤー１５０２の対応する深度画像１６００を示す。センサーから感知される物体まで、および戻りの飛行時間を測定する赤外線センサーによって生成され得る深度画像１６００は、第１の深度の背景部分１６０４、および、前面により近い第２の深度のプレイヤー部分１６０２を示す。単純化された骨格１６０６は、プレイヤー部分１６０２のポーズに基づいて決定され得る。一実施形態では、プレイヤー部分１６０２は、データーベース内の様々なプレイヤーのポーズと比較され、一致を識別すると、骨格１６０６は、データーベース内の一致するポーズの骨格であると判定される。
【００６５】
[0083]本発明は、限定ではなく例示的であることをすべての点で意図される特定の実施形態に関連して説明されている。代わりの実施形態は、本発明の範囲から逸脱することなく、本発明が属する技術の当業者に明らかになるであろう。
【００６６】
[0084]以上のことから、本発明は、明白なシステムおよび方法に固有の他の利点と共に、すべての上述した目標および目的を達成するのに十分に適している１つであることがわかるであろう。特定の特徴および部分的組み合わせは、有用であり、他の特徴および部分的組み合わせを参照することなく用いられてよいことが理解されるであろう。これは、特許請求の範囲によって意図され、特許請求の範囲内である。
【図１】
0005976103.tif 000002
【図２】
0005976103.tif 000003
【図３】
0005976103.tif 000004
【図４】
0005976103.tif 000005
【図５】
0005976103.tif 000006
【図６】
0005976103.tif 000007
【図７】
0005976103.tif 000008
【図８】
0005976103.tif 000009
【図９】
0005976103.tif 000010
【図１０】
0005976103.tif 000011
【図１１】
0005976103.tif 000012
【図１２】
0005976103.tif 000013
【図１３】
0005976103.tif 000014
【図１４】
0005976103.tif 000015
【図１５】
0005976103.tif 000016
【図１６】
0005976103.tif 000017