JP7499346B2 - 逆運動学に基づいた関節の回転の推測 - Google Patents

逆運動学に基づいた関節の回転の推測 Download PDF

Info

Publication number
JP7499346B2
JP7499346B2 JP2022556033A JP2022556033A JP7499346B2 JP 7499346 B2 JP7499346 B2 JP 7499346B2 JP 2022556033 A JP2022556033 A JP 2022556033A JP 2022556033 A JP2022556033 A JP 2022556033A JP 7499346 B2 JP7499346 B2 JP 7499346B2
Authority
JP
Japan
Prior art keywords
data
joint
skeleton
raw data
neural network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022556033A
Other languages
English (en)
Other versions
JP2023527627A (ja
Inventor
ドンウク チョ,
コリン ジョゼフ ブラウン,
Original Assignee
ヒンジ ヘルス, インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ヒンジ ヘルス, インコーポレイテッド filed Critical ヒンジ ヘルス, インコーポレイテッド
Publication of JP2023527627A publication Critical patent/JP2023527627A/ja
Application granted granted Critical
Publication of JP7499346B2 publication Critical patent/JP7499346B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20036Morphological image processing
    • G06T2207/20044Skeletonization; Medial axis transform
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)
  • Pressure Welding/Diffusion-Bonding (AREA)
  • Feedback Control In General (AREA)
  • Manipulator (AREA)

Description

