JP2024512344A - 反復的改良を通した効率的なポーズ推定 - Google Patents

反復的改良を通した効率的なポーズ推定 Download PDF

Info

Publication number
JP2024512344A
JP2024512344A JP2023553708A JP2023553708A JP2024512344A JP 2024512344 A JP2024512344 A JP 2024512344A JP 2023553708 A JP2023553708 A JP 2023553708A JP 2023553708 A JP2023553708 A JP 2023553708A JP 2024512344 A JP2024512344 A JP 2024512344A
Authority
JP
Japan
Prior art keywords
machine learning
processing
learning model
generate
feature map
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.)
Pending
Application number
JP2023553708A
Other languages
English (en)
Inventor
ヤン、ジョン
バルガト、ヤシュ・サンジェイ
ポリクリ、ファティ・ムラート
チャン、シミュン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2024512344A publication Critical patent/JP2024512344A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/107Static hand or arm
    • G06V40/11Hand-related biometrics; Hand pose recognition
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Medical Informatics (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Traffic Control Systems (AREA)

Abstract

本開示のいくつかの態様は、特徴マップを生成するために、機械学習モデルの特徴抽出段階で、入力データを処理することと、拡張された特徴マップを生成するために、特徴マップにアテンションマップを適用することと、改良された特徴マップを生成するために、機械学習モデルの改良段階で、拡張された特徴マップを処理することと、多次元タスク出力データを生成するために、機械学習モデルの第1の回帰段階で、改良された特徴マップを処理することと、更新されたアテンションマップを生成するために、機械学習モデルのアテンション段階で、改良された特徴データを処理することと、を含む方法を提供する。【選択図】図1

Description

優先権の主張
関連出願の相互参照
[0001]本出願は、その内容全体が参照により本明細書に組み込まれる、2021年3月16日に出願された米国特許出願第17/203,607号の優先権を主張する。
[0002]本開示の態様は機械学習に関し、特に、機械学習モデルを使用したポーズ推定(pose estimation)に関する。
序論
[0003]機械学習は、概して、アプリオリに知られるトレーニfングデータのセットへの一般化された適合を表す、トレーニングされたモデルを作り出すプロセス(たとえば、人工ニューラルネットワーク)である。トレーニングされたモデルを新しいデータに適用することは、推論を作り出すことを可能にし、これは、新しいデータへのインサイトを得るために使用され得る。
[0004](たとえば、人間の身体部分の)ポーズ推定は、たいていの対話型拡張現実および仮想現実(まとめて「エクステンデッドリアリティ」)システムの重要な構成要素である。エクステンデッドリアリティ環境における物体との手ベースの対話では、3次元世界座標(ならびに画像平面座標)における手の関節の位置の高度に正確な推定値を取得することが重要である。
[0005]残念ながら、多くの最先端のポーズ推定モデルは、大規模および複雑なモデルアーキテクチャを通して高い正確さを達成し、これは、かなりの算出コストを招く。したがって、そのようなモデルは、概して、モバイルデバイスのような比較的より低い電力のコンピューティングデバイスにとって好適でなく、それらのデバイスは皮肉なことに、能力が最も有用であり得るデバイスである。
[0006]したがって、ポーズ推定のための改善されたモデルアーキテクチャが必要とされる。
[0007]いくつかの態様は、特徴マップを生成するために、機械学習モデルの特徴抽出段階で、入力データを処理することと、拡張された特徴マップ(augmented feature map)を生成するために、特徴マップにアテンションマップ(attention map)を適用することと、改良された特徴マップ(refined feature map)を生成するために、機械学習モデルの改良(refinement)段階で、拡張された特徴マップを処理することと、多次元タスク出力データを生成するために、機械学習モデルの第1の回帰段階で、改良された特徴マップを処理することと、更新されたアテンションマップを生成するために、機械学習モデルのアテンション段階で、改良された特徴データを処理することと、を備える方法を提供する。
[0008]他の態様は、機械学習モデルでトレーニングデータを処理すること、ここにおいて、機械学習モデルは、特徴マップを生成するように構成された特徴抽出段階と、特徴マップおよびアテンションマップに基づいて、拡張された特徴マップを処理することと、改良された特徴マップを生成することとを行うように構成された改良段階と、改良された特徴マップを処理することと、更新されたアテンションマップを生成することとを行うように構成されたアテンション段階と、多次元タスク出力データを生成するために、改良された特徴マップを処理することを行うように構成された第1の回帰段階と、を備える、と、トレーニング損失関数に基づいて、トレーニング損失を決定すること、ここにおいて、トレーニング損失関数は、不確実性損失成分と、タスク損失成分とを備える、と、トレーニング損失に基づいて、機械学習モデルを更新することと、を備える、機械学習モデルをトレーニングする方法を提供する。
[0009]他の態様は、上述の方法ならびに本明細書で説明される方法を実施するように構成された処理システムと、処理システムの1つまたは複数のプロセッサによって実行されたとき、処理システムに上述の方法ならびに本明細書で説明される方法を実施させる命令を備える、非一時的コンピュータ可読媒体と、上述の方法ならびに本明細書でさらに説明される方法を実施するためのコードを備えるコンピュータ可読記憶媒体上で実施されたコンピュータプログラム製品と、上述の方法ならびに本明細書でさらに説明される方法を実施するための手段を備える処理システムと、を提供する。
[0010]以下の説明および関連する図面は、1つまたは複数の態様のいくつかの例示的な特徴を詳細に記載する。
[0011]添付の図は、1つまたは複数の態様のいくつかの態様を示し、したがって、本開示の範囲を限定するものと見なされるべきでない。
[0012]例示的なポーズ推定モデルアーキテクチャを示す図。 [0013]反復的バックボーンネットワークの一例を示す図。 [0014]漸進的トレーニングアルゴリズムの一例を示す図。 [0015]図1および図2に関して説明されるモデルアーキテクチャを用いてなど、ポーズ予測を実施するための例示的な方法を示す図。 [0016]図1および図2に関して説明されるような、ポーズ予測モデルアーキテクチャをトレーニングするための例示的な方法を示す図。 [0017]本明細書で説明される方法を実施するように構成され得る例示的な処理システムを示す図。
[0018]理解を容易にするために、可能な場合、図面に共通である同一の要素を指定するために同一の参照番号が使用されている。一態様の要素および特徴が、さらなる具陳なしに他の態様に有益に組み込まれ得ることが企図される。
[0019]本開示の態様は、機械学習モデルを使用してポーズ推定を実施するための装置、方法、処理システム、および非一時的コンピュータ可読媒体を提供する。特に、本明細書で説明される態様は、2次元入力画像に基づいて、3次元空間における身体要素(たとえば、手)ポーズを効率的に推定するための、機械学習モデルアーキテクチャに関する。
[0020]本明細書で説明されるポーズ推定モデルアーキテクチャは、概して、反復的バックボーンネットワークと、ポーズ予測器と、不確実性推定器と、判定ゲーティング関数とを含み得る。有益には、これらのモデルアーキテクチャは、判定ゲーティング関数がループを終了させるまで、反復的バックボーンネットワークの改良モジュールおよびアテンションマップ生成器の再帰的反復にわたって予測を連続的に改良する。
[0021]本明細書で説明されるポーズ推定モデルアーキテクチャは、さらに、改良モジュールを通して、各反復について異なるバッチ正規化層(batch normalized layer)を使用し得、これは、有益には、トレーニング中の勾配を安定させ、アテンションマップ生成器によって引き起こされるバッチ正規化層における統計的混乱を緩和する。
[0022]本明細書で説明されるポーズ推定モデルアーキテクチャのゲーティング関数は、概して、目的関数を介して個別のゲーティング(discrete gating)を判定するために、ネットワーク自体の推定値(たとえば、不確実性)の信頼性尺度を考慮する。たとえば、ゲーティング関数は、反復的バックボーンネットワークをいつ終了すべきかを決定するために、多次元(たとえば、2次元および3次元)キーポイント予測など、モデル推論の不確実性を推定し得る。
[0023]最後に、本明細書で説明される態様は、より多くのサンプルに、より少ない反復の後に反復的バックボーンネットワークを終了させることによって、推論効率を改善するポーズ推定モデルアーキテクチャについての漸進的トレーニング技法に関する。
[0024]したがって、本明細書で説明されるポーズ推定モデルアーキテクチャは、算出コストとメモリ使用とに関して効率的な推論を生成し、これは、有益には、そのようなモデルアーキテクチャが、モバイルデバイス、常時オンデバイス、モノのインターネットデバイス、エッジ処理デバイスなど、より広範囲のデバイスに展開されることを可能にする。したがって、本明細書で説明される反復的ポーズ推定モデルアーキテクチャは、上記で説明されたような、従来の手法の短所に対する技術的解決策を提供する。
例示的なポーズ推定モデルアーキテクチャ
[0025]図1は、例示的なポーズ推定モデルアーキテクチャ100を示す。
[0026]概して、モデルアーキテクチャ100は、モジュラーネットワークを示し、ここにおいて、モデルパラメータが、適応空間スコーピングを通したより正確な予測のために反復的に活用され得る。詳細には、信頼性のあるポーズ予測を生成するために、必要な量の複雑さのみを使用するためのモデルを可能にするゲートルーピング機構(gated looping mechanism)によって、モデルアーキテクチャ100の適応性質が提供される。
[0027]図示のように、モデルアーキテクチャ100は、反復的バックボーンネットワーク104からなり、反復的バックボーンネットワーク104自体は、特徴抽出器106と、改良モジュール108と、アテンションマップ生成器110とを備える。モデルアーキテクチャ100は、ポーズ予測器112をさらに含み、ポーズ予測器112は、この例では、手モデル118を含むが、他の例では、人間の身体の骨と関節とを含む、完全な人間の身体骨格モデルを含む、他の身体要素モデルを含み得る。モデルアーキテクチャは、不確実性推定器124と、判定ゲーティング関数128とをさらに含み、これらは、反復的バックボーンネットワーク106内のルーピングを制御するように構成され、したがって、モデルアーキテクチャ100の適応スコーピング態様を可能にする。
[0028]図示された例では、手の単眼画像が、入力データ102として特徴抽出器106に提供され、特徴抽出器106は、入力データに基づく特徴を生成し、それらは、次いで、改良モジュール108に提供される。改良モジュール108の出力は、次いで、(1)ポーズ予測器112、(2)不確実性推定器124、および(3)アテンションマップ生成器110に提供される。図示された例では、改良モジュール108の出力は、あらかじめ定義された不確実性しきい値と比較され得る、ゲーティング関数128の判定の出力に基づいて、アテンションマップ生成器110に提供されることに留意されたい。いくつかの場合には、あらかじめ定義された不確実性しきい値は、チューニングされるべきハイパーパラメータであり、ここにおいて、このしきい値についての異なる値は、異なる正確さ対効率のトレードオフを与える。したがって、不確実性推定器124およびゲーティング関数128は、概して、条件が満たされるまで、改良モジュール108およびアテンションマップ生成器110のルーピングを制御し、次いで、出力120および/または122が、モデルアーキテクチャ100の出力として提供される。条件は、たとえば、ゲーティングしきい値が満たされていること、またはループ限度が到達されていることであり得る。
[0029]次に、モデルアーキテクチャ100の上述の構成要素の各々が、より詳細に説明される。
反復的バックボーンネットワーク
[0030]図示された例では、反復的バックボーンネットワーク104は、再帰的推論を実施するように構成された残差ネットワークであり、これは、概して、ネットワークパラメータの容量を活用するために、下位レベル特徴の改良のための上位レベル特徴の使用を可能にする。言い換えれば、反復的バックボーンネットワーク104は、低いデフォルト複雑さを有し、これは、(たとえば、各ループにおける)各再帰的使用において増加され得る。これは、有益には、より小さいモデルサイズ(たとえば、より小さいニューラルネットワーク)が、より複雑なモデルと同様の予測正確さを有することを可能にし、これは、メモリ要件を低減し、より多種多様なデバイスへの実装を可能にする。
[0031]特徴抽出器106は、概して、入力データ102の低レベル画像特徴を符号化するように構成される。いくつかの場合には、特徴抽出器106は、畳み込みニューラルネットワークモデルなど、ニューラルネットワークモデル(またはそれの一部分)によって実装され得る。ニューラルネットワークモデルの特徴抽出段階の一例が示され、図2に関してより詳細に説明される。
[0032]特徴抽出器106は、改良モジュール108およびアテンションマップ生成器110と同様に、再帰的に動作されないので、その特徴符号化(feature encoding)は、特徴マップの重いダウンサンプリングを組み込むように構成され得、したがって、それらの再帰的算出はあまりコストがかからない。たとえば、特徴抽出器106は、改良モジュール108およびアテンションマップ生成器110を通した反復をより効率的にするために、画像入力(たとえば、102)の空間次元を、たとえば、224×224ピクセルから28×28ピクセルに低減するように構成され得る。これは一例にすぎず、概して、入力サイズおよびダウンサイジング比は、必要に応じて構成され得る。
[0033]推論中に、特徴抽出器106からの出力は、反復的バックボーンネットワーク104の他の態様の再帰的ループのために何度も生成されないように、メモリ(図示せず)に記憶され得る。これは、モデルアーキテクチャ100の算出効率をさらに改善する。
[0034]改良モジュール108は、概して、再帰的に「ループされる」ように構成され、したがって、あらゆる反復において、アテンションマップ生成器110によって生成されたアテンション拡張された特徴マップが、前のループの予測を改良するために使用され得る。特に、このアテンション拡張は、あらゆるループ反復における入力特徴マップの分布を変更し得る。したがって、図2に示されているように、アテンション拡張された入力特徴マップの統計値シフトを考慮するために、あらゆる反復において別個のバッチ正規化層が使用され得る。
[0035]特に、図2は、特徴抽出器202と、改良モジュール204と、アテンションマップ生成器206とを含む、反復的バックボーンネットワーク200の一例を示す。l(英字のエル)個のバッチ正規化層(BN1...BNl)があり、ここで、lは、反復的バックボーンネットワーク200内で可能にされるループの構成可能な数であることに留意されたい。言い換えれば、算出効率について、過剰なルーピングおよび不要なレイテンシを防ぐために、ループを、4つのループなど、構成可能な数に制限することが望ましいことがある。
[0036]図1に戻ると、アテンションマップ生成器110は、いくつかの例では、2の、要素ごとの乗算についての特徴マップの数と同じ数のアテンションマップを出力するアップスケールデコーダとして実装され得る。いくつかの場合には、アテンションマップ生成器110によって生成されたアテンションマップは、概して、[0、1]の範囲内の値を含み得、それらは、次いで、「アテンション」機構を可能にするために、改良モジュール108によって出力された特徴マップに(要素ごとに)適用され得る。
[0037]いくつかの態様では、算出コストを著しく増加させることなしに、改良モジュール108の出力ベクトルを効果的にアップスケールするために、デコーダは、ピクセルシャッフル層に対して構成され得、これは、チャネル特徴を空間特徴にすることによって算出コストを低下させる。概して、アップスケールすることは多くの方法で行われ得、数例を挙げると、二重線形補間(bilinear interpolation)、逆畳み込み(deconvolution)、およびピクセルシャッフル動作を含む。ピクセルシャフルすることは、有益には、他の代替形態よりも多くの情報を保存する。
ポーズ予測器
[0038]概して、ポーズ予測器112は、反復的バックボーンネットワーク104によって提供された入力特徴マップに基づいて、3次元および/または2次元ポーズ予測(または推定値)を生成するように構成される。
[0039]図示の例の場合のように、ポーズ予測器112は、ニューラルネットワークモデルの1つまたは複数の全結合(FC(fully-connected))層(たとえば、層114)を含み得る。そのような例では、ポーズ予測器112の全結合層114は、手モデル118への入力のために使用される多次元出力116を生成する。全結合層114は、出力が、カテゴリー値の代わりに回帰値(regression values)であるので、いくつかの場合には、回帰段階と呼ばれることがある。
[0040]この例では、多次元出力116は、回転行列Rと、変換(translation)tと、スケーリングファクタsと、ポーズθと、形状βとを含む、複数のパラメータを含む。概して、ポーズθおよび形状βパラメータは、手モデル118を用いた3次元ポーズ予測を生成するために使用され得、これは、この例では、次いで、R、t、およびsパラメータを使用して2次元平面に投影され得る。この例では、R、t、およびsは、入力データをキャプチャするカメラの外部(extrinsic)パラメータと呼ばれることがある。
[0041]一例では、手モデル118は、J(θ,β)=Rθ(J(β))に従って3次元手メッシュ出力を制御するために、θおよびβについてのパラメータとして入力低次元ベクトルをとるように構成されたMANO手メッシュ変形モデルであり、ここで、Jは、身体要素関節位置(body element positions)を予測するための関数である。たとえば、手における21個の関節のロケーション、この例では、J(β)は、手の21個の関節の各々について対応する3次元座標をもつ最終手モデルを取得するために、Rθとして示されるポーズθに基づいて、グローバルに回転され得る。他の例では、手モデル118は、代替の身体要素モデル、さらには完全な骨格モデルと置き換えられ得ることに留意されたい。
[0042]一例では、クロップされた手画像が、データ入力x(102)として提供され、特徴抽出器108の出力F(x)が、改良モジュールR(108)に、各再帰的反復(またはループ)l∈{1,2,...,lmax}において、アテンションマップ生成器110によって生成された、アテンションマップMlとともに提供される。いくつかの例では、クロップされた手画像は、手検出器モデル、画像セグメンテーションモデルなどによって生成され得る。
[0043]ポーズ予測器は、それぞれ、l=0およびl>0であるとき、R(F(x))およびR(F(x),Ml)を入力としてとり、回転行列R∈SO(3)、変換
Figure 2024512344000002
および、スケーリングファクタ
Figure 2024512344000003
を、それのポーズθおよび形状βとともに予測する。
Figure 2024512344000004
ここで、Ψpose(・)は、2つの全結合層動作を表す。関節J(θ、β)の3次元ロケーションが、手モデル118によって定義され、検出されたキーポイントが、次いで、式1のR、t、およびsパラメータによってパラメータ化された弱パースペクティブ(weak-perspective)カメラモデルを用いて2次元画像平面に再投影されて、
Figure 2024512344000005
に従って、推定されたカメラパラメータで2次元ロケーション推定(J2D)を取得する。ここで、Πは、正射投影を表す。再投影された2次元関節ロケーション推定では、ネットワークは、2次元ラベルのみがトレーニングセット中に存在するときでも、3次元関節ロケーションを学習することが可能である。
[0044]いくつかの例では、ポーズ予測器112をトレーニングするための基準は、予測とグランドトゥルース(ground-truths)との間のL1およびL2損失である。
Figure 2024512344000006
[0045]概して、L1ノルムまたはL2ノルムのいずれも、損失関数のために使用され得る。2次元予測は、(投影変数による3次元予測と比較して)より多くの変数の関数であるので、L1ノルム損失は、2次元推定について、よりロバストな予測を提供し得る。
反復的バックボーンネットワークの動的終了(dynamic exiting)
[0046]モデルアーキテクチャ100は、反復的バックボーンネットワーク104についての複数の終了(exiting)ポリシーを実装し得る。第1の終了ポリシーオプションは、不確実性推定130(たとえば、全分散のエリア)に基づいてヒューリスティックである。たとえば、ループは、分散がしきい値よりも小さいとき、終了し得る。そのような例では、不確実性推定130がゲーティングのために直接使用されるので、ゲーティング関数128は必要とされない。第2の終了ポリシーオプションは、一例では、単一の全結合を備えるゲーティング関数128を利用する。有益には、ゲーティング関数128は、式12に関して以下でさらに説明されるように、トレーニング可能である。
[0047]図1に示されている例では、反復的バックボーンネットワーク104を用いたループを終了することが、ゲーティング関数128を使用して、入力データサンプルごとに適応的に実施される。したがって、モデルアーキテクチャ100は、適応反復的スコープ(adaptive iterative scope)ネットワークと呼ばれることがある。
[0048]概して、反復的バックボーンネットワーク104の再帰的推論の次のループに進むことを判定するために、モデルは、それが、それの現在の予測に関してどれくらい確実であるかに気づいているべきである。この目的で、不確実性推定器124は、関節ロケーションのみの代わりに確率分布を推定することによって、2次元/3次元関節ロケーション(たとえば、キーポイント)予測(たとえば、120および122)についての分散を推定する。一例では、問題を簡略化するために、関節の座標が、単一変量ガウシアン(single variate Gaussian)
Figure 2024512344000007
を使用するために、独立していると仮定される。ここで、Wは、トレーニング可能な重みを指す。関節ロケーションについての座標は、Jとして示され、
Figure 2024512344000008
は、推定された関節ロケーションを表す。標準偏差σが0に近いほど、モデルは、それ自体の推定に、より信頼性をもつ。σ→0のガウス分布としてターゲット関節座標を有すると、それは、Jgtがグランドトゥルース関節位置を示す、ディラックのデルタ関数
Figure 2024512344000009
であり、
モデルは、PW(J)とPD(J)との間のカルバックライブラー(KL)ダイバージェンスに基づいて、不確実性損失成分(Lvar)を最小限に抑えることと、
Figure 2024512344000010
に従って信頼性推定を学習することと、を目的とし、
ここで、α=log(σ2)であり、これは、モデルアーキテクチャ100が、不確実性推定130として予測するものである。出力として、不確実性推定器124は、
Figure 2024512344000011
に従って、それ自体の2次元/3次元関節予測の分散を予測し、ここで、
Figure 2024512344000012
は、分散推定の前の全結合層を表す。
[0049]3次元関節予測では、3次元関節位置特定のための分散推定の損失は、
Figure 2024512344000013
として設定され得る。
[0050]2次元関節ロケーションは、滑らかなL1損失で回帰されるので、2次元関節位置特定についての分散の損失は、
Figure 2024512344000014
に従って定義され得る。
[0051]式3で算出されたL2D、L3Dをもつ2次元/3次元関節位置特定分散についての両方の損失の合計を有すると、
Figure 2024512344000015
が与えられる。
[0052]したがって、不確実性推定器124は、それの関節ロケーション予測のために、l(英字のエル)次元ベクトルとして分散を学習し得る。
[0053]上述の分散は(たとえば、ゲーティング関数128を使用する代わりに)終了の判定のために直接利用され得る。たとえば、しきい値τvarが、現在の関節推定についての平均分散のために設定され得る。平均分散があらかじめ定義されたしきい値よりも大きい場合、改良モジュール108およびアテンションマップ生成器110の別のループが実施される。
ゲーティング関数
[0054]ループを終了するために使用され得る各ループにおけるヒューリスティック不確実性しきい値に加えて、ゲーティング関数128は、モデルアーキテクチャ100が最適な終了判定を学習することを可能にする。言い換えれば、ゲーティング関数128は、不確実性推定130に基づくヒューリスティック方法の代わりに学習可能なゲーティング機構を提供する。いくつかの例では、ゲーティング関数128は、モデルアーキテクチャ100など、より大きいモデルの一部であり得る、ニューラルネットワークモデルとして実装され得る。
[0055]たとえば、入力xと、l(英字のエル)番目のループMlにおいて生成されたアテンションマップとについて、ゲーティング関数128は、以下の、式11からの報酬信号(reward signal)に基づいてトレーニングされた後に、終了の確率カテゴリー判定(stochastic categorial decision)を出力する。ゲーティング関数G(128)は、不確実性推定器124の全結合層125からの特徴ベクトル
Figure 2024512344000016
を入力としてとる。図1に、および式7に示されているように、f(126)は、ゲーティング関数128への入力として使用される中間特徴出力(たえば、ベクトル)である。
[0056]この目的で、ゲーティング関数G(Al|fl)は、ループl(英文字のエル)における不確実性特徴ベクトルflに基づいて、2つの可能なカテゴリーアクションAl、終了するか否か、についての強化更新でトレーニングされ得、これは、オンポリシーバニラポリシー勾配(on-policy vanilla policy gradient)(報酬信号に基づいてエージェントをトレーニングするために使用される強化学習アルゴリズム)でトレーニングされる。より多くの反復とともに損失が減少するが、各追加のループについての算出コストを増加させることについてのペナルティを必要とする。損失と算出コストとの間の差は、報酬信号(rl)によって設定される。
Figure 2024512344000017
ここで、λがスケール定数を表し、算出コストCが、一例では、ギガ浮動小数点演算毎秒(GFLOPs:giga-floating point operations per second)を指す。そのような報酬を用いて、ポリシーは、最終的に、必要とされる算出コストをも最小限に抑えながら、ポーズ推定の誤差を最小限に抑えることを試みる。ゲーティングポリシー関数の学習勾配が、
Figure 2024512344000018
として表され得、ここで、wは、ゲーティング関数128の学習可能なパラメータを表す。
[0057]ゲーティング関数128は、不確実性推定器124を含むモデルアーキテクチャ100の残りをトレーニングした後にトレーニングされ得ることに留意されたい。したがって、ゲーティング関数128のトレーニング中に、モデルアーキテクチャ100の他の部分が切り離される。
[0058]一例では、ゲーティング関数128は、推論中に、ゲート関数128のアクション(たとえば、終了するまたは終了しない)が、ソフトマックス確率分布からサンプリングされるように、強化アルゴリズムを使用してトレーニングされる。したがって、ゲーティング関数128の出力は、そのような場合、確率的であり、決定論的ではない。
[0059]学習されたゲーティング関数128の場合、温度パラメータτgateが、トレーニングの後でもその判定の厳しさ(harshness)のさらなる制御を可能にするために利用され得る。ゲーティング関数128は、この例では、カテゴリーソフトマックス関数であるので、算出コストと予測正確さとの間のトレードオフが、テスト中にさらに制御され得る。概して、τgateのより高い値が、ソフトマックス関数のよりソフトな分布を生じる。
漸進的トレーニング
[0060]モデルアーキテクチャ100は、部分的な層をループすることと、各ループにおける推論結果に基づいて損失を計算することとによって、最初にトレーニングされ得る。ループlmaxのあらかじめ定義された最大数の場合、モデルアーキテクチャ100は、したがって、
Figure 2024512344000019
による、すべてのループからの損失の合計を最小限に抑えることによって、トレーニングされ得、ここで、
Figure 2024512344000020
は、ハイパーパラメータγ2Dによって重み付けされた2次元予測損失であり、
Figure 2024512344000021
は、ハイパーパラメータγ3Dによって重み付けされた3次元予測損失であり、
Figure 2024512344000022
は、ハイパーパラメータγvarによって重み付けされた不確実性損失である。特に、モデルアーキテクチャ100は、エンドツーエンドまたは漸進的様式のいずれかでトレーニングされ得る。エンドツーエンドトレーニングプロトコルでは、単一のトレーニングが、最大数のループで実施されるが、漸進的トレーニングプロトコルでは、モデルアーキテクチャ100は、ループ許容差の漸進的インクリメント中に複数回トレーニングされる。
[0061]図3は、漸進的トレーニングアルゴリズム300の一例を示す。
[0062]概して、アルゴリズム300による漸進的トレーニング中に、モデルアーキテクチャ100は、lmax回トレーニングされ、ループlprog∈{0,1,2,...,lmax}の最大数の各場合においてトレーニングする。したがって、モデルアーキテクチャ100は、lprog=0である場合、ループなしで最初にトレーニングされる。漸進的トレーニングプロトコルのこの初期トレーニングフェーズは、単一の推論経路について改良モジュール108の始まりにおいて1つのバッチ正規化層を必要とする。また、lprog>0の場合、モデルアーキテクチャ100は、lprog+1個のバッチ正規化層で初期化される。モデルアーキテクチャ100は、次いで、余剰バッチ正規化層を除いて、lprog-1の場合にトレーニングされたパラメータで、再初期化される。
[0063]モデルアーキテクチャ100は、lprog=0でトレーニングされるとき、有意味な特徴符号化層を学習するので、特徴抽出器106は、lprog>0であるとき、さらなる学習から切り離され、学習レートが、
Figure 2024512344000023
などのファクタで低減される。アテンションマップ生成器110は、元のベース学習レートでトレーニングされる。たとえば、トレーニングは、0番目のループについて0.1の学習レートで開始し得る。次いで、第1のループにおいて、特徴抽出器は、トレーニングから切り離され、改良モジュール108は、
Figure 2024512344000024
の学習レートでトレーニングされ、このトレーニングレートは、各反復において、
Figure 2024512344000025
で、さらに低減される。アテンションマップ生成器は、0.1の元の学習レートでトレーニングされる。
[0064]有益には、漸進的トレーニング方法300は、各ループの場合において、ネットワークの容量の最大化を確実にすることが経験的に示されており、これは、早期ループの場合における終了のより高いレートと、確認サンプルについてのより低い平均算出コストとを生じる。
ポーズ予測のための例示的な方法
[0065]図4は、図1および図2に関して説明されるモデルアーキテクチャを用いてなど、ポーズ予測を実施するための例示的な方法400を示す。
[0066]方法400は、特徴マップを生成するために、機械学習モデルの特徴抽出段階で、入力データを処理することを伴うステップ402において始まる。たとえば、特徴抽出段階は、図1の106および図2の202など、特徴抽出器を備え得る。
[0067]示されていないが、特徴マップは、機械学習モデルの反復的処理中に再使用されるために、ローカルメモリなどのメモリに記憶され得、これは、各反復中の特徴抽出段階で、入力データを再処理することと比較して処理を節約する。
[0068]方法400は、次いで、拡張された特徴マップを生成するために、特徴マップにアテンションマップを適用することを伴うステップ404に進む。いくつかの場合には、拡張された特徴マップは、アテンション拡張された特徴マップと呼ばれることがある。たとえば、図1のアテンションマップ生成器110または図2のアテンションマップ生成器206が、アテンションマップを提供し得る。
[0069]上記で説明されたように、ステップ404は、概して、モデルを通した第1のパスの後に起こることになり、ここで、ループ回数l>0であるなど、拡張はない。
[0070]方法400は、次いで、改良された特徴マップを生成するために、機械学習モデルの改良段階で、拡張された特徴マップを処理することを伴うステップ406に進む。たとえば、改良段階は、図1中の108または図2中の204など、改良モジュールを備え得る。
[0071]いくつかの態様では、機械学習モデルの改良段階で、拡張された特徴マップを処理することは、拡張された特徴マップにバッチ正規化層を適用することを備え、バッチ正規化層は、ループ回数に基づいて複数のバッチ正規化層から選択される。
[0072]方法400は、次いで、多次元タスク出力データ(たとえば、図1中の116)を生成するために、機械学習モデルの第1の回帰段階で、改良された特徴マップを処理することを伴うステップ408に進む。たとえば、多次元タスク出力データは、上記で説明されたように、回転行列R、変換t、スケーリングファクタs、ポーズθ、および/または形状βを含み得る。一例では、回帰段階は、図1中のポーズ予測器112の全結合層114など、ポーズ予測器の1つまたは複数の全結合層を備える。
[0073]方法400は、次いで、更新されたアテンションマップを生成するために、機械学習モデルのアテンション段階で、改良された特徴データを処理することを伴うステップ410に進む。
[0074]改良された特徴データは、概して、ステップ408において使用されたものと同じであり得ることに留意されたい。様々な段階の並列処理が実装される場合、改良された特徴データは、様々な段階によって一度にアクセスおよび処理されるべき複数のコピーに記憶され得る。
[0075]方法400は、次いで、図1中の3次元予測120など、3次元位置推定値を生成するために、3次元位置生成器で多次元タスク出力データを処理することを伴うステップ412に進む。たとえば、3次元位置生成器は、図1の手モデル118など、身体要素ポーズモデルであり得、3次元位置推定値は、キーポイント推定値など、3次元空間における1つまたは複数の身体要素関節位置を備える。
[0076]方法400は、次いで、2次元位置推定値を生成するために、多次元タスク出力データとともに3次元位置推定値を処理することを伴うステップ414に進む。
[0077]たとえば、回転行列R、変換t、およびスケーリングファクタsは、ポーズθおよび形状βを3次元から2次元に投影するために使用され得、ここで、R、t、およびsは、ステップ402において使用された入力データをキャプチャするカメラの外部パラメータである。
[0078]いくつかの態様では、2次元位置推定値は、2次元空間における1つまたは複数の身体要素関節位置を備える。
[0079]図4に示されていないが、方法400は、タスク不確実性推定値を生成するために、機械学習モデルの第2の回帰段階で、改良された特徴マップを処理することをさらに含み得る。たとえば、改良された特徴マップは、図1中の124のような不確実性推定器によって、特に、不確実性推定器124の全結合層125によって処理され得る。
[0080]方法400は、タスク不確実性推定値に基づいて、3次元位置推定値に関連する不確実性を決定することと、タスク不確実性推定値に基づいて、2次元位置推定値に関連する不確実性を決定することとをさらに含み得る。たとえば、図1の不確実性推定器124の全結合層(たとえば、別の回帰段階)は、2次元および3次元位置推定値に関連する不確実性推定(たとえば、分散130)を生成し得る。
[0081]方法400は、ループ判定値を生成するために、機械学習モデルのループ判定段階で、タスク不確実性推定値を処理することと、ループ判定値に基づいて、機械学習モデルの処理を終了すべきかどうかを決定することとをさらに含み得る。一例では、ループ判定段階は、図1のゲーティング関数128を備え、ループ判定値が、ソフトマックス値である。上記で説明されたように、いくつかの場合には、ループ判定値は、ソフトマックス確率分布からサンプリングされ得る。
[0082]方法400は、2次元位置推定値をエクステンデッドリアリティデバイス(extended reality device)のディスプレイスクリーン上に表示することをさらに含み得る。いくつかの場合には、エクステンデッドリアリティデバイスは、スマートフォンなどのモバイルデバイス、あるいは眼鏡またはヘッドセットなどのスマートウェアラブルデバイス、あるいは他のデバイスであり得る。
[0083]方法400は、1つの例示的な方法であり、他のものが可能であることに留意されたい。特に、他の例は、本明細書で説明される様々な態様に従う方法400と比較して、より少数の、追加の、および/または代替のステップを含み得る。
ポーズモデルをトレーニングするための例示的な方法
[0084]図5は、図1および図2に関して説明されるような、ポーズ予測モデルアーキテクチャをトレーニングするための例示的な方法500を示す。
[0085]方法500は、機械学習モデルでトレーニングデータを処理することを伴う502におけるステップにおいて始まる。いくつかの場合には、機械学習モデルは、特徴マップを生成するように構成された特徴抽出段階(たとえば、図1中の特徴抽出器106または図2中の特徴抽出器202)と、特徴マップおよびアテンションマップに基づいて、拡張された特徴マップを処理することと、改良された特徴マップを生成することとを行うように構成された改良段階(たとえば、図1中の改良モジュール108または図2中の改良モジュール204)と、改良された特徴マップに基づいて、更新されたアテンションマップを生成するように構成されたアテンション段階(たとえば、図1中のアテンションマップ生成器110、図2中のアテンションマップ生成器206)と、多次元タスク出力データを生成するために、改良された特徴マップを処理するように構成された第1の回帰段階(たとえば、図1中のポーズ予測器112の全結合層114)とを備える。
[0086]いくつかの場合には、機械学習モデルの改良段階は、複数のバッチ正規化層を備え、ここにおいて、各それぞれのバッチ正規化層は、ループ回数に関連する。
[0087]方法500は、次いで、トレーニング損失関数に基づいて、トレーニング損失を決定すること、を伴うステップ504に進む。ここにおいて、トレーニング損失関数(たとえば、式13に関して上記で説明されたLtotal)は、不確実性損失成分(たとえば、式10に関して上記で説明されたLvar)と、タスク損失成分(たとえば、式13および図3に関して上記で説明された
Figure 2024512344000026
および
Figure 2024512344000027
)と、を備える。
[0088]方法500は、次いで、図3に関して示されているように、トレーニング損失に基づいて、機械学習モデルを更新することを伴うステップ506に進む。
[0089]いくつかの態様では、機械学習モデルは、多次元タスク出力(たとえば、図1中のパラメータ116)を処理することと、3次元位置推定値(たとえば、図1中の3次元予測120)を生成することとを行うように構成された、3次元位置生成器(たとえば、図1中の手モデル118)をさらに備え、タスク損失成分は、3次元位置推定値誤差成分(たとえば、式13の場合のような
Figure 2024512344000028
)を備える。
[0090]いくつかの態様では、機械学習モデルは、多次元タスク出力(たとえば、図1中の116)とともに3次元位置推定値を処理することと、2次元位置推定値(たとえば、図1中の122)を生成することとを行うように構成された、2次元位置生成器をさらに備え、タスク損失成分は、2次元位置推定値誤差成分(たとえば、式13の場合のような
Figure 2024512344000029
)を備える。
[0091]いくつかの態様では、3次元位置生成器は、図1中の手モデル118など、身体要素ポーズモデルを備える。いくつかの態様では、3次元位置推定値は、3次元空間における1つまたは複数の身体要素関節位置を備え、2次元位置推定値は、2次元空間における1つまたは複数の身体要素関節位置を備え、多次元タスク出力データは、ポーズθおよび形状βを投影する(project)ために使用され得る、回転行列Rと、変換tと、スケーリングファクタsとを備える。
[0092]いくつかの態様では、機械学習モデルは、タスク不確実性推定値を生成するように構成された、第2の回帰段階(たとえば、図1中の不確実性推定器124の全結合層125)をさらに備え、ここにおいて、タスク不確実性推定値は、図1中の不確実性推定130など、不確実性損失成分の3次元位置推定値分散成分と、不確実性損失成分の2次元位置推定値分散成分とを備える。
[0093]いくつかの態様では、機械学習モデルは、タスク不確実性推定値を処理することと、ループ判定値を決定することとを行うように構成されたループ判定段階(たとえば、図1のゲーティング関数128)をさらに備える。
[0094]方法500は、1つの例示的な方法であり、他のものが可能であることに留意されたい。特に、他の例は、本明細書で説明される様々な態様に従う方法500と比較して、より少数の、追加の、および/または代替のステップを含み得る。
例示的な処理システム
[0095]図6は、図3~図5に関してなど、本明細書で説明される方法を実施するように構成され得る例示的な処理システム600を示す。
[0096]処理システム600は、いくつかの例ではマルチコアCPUであり得る中央処理ユニット(CPU)602を含む。CPU602において実行される命令が、たとえば、CPU602に関連するプログラムメモリからロードされ得るか、またはメモリ624からロードされ得る。
[0097]処理システム600は、グラフィックス処理ユニット(GPU)604、デジタル信号プロセッサ(DSP)606、ニューラル処理ユニット(NPU)608、マルチメディア処理ユニット610、およびワイヤレス接続性構成要素612など、特定の機能に適合された追加の処理構成要素をも含む。
[0098]いくつかの態様では、CPU602、GPU604、DSP606、およびNPU608のうちの1つまたは複数は、図3~図5に関して本明細書で説明された方法を実施するように構成され得る。
[0099]608など、NPUは、概して、人工ニューラルネットワーク(ANN)、深層ニューラルネットワーク(DNN)、ランダムフォレスト(RF)、カーネル方法などを処理するためのアルゴリズムなど、機械学習アルゴリズムを実行するためのすべての必要な制御および算術論理を実装するために構成された特殊な回路である。NPUは、代替的に、ニューラル信号プロセッサ(NSP)、テンソル処理ユニット(TPU)、ニューラルネットワークプロセッサ(NNP)、インテリジェンス処理ユニット(IPU)、またはビジョン処理ユニット(VPU)と呼ばれることがある。
[0100]608など、NPUは、画像分類、機械翻訳、物体検出、および様々な他のタスクなど、一般的な機械学習タスクの性能をアクセラレートするように構成され得る。いくつかの例では、複数のNPUは、システムオンチップ(SoC)などの単一のチップ上でインスタンス化され得るが、他の例では、それらは、専用機械学習アクセラレータデバイスの一部であり得る。
[0101]NPUは、トレーニングまたは推論のために最適化されるか、あるいは、いくつかの場合には、その両方の間の性能のバランスをとるように構成され得る。トレーニングと推論の両方を実施することが可能であるNPUの場合、その2つのタスクは依然として、概して、独立して実施され得る。
[0102]トレーニングをアクセラレートするように設計されたNPUは、概して、モデル性能を改善するために、(しばしばラベル付けまたはタグ付けされた)既存のデータセットを入力することと、そのデータセットにわたって反復することと、次いで、重みおよびバイアスなど、モデルパラメータを調節することとを伴う極めて算出集約的な(compute-intensive)動作である、新しいモデルの最適化をアクセラレートするように構成される。概して、誤った予測に基づいて最適化することは、モデルの層を通して逆伝搬することと、予測誤差を低減するための勾配を決定することとを伴う。
[0103]推論をアクセラレートするように設計されたNPUは、概して、完全なモデル上で動作するように構成される。したがって、そのようなNPUは、モデル出力(たとえば、推論)を生成するために、新しいデータを入力し、すでにトレーニングされたモデルを通してそれを迅速に処理するように構成され得る。
[0104]いくつかの態様では、NPU608は、CPU602、GPU604、および/またはDSP606のうちの1つまたは複数の一部として実装され得る。
[0105]いくつかの態様では、ワイヤレス接続性構成要素612は、たとえば、第3世代(3G)接続性、第4世代(4G)接続性(たとえば、4G LTE(登録商標))、第5世代接続性(たとえば、5GまたはNR)、Wi-Fi(登録商標)接続性、Bluetooth(登録商標)接続性、および他のワイヤレスデータ送信規格のための、副構成要素を含み得る。ワイヤレス接続性処理構成要素612は、1つまたは複数のアンテナ614にさらに接続される。
[0106]処理システム600は、センサーの任意の様式に関連する1つまたは複数のセンサー処理ユニット616、画像センサーの任意の様式に関連する1つまたは複数の画像信号プロセッサ(ISP)618、および/またはナビゲーションプロセッサ620をも含み得、ナビゲーションプロセッサ620は、衛星ベース測位システム構成要素(たとえば、GPSまたはGLONASS)ならびに慣性測位システム構成要素を含み得る。
[0107]処理システム600は、スクリーン、(タッチセンシティブディスプレイを含む)タッチセンシティブ表面、物理的ボタン、スピーカー、マイクロフォンなど、1つまたは複数の入力および/または出力デバイス622をも含み得る。
[0108]いくつかの例では、処理システム600のプロセッサのうちの1つまたは複数は、ARMまたはRISC-V命令セットに基づき得る。
[0109]処理システム600は、ダイナミックランダムアクセスメモリ、フラッシュベーススタティックメモリなど、1つまたは複数のスタティックメモリおよび/またはダイナミックメモリを表す、メモリ624をも含む。この例では、メモリ624は、処理システム600の上記の構成要素のうちの1つまたは複数によって実行され得るコンピュータ実行可能構成要素を含む。
[0110]特に、この例では、メモリ624は、特徴抽出構成要素624Aと、改良構成要素624Bと、アテンション構成要素624Cと、ポーズ予測構成要素624Dと、不確実性推定構成要素624Eと、ゲーティング構成要素626Fと、トレーニング構成要素624Gと、推論構成要素624Hと、モデルパラメータ624I(たとえば、重み、バイアス、および他の機械学習モデルパラメータ)とを含む。図示された構成要素のうちの1つまたは複数、ならびに図示されていない他の構成要素は、本明細書で説明される方法の様々な態様を実施するように構成され得る。
[0111]一例では、特徴抽出構成要素624Aは、図1中の特徴抽出器106と、図2中の特徴抽出器202とによって実装され得、改良構成要素624Bは、図1中の改良モジュール108と、図2中の改良モジュール204とによって実装され得、アテンション構成要素624Cは、図1中のアテンションマップ生成器110と、図2中のアテンションマップ生成器206とによって実装され得、ポーズ予測構成要素624Dは、図1中のポーズ予測器112によって実装され得、不確実性推定構成要素624Eは、図1中の過小トレーニング推定器124によって実装され得、ゲーティング構成要素626Fは、図1中のゲーティング関数128によって実装され得る。さらに、トレーニング構成要素624Gは、いくつかの例では、アルゴリズム300を実装し得る。
[0112]概して、処理システム600および/またはそれの構成要素は、本明細書で説明される方法を実施するように構成され得る。
[0113]特に、他の態様では、処理システム600の態様は、処理システム600がサーバコンピュータなどである場合などに省略され得る。たとえば、マルチメディア構成要素610、ワイヤレス接続性612、センサー616、ISP618、および/またはナビゲーション構成要素620は、他の態様では省略され得る。さらに、処理システム600の態様が分散され得る。
[0114]図6は一例にすぎず、他の例では、より少数の、追加の、および/または代替の構成要素をもつ代替の処理システムが使用され得ることに留意されたい。
例示的な条項
[0115]実装例が、以下の番号付けされた条項において説明される。
[0116]条項1:特徴マップを生成するために、機械学習モデルの特徴抽出段階で、入力データを処理することと、拡張された特徴マップを生成するために、特徴マップにアテンションマップを適用することと、改良された特徴マップを生成するために、機械学習モデルの改良段階で、拡張された特徴マップを処理することと、多次元タスク出力データを生成するために、機械学習モデルの第1の回帰段階で、改良された特徴マップを処理することと、更新されたアテンションマップを生成するために、機械学習モデルのアテンション段階で、改良された特徴データを処理することとを備える、方法。
[0117]条項2:3次元位置推定値を生成するために、3次元位置生成器で多次元タスク出力データを処理することをさらに備える、条項1に記載の方法。
[0118]条項3:2次元位置推定値を生成するために、多次元タスク出力データとともに3次元位置推定値を処理することをさらに備える、条項2に記載の方法。
[0119]条項4:3次元位置生成器が身体要素ポーズモデルを備える、条項3に記載の方法。
[0120]条項5:3次元位置推定値が、3次元空間における1つまたは複数の身体要素関節位置を備え、2次元位置推定値が、2次元空間における1つまたは複数の身体要素関節位置を備え、多次元タスク出力データが、回転推定値、変換推定値、またはスケーリング推定値のうちの1つまたは複数を備える、条項4に記載の方法。
[0121]条項6:身体要素ポーズモデルが手モデルを備える、条項5に記載の方法。
[0122]条項7:タスク不確実性推定値を生成するために、機械学習モデルの第2の回帰段階で、改良された特徴マップを処理することをさらに備える、条項1から6のいずれか一項に記載の方法。
[0123]条項8:タスク不確実性推定値に基づいて、3次元位置推定値に関連する不確実性を決定することと、タスク不確実性推定値に基づいて、2次元位置推定値に関連する不確実性を決定することとをさらに備える、条項7に記載の方法。
[0124]条項9:ループ判定値を生成するために、機械学習モデルのループ判定段階で、タスク不確実性推定値を処理することと、ループ判定値に基づいて、機械学習モデルの処理を終了すべきかどうかを決定することとをさらに備える、条項7から8のいずれか一項に記載の方法。
[0125]条項10:機械学習モデルの改良段階で、拡張された特徴マップを処理することが、拡張された特徴マップにバッチ正規化層を適用することを備え、バッチ正規化層が、ループ回数に基づいて複数のバッチ正規化層から選択される、条項1から9のいずれか一項に記載の方法。
[0126]条項11:2次元位置推定値をエクステンデッドリアリティデバイスのディスプレイスクリーン上に表示することをさらに備える、条項5に記載の方法。
[0127]条項12:ループ判定値に基づいて、機械学習モデルの処理を終了することを決定することをさらに備える、条項9に記載の方法。
[0128]条項13:ループ判定値に基づいて、機械学習モデルの処理を終了しないことを決定することと、ループ回数に基づいて、機械学習モデルの処理を終了することを決定することとをさらに備える、条項9に記載の方法。
[0129]条項14:トレーニング損失関数に基づいて、トレーニング損失を決定することと、ここにおいて、トレーニング損失関数が、不確実性損失成分と、タスク損失成分とを備える、トレーニング損失に基づいて、機械学習モデルを更新することとをさらに備える、条項1に記載の方法。
[0130]条項15:機械学習モデルでトレーニングデータを処理することと、ここにおいて、機械学習モデルは、特徴マップを生成するように構成された特徴抽出段階と、特徴マップおよびアテンションマップに基づいて、拡張された特徴マップを処理することと、改良された特徴マップを生成することとを行うように構成された改良段階と、改良された特徴マップを処理することと、更新されたアテンションマップを生成することとを行うように構成されたアテンション段階と、多次元タスク出力データを生成するために、改良された特徴マップを処理することを行うように構成された第1の回帰段階とを備える、トレーニング損失関数に基づいて、トレーニング損失を決定することと、ここにおいて、トレーニング損失関数は、不確実性損失成分と、タスク損失成分とを備える、トレーニング損失に基づいて、機械学習モデルを更新することとを備える、機械学習モデルをトレーニングする方法。
[0131]条項16:機械学習モデルが、多次元タスク出力を処理することと、3次元位置推定値を生成することとを行うように構成された、3次元位置生成器をさらに備え、タスク損失成分が、3次元位置推定値誤差成分を備える、条項15に記載の方法。
[0132]条項17:機械学習モデルが、多次元タスク出力とともに3次元位置推定値を処理することと、2次元位置推定値を生成することとを行うように構成された、2次元位置生成器をさらに備え、タスク損失成分が、2次元位置推定値誤差成分を備える、条項15に記載の方法。
[0133]条項18:3次元位置生成器が身体要素ポーズモデルを備える、条項17に記載の方法。
[0134]条項19:3次元位置推定値が、3次元空間における1つまたは複数の身体要素関節位置を備え、2次元位置推定値が、2次元空間における1つまたは複数の身体要素関節位置を備え、多次元タスク出力データが、回転推定値、変換推定値、またはスケーリング推定値のうちの1つまたは複数を備える、条項18に記載の方法。
[0135]条項20:身体要素ポーズモデルが手モデルを備える、条項18から19のいずれか一項に記載の方法。
[0136]条項21:機械学習モデルが、タスク不確実性推定値を生成するように構成された第2の回帰段階をさらに備え、ここにおいて、タスク不確実性推定値が、不確実性損失成分の3次元位置推定値分散成分と、不確実性損失成分の2次元位置推定値分散成分とを備える、条項15から20のいずれか一項に記載の方法。
[0137]条項22:機械学習モデルが、タスク不確実性推定値を処理することと、ループ判定値を決定することとを行うように構成されたループ判定段階をさらに備える、条項21に記載の方法。
[0138]条項23:機械学習モデルの改良段階が、拡張された特徴マップに基づいてパラメータ化されたバッチ正規化層を備える、条項15から22のいずれか一項に記載の方法。
[0139]条項24:コンピュータ実行可能命令を備えるメモリと、1つまたは複数のプロセッサとを備える処理システムであって、1つまたは複数のプロセッサが、コンピュータ実行可能命令を実行することと、処理システムに、条項1から23のいずれか一項に記載の方法を実施させることとを行うように構成された、処理システム。
[0140]条項25:条項1から23のいずれか一項に記載の方法を実施するための手段を備える、処理システム。
[0141]条項26:コンピュータ実行可能命令を備える非一時的コンピュータ可読媒体であって、コンピュータ実行可能命令が、処理システムの1つまたは複数のプロセッサによって実行されたとき、処理システムに、条項1から23のいずれか一項に記載の方法を実施させる、非一時的コンピュータ可読媒体。
[0142]条項27:条項1から23のいずれか一項に記載の方法を実施するためのコードを備えるコンピュータ可読記憶媒体上で実施されたコンピュータプログラム製品。
追加の考慮事項
[0143]上記の説明は、当業者が本明細書で説明された様々な実施形態を実施することを可能にするために提供された。本明細書で説明される例は、特許請求の範囲に記載される範囲、適用可能性、または態様を限定するものではない。これらの態様への様々な修正は当業者には容易に明らかであり、本明細書で定義された一般原理は他の態様に適用され得る。たとえば、本開示の範囲から逸脱することなく、説明される要素の機能および構成において変更が行われ得る。様々な例は、適宜に、様々な手順または構成要素を、省略、置換、または追加し得る。たとえば、説明される方法は、説明される順序とは異なる順序で実施され得、様々なステップが追加、省略、または組み合わせられ得る。また、いくつかの例に関して説明される特徴は、いくつかの他の例において組み合わせられ得る。たとえば、本明細書に記載される態様をいくつ使用しても、装置は実装され得、または方法は実施され得る。さらに、本開示の範囲は、本明細書に記載される本開示の様々な態様に加えて、またはそれらの態様以外に、他の構造、機能、または構造および機能を使用して実施されるそのような装置または方法をカバーするものとする。本明細書で開示される開示のいかなる態様も、請求項の1つまたは複数の要素によって実施され得ることを理解されたい。
[0144]本明細書で使用される「例示的」という語は、「例、事例、または例示の働きをすること」を意味する。「例示的」として本明細書で説明されるいかなる態様も、必ずしも他の態様よりも好適または有利であると解釈されるべきであるとは限らない。
[0145]本明細書で使用される、項目のリスト「のうちの少なくとも1つ」を指す句は、単一のメンバーを含む、それらの項目の任意の組合せを指す。一例として、「a、b、またはcのうちの少なくとも1つ」は、a、b、c、a-b、a-c、b-c、およびa-b-c、ならびに複数の同じ要素をもつ任意の組合せ(たとえば、a-a、a-a-a、a-a-b、a-a-c、a-b-b、a-c-c、b-b、b-b-b、b-b-c、c-c、およびc-c-c、またはa、b、およびcの任意の他の順序)を包含するものとする。
[0146]本明細書で使用される「決定すること」という用語は、多種多様なアクションを包含する。たとえば、「決定すること」は、計算すること、算出すること、処理すること、導出すること、調査すること、ルックアップすること(たとえば、テーブル、データベースまたは別のデータ構造においてルックアップすること)、確認することなどを含み得る。また、「決定すること」は、受信すること(たとえば、情報を受信すること)、アクセスすること(たとえば、メモリ中のデータにアクセスすること)などを含み得る。また、「決定すること」は、解決すること、選択すること、選定すること、確立することなどを含み得る。
[0147]本明細書で開示される方法は、方法を達成するための1つまたは複数のステップまたはアクションを備える。本方法のステップおよび/またはアクションは、特許請求の範囲から逸脱することなく互いに交換され得る。言い換えれば、ステップまたはアクションの特定の順序が指定されない限り、特定のステップおよび/またはアクションの順序および/または使用は、特許請求の範囲から逸脱することなく変更され得る。さらに、上記で説明された方法の様々な動作は、対応する機能を実施することが可能な任意の好適な手段によって実施され得る。それらの手段は、限定はしないが、回路、特定用途向け集積回路(ASIC)、またはプロセッサを含む、様々な(1つまたは複数の)ハードウェアおよび/またはソフトウェア構成要素および/またはモジュールを含み得る。概して、図に示されている動作がある場合、それらの動作は、同様の番号をもつ対応するカウンターパートのミーンズプラスファンクション構成要素を有し得る。
[0148]以下の特許請求の範囲は、本明細書で示された態様に限定されるものではなく、特許請求の範囲の文言に矛盾しない全範囲を与えられるべきである。請求項内で、単数形の要素への言及は、そのように明記されていない限り、「唯一無二の」を意味するものではなく、「1つまたは複数の」を意味するものである。別段に明記されていない限り、「いくつかの」という用語は、1つまたは複数を指す。いかなるクレーム要素も、その要素が「ための手段」という句を使用して明確に具陳されていない限り、または方法クレームの場合には、その要素が「ためのステップ」という句を使用して具陳されていない限り、米国特許法第112条(f)の規定の下で解釈されるべきではない。当業者に知られている、または後に知られることになる、本開示全体にわたって説明された様々な態様の要素のすべての構造的および機能的等価物は、参照により本明細書に明確に組み込まれ、特許請求の範囲に包含されるものである。さらに、本明細書で開示されるいかなることも、そのような開示が特許請求の範囲に明示的に具陳されているかどうかにかかわらず、公に供するものではない。

Claims (30)

  1. 特徴マップを生成するために、機械学習モデルの特徴抽出段階で、入力データを処理することと、
    拡張された特徴マップを生成するために、前記特徴マップにアテンションマップを適用することと、
    改良された特徴マップを生成するために、前記機械学習モデルの改良段階で、前記拡張された特徴マップを処理することと、
    多次元タスク出力データを生成するために、前記機械学習モデルの第1の回帰段階で、前記改良された特徴マップを処理することと、
    更新されたアテンションマップを生成するために、前記機械学習モデルのアテンション段階で、前記改良された特徴データを処理することと、
    を備える、方法。
  2. 3次元位置推定値を生成するために、3次元位置生成器で前記多次元タスク出力データを処理することをさらに備える、請求項1に記載の方法。
  3. 2次元位置推定値を生成するために、前記多次元タスク出力データとともに前記3次元位置推定値を処理することをさらに備える、請求項2に記載の方法。
  4. 前記3次元位置生成器は身体要素ポーズモデルを備える、請求項3に記載の方法。
  5. 前記3次元位置推定値は、3次元空間における1つまたは複数の身体要素関節位置を備え、
    前記2次元位置推定値は、2次元空間における前記1つまたは複数の身体要素関節位置を備え、
    前記多次元タスク出力データは、
    回転推定値、
    変換推定値、または
    スケーリング推定値
    のうちの1つまたは複数を備える、
    請求項4に記載の方法。
  6. 前記身体要素ポーズモデルは手モデルを備える、請求項5に記載の方法。
  7. タスク不確実性推定値を生成するために、前記機械学習モデルの第2の回帰段階で、前記改良された特徴マップを処理することをさらに備える、請求項5に記載の方法。
  8. 前記タスク不確実性推定値に基づいて、前記3次元位置推定値に関連する不確実性を決定することと、
    前記タスク不確実性推定値に基づいて、前記2次元位置推定値に関連する不確実性を決定することと、
    をさらに備える、請求項7に記載の方法。
  9. ループ判定値を生成するために、前記機械学習モデルのループ判定段階で、前記タスク不確実性推定値を処理することと、
    前記ループ判定値に基づいて、前記機械学習モデルの処理を終了すべきかどうかを決定することと、
    をさらに備える、請求項7に記載の方法。
  10. 前記機械学習モデルの前記改良段階で、前記拡張された特徴マップを処理することは、前記拡張された特徴マップにバッチ正規化層を適用することを備え、
    前記バッチ正規化層は、ループ回数に基づいて複数のバッチ正規化層から選択される、
    請求項1に記載の方法。
  11. 前記2次元位置推定値をエクステンデッドリアリティデバイスのディスプレイスクリーン上に表示することをさらに備える、請求項5に記載の方法。
  12. 前記ループ判定値に基づいて、前記機械学習モデルの処理を終了することを決定することをさらに備える、請求項9に記載の方法。
  13. 前記ループ判定値に基づいて、前記機械学習モデルの処理を終了しないことを決定することと、
    ループ回数に基づいて、前記機械学習モデルの処理を終了することを決定することと、
    をさらに備える、請求項9に記載の方法。
  14. トレーニング損失関数に基づいて、トレーニング損失を決定することと、ここにおいて、前記トレーニング損失関数は、
    不確実性損失成分と、
    タスク損失成分と、を備える、
    前記トレーニング損失に基づいて、前記機械学習モデルを更新することと、
    をさらに備える、請求項1に記載の方法。
  15. 処理システムであって、
    コンピュータ実行可能命令を備えるメモリと、
    1つまたは複数のプロセッサと、
    を備え、前記1つまたは複数のプロセッサは、前記コンピュータ実行可能命令を実行し、前記処理システムに、
    特徴マップを生成するために、機械学習モデルの特徴抽出段階で、入力データを処理することと、
    拡張された特徴マップを生成するために、前記特徴マップにアテンションマップを適用することと、
    改良された特徴マップを生成するために、前記機械学習モデルの改良段階で、前記拡張された特徴マップを処理することと、
    多次元タスク出力データを生成するために、前記機械学習モデルの第1の回帰段階で、前記改良された特徴マップを処理することと、
    更新されたアテンションマップを生成するために、前記機械学習モデルのアテンション段階で、前記改良された特徴データを処理することと、
    を行わせるように構成された、処理システム。
  16. 前記1つまたは複数のプロセッサは、前記処理システムに、3次元位置推定値を生成するために、3次元位置生成器で前記多次元タスク出力データを処理することを行わせるようにさらに構成された、請求項15に記載の処理システム。
  17. 前記1つまたは複数のプロセッサは、前記処理システムに、2次元位置推定値を生成するために、前記多次元タスク出力データとともに前記3次元位置推定値を処理することを行わせるようにさらに構成された、請求項16に記載の処理システム。
  18. 前記3次元位置生成器は身体要素ポーズモデルを備える、請求項17に記載の処理システム。
  19. 前記3次元位置推定値は、3次元空間における1つまたは複数の身体要素関節位置を備え、
    前記2次元位置推定値は、2次元空間における前記1つまたは複数の身体要素関節位置を備え、
    前記多次元タスク出力データは、
    回転推定値、
    変換推定値、または
    スケーリング推定値
    のうちの1つまたは複数を備える、
    請求項18に記載の処理システム。
  20. 前記身体要素ポーズモデルは手モデルを備える、請求項19に記載の処理システム。
  21. 前記1つまたは複数のプロセッサは、前記処理システムに、タスク不確実性推定値を生成するために、前記機械学習モデルの第2の回帰段階で、前記改良された特徴マップを処理することを行わせるようにさらに構成された、請求項16に記載の処理システム。
  22. 前記1つまたは複数のプロセッサは、前記処理システムに、
    前記タスク不確実性推定値に基づいて、前記3次元位置推定値に関連する不確実性を決定することと、
    前記タスク不確実性推定値に基づいて、前記2次元位置推定値に関連する不確実性を決定することと、
    を行わせるようにさらに構成された、請求項12に記載の処理システム。
  23. 前記1つまたは複数のプロセッサは、前記処理システムに、
    ループ判定値を生成するために、前記機械学習モデルのループ判定段階で、前記タスク不確実性推定値を処理することと、
    前記ループ判定値に基づいて、前記機械学習モデルの処理を終了すべきかどうかを決定することと、
    を行わせるようにさらに構成された、請求項21に記載の処理システム。
  24. 前記機械学習モデルの前記改良段階で、前記拡張された特徴マップを処理するために、前記1つまたは複数のプロセッサは、前記処理システムに、前記拡張された特徴マップにバッチ正規化層を適用することを行わせるようにさらに構成され、
    前記バッチ正規化層は、ループ回数に基づいて複数のバッチ正規化層から選択される、
    請求項15に記載の処理システム。
  25. 前記1つまたは複数のプロセッサは、前記処理システムに、前記2次元位置推定値をエクステンデッドリアリティデバイスのディスプレイスクリーン上に表示することを行わせるようにさらに構成された、請求項19に記載の処理システム。
  26. 前記1つまたは複数のプロセッサは、前記処理システムに、前記ループ判定値に基づいて、前記機械学習モデルの処理を終了することを決定することを行わせるようにさらに構成された、請求項23に記載の処理システム。
  27. 前記1つまたは複数のプロセッサは、前記処理システムに、
    前記ループ判定値に基づいて、前記機械学習モデルの処理を終了しないことを決定することと、
    ループ回数に基づいて、前記機械学習モデルの処理を終了することを決定することと、
    を行わせるようにさらに構成された、請求項23に記載の処理システム。
  28. 前記1つまたは複数のプロセッサは、前記処理システムに、
    トレーニング損失関数に基づいて、トレーニング損失を決定することと、ここにおいて、前記トレーニング損失関数は、
    不確実性損失成分と、
    タスク損失成分と、を備える、
    前記トレーニング損失に基づいて、前記機械学習モデルを更新することと、
    を行わせるようにさらに構成された、請求項15に記載の処理システム。
  29. コンピュータ実行可能命令を備える非一時的コンピュータ可読媒体であって、前記コンピュータ実行可能命令は、処理システムの1つまたは複数のプロセッサによって実行されたとき、前記処理システムに、方法を実施させ、前記方法は、
    特徴マップを生成するために、機械学習モデルの特徴抽出段階で、入力データを処理することと、
    拡張された特徴マップを生成するために、前記特徴マップにアテンションマップを適用することと、
    改良された特徴マップを生成するために、前記機械学習モデルの改良段階で、前記拡張された特徴マップを処理することと、
    多次元タスク出力データを生成するために、前記機械学習モデルの第1の回帰段階で、前記改良された特徴マップを処理することと、
    更新されたアテンションマップを生成するために、前記機械学習モデルのアテンション段階で、前記改良された特徴データを処理することと、
    を備える、非一時的コンピュータ可読媒体。
  30. 特徴マップを生成するために、機械学習モデルの特徴抽出段階で、入力データを処理するための手段と、
    拡張された特徴マップを生成するために、前記特徴マップにアテンションマップを適用するための手段と、
    改良された特徴マップを生成するために、前記機械学習モデルの改良段階で、前記拡張された特徴マップを処理するための手段と、
    多次元タスク出力データを生成するために、前記機械学習モデルの第1の回帰段階で、前記改良された特徴マップを処理するための手段と、
    更新されたアテンションマップを生成するために、前記機械学習モデルのアテンション段階で、前記改良された特徴データを処理するための手段と、
    を備える、処理システム。
JP2023553708A 2021-03-16 2022-03-15 反復的改良を通した効率的なポーズ推定 Pending JP2024512344A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/203,607 2021-03-16
US17/203,607 US11908155B2 (en) 2021-03-16 2021-03-16 Efficient pose estimation through iterative refinement
PCT/US2022/071171 WO2022198210A1 (en) 2021-03-16 2022-03-15 Efficient pose estimation through iterative refinement

Publications (1)

Publication Number Publication Date
JP2024512344A true JP2024512344A (ja) 2024-03-19

Family

ID=81326030

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023553708A Pending JP2024512344A (ja) 2021-03-16 2022-03-15 反復的改良を通した効率的なポーズ推定

Country Status (7)

Country Link
US (1) US11908155B2 (ja)
EP (1) EP4309081A1 (ja)
JP (1) JP2024512344A (ja)
KR (1) KR20230156330A (ja)
CN (1) CN116982059A (ja)
BR (1) BR112023018074A2 (ja)
WO (1) WO2022198210A1 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10970518B1 (en) * 2017-11-14 2021-04-06 Apple Inc. Voxel-based feature learning network
US10733431B2 (en) * 2017-12-03 2020-08-04 Facebook, Inc. Systems and methods for optimizing pose estimation
US11403800B1 (en) * 2020-07-13 2022-08-02 Amazon Technologies, Inc. Image generation from 3D model using neural network
US20220139251A1 (en) * 2020-11-03 2022-05-05 At&T Intellectual Property I, L.P. Motivational Extended Reality

Also Published As

Publication number Publication date
US11908155B2 (en) 2024-02-20
EP4309081A1 (en) 2024-01-24
BR112023018074A2 (pt) 2023-10-03
US20220301216A1 (en) 2022-09-22
KR20230156330A (ko) 2023-11-14
CN116982059A (zh) 2023-10-31
WO2022198210A1 (en) 2022-09-22

Similar Documents

Publication Publication Date Title
US20210004984A1 (en) Method and apparatus for training 6d pose estimation network based on deep learning iterative matching
US11557085B2 (en) Neural network processing for multi-object 3D modeling
US10552944B2 (en) Image upscaling with controllable noise reduction using a neural network
US11232286B2 (en) Method and apparatus for generating face rotation image
WO2019155065A1 (en) Neural network systems implementing conditional neural processes for efficient learning
WO2020256704A1 (en) Real-time video ultra resolution
US11030750B2 (en) Multi-level convolutional LSTM model for the segmentation of MR images
US11375176B2 (en) Few-shot viewpoint estimation
US20210248467A1 (en) Data and compute efficient equivariant convolutional networks
JP2017174414A (ja) 画像の調整
US20230237342A1 (en) Adaptive lookahead for planning and learning
JP7188856B2 (ja) 動的な画像解像度評価
RU2734579C1 (ru) Система сжатия искусственных нейронных сетей на основе итеративного применения тензорных аппроксимаций
US11816185B1 (en) Multi-view image analysis using neural networks
US20230394781A1 (en) Global context vision transformer
US20230073175A1 (en) Method and system for processing image based on weighted multiple kernels
CN116361657A (zh) 用于对灰样本标签进行消歧的方法、系统和存储介质
US20230154005A1 (en) Panoptic segmentation with panoptic, instance, and semantic relations
JP2024512344A (ja) 反復的改良を通した効率的なポーズ推定
US20230196093A1 (en) Neural network processing
JP7452698B2 (ja) 画像間の空間的関係をラベリングする強化学習モデル
Qiu et al. Generative image inpainting with dilated deformable convolution
CN115294361A (zh) 一种特征提取的方法及装置
US20240161368A1 (en) Regenerative learning to enhance dense prediction
KR102424538B1 (ko) 영상 복원 방법 및 장치