(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-10
(45)【発行日】2024-01-18
(54)【発明の名称】3次元姿勢の調整方法、装置、電子デバイス及び記憶媒体
(51)【国際特許分類】
G06T 7/70 20170101AFI20240111BHJP
G06T 7/00 20170101ALI20240111BHJP
G06T 7/55 20170101ALI20240111BHJP
【FI】
G06T7/70 Z
G06T7/00 350C
G06T7/00 660Z
G06T7/55
(21)【出願番号】P 2023012138
(22)【出願日】2023-01-30
【審査請求日】2023-01-30
(31)【優先権主張番号】202210108845.7
(32)【優先日】2022-01-28
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】チェン・グアンイン
(72)【発明者】
【氏名】イエ・シアオチン
(72)【発明者】
【氏名】タン・シアオ
(72)【発明者】
【氏名】スン・ハオ
【審査官】真木 健彦
(56)【参考文献】
【文献】国際公開第2021/099778(WO,A1)
【文献】特表2023-502795(JP,A)
【文献】特開2021-111380(JP,A)
【文献】特開2019-092089(JP,A)
【文献】鶴田 清也,仮想ダンスコラボレーションのための感性情報を付与した身体動作の生成とその評価,映像情報メディア学会誌,日本,(社)映像情報メディア学会,2009年12月01日,Vol.63, No.12,P.1807-1814
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/70
G06T 7/00
G06T 7/55
G06T 19/00
(57)【特許請求の範囲】
【請求項1】
現在録画されているビデオを取得し、前記ビデオは、各画像フレームにいずれも仮想3次元モデルが表示される複数の画像フレームを含むステップと、
前記複数の画像フレームに基づいて前記仮想3次元モデルの複数の2次元キーポイント及び初期3次元姿勢を推定して獲得するステップと、
前記複数の2次元キーポイントを利用して前記仮想3次元モデルの目標部位に対して接触検出を行い、検出結果を得て、前記検出結果は前記目標部位と前記仮想3次元モデルが位置する3次元空間内の目標接触面との間に接触が発生したか否かを示すために用いられるステップと、
前記検出結果と前記初期3次元姿勢に対応する複数の初期3次元キーポイントにより、複数の目標3次元キーポイントを決定するステップと、
前記複数の初期3次元キーポイント及び前記複数の目標3次元キーポイントを用いて前記初期3次元姿勢を目標3次元姿勢に調整するステップと、を含む3次元姿勢の調整方法。
【請求項2】
前記複数の画像フレームに基づいて前記複数の2次元キーポイント及び前記初期3次元姿勢を推定して獲得する前記ステップは、
前記複数の画像フレームの各画像フレームから目標領域を検出し、前記目標領域は前記仮想3次元モデルを含むステップと、
前記目標領域に対してトリミング処理を行い、複数の目標画像ブロックを取得するステップと、
前記複数の目標画像ブロックに基づいて前記複数の2次元キーポイント及び初期3次元姿勢を推定して獲得するステップと、を含む請求項1に記載の方法。
【請求項3】
前記複数の目標画像ブロックに基づいて前記複数の2次元キーポイント及び前記初期3次元姿勢を推定して獲得する前記ステップは、
予め設定された2次元推定方式を用いて前記複数の目標画像ブロックから第1推定結果を推定して獲得するステップと、
予め設定された3次元推定方式を用いて前記複数の目標画像ブロックから第2推定結果を推定して獲得するステップと、
前記第1推定結果に対して平滑化処理を行い、前記複数の2次元キーポイントを得て、及び前記第2推定結果に対して平滑化処理を行い、前記初期3次元姿勢を得るステップと、を含む請求項2に記載の方法。
【請求項4】
前記複数の2次元キーポイントを利用して前記目標部位に対して接触検出を行い、前記検出結果を取得する前記ステップは、
予め設定されたニューラルネットワークモデルを用いて前記複数の2次元キーポイントを分析し、前記目標部位に対応する2次元キーポイントの検出タグを得るステップであって、前記予め設定されたニューラルネットワークモデルは複数組のデータを用いて機械学習トレーニングにより得られ、前記複数組のデータにおける各組のデータはいずれも、検出タグ付きの2次元キーポイントを含み、前記検出タグは前記目標部位に対応する2次元キーポイントと前記目標接触面との間に接触が発生したか否かを示すために用いられるステップを含む、請求項1に記載の方法。
【請求項5】
前記初期3次元姿勢の第1姿勢パラメータを利用し、前記複数の初期3次元キーポイントの初期値を決定するステップをさらに含む、請求項4に記載の方法。
【請求項6】
前記検出結果及び前記複数の初期3次元キーポイントにより、前記複数の目標3次元キーポイントを決定する前記ステップは、
前記複数の初期3次元キーポイントの初期値を用いて前記複数の目標3次元キーポイントを初期化し、前記複数の目標3次元キーポイントの初期値を得るステップと、
前記目標部位に対応する3次元キーポイントの前記複数の画像フレームの各画像フレームにおける表示位置及び前記表示位置に対応する検出タグを取得するステップと、
前記表示位置に対応する検出タグに基づき、前記複数の目標3次元キーポイントから一部の3次元キーポイントを選択し、選択された一部の3次元キーポイントと前記目標接触面との間に接触が発生するステップと、
選択された一部の3次元キーポイントの表示位置に対して平均値計算を行い、更新対象位置を得るステップと、
前記更新対象位置に応じて前記複数の目標3次元キーポイントの初期値を更新し、前記複数の目標3次元キーポイントの目標値を得るステップと、を含む請求項5に記載の方法。
【請求項7】
前記複数の初期3次元キーポイント及び前記複数の目標3次元キーポイントを用いて前記初期3次元姿勢を前記目標3次元姿勢に調整する前記ステップは、
前記複数の初期3次元キーポイントの初期値と前記複数の目標3次元キーポイントの目標値を用いて、前記第1姿勢パラメータを最適化し、第2姿勢パラメータを得るステップと、
前記第2姿勢パラメータに基づいて前記初期3次元姿勢を前記目標3次元姿勢に調整するステップと、を含む請求項6に記載の方法。
【請求項8】
現在録画されているビデオを取得するために用いられ、前記ビデオは、各画像フレームにいずれも仮想3次元モデルが表示される複数の画像フレームを含む取得モジュールと、
前記複数の画像フレームに基づいて前記仮想3次元モデルの複数の2次元キーポイント及び初期3次元姿勢を推定して獲得するために用いられる推定モジュールと、
前記複数の2次元キーポイントを利用して前記仮想3次元モデルの目標部位に対して接触検出を行い、検出結果を得るために用いられ、前記検出結果は前記目標部位と前記仮想3次元モデルが位置する3次元空間内の目標接触面との間に接触が発生したか否かを示すために用いられる検出モジュールと、
前記検出結果と前記初期3次元姿勢に対応する複数の初期3次元キーポイントにより、複数の目標3次元キーポイントを決定するために用いられる決定モジュールと、
前記複数の初期3次元キーポイント及び前記複数の目標3次元キーポイントを用いて前記初期3次元姿勢を目標3次元姿勢に調整するために用いられる調整モジュールと、を含む3次元姿勢の調整装置。
【請求項9】
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに通信接続されるメモリと、を含み、
前記メモリは前記少なくとも1つのプロセッサによって実行可能なコマンドを記憶し、前記コマンドは前記少なくとも1つのプロセッサによって実行され、それにより前記少なくとも1つのプロセッサは請求項1~7のいずれか一項に記載の方法を実行することができる電子デバイス。
【請求項10】
請求項1~7のいずれか一項に記載の方法をコンピュータに実行させるためのコンピュータコマンドを記憶した非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項11】
プロセッサによって実行されると、請求項1~7のいずれか一項に記載の方法を実現するコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は人工知能分野に関し、具体的にはコンピュータビジョン及びディープラーニング技術に関し、具体的には3次元ビジョン及び人体駆動のシーンに用いられ、特に3次元姿勢の調整方法、装置、電子デバイス及び記憶媒体に関する。
【背景技術】
【0002】
人工知能分野においては、常に人体の3次元姿勢を取得する必要がある。従来の人体3次元姿勢の推定方法には、モーションキャプチャスーツ、光学式キャプチャデバイス等の複雑なモーションキャプチャデバイスを使用する必要があり、そのためデバイスには、単眼ビデオに基づくシンプルなモーションキャプチャ技術を幅広く応用することが求められている。これについて、当業者は単眼ビデオに基づいて人体3次元姿勢を推定する様々なアルゴリズムを継続的に試みている。
【0003】
従来の解決手段における単眼ビデオに基づいて人体3次元姿勢を推定するアルゴリズムにおいては、人体の足部接地効果の制約モデルが最適化されておらず、すなわち、該アルゴリズムの精度が低く、該アルゴリズムで推定された人体3次元姿勢にはジッタ―が存在し、人体の足部動作に明らかな浮遊感が存在する。
【0004】
上記課題に対して、現在まで有効な解決手段は提供されていない。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本開示は、アルゴリズムにおいて人体の足部接地効果の制約モデルが最適化されていないため、人体の3次元姿勢に対する推定が正確ではなく、人体の足部動作に明らかな浮遊感が存在するという従来技術の技術的課題を少なくとも解決する3次元姿勢の調整方法、装置、電子デバイス及び記憶媒体を提供する。
【課題を解決するための手段】
【0006】
本開示の一実施例によれば、現在録画されているビデオを取得し、ここで、ビデオは、各画像フレームにいずれも仮想3次元モデルが表示される複数の画像フレームを含むステップと、複数の画像フレームに基づいて仮想3次元モデルの複数の2次元キーポイント及び初期3次元姿勢を推定して獲得するステップと、複数の2次元キーポイントを利用して仮想3次元モデルの目標部位に対して接触検出を行い、検出結果を得て、ここで、検出結果は目標部位と仮想3次元モデルが位置する3次元空間内の目標接触面との間に接触が発生したか否かを示すために用いられるステップと、検出結果と初期3次元姿勢に対応する複数の初期3次元キーポイントにより、複数の目標3次元キーポイントを決定するステップと、複数の初期3次元キーポイント及び複数の目標3次元キーポイントを用いて初期3次元姿勢を目標3次元姿勢に調整するステップと、を含む3次元姿勢の調整方法を提供する。
【0007】
本開示の一実施例によれば、現在録画されているビデオを取得するために用いられ、ここで、ビデオは、各画像フレームにいずれも仮想3次元モデルが表示される複数の画像フレームを含む取得モジュールと、複数の画像フレームに基づいて仮想3次元モデルの複数の2次元キーポイント及び初期3次元姿勢を推定して獲得するために用いられる推定モジュールと、複数の2次元キーポイントを利用して仮想3次元モデルの目標部位に対して接触検出を行い、検出結果を得るために用いられ、ここで、検出結果は目標部位と仮想3次元モデルが位置する3次元空間内の目標接触面との間に接触が発生したか否かを示すために用いられる検出モジュールと、検出結果と初期3次元姿勢に対応する複数の初期3次元キーポイントにより、複数の目標3次元キーポイントを決定するために用いられる決定モジュールと、複数の初期3次元キーポイント及び複数の目標3次元キーポイントを用いて初期3次元姿勢を目標3次元姿勢に調整するために用いられる調整モジュールと、を含む3次元姿勢の調整装置をさらに提供する。
【0008】
本開示の一実施例によれば、少なくとも1つのプロセッサ及び少なくとも1つのプロセッサと通信接続されたメモリを含み、メモリは少なくとも1つのプロセッサによって実行可能なコマンドを記憶し、コマンドは少なくとも1つのプロセッサによって実行され、それにより少なくとも1つのプロセッサは本開示が提供する3次元姿勢の調整方法を実行することができる電子デバイスをさらに提供する。
【0009】
本開示の一実施例によれば、コンピュータコマンドを記憶し、コンピュータコマンドは、コンピュータに本開示が提供する3次元姿勢の調整方法を実行させるために使用される非一時的なコンピュータ読み取り可能記憶媒体をさらに提供する。
【0010】
本開示の一実施例によれば、コンピュータプログラムを含み、コンピュータプログラムはプロセッサにより本開示が提供する3次元姿勢の調整方法を実行するコンピュータプログラム製品をさら提供する。
【0011】
本開示の実施例において、現在録画されているビデオを取得し、ここで、ビデオは、各画像フレームにいずれも仮想3次元モデルが表示される複数の画像フレームを含み、複数の画像フレームに基づいて仮想3次元モデルの複数の2次元キーポイント及び初期3次元姿勢を推定して獲得し、且つ複数の2次元キーポイントを利用して仮想3次元モデルの目標部位に対して接触検出を行い、検出結果を得て、ここで、検出結果は目標部位と仮想3次元モデルが位置する3次元空間内の目標接触面との間に接触が発生したか否かを示すために用いられ、検出結果と初期3次元姿勢に対応する複数の初期3次元キーポイントにより複数の目標3次元キーポイントを決定する方法を採用し、複数の初期3次元キーポイント及び複数の目標3次元キーポイントを用いて初期3次元姿勢を目標3次元姿勢に調整することにより、単眼ビデオに基づいて人体3次元姿勢を推定するアルゴリズムを改善するという目的を達成し、単眼ビデオに基づいて人体3次元姿勢を推定するアルゴリズムに接地制約を加えることによって人体の足部動作の安定性を向上させるという技術的効果を実現し、従来技術におけるアルゴリズムにおいて人体の足部接地効果の制約モデルが最適化されていないため、人体3次元姿勢に対する推定が正確ではなく、人体の足部動作に明らかな浮遊感が存在するという技術的課題を解決する。
【0012】
この部分の説明は、本開示の実施例のキーポイント又は重要な特徴を識別することを意図したものではなく、本開示の範囲を限定することを意図したものでもないことを理解されたい。本開示の他の特徴は、以下の明細書によって容易に理解される。
【0013】
図面は本解決手段をよりよく理解するためのものであり、本開示を限定するものではない。
【図面の簡単な説明】
【0014】
【
図1】
図1は本開示の実施例に係る3次元姿勢の調整方法を実現するためのコンピュータ端末(又はモバイルデバイス)のハードウェア構成ブロック図である。
【
図2】
図2は本開示の実施例による3次元姿勢の調整方法のフローチャートである。
【
図3】
図3は本開示の実施例の好ましい3次元姿勢の調整方法に基づき人体立位姿勢の足部動作を推定した結果の概略図である。
【
図4】
図4は本開示の実施例の好ましい3次元姿勢の調整方法に基づき人体歩行姿勢の足部動作を推定した結果の概略図である。
【
図5】
図5は本開示の実施例による3次元姿勢の調整装置の構造ブロック図である。
【発明を実施するための形態】
【0015】
以下、図面を参照しながら本開示の例示的な実施例を説明し、理解しやすいように、本開示の実施例の詳細を含むが、例示的なものにすぎないとみなされる。したがって、当業者が認識すべきことは、本開示の範囲と主旨から逸脱することなく、明細書に記載の実施例に対して様々な変更及び修正を行ってもよい。同様に、以下の説明では、公知な機能および構造についての説明は、明瞭かつ簡明のために省略される。
【0016】
なお、本開示の明細書と特許請求の範囲、及び上記図面における「第1」、「第2」等の用語は類似の対象を区別するために用いられるものであり、特定の順序又は前後を説明するために用いられる必要はない。このように使用される用語は、本明細書で説明される本開示の実施例を本明細書で図示又は説明された以外の順序で実施するために、適切な状況で交換され得ることを理解されたい。また、「含む」及び「有する」という用語及びそれらの任意の同義語は、排他的でない包含を網羅することを意図しており、例えば、一連のステップ又はユニットを含むプロセス、方法、システム、製品又は装置が明示的に列挙されたそれらのステップ又はユニットに限定される必要はなく、明示的に列挙されないもの、或いはこれらのプロセス、方法、製品又は装置に固有の他のステップ又はユニットを含むことができる。
【0017】
本開示によれば、3次元姿勢の調整方法を提供し、なお、図面のフローチャートに示されるステップは、コマンドの実行が可能な一組のコンピュータのようなコンピュータシステムにおいて実行されることができる。且つ、フローチャートに論理的順序が示されているが、ある状況において、ここに示される又は説明されるステップと異なる順序で実施されることができる。
【0018】
本開示の実施例が提供する方法実施例は、移動端末、コンピュータ端末又は類似の電子デバイスによって実行されることができる。電子デバイスとは、ノートパソコン、デスクトップパソコン、ワークステーション、パーソナルデジタルアシスタント、サーバー、ブレードサーバー、大規模コンピューター、及びその他の適合するコンピューターなどの様々な形態のデジタルコンピューターを意味する。電子デバイスは、例えば、パーソナルデジタルプロセッシング、携帯電話、スマートフォン、ウェアラブルデバイス、その他同様のコンピューティングデバイスなど、様々な形態のモバイルデバイスを示すこともある。本明細書に示された構成要素、それらの接続および関係、ならびにそれらの機能は、例としてのみ意図されており、本明細書に記載および/または請求された本開示の実施を制限することを意図するものではない。
図1は3次元姿勢の調整方法を実現するためのコンピュータ端末(又はモバイルデバイス)のハードウェア構成ブロック図である。
【0019】
図1に示すように、コンピュータ端末100は、リードオンリーメモリ(ROM)102に記憶されたコンピュータプログラム、又はメモリユニット108からランダムアクセスメモリ(RAM)103にロードされたコンピュータプログラムに従って、各種の適切な動作及び処理を実行することができる計算ユニット101を備える。RAM103にはさらに、コンピュータ端末100の動作に必要な各種プログラムやデータが記憶されてもよい。計算ユニット101、ROM102及びRAM103は、バス104を介して相互に接続される。入出力(I/O)インタフェース105もバス104に接続される。
【0020】
コンピュータ端末100におけるキーボード、マウス等の入力ユニット106と、各種ディスプレイ、スピーカ等の出力ユニット107と、磁気ディスク、光ディスク等の記憶ユニット108と、ネットワークカード、モデム、無線通信送受信機等の通信ユニット109と、を含む複数の部品はI/Oインタフェース105に接続される。通信ユニット109は、コンピュータ端末100がインターネット等のコンピュータネットワーク及び/又は様々な電気通信ネットワークを介して、他の機器と情報/データを交換することを可能にする。
【0021】
計算ユニット101は様々な処理及び計算能力を有する汎用及び/又は専用の処理コンポーネントであってもよい。計算ユニット101のいくつかの例として、中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、各種の専用の人工知能(AI)計算チップ、機械学習モデルアルゴリズムを実行する各種の計算ユニット、デジタル信号プロセッサ(DSP)、及び任意の適切なプロセッサ、コントローラ、マイクロコントローラなどを含むが、これらに限定されない。計算ユニット101は、本明細書に記載の3次元姿勢の調整方法を実行する。例えば、いくつかの実施形態では、3次元姿勢の調整方法は、メモリユニット108などの機器読み取り可能媒体に有形に含まれるコンピュータソフトウェアプログラムにおいて実現することができる。いくつかの実施例では、コンピュータプログラムの一部又は全部は、ROM102及び/又は通信ユニット109を介してコンピュータ端末100にロード及び/又はインストールされることができる。コンピュータプログラムがRAM103にロードされ且つ計算ユニット101によって実行される時、本明細書で説明される故障したハードディスクの位置を特定する方法の1つ又は複数のステップを実行することができる。あるいは、他の実施例では、計算ユニット101は、他の任意の適切な手段(例えばファームウェアを用いるなど)によって、故障したハードディスクの位置を特定する方法を実行するように構成されてもよい。
【0022】
本明細書で説明されるシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップシステム(SOC)、コンプレックスプログラマブルロジックデバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせにおいて実現することができる。これらの様々な実施形態は、以下を含むことができる。1つ又は複数のコンピュータプログラムにおいて実施され、該1つ又は複数のコンピュータプログラムは少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステムにおいて実行及び/又は解釈することができ、該プログラマブルプロセッサは専用又は汎用のプログラマブルプロセッサであってもよく、メモリシステム、少なくとも1つの入力装置、及び少なくとも1つの出力装置からデータ及びコマンドを受信し、且つデータ及びコマンドを該メモリシステム、該少なくとも1つの入力装置、及び該少なくとも1つの出力装置に送信することができる。
【0023】
なお、いくつかの好ましい実施例において、上記
図1に示す電子デバイスはハードウェア素子(回路を含む)、ソフトウェア素子(コンピュータで読み取り可能な媒体に記憶されたコンピュータコードを含む)、又はハードウェア素子とソフトウェア素子の両者の組み合わせを含むことができる。なお、
図1は、具体的な実施例の例示に過ぎず、上述した電子デバイス内に存在し得る部品の種類を示したものである。
【0024】
上記動作環境において、本開示は
図2に示す3次元姿勢の調整方法を提供し、該方法は
図1に示すコンピュータ端末又は類似の電子デバイスによって実行されることができる。
図2は本開示の実施例による3次元姿勢の調整方法のフローチャートである。
図2に示すように、該方法は以下のステップを含むことができる。
【0025】
ステップS20では、現在録画されているビデオを取得し、ここで、ビデオは、各画像フレームにいずれも仮想3次元モデルが表示される複数の画像フレームを含む。
【0026】
上記現在録画されているビデオは静止カメラで録画された単眼ビデオであってもよく、該現在録画されているビデオは複数の画像フレームを含むことができ、ここで、各画像フレームにいずれも仮想3次元モデルが表示される。上記仮想3次元モデルは仮想人体モデルであってもよい。すなわち、上記現在録画されているビデオは仮想人体モデルの運動状態を表示するビデオである。
【0027】
例えば、所定の単眼人体運動ビデオに対して、Video1と記し、該ビデオはT個の画像フレームを含み、ここで、各画像フレームはいずれも該人体モデルを表示する。本開示の実施例によれば、Video1に基づいて安定した人体3次元姿勢を推定し、最適化調整することができる。
【0028】
ステップS22では、複数の画像フレームに基づいて仮想3次元モデルの複数の2次元キーポイント及び初期3次元姿勢を推定して獲得する。
【0029】
上記複数の2次元キーポイントは2次元ビデオにおける該仮想3次元モデルの表示領域内で選択された研究用のポイントであってもよい。現在録画されているビデオにおける複数の画像フレームに対して推定を行い、上記仮想3次元モデルの複数の2次元キーポイント及びモデル3次元姿勢を得ることができ、該推定して得られたモデル3次元姿勢を初期3次元姿勢と見なす。
【0030】
引き続きVideo1に基づいた人体3次元姿勢の調整を例として、Video1におけるT個の画像フレームに基づき、該仮想人体モデルのT個の画像フレームの各画像フレームにおける2次元キーポイント2DP*及び初期3次元姿勢3DS*を推定して獲得することができ、ここで、初期3次元姿勢3DS*は関連する姿勢パラメータで表すことができる。
【0031】
ステップS24では、複数の2次元キーポイントを利用して仮想3次元モデルの目標部位に対して接触検出を行い、検出結果を得て、ここで、検出結果は目標部位と仮想3次元モデルが位置する3次元空間内の目標接触面との間に接触が発生したか否かを示すために用いられる。
【0032】
上記複数の2次元キーポイントは2次元ビデオにおける該仮想3次元モデルの目標部位の表示領域内で選択された研究用のポイントであってもよい。該複数の2次元キーポイントを利用して該仮想3次元モデルの該目標部位に対して接触検出を行い、上記検出結果を得ることができる。ここで、接触検出は該仮想3次元モデルの目標部位と上記3次元空間の目標接触面との間の接触状況を検出するために用いられ、検出結果は該目標部位と該仮想3次元モデルが位置する3次元空間内の目標接触面との間に接触が発生したか否かを示すために用いられる。
【0033】
引き続きVideo1に基づいた人体3次元姿勢の調整を例として、該仮想人体モデルの左右足の爪先及び踵を選択して目標部位とし、該目標部位はそれぞれ4つの2次元キーポイントに対応する。A点は左足の爪先に対応し、B点は左足の踵に対応し、C点は右足の爪先に対応し、D点は右足の踵に対応し、該仮想人体モデルが位置する3次元空間点の地面を目標接触面として選択する。上記A、B、C、Dの4つのキーポイントと上記地面との間の位置関係を検出することにより、上記左右足の爪先及び踵と上記地面との間に接触が発生したか否かを判断することができ、且つ該左右足の爪先及び踵と地面との間の接触状況を検出結果として保存し、R{A、B、C、D}と表記する。
【0034】
ステップS26では、検出結果と初期3次元姿勢に対応する複数の初期3次元キーポイントにより、複数の目標3次元キーポイントを決定する。
【0035】
上記初期3次元キーポイントは上記初期3次元姿勢に対応する複数のキーポイントであり、該仮想3次元モデルの目標部位と上記3次元空間の目標接触面との間の接触状況の検出結果及び該複数の初期3次元キーポイントにより、複数の目標3次元キーポイントを決定することができる。
【0036】
【0037】
ステップS28では、複数の初期3次元キーポイント及び複数の目標3次元キーポイントを用いて初期3次元姿勢を目標3次元姿勢に調整する。
【0038】
上記複数の初期3次元キーポイント及び上記複数の目標3次元キーポイントに基づき、上記初期3次元姿勢を上記目標3次元姿勢に調整することができる。該初期3次元キーポイントは上記仮想3次元モデルの初期3次元姿勢に対応し、該目標3次元キーポイントは該初期3次元キーポイントを上記検出結果に基づいて変換して得られたものである。
【0039】
該仮想3次元モデルの目標部位と上記3次元空間の目標接触面との間の接触状況を検出することにより、該仮想3次元モデルの初期3次元姿勢を目標3次元姿勢に変換し、該仮想3次元モデルに対する3次元姿勢の最適化操作を実現する。
【0040】
【0041】
図3は本開示の実施例の好ましい3次元姿勢の調整方法に基づき人体立位姿勢の足部動作を推定した結果の概略図であり、
図4は本開示の実施例の好ましい3次元姿勢の調整方法に基づき人体歩行姿勢の足部動作を推定した結果の概略図である。
図3及び
図4に示すように、改良前のアルゴリズムで推定された人体の足部動作は本開示の実施例における初期3次元姿勢3DS*に対応し、本開示の実施例により改良後のアルゴリズムで推定された人体の足部動作は目標3次元姿勢#3DS*に対応する。該初期3次元姿勢3DS*と比べて、目標3次元姿勢#3DS*が表現する人体の足部動作は浮遊感が軽減され、より安定しており、仮想人体の3次元姿勢がよりリアルである。
【0042】
本開示の実施例に基づく3次元姿勢の調整方法は、所定の単眼ビデオに基づき、足部接地動作が安定した人体3次元姿勢を推定することができ、本開示の実施例の応用シーンはアバター、人体駆動、拡張現実、複合現実等を含む。
【0043】
本開示の上記ステップS20からステップS28に基づき、現在録画されているビデオを取得し、ここで、ビデオは、各画像フレームにいずれも仮想3次元モデルが表示される複数の画像フレームを含む。複数の画像フレームに基づいて仮想3次元モデルの複数の2次元キーポイント及び初期3次元姿勢を推定して獲得し、且つ複数の2次元キーポイントを利用して仮想3次元モデルの目標部位に対して接触検出を行い、検出結果を得て、ここで、検出結果は目標部位と仮想3次元モデルが位置する3次元空間内の目標接触面との間に接触が発生したか否かを示すために用いられ、検出結果と初期3次元姿勢に対応する複数の初期3次元キーポイントにより、複数の目標3次元キーポイントを決定する方法を採用し、複数の初期3次元キーポイント及び複数の目標3次元キーポイントを用いて初期3次元姿勢を目標3次元姿勢に調整することにより、単眼ビデオに基づいて人体3次元姿勢を推定するアルゴリズムを改善するという目的を達成し、単眼ビデオに基づいて人体3次元姿勢を推定するアルゴリズムに接地制約を加えることによって人体の足部動作の安定性を向上させるという技術的効果を実現し、従来技術におけるアルゴリズムにおいて人体の足部接地効果の制約モデルが最適化されていないため、人体3次元姿勢に対する推定が正確ではなく、人体の足部動作に明らかな浮遊感が存在するという技術的課題を解決する。
【0044】
以下に該実施例の上記方法をさらに説明する。
好ましい実施形態として、ステップS22において、複数の画像フレームに基づいて複数の2次元キーポイント及び初期3次元姿勢を推定して獲得するステップは以下のステップを含む。
【0045】
ステップS221では、複数の画像フレームの各画像フレームから目標領域を検出し、ここで、目標領域は仮想3次元モデルを含む。
【0046】
ステップS222では、目標領域に対してトリミング処理を行い、複数の目標画像ブロックを取得する。
【0047】
ステップS223では、複数の目標画像ブロックに基づいて複数の2次元キーポイント及び初期3次元姿勢を推定して獲得する。
【0048】
上記複数の画像フレームは上記現在録画されているビデオにフレーミング操作を行って得られたものであってもよく、該複数の画像フレームの各画像フレームはいずれも上記仮想3次元モデルを含む。複数の画像フレームの各画像フレームから目標領域を検出する上記プロセスは該各画像フレームを検出し、該画像フレームにおける該仮想3次元モデルに属する複数の画素を目標領域としてマークすることであってもよい。
【0049】
上記複数の画像フレームの各画像フレームに対応する目標領域に基づき、該複数の画像フレームの各画像フレームに対してトリミング処理を行い、複数の目標画像ブロックを取得する。該複数の目標画像ブロックに基づき、推定アルゴリズムを用いて初期3次元姿勢を得ることができ、該初期3次元姿勢は初期3次元姿勢パラメータで表すことができる。
【0050】
引き続きVideo1に基づいた人体3次元姿勢の調整を例として、Video1におけるT個の画像フレームの各画像フレームにいずれも上記仮想人体モデルが表示され、該仮想人体モデルを目標領域とし、人体画像分割モデルを介してVideo1におけるT個の画像フレームの各画像フレームに対して人体画像分割を行い、即ち画像フレームにおける該目標領域に属する画素を識別し、且つ該仮想人体モデルを中心とする画像ブロックを切り出し、Ptと表記する。該画像ブロックPtを推定することにより、複数の2次元キーポイント2DP*と初期3次元姿勢3DS*を得ることができる。
【0051】
好ましくは、上記人体画像分割モデルは高速な領域ベースの畳み込みニューラルネットワークモデル(FasterRegion-Convolutional Neural Network、略称Faster R-CNN)であってもよく、又は、該人体画像分割モデルはさらにFaster R-CNNに基づいて分割マスク予測の分岐を追加したマスク領域ベースの畳み込みニューラルネットワークモデル(Mask Region-Convolutional Neural Network、略称Mask R-CNN)であってもよい。
【0052】
好ましい実施形態として、ステップS223において、複数の目標画像ブロックに基づいて複数の2次元キーポイント及び初期3次元姿勢を推定して獲得するステップは以下のステップを含む。
【0053】
ステップS2231では、予め設定された2次元推定方式を用いて複数の目標画像ブロックから第1推定結果を推定して獲得する。
【0054】
ステップS2232では、予め設定された3次元推定方式を用いて複数の目標画像ブロックから第2推定結果を推定して獲得する。
【0055】
ステップS2233では、第1推定結果に対して平滑化処理を行い、複数の2次元キーポイントを得て、及び第2推定結果に対して平滑化処理を行い、初期3次元姿勢を得る。
【0056】
上記予め設定された2次元推定方式は、上記複数の目標画像ブロックに基づいて上記第1推定結果を推定して獲得することができ、ここで、該第1推定結果は上記仮想3次元モデルの2次元キーポイントを得るために用いることができる。
【0057】
上記予め設定された3次元推定方式は、上記複数の目標画像ブロックに基づいて上記第2推定結果を推定して獲得することができ、ここで、該第2推定結果は上記仮想3次元モデルの初期3次元姿勢を得るために用いることができる。
【0058】
上記第1推定結果に基づいて、平滑化処理を経て上記仮想3次元モデルの複数の2次元キーポイントを得ることができ、上記第2推定結果に基づいて、平滑化処理を経て上記仮想3次元モデルの初期3次元姿勢を得ることができ、ここで、該初期3次元姿勢は初期3次元姿勢パラメータで表すことができる。
【0059】
引き続きVideo1に基づいた人体3次元姿勢の調整を例として、上記画像ブロックPtを使用し、Part Affinity Fieldsに基づく複数人2次元姿勢リアルタイム推定法(Realtime Multi-Person2D Pose Estimationusing Part Affinity Fields)によって、仮想人体モデルの元の2次元キーポイントを推定し、2DPと表記する。
【0060】
上記人体画像ブロックを使用し、モデルフィッティングサイクルに基づき人体3次元形態を再構成する学習トレーニング法(Learning to Reconstruct 3D Human Pose and Shape via Model-fitting in theLoop)によって、仮想人体モデルの元の3次元姿勢を推定して獲得し、3DSと表記し、且つ該元の3次元姿勢3DSをスキン複数人体線形モデル(A Skinned Multi-Person Linear Model、略称SMPLモデル)によって元の3次元姿勢パラメータθとして表す。
【0061】
上記仮想人体モデルの元の2次元キーポイント2DPに対して平滑化処理を行い、2次元キーポイント2DP*を得ることができる。上記元の3次元姿勢パラメータθに対して平滑化処理を行い、3次元姿勢パラメータθ’を得ることができ、該3次元姿勢パラメータθ’は上記初期3次元姿勢を表すために用いられる。該平滑化処理は上記2次元キーポイント及び人体3次元姿勢パラメータのデータ品質を向上させることができ、更に後続の計算の精度を向上させる。
【0062】
好ましくは、上記平滑化処理は、ローパスフィルタ(Low-pass filter)を用いて実現してもよい。ローパスフィルタはフィルタリングの形態であり、低周波信号の通過を許容するが、カットオフ周波数より高い周波数の信号の通過を低下又は減少させる。画像処理分野において、ローパスフィルタは画像の平滑化フィルタリングに用いられ、画像のノイズ除去、画像強調、画像合成等の効果を実現する。
【0063】
好ましい実施形態として、ステップS24では、複数の2次元キーポイントを利用して目標部位に対して接触検出を行い、検出結果を得るステップは以下のステップを含む。
【0064】
ステップS241では、予め設定されたニューラルネットワークモデルを用いて複数の2次元キーポイントを分析し、目標部位に対応する2次元キーポイントの検出タグを得て、ここで、予め設定されたニューラルネットワークモデルは複数組のデータを用いて機械学習トレーニングにより得られ、複数組のデータにおける各組のデータはいずれも、検出タグ付きの2次元キーポイントを含み、検出タグは目標部位に対応する2次元キーポイントと目標接触面との間に接触が発生したか否かを示すために用いられる。
【0065】
上記検出タグは該仮想3次元モデルの目標部位とそれが位置する3次元空間内の目標接触面との間の接触状況に対する検出結果とすることができる。上記複数の2次元キーポイントに基づき、上記予め設定されたニューラルネットワークモデルを用いて該仮想3次元モデルの目標部位に対応する2次元キーポイントの該検出タグを分析して得る。
【0066】
上記予め設定されたニューラルネットワークモデルは複数組のデータに基づいて機械学習訓練により得ることができ、該複数組のデータにおける各組のデータはいずれも検出タグ付きの2次元キーポイントを含み、ここで、検出タグは上記目標部位に対応する2次元キーポイントと上記目標接触面との間に接触が発生したか否かを示すために用いられる。
【0067】
引き続きVideo1に基づいた人体3次元姿勢の調整を例として、接地検出ニューラルネットワークモデルをトレーニングし、該接地検出ニューラルネットワークモデルを用いてVideo1におけるT個の画像フレームから得られた複数の2次元キーポイント2DP*を分析し、該仮想人体モデルの左右足の爪先及び踵に対応する2次元キーポイントA、B、C、Dの検出タグr(A)、r(B)、r(C)、r(D)を得ることができる。
【0068】
好ましくは、上記接地検出ニューラルネットワークモデルのトレーニングプロセスは以下のとおりである。トレーニングに用いられる初期ニューラルネットワークは3次元構造の畳み込みニューラルネットワークであり、二値交差エントロピー誤差関数を用いて該初期ニューラルネットワークをトレーニングし、ここで、トレーニングに使用されるデータは手動で接地タグをマーキングする該仮想人体モデルの複数の2次元キーポイントであってもよく、接地タグ付きの該仮想人体モデルの複数の2次元キーポイントで合成されたデータセットであってもよい。
【0069】
好ましくは、上記接地検出ニューラルネットワークモデルがVideo1におけるT個の画像フレームのn番目の画像フレームにおける4つの2次元キーポイントA、B、C、Dを分析するプロセスは以下のとおりである。n番目の画像フレームを取得し、同時に該画像フレームの前後でそれぞれ5つの隣接する画像フレームを取得し、すなわちn-5番目の画像フレームからn+5番目の画像フレームまで、計11個の隣接する画像フレームを取得し、該11個の隣接する画像フレームの中間画像フレームはn番目の画像フレームである。該11個の隣接する画像フレームを該接地検出ニューラルネットワークモデルに入力する。該接地検出ニューラルネットワークモデルの計算により、n番目の画像フレーム内の該仮想人体モデルの足部接地検出タグを出力し、r(A)、r(B)、r(C)、r(D)と表記する。
【0070】
上記検出タグは該仮想人体モデルの足部が地面に接触するか否かを示すために用いられる。例として、2次元キーポイントAは該仮想人体モデルの左爪先に対応し、検出タグr(A)は該仮想人体モデルの左爪先が地面と接触する確率を示す。上記仮想人体モデルの複数の2次元キーポイントに対応する検出タグは即ち上記検出結果R{A、B、C、D}である。
【0071】
好ましい実施形態として、3次元姿勢の調整方法はさらに以下のステップを含む。
ステップS30では、初期3次元姿勢の第1姿勢パラメータを利用し、複数の初期3次元キーポイントの初期値を決定する。
【0072】
上記第1姿勢パラメータは上記仮想3次元モデルの初期3次元姿勢パラメータであってもよく、該第1姿勢パラメータにより、上記複数の初期3次元キーポイントの初期値を決定することができ、該初期値は該初期3次元キーポイントの位置座標であってもよい。
【0073】
引き続きVideo1に基づいた人体3次元姿勢の調整を例として、上記初期3次元姿勢パラメータθ’に基づき、人体の初期3次元キーポイントの初期位置を得ることができ、J3Dと表記する。該初期3次元キーポイントの初期位置J3Dを、該初期3次元キーポイントの初期値とする。
【0074】
好ましい実施形態として、ステップS26では、検出結果と複数の初期3次元キーポイントにより、複数の目標3次元キーポイントを決定するステップは、以下のステップを含む。
【0075】
ステップS261では、複数の初期3次元キーポイントの初期値を用いて複数の目標3次元キーポイントを初期化し、複数の目標3次元キーポイントの初期値を得る。
【0076】
ステップS262では、目標部位に対応する3次元キーポイントの複数の画像フレームの各画像フレームにおける表示位置及び表示位置に対応する検出タグを取得する。
【0077】
ステップS263では、表示位置に対応する検出タグに基づき、複数の目標3次元キーポイントから一部の3次元キーポイントを選択し、ここで、選択された一部の3次元キーポイントと目標接触面との間に接触が発生する。
【0078】
ステップS264では、選択された一部の3次元キーポイントの表示位置に対して平均値計算を行い、更新対象位置を得る。
【0079】
ステップS265では、更新対象位置に応じて複数の目標3次元キーポイントの初期値を更新し、複数の目標3次元キーポイントの目標値を得る。
【0080】
上記複数の初期3次元キーポイントの初期値を取得し、該初期値を用いて複数の目標3次元キーポイントに対して対応する初期化を行い、該複数の目標3次元キーポイントの初期値を得ることができる。ここで、一度の初期化操作は、ある初期3次元キーポイントの初期値を該初期3次元キーポイントに対応する目標3次元キーポイントに割り当てることであってもよい。
【0081】
上記仮想3次元モデルの目標部位に対して、対応する目標3次元キーポイントが存在し、該目標3次元キーポイントの現在録画されているビデオにおける複数の画像フレームの各画像フレームにおける表示位置を取得することができ、該表示位置は該目標3次元キーポイントの対応する画像フレームにおける位置座標で表すことができ、同時に該表示位置に対応する検出タグを取得し、該検出タグは該表示位置における該目標部位に対応する目標3次元キーポイントと上記目標接触面との間に接触が発生したか否かを示すために用いられる。
【0082】
上記複数の表示位置に対応する複数の検出タグにより、上記複数の目標3次元キーポイントと上記目標接触面との間が接触するか否かを得ることができ、さらに該複数の目標3次元キーポイントから該目標接触面と接触する一部の3次元キーポイントを選択し、且つ該一部の3次元キーポイントの表示位置を取得し、該表示位置は該一部の3次元キーポイントの対応する画像フレームにおける位置座標を用いて表すことができる。
【0083】
上記一部の3次元キーポイントの表示位置に対して平均値計算を行い、計算して得られた平均値を対応する目標3次元キーポイントに該目標3次元キーポイントの目標値として割り当てる。前記操作によって複数の目標3次元キーポイントに対応する位置を更新する。
【0084】
【0085】
【0086】
好ましい実施形態として、ステップS28では、複数の初期3次元キーポイント及び複数の目標3次元キーポイントを用いて初期3次元姿勢を目標3次元姿勢に調整するステップは以下のステップを含む。
【0087】
ステップS281では、複数の初期3次元キーポイントの初期値と複数の目標3次元キーポイントの目標値を用いて、第1姿勢パラメータを最適化し、第2姿勢パラメータを得る。
【0088】
ステップS282では、第2姿勢パラメータに基づいて初期3次元姿勢を目標3次元姿勢に調整する。
【0089】
複数の初期3次元キーポイントの上記初期値と複数の目標3次元キーポイントの上記目標値に基づき、該第1姿勢パラメータを最適化して該第2姿勢パラメータを得ることができる。上記第1姿勢パラメータは上記仮想3次元モデルの初期3次元姿勢パラメータであってもよく、上記第2姿勢パラメータは上記仮想3次元モデルの目標3次元姿勢パラメータであってもよい。これにより、第2姿勢パラメータに基づき、上記仮想3次元モデルの初期3次元姿勢を目標3次元姿勢に調整することができ、即ち該仮想3次元モデルの3次元姿勢の最適化を実現する。
【0090】
【0091】
最適化された目標3次元姿勢パラメータに基づき、該仮想人体モデルの左右足の爪先及び踵の姿勢を調整及び最適化することができ、最終的に表現される該仮想人体モデルの足の動きにおいてジッタ―を減少させて、浮遊感を軽減し、Video1に基づいて推定された人体3次元姿勢をよりリアルにする。
【0092】
特に、上記最適化プロセスで使用される最適化方法はランダム最適化法(A Method for Stochastic Optimization、略称ADAM)又は記憶制限BFGS法(Limited-memory BFGS)であってもよく、ここで、BFGS法はBroyden(C.G.Broyden)、Fletcher(R.Fletcher)、Goldfarb(D.Goldfarb)及びShanno(D.F.Shanno)によって研究され、そこから命名されたものである。
【0093】
以上の実施形態の説明により、当業者は上記実施例の方法がソフトウェア及び必要な汎用ハードウェアプラットフォームの方式によって実現できることを明確に理解でき、当然ながらハードウェアであってもよいが、多くの場合に前者はより好ましい実施形態である。このような理解に基づき、本開示の技術的解決手段は実質的に、又は従来技術に寄与する部分をソフトウェア製品の形式で具現化することができ、該コンピュータソフトウェア製品は記憶媒体に記憶され、いくつかのコマンドを含み1台の端末デバイス(携帯電話、コンピュータ、サーバ、又はネットワークデバイス等であってもよい)により本開示の各実施例に記載の方法を実行する。
【0094】
本開示ではさらに3次元姿勢の調整装置を提供し、該装置は上記実施例及び好ましい実施形態を実現するために用いられ、既に説明したものについては説明を省略する。以下で使用されるように、「モジュール」という用語は、所定の機能を実現することができるソフトウェア及び/又はハードウェアの組み合わせである。以下の実施例で説明される装置はソフトウェアで実現することが好ましいが、ハードウェア、又はソフトウェアとハードウェアの組み合わせによる実現も可能であり且つ考えられる。
【0095】
図5は本開示の実施例に基づき提供される3次元姿勢の調整装置の構造ブロック図であり、
図5に示すように、3次元姿勢の調整装置500は、
現在録画されているビデオを取得するために用いられ、ここで、ビデオは、各画像フレームにいずれも仮想3次元モデルが表示される複数の画像フレームを含む取得モジュール501と、複数の画像フレームに基づいて仮想3次元モデルの複数の2次元キーポイント及び初期3次元姿勢を推定して獲得するために用いられる推定モジュール502と、複数の2次元キーポイントを利用して仮想3次元モデルの目標部位に対して接触検出を行い、検出結果を得るために用いられ、ここで、検出結果は目標部位と仮想3次元モデルが位置する3次元空間内の目標接触面との間に接触が発生したか否かを示すために用いられる検出モジュール503と、検出結果と初期3次元姿勢に対応する複数の初期3次元キーポイントにより、複数の目標3次元キーポイントを決定するために用いられる決定モジュール504と、複数の初期3次元キーポイント及び複数の目標3次元キーポイントを用いて初期3次元姿勢を目標3次元姿勢に調整するために用いられる調整モジュール505と、を含む。
【0096】
好ましくは、推定モジュール502は、さらに、複数の画像フレームの各画像フレームから目標領域を検出し、ここで、目標領域は仮想3次元モデルを含むステップと、目標領域に対してトリミング処理を行い、複数の目標画像ブロックを取得するステップと、複数の目標画像ブロックに基づいて複数の2次元キーポイント及び初期3次元姿勢を推定して獲得するステップと、に用いられる。
【0097】
好ましくは、推定モジュール502は、さらに、予め設定された2次元推定方式を用いて複数の目標画像ブロックから第1推定結果を推定して獲得するステップと、予め設定された3次元推定方式を用いて複数の目標画像ブロックから第2推定結果を推定して獲得するステップと、第1推定結果に対して平滑化処理を行い、複数の2次元キーポイントを得て、及び第2推定結果に対して平滑化処理を行い、初期3次元姿勢を得るステップと、に用いられる。
【0098】
好ましくは、検出モジュール503は、さらに、予め設定されたニューラルネットワークモデルを用いて複数の2次元キーポイントを分析し、目標部位に対応する2次元キーポイントの検出タグを得て、ここで、予め設定されたニューラルネットワークモデルは複数組のデータを用いて機械学習トレーニングにより得られ、複数組のデータにおける各組のデータはいずれも、検出タグ付きの2次元キーポイントを含み、検出タグは目標部位に対応する2次元キーポイントと目標接触面との間に接触が発生したか否かを示すために用いられるステップに用いられる。
【0099】
好ましくは、3次元姿勢の調整装置500は、さらに、初期3次元姿勢の第1姿勢パラメータを利用し、複数の初期3次元キーポイントの初期値を決定するために用いられる初期化モジュール506(図示せず)を含む。
【0100】
好ましくは、決定モジュール504は、さらに、複数の初期3次元キーポイントの初期値を用いて複数の目標3次元キーポイントを初期化し、複数の目標3次元キーポイントの初期値を得るステップと、目標部位に対応する3次元キーポイントの複数の画像フレームの各画像フレームにおける表示位置及び表示位置に対応する検出タグを取得するステップと、表示位置に対応する検出タグに基づき、複数の目標3次元キーポイントから一部の3次元キーポイントを選択し、ここで、選択された一部の3次元キーポイントと目標接触面との間に接触が発生するステップと、選択された一部の3次元キーポイントの表示位置に対して平均値計算を行い、更新対象位置を得るステップと、更新対象位置に応じて複数の目標3次元キーポイントの初期値を更新し、複数の目標3次元キーポイントの目標値を得るステップと、に用いられる。
【0101】
好ましくは、調整モジュール505は、さらに、複数の初期3次元キーポイントの初期値と複数の目標3次元キーポイントの目標値を用いて、第1姿勢パラメータを最適化し、第2姿勢パラメータを得るステップと、第2姿勢パラメータに基づいて初期3次元姿勢を目標3次元姿勢に調整するステップと、に用いられる。
【0102】
なお、上記各モジュールはソフトウェア又はハードウェアによって実現することができ、後者については、上記モジュールはいずれも同一のプロセッサ内に位置するか、又は上記各モジュールは任意の組み合わせの形式でそれぞれ異なるプロセッサ内に位置する方式で実現することができるが、これに限定されない。
【0103】
本開示の実施例に基づき、本開示は、メモリ及び少なくとも1つのプロセッサを含み、該メモリにコンピュータコマンドが記憶され、該プロセッサはコンピュータコマンドを実行して上記いずれかの方法の実施例におけるステップを実行するように設定される電子デバイスをさらに提供する。
【0104】
好ましくは、上記電子デバイスはさらに伝送デバイス及び入出力デバイスを含み、ここで、該伝送デバイスは上記プロセッサに接続され、該入出力デバイスは上記プロセッサに接続されることができる。
【0105】
好ましくは、本実施例において、上記プロセッサはコンピュータプログラムによって以下のステップを実行するように設定することができる。
【0106】
ステップS1では、現在録画されているビデオを取得し、ここで、ビデオは、各画像フレームにいずれも仮想3次元モデルが表示される複数の画像フレームを含む。
【0107】
ステップS2では、複数の画像フレームに基づいて仮想3次元モデルの複数の2次元キーポイント及び初期3次元姿勢を推定して獲得する。
【0108】
ステップS3では、複数の2次元キーポイントを利用して仮想3次元モデルの目標部位に対して接触検出を行い、検出結果を得て、ここで、検出結果は目標部位と仮想3次元モデルが位置する3次元空間内の目標接触面との間に接触が発生したか否かを示すために用いられる。
【0109】
ステップS4では、検出結果と初期3次元姿勢に対応する複数の初期3次元キーポイントにより、複数の目標3次元キーポイントを決定する。
【0110】
ステップS5では、複数の初期3次元キーポイント及び複数の目標3次元キーポイントを用いて初期3次元姿勢を目標3次元姿勢に調整する。
【0111】
好ましくは、本実施例における具体的な例は上記実施例及び好ましい実施形態で説明した例を参照することができ、本実施例はここでの説明を省略する。
【0112】
本開示の実施例に基づき、本開示は、コンピュータコマンドが記憶され、ここで、該コンピュータコマンドは実行時に上記いずれかの方法の実施例におけるステップを実行するように設定される非一時的なコンピュータ読み取り可能な記憶媒体をさらに提供する。
【0113】
好ましくは、本実施例において、上記不揮発性記憶媒体は以下のステップを実行するためのコンピュータプログラムを記憶するように設定することができる。
【0114】
ステップS1では、現在録画されているビデオを取得し、ここで、ビデオは、各画像フレームにいずれも仮想3次元モデルが表示される複数の画像フレームを含む。
【0115】
ステップS2では、複数の画像フレームに基づいて仮想3次元モデルの複数の2次元キーポイント及び初期3次元姿勢を推定して獲得する。
【0116】
ステップS3では、複数の2次元キーポイントを利用して仮想3次元モデルの目標部位に対して接触検出を行い、検出結果を得て、ここで、検出結果は目標部位と仮想3次元モデルが位置する3次元空間内の目標接触面との間に接触が発生したか否かを示すために用いられる。
【0117】
ステップS4では、検出結果と初期3次元姿勢に対応する複数の初期3次元キーポイントにより、複数の目標3次元キーポイントを決定する。
【0118】
ステップS5では、複数の初期3次元キーポイント及び複数の目標3次元キーポイントを用いて初期3次元姿勢を目標3次元姿勢に調整する。
【0119】
任意選択的に、本実施例においては、上記非一時的コンピュータ可読記憶媒体は、USBメモリ、リードオンリーメモリ(ROM、Read-OnlyMemory)、ランダムアクセスメモリ(RAM、RandomAccessMemory)、リムーバブルハードディスク、磁気ディスク又は光ディスク等のプログラムコードを記憶可能な各種媒体を含むが、これらに限定されない。
【0120】
本開示の実施例によれば、本開示は、さらに、コンピュータプログラム製品を提供する。本開示の3次元姿勢の調整方法を実施するためのプログラムコードは、一つ又は複数のプログラミング言語の任意の組み合わせによりプログラミングすることができる。これらのプログラムコードは、汎用コンピュータ、専用コンピュータ又は他のプログラマブルデータ処理装置のプロセッサ又はコントローラに提供することにより、プログラムコードがプロセッサ又はコントローラによって実行されると、フローチャート及び/又はブロック図における所定の機能/操作が実施可能である。プログラムコードは、全部又は一部がマシンに実行されてもよく、個別ウェアパッケージとして、一部がマシンに実行され且つその他の一部にリモートマシンに実行されるか、或いは、全部がリモートマシン又はサーバーに実行されてもよい。
【0121】
上記本開示の実施例番号は説明のためのものであり、実施例の優劣を表すものではない。
【0122】
本開示の上記実施例において、各実施例に対する説明はいずれもある方面に重点が置かれており、ある実施例において詳述されていない部分は、他の実施例の関連説明を参照することができる。
【0123】
本開示が提供するいくつかの実施例において、当然のことながら、開示された技術内容は、他の方式で実現することができる。これまで説明された装置の実施例は例示的なものに過ぎず、例えば、前記ユニットの分割は論理機能による分割であってもよく、実装時には他の分割方式を有してもよく、例えば複数のユニット又はアセンブリを別のシステムに組み合わせるか又は集積してもよく、又はいくつかの特徴を無視し、又は実行しなくてもよい。別の点では、図示又は議論される相互の結合又は直接的な結合、又は通信接続は、インターフェース、ユニット又はモジュールを介した間接的な結合又は通信接続であってもよく、電気的又は他の形態であってもよい。
【0124】
前記分離部材として説明されたユニットは物理的に分離してもよく又は分離しなくてもよく、ユニットとして示された部材は物理的ユニットであってもよく又はそうでなくてもよく、すなわち一箇所に位置してもよく、又は複数のユニットに分布していてもよい。実際の必要に応じてそのうちの一部又は全てのユニットを選択して本実施例の解決手段の目的を達成することができる。
【0125】
また、本開示の各実施例における各機能ユニットは1つの処理ユニットに集積されてもよく、各ユニットが単独で物理的に存在してもよく、2つ以上のユニットが1つのユニットに集積されてもよい。上記集積されるユニットはハードウェアの形式で実現してもよく、ソフトウェア機能ユニットの形式で実現してもよい。
【0126】
上記集積されるユニットがソフトウェア機能ユニットの形式で実現され且つ独立した製品として販売又は使用される場合、コンピュータで読み取り可能な記憶媒体に記憶することができる。このような理解に基づき、本開示の技術的解決手段は、実質的部分である従来技術に寄与する部分又は該技術的解決手段の全て又は一部をソフトウェア製品の形式で実現することができる。該コンピュータソフトウェア製品は、記憶媒体に記憶される製品であり、1台のコンピュータ装置(パーソナルコンピュータ、サーバ、又はネットワーク装置等であってもよい)により本開示の各実施例に記載の方法の全て又は一部のステップを実行するいくつかのコマンドが含まれる。前述した記憶媒体は、USBメモリ、リードオンリーメモリ(ROM、Read-OnlyMemory)、ランダムアクセスメモリ(RAM、RandomAccessMemory)、リムーバブルハードディスク、磁気ディスク又は光ディスク等のプログラムコードを記憶可能な各種媒体を含む。
【0127】
以上の記載は本開示の好ましい実施形態に過ぎず、明らかなこととして、当業者であれば、本開示の原理から逸脱しない前提で、更に幾つかの改良及び変更を行うことができ、それらの改良及び変更も本開示の保護範囲とみなされるべきである。