コンピュータアニメーションは、映画、ビデオゲーム、エンターテインメント、生体力学、訓練映像、スポーツシミュレータ、および他の技術における、コンピュータ生成イメージ等、種々の用途で使用され得る。平滑かつ自然なアニメーションを提供するために、対象の一部の相対的な運動が、モデル化されることになる。例えば、人間対象では、代表的な骨格の関節が、物理的な骨関節を表し得る。人間の骨関節が、典型的には、限定された範囲の運動を有することを理解されたい。具体的な実施例として、膝または肘等のいくつかの人間の関節は、単一平面において枢動することが可能である一方、肩等の他の関節は、3次元で枢動し得る。
詳細な説明
コンピュータアニメーションは、人等の種々のオブジェクトに運動を提供するために、広範囲な異なる分野で使用される。人の移動は、人体が、種々の範囲の運動を伴う、多くの関節を含むため、モデル化および再現が複雑である。人物の片手を挙げる等の移動は、単純であるように見え得るが、そのような運動は、具体的な様式で、それぞれ回転する、少なくとも肩および肘を伴う。故に、そのような移動のアニメーションは、異なる関節のいくつかの回転を伴い得、任意の関節における、その正しくない運動は、結果として、不自然に見えるアニメーション移動をもたらし得る。したがって、種々のコンピュータアニメーション技法を使用して、より自然かつ現実的な移動が生成され得るように、各関節に対する移動の範囲が、判定されるべきである。
手等の対象の一部の移動を計算することは、運動に伴う関節毎の運動の範囲等の関節パラメータが把握されているとき、種々の計算を介して、遂行され得る。関節パラメータが把握されていないときに、具体的な手の移動を提供するために、関節の移動を判定すること等の逆動作は、逆運動学技法を使用して遂行され得る。逆運動学を使用して、対象の運動を判定することは、特に、人物の手等の対象の一部の自然に見える運動を推測するために有用であり得る。しかしながら、運動は、複数の関節の回転を伴い得るため、それは、手の追跡以外の制限された入力を伴う、不十分に制約された数学的問題を伴い得る。これは、結果として、従来的な技法を使用して解くことが数学的に不可能な問題をもたらし得る。
機械学習を使用して、逆運動学を算出する装置および方法が、提供される。本装置は、複数の関節を有する、3次元骨格等の人間骨格の表現を受信し得る。人間骨格のソースは、特に限定されず、いくつかの実施例では、入力データセットとして、提供され得る。他の実施例では、骨格は、姿勢推定エンジンを使用して、カメラによって捕捉される画像または映像から導出され得る。本装置は、続いて、骨格内の関節毎の回転および位置を推測し得る。推測された回転および位置は、次いで、骨格の姿勢またはアニメーションが、自然に見えるように促進するために使用され得る。
本説明では、下記に議論されるモデルおよび技法は、概して、人間対象に適用される。下記に説明される実施例が、動物および機械等の他の対象にも同様に適用され得ることが、本説明から利益を享受する当業者によって理解されるはずである。
本発明は、例えば、以下を提供する。
(項目1)
装置であって、
外部ソースから未加工データを受信するための通信インターフェースであって、前記未加工データは、入力骨格の第1の関節位置と、第2の関節位置とを含む、通信インターフェースと、
前記未加工データを記憶するためのメモリ記憶ユニットと、
前記未加工データから正規化されたデータを生成するための前処理エンジンであって、前記正規化されたデータは、前記メモリ記憶ユニット内に記憶されることになる、前処理エンジンと、
前記正規化されたデータから関節の回転を推測するために、ニューラルネットワークを適用するための逆運動学エンジンであって、前記ニューラルネットワークは、履歴データを使用するためのものであり、前記ニューラルネットワークを訓練するために使用される訓練データは、位置ノイズを含む、逆運動学エンジンと
を備える、装置。
(項目2)
前記前処理エンジンは、前記入力骨格の前記第1の関節位置と前記第2の関節位置との間の長さを正規化するためのものである、項目1に記載の装置。
(項目3)
前記前処理エンジンは、テンプレート骨格に基づいて、前記長さを正規化するためのものである、項目2に記載の装置。
(項目4)
前記テンプレート骨格は、T姿勢をとる、項目3に記載の装置。
(項目5)
前記通信インターフェースに接続される、姿勢推定エンジンをさらに備え、前記姿勢推定エンジンは、画像データから前記未加工データを生成するためのものである、項目1-4のいずれか1項に記載の装置。
(項目6)
前記画像データを捕捉するためのカメラシステムをさらに備える、項目5に記載の装置。
(項目7)
前記位置ノイズは、ガウスノイズである、項目1-6のいずれか1項に記載の装置。
(項目8)
前記ニューラルネットワークは、前記メモリ記憶ユニット内に、前記履歴データを記憶するためのものである、項目1-7のいずれか1項に記載の装置。
(項目9)
前記ニューラルネットワークは、再帰ニューラルネットワークである、項目8に記載の装置。
(項目10)
前記再帰ニューラルネットワークは、長短期メモリアーキテクチャを使用する、項目9に記載の装置。
(項目11)
前記再帰ニューラルネットワークは、ゲート付再帰ユニットアーキテクチャを使用する、項目9に記載の装置。
(項目12)
方法であって、
通信インターフェースを介して、外部ソースから未加工データを受信することであって、前記未加工データは、入力骨格の第1の関節位置と、第2の関節位置とを含む、ことと、
前記未加工データをメモリ記憶ユニット内に記憶することと、
前記未加工データから正規化されたデータを生成することと、
前記正規化されたデータを前記メモリ記憶ユニット内に記憶することと、
前記正規化されたデータから関節の回転を推測するために、逆運動学エンジンを用いてニューラルネットワークを適用することであって、前記ニューラルネットワークは、履歴データを使用するためのものであり、前記ニューラルネットワークを訓練するために使用される訓練データは、位置ノイズを含む、ことと
を含む、方法。
(項目13)
前記正規化されたデータを生成することは、前記入力骨格の前記第1の関節位置と前記第2の関節位置との間の長さを正規化することを含む、項目12に記載の方法。
(項目14)
前記長さを正規化することは、テンプレート骨格に基づいて、前記第1の関節位置と前記第2の関節位置との間の前記長さをスケーリングすることを含む、項目13に記載の方法。
(項目15)
前記テンプレート骨格は、T姿勢をとる、項目14に記載の方法。
(項目16)
姿勢推定エンジンを用いて、画像データから前記未加工データを生成することをさらに含む、項目12-15のいずれか1項に記載の方法。
(項目17)
カメラシステムを用いて、前記画像データを捕捉することをさらに含む、項目16に記載の方法。
(項目18)
前記訓練データを生成することをさらに含む、項目12-17のいずれか1項に記載の方法。
(項目19)
前記訓練データを生成することは、前記位置ノイズをサンプルデータに加えることを含む、項目18に記載の方法。
(項目20)
前記メモリ記憶ユニット内に、前記履歴データを記憶することをさらに含む、項目12-19のいずれか1項に記載の方法。
(項目21)
コードを用いてエンコードされる非一過性コンピュータ可読媒体であって、前記コードは、
通信インターフェースを介して、外部ソースから未加工データを受信することであって、前記未加工データは、入力骨格の第1の関節位置と、第2の関節位置とを含む、ことと、
前記未加工データをメモリ記憶ユニット内に記憶することと、
前記未加工データから正規化されたデータを生成することと、
前記正規化されたデータを前記メモリ記憶ユニット内に記憶することと、
前記正規化されたデータから関節の回転を推測するために、逆運動学エンジンを用いてニューラルネットワークを適用することであって、前記ニューラルネットワークは、履歴データを使用するためのものであり、前記ニューラルネットワークを訓練するために使用される訓練データは、位置ノイズを含む、ことと
を行うようにプロセッサに指示するためのものである、非一過性コンピュータ可読媒体。
(項目22)
前記正規化されたデータを生成するように前記プロセッサに指示するための前記コードはさらに、前記入力骨格の前記第1の関節位置と前記第2の関節位置との間の長さを正規化するように、前記プロセッサに指示する、項目21に記載の非一過性コンピュータ可読媒体。
(項目23)
前記長さを正規化するように前記プロセッサに指示するための前記コードはさらに、テンプレート骨格に基づいて、前記第1の関節位置と前記第2の関節位置との間の前記長さをスケーリングするように、前記プロセッサに指示する、項目22に記載の非一過性コンピュータ可読媒体。
(項目24)
前記コードはさらに、姿勢推定エンジンを用いて、画像データから前記未加工データを生成するように、前記プロセッサに指示する、項目21-23のいずれか1項に記載の非一過性コンピュータ可読媒体。
(項目25)
前記プロセッサに指示するための前記コードは、カメラシステムを用いて、前記画像データを捕捉するように、前記プロセッサに指示するための前記コードを含む、項目24に記載の非一過性コンピュータ可読媒体。
(項目26)
前記プロセッサに指示するための前記コードはさらに、前記訓練データを生成するように、前記プロセッサに指示する、項目21-25のいずれか1項に記載の非一過性コンピュータ可読媒体。
(項目27)
前記プロセッサに指示するための前記コードはさらに、前記位置ノイズをサンプルデータに加えるように、前記プロセッサに指示する、項目26に記載の非一過性コンピュータ可読媒体。
ここで、単に実施例として、付随の図面が参照されるであろう。
図1は、関節の回転を推測するための例示的装置の構成要素の概略描写である。
図2Aは、図1の装置において受信される、入力骨格のある実施例である。
図2Bは、正規化された骨格のある実施例である。
図3は、外部ソースから関節の回転を推測するための例示的システムの描写である
図4は、関節の回転を推測するための別の例示的装置の構成要素の概略描写である。
図5は、関節の回転を推測する方法のある実施例のフローチャートである。
図1を参照すると、関節の回転および位置を推測するための装置の概略描写が、概して、50に示される。装置50は、装置50のユーザと相互作用するための、インジケータ等、種々の付加的なインターフェースおよび/または入力/出力デバイス等の付加的な構成要素を含み得る。相互作用は、装置50またはその中で装置が動作するシステムの動作状態を視認すること、装置50のパラメータを更新すること、または装置50をリセットすることを含み得る。本実施例では、装置50は、骨格データを受信し、骨格内の関節における複数の推測される回転を生成するだけではなく、関節の位置の任意の調節を行うために、骨格データを処理するためのものである。本実施例では、装置50は、通信インターフェース55と、メモリ記憶ユニット60と、前処理エンジン65と、逆運動学エンジン70とを含む。
通信インターフェース55は、入力骨格を表す未加工データを受信するために、外部ソースと通信するためのものである。本実施例では、通信インターフェース55は、WiFiネットワークまたはセルラーネットワーク等、多数の接続されたデバイスと共有される、パブリックネットワークであり得る、ネットワークを経由して、外部ソースと通信し得る。他の実施例では、通信インターフェース55は、イントラネットまたは他のソースとの有線接続等のプライベートネットワークを介して、外部ソースからデータを受信し得る。さらなる実施例では、通信インターフェース55は、USBインターフェース、SATAインターフェース、PCIまたはPCIeインターフェース、メモリバス、または装置50の一部であり得る、周辺デバイスと通信するための他のインターフェース等の内部インターフェースであり得る。特に、通信インターフェース55は、メモリ記憶ユニット60上に記憶されることになる、外部ソースからの未加工データを受信するためのものである。
本実施例では、未加工データは、複数の関節を有する骨格を含む。外部ソースから受信された骨格が生成される様式は、特に限定されない。例えば、骨格は、カメラによって捕捉された画像データから導出され得る。そのような実施例では、画像データは、姿勢推定エンジンを使用して、処理され得る。他の実施例では、骨格は、アーティストによって生成されたデータ、または描画もしくはコンピュータ生成図等の芸術作品から処理されたデータを使用して、外部ソースから受信され得る。
さらに、通信インターフェース55は、骨格内の関節の回転および位置の推測の結果を伝送するために使用され得る。例えば、通信インターフェース55は、装置50の一部である、または別個のデバイス上に存在し得る、アニメーションエンジン(図示せず)と通信してもよい。いくつかの実施例では、装置50は、関節の回転および位置を推測するために、外部ソースから骨格を受信し、推測された関節に関連するデータを外部ソースに返送するように動作してもよい。故に、装置50は、コンピュータアニメータのためのサービスとして動作し得る。
通信インターフェース55がデータを伝送および受信する様式は、限定されず、データを収集する電子デバイスまたは中央サーバ等の外部ソースとの有線接続を介して、電気信号を受信することを含み得る。他の実施例では、通信インターフェース55は、インターネットを介して、無線で他のデバイスに接続されてもよい。さらなる実施例では、通信インターフェース55は、WiFiネットワークを介して、または外部デバイスと直接通信して等、無線信号を伝送および受信するための無線インターフェースであってもよい。別の実施例として、通信インターフェース55は、Bluetooth(登録商標)接続、無線信号、または赤外線信号を介して、別の近接デバイスに接続され、続いて、付加的なデバイスに中継されてもよい。
メモリ記憶ユニット60は、通信インターフェース55を介して受信されたデータを記憶するためのものである。特に、メモリ記憶ユニット60は、骨格、特に、アニメーションのための人間対象を表す3次元骨格を表すデータを記憶し得る。データは、特に限定されず、骨格は、具体的な対象または対象のタイプ(例えば、人間、動物、機械等)を識別するための識別子等の付加的な情報を含み得る。本実施例では、メモリ記憶ユニット60は、アニメーション目的のために、異なる対象を表す複数の骨格を記憶し得る。特に、骨格は、異なるサイズであり得、異なる回転を有する異なる関節を含み得る。例えば、ある骨格は、アニメーションのための子供の画像を表し得、別の骨格は、柔軟性の差異に起因して、異なる寸法および異なる関節の回転を有する大人を表し得る。さらなる実施例では、骨格は、動物または機械等の異なるタイプの対象を表し得る。
メモリ記憶ユニット60はまた、装置50によって使用されることになる、付加データを記憶するために使用され得る。例えば、メモリ記憶ユニット60は、テンプレートおよびモデルデータ等の種々の参照データソースを記憶し得る。メモリ記憶ユニット60が、複数のデータベースを維持するために使用される、物理的なコンピュータ可読媒体であり得る、または中央サーバまたはクラウドサーバ等の1つ以上の外部サーバを横断して分散され得る、複数の媒体を含み得ることを理解されたい。
本実施例では、メモリ記憶ユニット60は、特に限定されず、任意の電子、磁気、光学、または他の物理的記憶デバイスであり得る、非一過性機械可読記憶媒体を含み得る。メモリ記憶ユニット60は、通信インターフェース55を介して外部ソースから受信されたデータ、テンプレートデータ、訓練データ、前処理エンジン65から正規化されたデータ、または逆運動学エンジン70からの結果等の情報を記憶するために使用され得る。加えて、メモリ記憶ユニット60は、装置50の一般的な動作に対する命令を記憶するために使用され得る。特に、メモリ記憶ユニット60は、プロセッサによって実行可能である、オペレーティングシステムを記憶し、装置50に、一般的な機能性、例えば、種々のアプリケーションをサポートするための機能性を提供し得る。メモリ記憶ユニット60は、加えて、前処理エンジン65および逆運動学エンジン70を動作させるための命令を記憶し得る。さらに、メモリ記憶ユニット60はまた、他の構成要素、ならびにカメラおよびユーザインターフェース等、装置50とともに配設され得る、任意の周辺デバイスを動作させるための制御命令を記憶し得る。
メモリ記憶ユニット60は、テンプレート骨格、訓練データ、または装置50の構成要素を動作させるための命令等のデータとともに、事前にロードされ得る。他の実施例では、命令は、通信インターフェース55を介して、またはメモリフラッシュドライブ等の、装置50に接続される可搬型メモリ記憶デバイスからの命令を直接転送することによって、ロードされ得る。他の実施例では、メモリ記憶ユニット60は、外部ハードドライブ、またはコンテンツを提供するクラウドサービス等の外部ユニットであり得る。
前処理エンジン65は、正規化されたデータを生成するために、メモリ記憶ユニット60からのデータを前処理するためのものである。正規化されたデータは、続いて、逆運動学エンジン70による後続使用のために、メモリ記憶ユニット60内に記憶される。本実施例では、メモリ記憶ユニット60から読み出されたデータは、複数の関節位置を伴う、3次元人間骨格を表す未加工データであり得る。データは、姿勢推定エンジンを用いて、画像から生成され、関節位置毎の座標のデータセットを含み得る。例えば、データセットは、定義済みの参照点に基づいた、デカルト座標、または関節位置を定義するための角座標を含み得る。
未加工データの各関節位置が、肩、肘、手首、首等の実人間関節を表す、またはそれに近似し得ることが、本説明から利益を享受する当業者によって理解されるはずである。故に、隣接する関節位置間の線は、2つの関節間の骨を表し得る。前処理エンジン65は、テンプレート骨格と一致するように、各長さをスケーリングするために、関節位置間の長さまたは距離をスケーリングすることによって、未加工データを正規化するために使用され得る。前処理エンジンが距離を正規化する様式は、限定されず、テンプレート骨格に対して一致するように、距離の比率を調節することを伴い得る。実施例として、テンプレート骨格の肩と肘との間の距離が、肘と手首との間の距離とおおよそ同一である場合、前処理エンジン65は、実質的に同一比率であるように、未加工データ内の関節位置を修正し得る。
人間骨格上で遂行される、正規化プロセスの具体的な実施例として、付け根関節が選定され、各近傍関節までの距離が、テンプレート内の対応する骨の長さにスケーリングされることになる。付け根関節の選択は、特に限定されず、任意に選択され得る。いくつかの実施例では、骨盤が、選択され得、他の実施例では、首が選択され得る。各骨の方向は、変更されないままにされるが、スケーリングされた各関節の下流またはそこから離れた各従属関節は、骨を表す関節間の新しい距離に適合させるために、それに応じて移動される。本プロセスは、各関節が、テンプレートに対応する関節間の距離を有するように、再位置付けされるまで、四肢に向かって、骨格の下方へ持続する。本実施例内で議論される関節が、首関節等の人体内のいくつかの生理的関節を表し得る、骨格関節であることを理解されたい。さらに、上記に言及される骨は、骨格関節間の距離を表し、人体内の1つを上回る骨を表し得る。
前処理エンジン65によって使用される、テンプレート骨格は、特に限定されない。例えば、テンプレート骨格は、多数の人間対象から取得された平均骨格であり得る。本実施例では、テンプレート骨格は、T姿勢にあるが、しかしながら、他の実施例では、別の姿勢が、使用され得る。他の実施例では、メモリ記憶ユニット60は、未加工データ内の変動を考慮するために、異なるサイズを伴う、複数のテンプレート骨格を記憶し得る。例えば、未加工データは、人間の子供または大人の男性等、未加工データのタイプを規定する、識別子を含み得る。そのような実施例では、比率は、異なり得、前処理エンジン65は、対象に対して最も適切なテンプレート骨格を選択し得る。識別子を伴わない実施例では、前処理エンジンは、未加工データに基づいて、適切なテンプレートを自動的に選択し得る。
いくつかの実施例では、未加工データはまた、ある視点から対象の身体の後方に隠れた関節を表し得る、姿勢推定によって生成された、隠れた関節位置を含み得る。例えば、人間対象の側面プロファイルは、肩を表す、一方の可視である関節位置を提供し得る一方、他方の肩は、身体によって隠されたままである。そのような実施例では、未加工データは、関節位置が、可視であるか、または隠れているかどうかを示すために、関節位置毎にバイナリフラグを含み得る。故に、隠れた関節位置もまた、テンプレート骨格と一致するように、正規化され得、これは、正規化後に、隠れた位置を越えて、または隠れた位置内に延在し得るため、関節位置の状態を変化させる場合とそうではない場合がある。
図2Aおよび2Bを参照すると、前処理エンジン65の例示的適用が、図示される。図2Aは、通信インターフェース55において受信される未加工データからの人間骨格600の3次元描写を表し得る。図示されるように、骨格600は、人間骨格の一般的な比率から歪曲されたように見える。歪曲の原因は、特に関連せず、不完全な関節位置の推定または関節検出の失敗等、姿勢推定エンジン内で行われる近似化から結果として生じ得る。他の原因は、姿勢推定エンジンによって使用される、画像データに関連し得る。例えば、カメラの光学系が、歪曲された画像を提供し得る。いくつかの実施例では、正規化は、均一な骨格比率を提供するために遂行され得、逆運動学エンジン70によって同様の様式で取り扱われ得る。骨格600を正規化することを適用した後、図2Bは、未加工データの正規化された骨格650を図示する。示されるように、骨格650は、人間対象により類似した比率を有するように見える。
逆運動学エンジン70は、前処理エンジン65によって生成された、正規化されたデータにおける、関節に関する関節の回転の推測だけではなく、位置の任意の調節を行うためのものである。逆運動学エンジン70が関節の回転および位置を推測する様式は、特に限定されない。本実施例では、逆運動学エンジン70は、前処理エンジン65によって生成された、正規化されたデータに、ニューラルネットワークを適用する。特に、本実施例内で使用されるニューラルネットワークは、メモリ記憶ユニット60内に記憶された、履歴または時間的データを使用する。例えば、ニューラルネットワークは、再帰ニューラルネットワークであり得る。再帰ニューラルネットワークは、長短期記憶アーキテクチャまたはゲート付再帰ユニットアーキテクチャ等の種々のアーキテクチャを使用し得る。具体的な実施例として、ニューラルネットワークは、1,024個のユニットを伴う、4つの完全に接続された層の後に、512個のユニットを伴う、2つのゲート付再帰ユニット層を含み得、それぞれ、整流線形ユニットアクティブ化およびバッチ処理正規化を伴う。ニューラルネットワークの最終層は、骨格内の関節に関する回転を表す、変数の数と一致する、出力を提供し得る。本実施例では、各回転出力は、T姿勢に対する包括的回転変換を表し得る。他の実施例では、各回転出力は、骨格の定義済みのツリー構造に基づいて、親関節に対する包括的回転変換を表し得る。
異なる関節の自然な移動間の複雑な関連性を捕捉するために十分に深く、可能性として考えられる姿勢シーケンスの大空間を表すために十分なユニットを伴う、任意の再帰ニューラルネットワークが、使用され得ることが、当業者によって理解されるはずである。より多くのユニットが、層毎に加えられる場合、ネットワークは、より計算的に要求が多く、付加的なハードウェアが、実行を維持するために要求され得る。同様に、再帰ニューラルネットワークが、より多くの層を含む場合、算出するためにより多くの時間を使用するであろうし、所与の訓練データの有限セットを訓練することがより困難であり得る。しかしながら、より多くの再帰ユニットを使用することは、より豊富な時間的特徴が、活用されることを可能にするが、予測可能な結果を伴うモデルを生産する、収束的解決策を見出すことをより困難にし得る。
他の実施例では、再帰層を伴わないモデルが、同様に使用され得る。しかしながら、そのようなモデルのノイズに対するロバスト性が、減少され得る。例えば、過去のフレームからの骨格は、後続フレームの逆運動学算出内に含まれ得る。具体的な実施例として、5つの完全に接続された層を伴い、それぞれが、フレーム毎データを処理し、先のフレームからのデータを捕捉する、5つの完全に接続された後続層内にフィードする、時空間解析モデルが、使用され得る。
逆運動学エンジン70によって使用されるニューラルネットワークは、種々のタイプの訓練データを使用して、訓練され得る。例えば、訓練データは、TENSORFLOW(登録商標)等の訓練フレームワークを使用して、ADOBE MIXAMOから等、大規模アニメーションデータセットからの、既知の関節の回転を含み得る。他の実施例では、CAFFEまたはPYTORCHのようなツールもまた、モデルを訓練するために使用され得る。さらに、アニメーションデータは、モデルを訓練するために、XSENSEまたはVICONシステム等の適切な運動捕捉システムを用いて、捕捉され得る。加えて、Carnegie Melon University(CMU) Graphics Lab Motion Capture Dataset等の公開されている学術的ソースからのソースアニメーションデータが、使用されてもよい。本実施例では、訓練データはさらに、訓練データに加えられ得る、位置ノイズを含む。例えば、ガウスノイズが、ニューラルネットワークの訓練に先立って、訓練データに加えられ得る。他の実施例では、ノイズ分布が、統計値または履歴データから導出され得る。加えて、ノイズの物理的モデルもまた、カメラパラメータをモデル化し、予期される誤差分布を、姿勢を推測する方法の既知の挙動と組み合わせることによって、組み込まれ得る。さらに、ノイズはまた、ドロップアウトの形態で加えられ得、これは、失敗された検出およびオクルージョンをシミュレートするために、関節または関節の階層的チェーンをランダムにオクルードするためのものである。ノイズを訓練データに加えることによって、ニューラルネットワークが、マーカレス捕捉を介して、骨格を導出するために、画像に適用される、姿勢推定エンジンから取得されたデータ等、精密ではない場合がある、入力データ内の関節位置を取り扱う際、よりロバストになり得ることが、当業者によって理解されるはずである。
本実施例では、逆運動学エンジン70の結果が、関節位置の位置精度を判定するための表1と、正規化された骨格から、関節の回転を推測するために、異なるモデルを使用して、角度精度を判定するための表2とにおいて、下記に示される。第1の列では、関節の回転が、一連の数学的計算を実施することから推測される、古典的な逆運動学ソルバが使用される。第2の列では、任意のフィードバックまたは履歴データを伴わない、畳み込みニューラルネットワーク等のニューラルネットワークが、関節の位置および回転を推測するために使用される。第3の列では、上記に説明されたもの等の再帰ニューラルネットワークが、関節の位置および回転を推測するために使用される。第4の列は、関節の位置および回転を推測するために、スライディング時間ウインドウを伴う、時空間解析を使用する。
表1および表2に例証されるように、再帰ニューラルネットワークまたは時空間解析等の履歴データを検討するモデルを使用することは、ノイズを伴う検査データを取り扱うとき、最良性能を提供する。
図3を参照すると、コンピュータネットワークシステムの概略描写が、概して、100に示される。システム100が、純粋に例示的であることを理解されたく、様々なコンピュータネットワークシステムが想定されることが、当業者にとって明白であろう。システム100は、関節の位置および回転を推測するための装置50と、ネットワーク110によって接続される、複数の外部ソース20-1および20-2(総称的に、これらの外部ソースは、本明細書内では、「external source(外部ソース20)」と称され、集合的には、それらは、「external sources 20(外部ソース20)」と称され、本専門用語は、本説明内の他の場所においても使用される)とを含む。ネットワーク110は、特に限定されず、インターネット、イントラネットまたはローカルエリアネットワーク、携帯電話ネットワーク、もしくはこれらのタイプのネットワークのいずれかの組み合わせ等、任意のタイプのネットワークを含み得る。いくつかの実施例では、ネットワーク110はまた、ピアツーピアネットワークを含み得る。
本実施形態では、外部ソース20は、そこから関節の位置および回転が推測されることになる、未加工データを提供するために、ネットワーク110を経由して、装置50と通信するために使用される、任意のタイプのコンピューティングデバイスであり得る。例えば、外部ソース20-1は、パーソナルコンピュータであり得る。パーソナルコンピュータが、ノート型コンピュータ、可搬型電子デバイス、ゲームデバイス、モバイルコンピューティングデバイス、可搬型コンピューティングデバイス、タブレット型コンピューティングデバイス、携帯電話、スマートフォン、または同等物で代用され得ることが、本説明から利益を享受する当業者によって理解されるはずである。いくつかの実施例では、外部ソース20-2は、画像を捕捉し、姿勢推定エンジンを用いて、未加工データを生成するためのカメラであり得る。未加工データは、特に限定されず、複数の関節位置を有する、入力骨格であり得る。未加工データは、外部ソース20において受信または捕捉された、画像または映像から生成され得る。他の実施例では、外部ソース20が、その上で、コンテンツが作成され、それによって、未加工データが、コンテンツから自動的に生成される、パーソナルコンピュータであり得ることを、理解されたい。さらなる実施例では、骨格は、ユーザ入力から等、直接作成され得る。
本実施形態では、装置50は、外部ソース20によって提供される未加工データに基づいて、関節の位置および回転を推測するためのものである。本実施例では、外部ソース20は、アーティスト等のコンテンツジェネレータ、または画像捕捉デバイスであり得る。外部ソース20は、アニメーション化されることになる対象を提供し、装置50から推測された関節の位置および回転を受信し得る。いくつかの実施例では、装置50は、サードパーティデバイスであり得る、外部ソース20に、サービスとしての推測を提供する、サービスプロバイダと関連付けられ得る。推測は、次いで、現実的な移動を伴うアニメーションを生成するために使用され得る。故に、装置50は、そうでなければ、その運動が自然に見えるであろうように、骨格をアニメーション化するための努力に著しい時間を費やすであろう、アニメータによって、ツールとして使用され得る。
図4を参照すると、関節の位置および回転を推測するための装置50aの別の概略描写が、概して、示される。添え字「a」が続くことを除いて、装置50aの同様の構成要素が、装置50内のその構成要素を参照して、同様に描かれている。本実施例では、装置10aは、通信インターフェース55aと、メモリ記憶ユニット60aと、プロセッサ75aと、カメラシステム80aとを含む。本実施例では、プロセッサ75aは、前処理エンジン65aと、逆運動学エンジン70aとを含む。
本実施例では、メモリ記憶ユニット60aはまた、装置50aによって使用される種々のデータを記憶するために、データベースを維持し得る。例えば、メモリ記憶ユニット60aは、テンプレートデータベース400aと、モデルデータベース410aと、訓練データベース420aとを含み得る。加えて、メモリ記憶ユニットは、装置50aに一般的な機能性を提供するために、プロセッサ75aによって実行可能である、オペレーティングシステム430aを含み得る。メモリ記憶ユニット60aは、加えて、ドライバレベルならびに他のハードウェアドライブにおいて、入力を受信する、または出力を提供するための、種々のユーザインターフェース等、装置50aの他の構成要素、および周辺デバイスと通信するための、動作を遂行するための命令を記憶し得る。
本実施例では、テンプレートデータベース400aは、前処理エンジン65aによって使用するためのテンプレート骨格を記憶し得る。特に、テンプレートデータベース400aは、正準T姿勢にある骨格の関節位置を伴う、骨格を含み得る。加えて、テンプレートデータベース400aは、45度の角度で腕を下した状態のA姿勢にある骨格を含み得る。テンプレートデータベース400aは、腕を横に下した状態で立っている、自然な体勢にある骨格を含み得る。いくつかの実施例では、単一の正準テンプレートもまた、使用され得ること、または他の実施例では、具体的な標的とされる人間形態構造に対する結果を改良するために、テンプレートが、システムのユーザによって定義され得ることを、理解されたい。テンプレートデータベース400aはまた、テンプレートが、システムのユーザに緊密に適合するが、経時的に安定したままであるように、経時的に入力データから学習される、骨格テンプレートを含み得る。本場合では、本システムは、推測されている骨格の形態構造に適合される、逆運動学計算を促進するために、複数の人間の形態構造に対してロバストになる、および/または入力としてテンプレート骨格を受け取るように訓練され得る。
モデルデータベース410aは、逆運動学エンジン70aによって、関節の位置および回転の推測を遂行するために、ニューラルネットワークによって使用される、履歴データを記憶するためのものである。特に、モデルデータベース410aは、再帰ニューラルネットワークの次層内にフィードされることになる、各層において生成され得る、ユニットを記憶するためのものである。故に、動作中、生成された新しいユニットが、ニューラルネットワーク内にフィードバックされるためのものであるため、逆運動学エンジン70aが、モデルデータベース410aに対して読取および書込を常に行い得ることを、理解されたい。
訓練データベース420aは、逆運動学エンジン70aによって使用されるニューラルネットワークを訓練するための訓練データを記憶するためのものである。本実施例では、訓練データベース420aが、装置50a上に、ローカルで記憶されることを図示する。故に、訓練データベース420a内のデータは、ニューラルネットワークを訓練するために使用されることに先立って、修正され得る。例えば、訓練データベース420a内のデータは、ガウスノイズ等のデータに、ノイズを加えるために修正され得る。他の実施例では、ランダムオクルージョン等のノイズ、および骨格の回転、スケール、および平行移動のランダム増大が加えられ得る。本実施例は、ローカルで、訓練データを記憶するが、他の実施例は、通信インターフェース55aを介して、ニューラルネットワークの訓練の間、アクセスされ得る、ファイルサーバまたはクラウド内等、外部に訓練データを記憶し得る。
カメラシステム80aは、画像または映像の形態で、データを収集するためのものである。カメラシステム80aは、特に限定されず、カメラシステム80aがデータを収集する様式も、限定されない。例えば、カメラシステム80aは、光信号を検出するために、相補型金属酸化膜半導体を有する、アクティブピクセルセンサ上に光を集束させるための種々の光学的構成要素を含み得る。他の実施例では、光学系が、電荷結合素子上に光を集束させるために使用され得る。
本実施例では、カメラシステム80aはさらに、姿勢推定エンジン85aを含む。姿勢推定エンジン85aは、特に限定されず、カメラシステム80aによって捕捉される画像に基づいて、3次元骨格を生成するために使用され得る。故に、カメラシステム80aは、処理のために、プロセッサ75aに、画像データおよび未加工データを提供し得る。姿勢推定エンジン85aが骨格を生成する様式は、限定されず、画像処理技法を使用する、マーカレス姿勢推定プロセスを伴い得る。代替として、姿勢推定エンジン85aは、未加工データを生成するために、周辺デバイスまたはマーカと相互作用し得る。いくつかの実施例では、姿勢推定エンジン85aが、一般的なカメラユニットを含み得る、カメラシステム80aから分離され得ることを、理解されたい。そのような実施例では、姿勢推定エンジン85aは、別個の独立型ユニットまたはプロセッサ75aの一部であり得る。さらなる実施例では、姿勢推定エンジン85aは、ウェブサービス等の画像処理に特化された別個のシステムの一部であり得る。姿勢推定エンジンによって生産される骨格データが、異なる数の関節または追跡された身体の目印、データの異なる順序付けを含む、異なるフォーマットを有し得、可視性情報を明示的に含む場合とそうではない場合があり、異なるスケール(例えば、ピクセル座標または正規化されたユニット)内であり得、異なるビット深度(例えば、8ビット、16ビット)であり、関節位置を2次元または3次元座標内に提供し得、他の補助的なデータ(追跡ID、境界ボックス、セグメント化マスク等)を含み得ることが、本説明から利益を享受する当業者によって理解されるはずである。
図5を参照すると、関節の位置および関節の回転を推測する例示的方法のフローチャートが、概して、500に示される。方法500の解説を支援するために、方法500が、装置50aによって実施され得ると仮定されたい。実際に、方法500は、装置50aが構成され得る、1つの方法であり得る。さらに、方法500に関する以下の議論は、装置50aおよびその構成要素のさらなる理解につながり得る。加えて、方法500が、示されるような正確なシーケンスで実施されなくてもよく、種々のブロックが、順にではなく、並行して、または全く異なるシーケンスで実施され得ることが強調される。
ブロック510を起点として、装置50aは、通信インターフェース55aを介して、外部ソースからの未加工データを受信する。本実施例では、未加工データは、複数の関節を有する骨格を含み得る。例えば、装置において受信される骨格は、対象人物、動物、機械、またはアニメーションのための他のオブジェクトを表し得る。いったん装置50aにおいて受信されると、未加工データは、ブロック520において、メモリ記憶ユニット60a内に記憶されることになる。
ブロック530は、前処理エンジン65aを用いて正規化されたデータを生成することを伴う。本実施例では、正規化されたデータは、複数の関節位置を伴って、3次元人間骨格を表す未加工データから生成され得る。例えば、データセットは、定義済みの参照点に基づいた、デカルト座標、または関節位置を定義するための角座標を含み得る。未加工データは、ノイズによって、または画像データの画像処理によって引き起こされる歪曲を含み得るため、未加工データは、より現実的な骨格、および/またはテンプレート骨格に基づいた、人間等の一貫したスケールの対象を提供するために正規化され得る。具体的な実施例として、カメラシステムによって捕捉される画像のマーカレス姿勢推定は、一方の腕が、他方の腕よりも長い、骨格を生成し得る。これは、画像処理欠陥によっても同様に引き起こされるため、前処理エンジン65aは、両腕が実質的に同様の長さにある、正規化されたデータを生成するために、未加工データを前処理し得る。他の実施例では、前処理エンジン65aは、対象が人間であるとき、人間の比率が取得されるように、骨を表す関節間の具体的なセグメントの長さを正規化し得る。正規化されたデータは、続いて、後続使用のために、ブロック540において、メモリ記憶ユニット60a内に記憶される。
次いで、ブロック550は、関節の回転を推測するために、ニューラルネットワークを正規化されたデータに適用する、逆運動学エンジン70aを備える。いくつかの実施例では、逆運動学エンジン70aもまた、正規化されたデータ内の関節位置の調節を行う等、関節位置を推測するために使用され得る。逆運動学エンジン70aによって使用される、具体的なニューラルネットワークは、特に限定されず、後続の反復または層内にフィードされることになる、履歴データを使用する、再帰ニューラルネットワークであり得る。さらに、ニューラルネットワークの訓練は、特に限定されず、加えられた位置ノイズを伴う、訓練データセットを使用することを伴い得る。
上記に提供される、種々の実施例の特徴および側面が、本開示の範囲内にある、さらなる実施例内に組み合わせられ得ることを認識されたい。

Claims (24)

  1. 装置であって、
    外部ソースから未加工データを受信するための通信インターフェースであって、前記未加工データは、入力骨格の第1の関節位置および第2の関節位置を含む、通信インターフェースと、
    前記未加工データを記憶するためのメモリ記憶ユニットと、
    前記未加工データに基づいてテンプレート骨格を選択することと、前記テンプレート骨格と一致するように前記第1の関節位置および前記第2の関節位置を正規化することによって、前記未加工データから正規化されたデータを生成することとを行うための前処理エンジンであって、前記正規化されたデータは、前記メモリ記憶ユニット内に記憶されることになる、前処理エンジンと、
    節の回転を推測するために、履歴データを使用するニューラルネットワークを前記正規化されたデータに適用するための逆運動学エンジンであって、前記ニューラルネットワークを訓練するために使用される訓練データは、位置ノイズを含む、逆運動学エンジンと
    を備える、装置。
  2. 前記前処理エンジンは、前記入力骨格の前記第1の関節位置と前記第2の関節位置との間の長さを正規化するためのものである、請求項1に記載の装置。
  3. 前記テンプレート骨格は、T姿勢をとる、請求項に記載の装置。
  4. 前記通信インターフェースに接続される姿勢推定エンジンをさらに備え、前記姿勢推定エンジンは、画像データから前記未加工データを生成するためのものである、請求項1~のいずれか1項に記載の装置。
  5. 前記画像データを捕捉するためのカメラシステムをさらに備える、請求項に記載の装置。
  6. 前記位置ノイズは、ガウスノイズである、請求項1~のいずれか1項に記載の装置。
  7. 前記ニューラルネットワークは、前記メモリ記憶ユニット内に、前記履歴データを記憶するためのものである、請求項1~のいずれか1項に記載の装置。
  8. 前記ニューラルネットワークは、再帰ニューラルネットワークである、請求項に記載の装置。
  9. 前記再帰ニューラルネットワークは、長短期メモリアーキテクチャを使用する、請求項に記載の装置。
  10. 前記再帰ニューラルネットワークは、ゲート付再帰ユニットアーキテクチャを使用する、請求項に記載の装置。
  11. 前記逆運動学エンジンによって推測された前記関節の回転を受信することと、前記関節の回転に基づいてアニメーションを生成することとを行うためのアニメーションエンジンをさらに備える、請求項1~10のいずれか1項に記載の装置。
  12. 方法であって、
    通信インターフェースを介して、外部ソースから未加工データを受信することであって、前記未加工データは、入力骨格の第1の関節位置および第2の関節位置を含む、ことと、
    前記未加工データをメモリ記憶ユニット内に記憶することと、
    前記未加工データに基づいてテンプレート骨格を選択することと、
    前記テンプレート骨格と一致するように前記第1の関節位置および前記第2の関節位置を正規化することによって、前記未加工データから正規化されたデータを生成することと、
    前記正規化されたデータを前記メモリ記憶ユニット内に記憶することと、
    節の回転を推測するために、逆運動学エンジンを用いて、履歴データを使用するニューラルネットワークを前記正規化されたデータに適用することであって、前記ニューラルネットワークを訓練するために使用される訓練データは、位置ノイズを含む、ことと
    を含む、方法。
  13. 前記正規化されたデータを生成することは、前記入力骨格の前記第1の関節位置と前記第2の関節位置との間の長さを正規化することを含む、請求項12に記載の方法。
  14. 前記テンプレート骨格は、T姿勢をとる、請求項12に記載の方法。
  15. カメラシステムを用いて、画像データを捕捉することと、姿勢推定エンジンを用いて、前記画像データから前記未加工データを生成することとをさらに含む、請求項12~14のいずれか1項に記載の方法。
  16. 前記位置ノイズをサンプルデータに加えることによって、前記訓練データを生成することをさらに含む、請求項12~14のいずれか1項に記載の方法。
  17. 前記メモリ記憶ユニット内に、前記履歴データを記憶することをさらに含む、請求項12~14のいずれか1項に記載の方法。
  18. 前記関節の回転に基づいてアニメーションを生成することをさらに含む、請求項12~17のいずれか1項に記載の方法。
  19. コードを用いてエンコードされる非一過性コンピュータ可読媒体であって、前記コードは、
    通信インターフェースを介して、外部ソースから未加工データを受信することであって、前記未加工データは、入力骨格の第1の関節位置および第2の関節位置を含む、ことと、
    前記未加工データをメモリ記憶ユニット内に記憶することと、
    前記未加工データに基づいてテンプレート骨格を選択することと、
    前記テンプレート骨格と一致するように前記第1の関節位置および前記第2の関節位置を正規化することによって、前記未加工データから正規化されたデータを生成することと、
    前記正規化されたデータを前記メモリ記憶ユニット内に記憶することと、
    節の回転を推測するために、逆運動学エンジンを用いて、履歴データを使用するニューラルネットワークを前記正規化されたデータに適用することであって、前記ニューラルネットワークを訓練するために使用される訓練データは、位置ノイズを含む、ことと
    を行うようにプロセッサに指示するためのものである、非一過性コンピュータ可読媒体。
  20. 前記正規化されたデータを生成するように前記プロセッサに指示するための前記コードは、(i)前記入力骨格の前記第1の関節位置と前記第2の関節位置との間の長さを正規化するように、前記プロセッサにさらに指示する、請求項19に記載の非一過性コンピュータ可読媒体。
  21. 前記コードは、カメラシステムを用いて、画像データを捕捉することと、姿勢推定エンジンを用いて、前記画像データから前記未加工データを生成することとを行うように、前記プロセッサにさらに指示する、請求項19~20のいずれか1項に記載の非一過性コンピュータ可読媒体。
  22. 前記プロセッサに指示するための前記コードは、前記訓練データを生成するように、前記プロセッサにさらに指示する、請求項19~20のいずれか1項に記載の非一過性コンピュータ可読媒体。
  23. 前記プロセッサに指示するための前記コードは、前記位置ノイズをサンプルデータに加えるように、前記プロセッサにさらに指示する、請求項22に記載の非一過性コンピュータ可読媒体。
  24. 前記プロセッサに指示するための前記コードは、前記関節の回転に基づいてアニメーションを生成するように、前記プロセッサにさらに指示する、請求項19~23のいずれか1項に記載の非一過性コンピュータ可読媒体。
JP2022556033A 2020-03-20 2020-03-20 逆運動学に基づいた関節の回転の推測 Active JP7499346B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2020/052601 WO2021186223A1 (en) 2020-03-20 2020-03-20 Joint rotation inferences based on inverse kinematics

Publications (2)

Publication Number Publication Date
JP2023527627A JP2023527627A (ja) 2023-06-30
JP7499346B2 true JP7499346B2 (ja) 2024-06-13

Family

ID=77771677

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022556033A Active JP7499346B2 (ja) 2020-03-20 2020-03-20 逆運動学に基づいた関節の回転の推測

Country Status (7)

Country Link
US (1) US20230154091A1 (ja)
EP (1) EP4121945A4 (ja)
JP (1) JP7499346B2 (ja)
KR (1) KR20220156062A (ja)
AU (1) AU2020436768B2 (ja)
CA (1) CA3172248A1 (ja)
WO (1) WO2021186223A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230196817A1 (en) * 2021-12-16 2023-06-22 Adobe Inc. Generating segmentation masks for objects in digital videos using pose tracking data
JP7485154B1 (ja) 2023-05-19 2024-05-16 トヨタ自動車株式会社 映像処理システム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014522035A (ja) 2011-07-27 2014-08-28 サムスン エレクトロニクス カンパニー リミテッド オブジェクト姿勢検索装置及び方法
US20180020978A1 (en) 2016-07-25 2018-01-25 Patrick Kaifosh System and method for measuring the movements of articulated rigid bodies
JP2018520444A (ja) 2015-09-21 2018-07-26 三菱電機株式会社 顔の位置合わせのための方法
JP2019040421A (ja) 2017-08-25 2019-03-14 株式会社東芝 検出システムおよび検出方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2399243A4 (en) * 2009-02-17 2013-07-24 Omek Interactive Ltd METHOD AND SYSTEM FOR RECOGNIZING GESTURE
US9939887B2 (en) * 2015-03-09 2018-04-10 Ventana 3D, Llc Avatar control system
US10388053B1 (en) * 2015-03-27 2019-08-20 Electronic Arts Inc. System for seamless animation transition
CN111814871B (zh) * 2020-06-13 2024-02-09 浙江大学 一种基于可靠权重最优传输的图像分类方法
US20230042756A1 (en) * 2021-10-09 2023-02-09 Southeast University Autonomous mobile grabbing method for mechanical arm based on visual-haptic fusion under complex illumination condition

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014522035A (ja) 2011-07-27 2014-08-28 サムスン エレクトロニクス カンパニー リミテッド オブジェクト姿勢検索装置及び方法
JP2018520444A (ja) 2015-09-21 2018-07-26 三菱電機株式会社 顔の位置合わせのための方法
US20180020978A1 (en) 2016-07-25 2018-01-25 Patrick Kaifosh System and method for measuring the movements of articulated rigid bodies
JP2019040421A (ja) 2017-08-25 2019-03-14 株式会社東芝 検出システムおよび検出方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Ben Kenwright,Neural network in combination with a differential evolutionary training algorithm for addressing ambiguous articulated inverse kinematic problems,SIGGRAPH Asia 2018 Technical Briefs,Article No.: 3,2018年12月04日,Pages 1-4,https://dl.acm.org/doi/10.1145/3283254.3283262
Masato Ito, Jun Tani,On-line imitative interaction with a humanoid robot using a mirror neuron model,IEEE International Conference on Robotics and Automation 2004,2004年04月26日,https://ieeexplore.ieee.org/document/1307967
水野 克哉 外,3Dキャラクタアニメーション作成支援のための人物動作推定システム,情報処理学会研究報告 Vol.2008 No.80,2008年08月15日

Also Published As

Publication number Publication date
US20230154091A1 (en) 2023-05-18
CA3172248A1 (en) 2021-09-23
WO2021186223A1 (en) 2021-09-23
KR20220156062A (ko) 2022-11-24
AU2020436768A1 (en) 2022-10-27
EP4121945A1 (en) 2023-01-25
JP2023527627A (ja) 2023-06-30
EP4121945A4 (en) 2023-11-22
AU2020436768B2 (en) 2024-02-22

Similar Documents

Publication Publication Date Title
Zheng et al. Hybridfusion: Real-time performance capture using a single depth sensor and sparse imus
US11514646B2 (en) System, device, and method of generating a reduced-size volumetric dataset
CN111402290B (zh) 一种基于骨骼关键点的动作还原方法以及装置
JP5525407B2 (ja) 動作モデル学習装置、3次元姿勢推定装置、動作モデル学習方法、3次元姿勢推定方法およびプログラム
KR20180100476A (ko) 이미지 및 뎁스 데이터를 사용하여 3차원(3d) 인간 얼굴 모델을 발생시키는 가상 현실 기반 장치 및 방법
CN108369643A (zh) 用于3d手部骨架跟踪的方法和***
JP5555207B2 (ja) 3次元姿勢推定装置、3次元姿勢推定方法、及びプログラム
US12033261B2 (en) Contact-aware retargeting of motion
CN115244495A (zh) 针对虚拟环境运动的实时式样
JP7499346B2 (ja) 逆運動学に基づいた関節の回転の推測
JP2014085933A (ja) 3次元姿勢推定装置、3次元姿勢推定方法、及びプログラム
US20210366146A1 (en) Human pose estimation using neural networks and kinematic structure
Jatesiktat et al. Personalized markerless upper-body tracking with a depth camera and wrist-worn inertial measurement units
AU2020474614B2 (en) Three-dimensional mesh generator based on two-dimensional image
Biswas et al. Physically plausible 3D human-scene reconstruction from monocular RGB image using an adversarial learning approach
Xu et al. Human body reshaping and its application using multiple RGB-D sensors
JP2022018333A (ja) プログラム、情報処理方法、情報処理装置及びモデル生成方法
US20240135581A1 (en) Three dimensional hand pose estimator
WO2023185241A1 (zh) 数据处理方法、装置、设备以及介质
Cannavò et al. A Framework for Animating Customized Avatars from Monocular Videos in Virtual Try-On Applications
JP2020134970A (ja) 物体の部分位置推定プログラム、物体の部分位置推定用ニューラルネットワーク構造、物体の部分位置推定方法、および物体の部分位置推定装置
CN114333051A (zh) 图像处理方法、虚拟形象处理方法、图像处理***及设备
Hendry Markerless pose tracking of a human subject.

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230314

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230314

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240131

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240318

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240510

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240603

R150 Certificate of patent or registration of utility model

Ref document number: 7499346

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150