IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 深▲せん▼市洲明科技股▲ふん▼有限公司の特許一覧

特許7480312複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器
<>
  • 特許-複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器 図1
  • 特許-複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器 図2
  • 特許-複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器 図3
  • 特許-複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器 図4
  • 特許-複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器 図5
  • 特許-複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器 図6
  • 特許-複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器 図7
  • 特許-複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器 図8
  • 特許-複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器 図9
  • 特許-複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器 図10
  • 特許-複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器 図11
  • 特許-複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器 図12
  • 特許-複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-26
(45)【発行日】2024-05-09
(54)【発明の名称】複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器
(51)【国際特許分類】
   G06T 7/20 20170101AFI20240430BHJP
【FI】
G06T7/20 300A
【請求項の数】 10
(21)【出願番号】P 2022546634
(86)(22)【出願日】2021-07-09
(65)【公表番号】
(43)【公表日】2023-03-24
(86)【国際出願番号】 CN2021105486
(87)【国際公開番号】W WO2022100119
(87)【国際公開日】2022-05-19
【審査請求日】2022-08-01
(31)【優先権主張番号】202011260863.4
(32)【優先日】2020-11-12
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】514173711
【氏名又は名称】深▲せん▼市洲明科技股▲ふん▼有限公司
【氏名又は名称原語表記】UNILUMIN GROUP CO., LTD.
【住所又は居所原語表記】Building A #112, Yongfu Rd, Qiaotou Village, Fuyong Town, Baoan District, Shenzhen, Guangdong 518103 China
(74)【代理人】
【識別番号】100160691
【弁理士】
【氏名又は名称】田邊 淳也
(74)【代理人】
【識別番号】100205936
【弁理士】
【氏名又は名称】崔 海龍
(74)【代理人】
【識別番号】100132805
【弁理士】
【氏名又は名称】河合 貴之
(72)【発明者】
【氏名】邱 又海
(72)【発明者】
【氏名】唐 毅
(72)【発明者】
【氏名】徐 倩茹
【審査官】合田 幸裕
(56)【参考文献】
【文献】中国特許出願公開第111797714(CN,A)
【文献】特開2013-137785(JP,A)
【文献】中国特許出願公開第110544301(CN,A)
【文献】国際公開第2009/140261(WO,A1)
【文献】国際公開第2014/003081(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/20
IEEE Xplore
JSTPlus(JDreamIII)
(57)【特許請求の範囲】
【請求項1】
複数人三次元モーションキャプチャ方法であって、
複数のカメラの同期ビデオフレームを取得し、各前記カメラの各前記同期ビデオフレームに対して、それぞれ関節ポイント認識及び位置測定を行い、各前記カメラによる各人物の2D関節ポイント情報を得るステップ1と、
各2D関節ポイントの逆投影射線を計算し、前記逆投影射線間の最短距離である場合の2つの端点座標に基づいてクラスタリングすることで、最適な2D人物マッチングスキームを得るステップであって、前記逆投影射線は、前記2D関節ポイントに対応するカメラから前記2D関節ポイントを指す射線であるステップ2と、
三次元モーションキャプチャを行うために、最適な前記2D人物マッチングスキームに従って、各人物の3D再構築を行い、各人物の3D情報を生成するステップ3と、を含み
前記ステップ3は、具体的には、
前記2D人物マッチングスキームの各マッチング項目をトラバースして、各前記マッチング項目内の各関節ポイントに含まれる2D関節ポイント座標情報及び対応するカメラパラメータ情報を取得するステップ31と、
マルチカメラビジュアル三次元計測技術によって、複数の前記2D関節ポイント座標情報を3D三次元空間座標として計算して、3D関節ポイント情報を得るステップ32と、
前記3D関節ポイント情報に基づいて、再投影誤差を計算し、前記再投影誤差が既定投影誤差を超えた前記3D関節ポイント情報をフィルタリングで除去するステップ33と、
各前記マッチング項目内の全ての関節ポイントに対するトラバースが完了すると、残された全ての前記3D関節ポイント情報に基づいて、1つの人物の3D情報を生成するステップ34と、
全ての前記マッチング項目に対するトラバースが完了すると、前記マッチング項目の数に対応する複数人物の3D情報を得るステップ35と、を含む
複数人三次元モーションキャプチャ方法。
【請求項2】
前記ステップ2は、具体的には、
全ての前記2D関節ポイント情報を関節ポイントのタイプ別に分けて、各前記関節ポイントのタイプに対応する全ての前記2D関節ポイント情報を得るステップ21と、
各前記関節ポイントのタイプの各前記2D関節ポイント情報に対して、それぞれ逆投影射線の計算を行い、前記逆投影射線間の最短距離に基づいてクラスタリングすることで、各前記関節ポイントタイプの関節ポイントマッチングスキームを得るステップ22と、
全ての前記関節ポイントタイプの関節ポイントマッチングスキームをマージして、最適な2D人物マッチングスキームを得るステップ23と、
を含む請求項1に記載の複数人三次元モーションキャプチャ方法。
【請求項3】
前記ステップ2において、
各2D関節ポイントの逆投影射線を計算するステップは、具体的には、
各前記2D関節ポイントについて、座標原点及び対応するカメラ外部パラメータに基づいてカメラ3D座標を得て、前記カメラ3D座標を前記逆投影射線の端点として、対応するカメラ内部パラメータ、カメラ外部パラメータ及び各前記2D関節ポイントの2D関節ポイント座標情報に基づいて、前記逆投影射線の方向ベクトルを得ることで、各前記2D関節ポイントの逆投影射線を得るステップを含む
請求項1に記載の複数人三次元モーションキャプチャ方法。
【請求項4】
前記ステップ22において、
前記逆投影射線間の最短距離に基づいてクラスタリングすることで、各前記関節ポイントタイプの関節ポイントマッチングスキームを得るステップは、
各前記カメラ内の各前記2D関節ポイントの逆投影射線と、同一の前記関節ポイントタイプの他の前記カメラ内の各前記2D関節ポイントの逆投影射線とについて、それぞれ2つずつ最短線分の計算を行って、2本の前記逆投影射線間の最短線分である場合の2つの端点の端点座標を得るステップ221と、
各前記関節ポイントタイプ内の全ての前記端点をクラスタリングしてクラスタリング結果を出力し、前記クラスタリング結果に基づいて、組み合わせにより各前記関節ポイントタイプの関節ポイントマッチングスキームを生成するステップ222と、
を含む請求項2に記載の複数人三次元モーションキャプチャ方法。
【請求項5】
前記ステップ221において、
2本の逆投影射線間の最短線分である場合の2つの端点の端点座標を得るステップは、具体的には、
前記逆投影射線
【数1】
の始点座標と方向ベクトルがそれぞれs0
【数2】
であり、前記逆投影射線
【数3】
の始点座標と方向ベクトルがそれぞれt0
【数4】
であるとすると、前記逆投影射線
【数5】
のベクトル表現式を
【数6】
として、前記逆投影射線
【数7】
のベクトル表現式を
【数8】
とするステップ2211と、
前記逆投影射線
【数9】
と前記逆投影射線
【数10】
と間の最短線分である場合の2つの端点の端点座標がそれぞれsjとtjであるとすると、2つの前記端点座標のベクトル表現式を
【数11】

【数12】
として、ベクトルを
【数13】
と記すと、前記逆投影射線
【数14】
と前記逆投影射線
【数15】
との間の最短線分のベクトル表現式を、第1式:
【数16】
とするステップであって、前記scと前記tcはスカラであるステップ2212と、
前記最短線分のベクトル表現式を
【数17】

【数18】
にそれぞれ代入して第2式と第3式を得るステップであって、前記第2式は
【数19】
で、前記第3式は
【数20】
であり、
【数21】
と記すと、前記sc=(be-cd)/(ac-b2)と前記tc=(ae-bd)/(ac-b2)とを得るステップ2213と、
前記ac-b2が0に等しいか否かを判断し、そうであれば、前記逆投影射線
【数22】
と前記逆投影射線
【数23】
は平行関係であり、何れか一つの前記逆投影射線上で1つの固定点を端点の1つとして指定し、前記第2式と前記第3式を代入すると、2つの前記sjと前記tjを得ることができ、そうでなければ、前記s c=(be-cd)/(ac-b2)と前記t c=(ae-bd)/(ac-b2)とに基づいて、2つの前記sjと前記tjを求めるステップ2214と、
を含む請求項4に記載の複数人三次元モーションキャプチャ方法。
【請求項6】
前記ステップ222は、具体的には、
何れか2本の前記逆投影射線間の最短線分である場合の2つの端点座標を得たときに、sjとtjとする2つの前記端点座標から、前記最短線分の最短距離dmin=|sj-tj|を得るステップ2221と、
各前記関節ポイントタイプ内の、最短距離dminが既定距離閾値を超える前記最短線分をフィルタリングして削除し、各前記関節ポイントタイプ内の残された前記最短線分に対応する端点を端点集合Rとして形成させるステップであって、各前記端点は、2D関節ポイント、カメラ識別子及び人物識別子に対応するステップ2222と、
k最近傍分類アルゴリズムによって、各前記関節ポイントタイプ内の前記端点集合R内の全ての端点に対して、近傍マッチングを行って、近傍端点で形成されるクラスタを得て、各前記クラスタ内の端点の数の多い順に、前記クラスタをソートして、各前記関節ポイントタイプ内のソート後のクラスタ情報を得るステップ2223と、
各前記関節ポイントタイプに対して、それぞれマッチングスキームを生成するステップであって、現在のマッチング項目を取得し、各クラスタ内の各端点をトラバースし、トラバースされた端点が前記現在のマッチング項目に使用されておらず、かつ、前記現在のマッチング項目がトラバースされた端点の前記カメラ識別子を有さない場合、現在のマッチング項目に前記端点を追加し、前記クラスタ内の各端点に対するトラバースが完了すると、各関節ポイントタイプの関節ポイントマッチングスキームを得るステップ2224と、を含み、
前記ステップ23は、具体的には、
全ての関節ポイントタイプの関節ポイントマッチングスキーム内の各マッチング項目の出現回数を統計し、出現回数が最も多いマッチング項目を組み合わせて最適な2D人物マッチングスキームとするステップを含む
請求項4に記載の複数人三次元モーションキャプチャ方法。
【請求項7】
現在の同期ビデオフレーム及び次の同期ビデオフレームによってそれぞれ得られた複数人物の3D情報を取得して、前後2つの同期ビデオフレームにおける各人物の人体重心位置のオフセット距離が、既定最大移動距離閾値よりも小さいか否かを判断し、そうであれば、前記次の同期ビデオフレームの各人物の人体重心位置に応じて、過去人物位置集合内の人物一意IDに対応する位置情報を更新するステップ4と、
前記次の同期ビデオフレームのある人物の、前記現在の同期ビデオフレーム内の全ての人物の人体重心位置からのオフセット距離が、前記既定最大移動距離閾値より大きければ、その人物を新たな人物として判定し、前記新たな人物に新たな人物一意IDを付与して、前記新たな人物の位置情報を、前記過去人物位置集合に追加するステップ5と、
前記現在の同期ビデオフレームのある人物の、前記次の同期ビデオフレーム内の全ての人物の人体重心位置からのオフセット距離が、前記既定最大移動距離閾値より大きければ、その人物を退出人物として判定し、前記過去人物位置集合から、前記退出人物に対応する人物一意IDの位置情報を除去するステップ6と、
をさらに含む請求項1に記載の複数人三次元モーションキャプチャ方法。
【請求項8】
プロセッサによって実行されたときに、請求項1~7の何れか一項に記載の複数人三次元モーションキャプチャ方法を実現するコンピュータプログラムが記憶された
コンピュータ読み取り可能な記憶媒体。
【請求項9】
メモリとプロセッサを含む電子機器であって、
前記メモリにはプロセッサ上で実行可能なコンピュータプログラムが記憶されており、前記プロセッサによって前記コンピュータプログラムを実行したときに、請求項1~7の何れか一項に記載の複数人三次元モーションキャプチャ方法を実現する
電子機器。
【請求項10】
請求項1~7の何れか一項に記載の複数人三次元モーションキャプチャ方法を実現する複数人三次元モーションキャプチャ装置であって、
複数のカメラの同期ビデオフレームを取得し、各前記カメラの各前記同期ビデオフレームに対して、それぞれ関節ポイント認識及び位置測定を行い、各前記カメラによる各人物の2D関節ポイント情報を得るように構成された同期ビデオフレーム取得モジュールと、
各2D関節ポイントの逆投影射線を計算し、前記逆投影射線間の最短距離である場合の2つの端点座標に基づいてクラスタリングすることで、最適な2D人物マッチングスキームを得るように構成されたクラスタリングモジュールであって、前記逆投影射線は、前記2D関節ポイントに対応するカメラから前記2D関節ポイントを指す射線であるクラスタリングモジュールと、
三次元モーションキャプチャを行うために、最適な前記2D人物マッチングスキームに従って、各人物の3D再構築を行い、各人物の3D情報を生成するように構成された再構築モジュールと、
を含む複数人三次元モーションキャプチャ装置。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本願は2020年11月12日に提出された、出願番号が202011260863.4で、名称が「複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器」ある中国特許出願の優先権を主張し、その全ての内容を引用により本願に組み入れる。
【0002】
本発明はヒューマンマシンインタラクションの技術分野に関し、特に複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器に関する。
【背景技術】
【0003】
2013年からVR(Virtual Reality、仮想現実)技術が世界的に段々普及し始めているが、中でもモーションキャプチャ技術はVR技術の中でもキーテクノロジーである。
【0004】
現段階では、伝統的なモーションキャプチャシステムは、光学式、慣性式或いは機械式の動作原理を採用しており、その使用者は誰もが、第三者のハードウェアを利用して、特定のモーションキャプチャスーツ及び道具を着用して、システムとインタラクションする必要があり、これでは、ヒューマンマシンインタラクションが十分に直接的ではないという問題が存在する。
【0005】
深層学習の技術進展に伴い、コンピュータの計算能力、アルゴリズムの精度が効果的に向上しており、特に画像処理分野では、コンピュータによって、画像内の人体の動き、顔の表情や指の動きなどに対して、姿勢の推定を実現することができる。このうち、OpenPose(Githubのオープンソース人体姿勢認識プロジェクト)人体姿勢認識プロジェクトは、人体の動き、顔の表情や指の動きなどの姿勢推定を実現し、単一人物のモーションキャプチャ機能をサポートできる。単一の人物がシーンに入ると、OpenPoseは人物の2D(two dimensional、二次元)関節ポイントに対して、3D(three dimensional、三次元)再構築を良好に行うことができるが、人が密集しているシーンでは、カメラの視野角のカバレッジが原因で、カメラが認識する人物の数が異なり、そのアルゴリズムによって人物を選択するアルゴリズムでは、正しい人物2D関節ポイントをマッチングさせることが難しいゆえ、人物の3D関節ポイント情報を誤って再構築することがある。
【発明の概要】
【課題を解決するための手段】
【0006】
本願の一態様によれば、複数人三次元モーションキャプチャ方法を提供し、前記方法は、
複数のカメラの同期ビデオフレームを取得し、各前記カメラの各前記同期ビデオフレームに対して、それぞれ関節ポイント認識及び位置測定を行い、各前記カメラによる各人物の2D関節ポイント情報を得るステップと、
各2D関節ポイントの逆投影射線を計算し、前記逆投影射線間の最短距離である場合の2つの端点座標に基づいてクラスタリングすることで、最適な2D人物マッチングスキームを得るステップであって、前記逆投影射線は、前記2D関節ポイントに対応するカメラから前記2D関節ポイントを指す射線であるステップと、
三次元モーションキャプチャを行うために、最適な前記2D人物マッチングスキームに従って、各人物の3D再構築を行い、各人物の3D情報を生成するステップと、
を含む。
【0007】
本発明の別の態様によれば、プロセッサによって実行されたときに、上記の複数人三次元モーションキャプチャ方法を実現するコンピュータプログラムを記憶したコンピュータ読み取り可能な記憶媒体を提供する。
【0008】
本明細書のさらに別の態様によれば、メモリとプロセッサを含む電子機器を提供し、メモリにはプロセッサ上で実行可能なコンピュータプログラムが記憶されており、前記プロセッサによって前記コンピュータプログラムを実行したときに、上記の複数人三次元モーションキャプチャ方法を実現する。
【0009】
本願の一態様によれば、複数人三次元モーションキャプチャ装置を提供し、前記装置は、
複数のカメラの同期ビデオフレームを取得し、各前記カメラの各前記同期ビデオフレームに対して、それぞれ関節ポイント認識及び位置測定を行い、各前記カメラによる各人物の2D関節ポイント情報を得るように構成された同期ビデオフレーム取得モジュールと、
各2D関節ポイントの逆投影射線を計算し、前記逆投影射線間の最短距離である場合の2つの端点座標に基づいてクラスタリングすることで、最適な2D人物マッチングスキームを得るように構成されたクラスタリングモジュールであって、前記逆投影射線は、前記2D関節ポイントに対応するカメラから前記2D関節ポイントを指す射線であるクラスタリングモジュールと、
三次元モーションキャプチャを行うために、最適な前記2D人物マッチングスキームに従って、各人物の3D再構築を行い、各人物の3D情報を生成するように構成された再構築モジュールと、
を含む。
【0010】
以下の図面及び説明を通じて、本発明の各実施例の詳細を説明する。明細書、図面及び特許請求の範囲の記載から、当業者は、本発明の他の特徴、解決しようとする問題及び有益効果を容易に理解することができるであろう。
【図面の簡単な説明】
【0011】
本願の実施例をより良く例示して説明するために、1つ又は複数の図面を参照することがあるが、図面を説明するための追加の詳細または例示は、本願の発明創造、現在説明されている実施例又は好ましい態様の何れか一つの範囲を限定するものとみなされるべきではない。
図1】本発明の実施例の複数人三次元モーションキャプチャ方法の模式フローチャートである。
図2】本発明の実施例に係る複数人三次元モーションキャプチャ方法の全体としての模式フローチャートである。
図3】本発明の実施例に係る2D関節ポイントのマッチングの模式フローチャートである。
図4】本発明の実施例に係る人物の3D関節ポイントの再構築の模式フローチャートである。
図5】本発明の実施例に係るOpenPoseの25種類の関節ポイントの構造模式図である。
図6】本発明の実施例に係る複数人三次元モーションキャプチャ方法のシミュレーションシーンの模式図である。
図7】本発明の実施例に係る複数人三次元モーションキャプチャ方法の、シミュレーションシーンにおけるクラスタリング効果の模式図である。
図8】本発明の実施例に係る2D関節ポイントのマッチングの模式図である。
図9】本発明の実施例に係る関節ポイント信頼度フィルタリングの効果の模式図である。
図10】本発明の実施例に係る5人の人物の左手関節のマッチング模式図である。
図11】本発明の実施例に係る複数人三次元モーションキャプチャ方法の、複数人シーンにおけるマッチング効果の模式図である。
図12】本発明の実施例に係る2本の逆投影射線間の最短線分の計算模式図である。
図13】本発明の実施例の電子機器の構造模式図である。
【発明を実施するための形態】
【0012】
本発明の技術的内容、実現する目的及び効果を詳しく説明するために、以下では、実施形態を組み合わせて、且つ図面を合わせて説明する。
【0013】
図1から図11を参照し、複数人三次元モーションキャプチャ方法は、
複数のカメラの同期ビデオフレームを取得し、各前記カメラの各前記同期ビデオフレームに対して、それぞれ関節ポイント認識及び位置測定を行い、各前記カメラによる各人物の2D関節ポイント情報を得るステップと、
各2D関節ポイントの逆投影射線を計算し、前記逆投影射線間の最短距離である場合の2つの端点座標に基づいてクラスタリングすることで、最適な2D人物マッチングスキームを得るステップであって、前記逆投影射線は、前記2D関節ポイントに対応するカメラから前記2D関節ポイントを指す射線であるステップと、
三次元モーションキャプチャを行うために、最適な前記2D人物マッチングスキームに従って、各人物の3D再構築を行い、各人物の3D情報を生成するステップと、を含む。
【0014】
上記の説明から分かるように、本発明の有益効果は以下である。複数のカメラによって、シーン内の異なる視角に対して収集と認識を行うとともに、同一の関節ポイントに対する異なるカメラからの逆投影射線同士が交差するはずであるという原理に基づいて、最短距離の計算とクラスタリングを行うことで、異なるカメラの複数の関節ポイントに対して正確なマッチングと対応を行うので、密集シーンに存在する遮蔽、2Dの誤認識による2D点集合マッチングの問題を解決し、複数人に対するモーションキャプチャを実現した。
【0015】
さらに、前記の各2D関節ポイントの逆投影射線を計算し、前記逆投影射線間の最短距離である場合の2つの端点座標に基づいてクラスタリングすることで、最適な2D人物マッチングスキームを得るステップは、具体的には、
全ての前記2D関節ポイント情報を関節ポイントのタイプ別に分けて、各前記関節タイプに対応する全ての前記2D関節ポイント情報を得るステップと、
各前記関節ポイントタイプの各前記2D関節ポイント情報に対して、それぞれ逆投影射線の計算を行い、前記逆投影射線間の最短距離に基づいてクラスタリングすることで、各前記関節ポイントタイプの関節ポイントマッチングスキームを得るステップと、
全ての前記関節ポイントタイプの関節ポイントマッチングスキームをマージして、最適な2D人物マッチングスキームを得るステップと、を含む。
【0016】
以上の説明から分かるように、関節ポイントの位置測定を行う際に、関節ポイントのタイプに基づいて複数の関節ポイントを分類し、同一関節ポイントタイプの関節ポイントのみに対してマッチング計算するので、マッチング演算の回数を減らし、処理速度を向上させた。
【0017】
さらに、前記の各2D関節ポイントの逆投影射線を計算するステップは、具体的には、
各前記2D関節ポイントについて、座標原点及び対応するカメラ外部パラメータに基づいてカメラ3D座標を得て、前記カメラ3D座標を前記逆投影射線の端点として、対応するカメラ内部パラメータ、カメラ外部パラメータ及び各前記2D関節ポイントの2D関節ポイント座標情報に基づいて、前記逆投影射線の方向ベクトルを得ることで、各前記2D関節ポイントの逆投影射線を得るステップを含む。
【0018】
以上の説明から分かるように、作成しようとする座標系には座標原点があり、実際の空間における相対関係から、カメラ3D座標と2D関節ポイントに対応する3D座標が得られるので、各2D関節ポインの逆投影射線が得られる。
【0019】
さらに、前記の前記逆投影射線間の最短距離に基づいてクラスタリングすることで、各前記関節ポイントタイプの関節ポイントマッチングスキームを得るステップは、
各前記カメラ内の各前記2D関節ポイントの逆投影射線と、同一の前記関節ポイントタイプの他の前記カメラ内の各前記2D関節ポイントの逆投影射線とについて、それぞれ2つずつ最短線分の計算を行って、2本の前記逆投影射線間の最短線分である場合の2つの端点の端点座標を得るステップと、
各前記関節ポイントタイプ内の全ての前記端点をクラスタリングしてクラスタリング結果を出力し、前記クラスタリング結果に基づいて、組み合わせにより各前記関節ポイントタイプの関節ポイントマッチングスキームを生成するステップと、
を含む。
【0020】
さらに、前記の2本の逆投影射線間の最短線分である場合の2つの端点の端点座標を得るステップは、具体的には、
前記逆投影射線
【数1】
の始点座標と方向ベクトルがそれぞれs
【数2】
であり、前記逆投影射線
【数3】
の始点座標と方向ベクトルがそれぞれt
【数4】
であるとすると、前記逆投影射線
【数5】
のベクトル表現式を
【数6】
として、前記逆投影射線
【数7】
のベクトル表現式を
【数8】
とするステップと、
前記逆投影射線
【数9】
と前記逆投影射線
【数10】
と間の最短線分である場合の2つの端点の端点座標がそれぞれsとtであるとすると、2つの前記端点座標のベクトル表現式を
【数11】

【数12】
として、ベクトルを
【数13】
と記すと、前記逆投影射線
【数14】
と前記逆投影射線
【数15】
との間の最短線分のベクトル表現式を、第1式:
【数16】
とするステップであって、前記sと前記tはスカラであるステップと、
前記最短線分のベクトル表現式を
【数17】

【数18】
にそれぞれ代入して第2式と第3式を得るステップであって、前記第2式は
【数19】
で、前記第3式は
【数20】
であり、
【数21】
と記すと、前記スカラs=(be-cd)/(ac-b)と前記スカラt=(ae-bd)/(ac-b)とを得るステップと、
前記ac-bが0に等しいか否かを判断し、そうであれば、前記逆投影射線
【数22】
と前記逆投影射線
【数23】
は平行関係であり、何れか一つの前記逆投影射線上で1つの固定点を端点の1つとして指定し、前記第2式と前記第3式を代入すると、2つの前記端点座標sとtを得ることができ、そうでなければ、前記スカラs=(be-cd)/(ac-b)と前記スカラt=(ae-bd)/(ac-b)とに基づいて、2つの前記端点座標sとtを求めるステップと、
を含む。
【0021】
上記の説明から分かるように、同一の関節ポイントに対する異なるカメラからの逆投影射線同士は交差するはずであるが、観測の誤差や2D認識の誤差により、同一の関節ポイントに対する異なるカメラからの逆投影射線同士が交差しない可能性があるものの、必ず近接しているので、空間における2つの直線間の最短距離の計算方式を用いて逆投影射線間の最短距離を求めることで、異なるカメラの関節ポイントが同一関節ポイントであるか否かを判断する。
【0022】
さらに、前記の各前記関節ポイントタイプ内の全ての前記端点をクラスタリングしてクラスタリング結果を出力し、前記クラスタリング結果に基づいて、組み合わせにより各前記関節ポイントタイプの関節ポイントマッチングスキームを生成するステップは、具体的には、
何れか2本の前記逆投影射線間の最短線分である場合の2つの端点座標を得たときに、2つの前記端点座標sとtから、前記最短線分の最短距離dmin=|s-t|を得るステップと、
各前記関節ポイントタイプ内の、最短距離dminが既定距離閾値を超える前記最短線分をフィルタリングして削除し、各前記関節ポイントタイプ内の残された前記最短線分に対応する端点を端点集合Rとして形成させるステップであって、各前記端点は、2D関節ポイント、カメラ識別子、及び人物識別子に対応するステップと、
k最近傍分類アルゴリズムによって、各前記関節ポイントタイプ内の前記端点集合R内の全ての端点に対して、近傍マッチングを行って、近傍端点で形成されるクラスタを得て、各前記クラスタ内の端点の数の多い順に、前記クラスタをソートして、各前記関節ポイントタイプ内のソート後のクラスタ情報を得るステップと、
各前記関節ポイントタイプに対して、それぞれマッチングスキームを生成するステップであって、現在のマッチング項目を取得し、各クラスタ内の各端点をトラバースし、トラバースされた端点が前記現在のマッチング項目に使用されておらず、かつ、前記現在のマッチング項目がトラバースされた端点の前記カメラ識別子を有さない場合、現在のマッチング項目に前記端点を追加し、前記クラスタ内の各端点に対するトラバースが完了すると、各関節ポイントタイプの関節ポイントマッチングスキームを得るステップと、
を含み、
前記の全ての前記関節ポイントタイプの関節ポイントマッチングスキームをマージして、最適な2D人物マッチングスキームを得るステップは、具体的には、
全ての関節ポイントタイプの関節ポイントマッチングスキーム内の各マッチング項目の出現回数を統計し、出現回数が最も多いマッチング項目を組み合わせて最適な2D人物マッチングスキームとするステップを含む。
【0023】
上記の説明から分かるように、誤差が存在するが、同一の関節ポイントに対する異なるカメラからの逆投影射線同士が近接しているはずであるので、既定距離閾値を超えたら、同一の関節ポイントに属していないと見なすことで、関節ポイントマッチングの正確性に影響を与えないだけではなく、端点の数を減らすことでアルゴリズムの計算量を削減して、処理速度と作業効率をさらに向上させることができるとともに、端点クラスタリングアルゴリズムとして、密度クラスタリングアルゴリズムを採用することで、アルゴリズムは領域半径パラメータを設定することのみを必要とし、事前にクラスタの数を与える必要がないので、当該クラスタリングアルゴリズム及び組み合わせ最適化アルゴリズムを通じて人物マッチングスキームを生成すれば、シーン内の人物の数を最大限に認識できる。
【0024】
さらに、前記の最適な前記2D人物マッチングスキームに従って、各人物の3D再構築を行い、各人物の3D情報を生成するステップは、具体的には、
前記2D人物マッチングスキームの各マッチング項目をトラバースして、各前記マッチング項目内の各関節ポイントに含まれる2D関節ポイント座標情報及び対応するカメラパラメータ情報を取得するステップと、
マルチカメラビジュアル三次元計測技術によって、複数の前記2D関節ポイント座標情報を3D三次元空間座標として計算して、3D関節ポイント情報を得るステップと、
前記3D関節ポイント情報に基づいて、再投影誤差を計算し、前記再投影誤差が既定投影誤差を超えた前記3D関節ポイント情報をフィルタリングで除去するステップと、
各前記マッチング項目内の全ての関節ポイントに対するトラバースが完了すると、残された全ての前記3D関節ポイント情報に基づいて、1つの人物の3D情報を生成するステップと、
全ての前記マッチング項目に対するトラバースが完了すると、前記マッチング項目の数に対応する複数人物の3D情報を得るステップと、を含む。
【0025】
以上の説明から分かるように、2人の人物の距離が非常に近い場合、関節ポイントの1つが同時に2人の人物に属していることになりやすいため、このような関節ポイントを削除することで、2人の人物それぞれの関節ポイントクラスタを得て、誤認識の発生確率を低減し、3D再構築の精度を向上させることができる。
【0026】
さらに、
現在の同期ビデオフレーム及び次の同期ビデオフレームによってそれぞれ得られた複数人物の3D情報を取得して、前後2つの同期ビデオフレームにおける各人物の人体重心位置のオフセット距離が、既定最大移動距離閾値よりも小さいか否かを判断し、そうであれば、前記次の同期ビデオフレームの各人物の人体重心位置に応じて、過去人物位置集合内の人物一意IDに対応する位置情報を更新するステップと、
前記次の同期ビデオフレームのある人物の、前記現在の同期ビデオフレーム内の全ての人物の人体重心位置からのオフセット距離が、前記既定最大移動距離閾値より大きければ、その人物を新たな人物として判定し、前記新たな人物に新たな人物一意IDを付与して、前記新たな人物の位置情報を、前記過去人物位置集合に追加するステップと、
前記現在の同期ビデオフレームのある人物の、前記次の同期ビデオフレーム内の全ての人物の人体重心位置からのオフセット距離が、前記既定最大移動距離閾値より大きければ、その人物を退出人物として判定し、前記過去人物位置集合から、前記退出人物に対応する人物一意IDの位置情報を除去するステップと、
を含む。
【0027】
以上の説明から分かるように、人物一意IDと前後フレームの人体重心位置のオフセット距離とによって、人物3D位置情報を追跡する。
【0028】
本発明の別の態様によれば、プロセッサによって実行されたときに、上記の複数人三次元モーションキャプチャ方法を実現するコンピュータプログラムを記憶したコンピュータ読み取り可能な記憶媒体を提供する。
【0029】
図13を参照し、本発明の別の実施例によれば、メモリとプロセッサを含む電子機器を提供し、メモリにはプロセッサ上で実行可能なコンピュータプログラムが記憶されており、前記プロセッサによって前記コンピュータプログラムを実行したときに、上記の複数人三次元モーションキャプチャ方法を実現する。
【0030】
なお、上述した2つの実施態様におけるコンピュータプログラムに含まれる複数人三次元モーションキャプチャ方法の具体的な実現過程及び対応の効果については、その前の実施態様の複数人三次元モーションキャプチャ方法での説明を参照できる。
【0031】
これにより、以下の実施例において、1つのシーン内の人物に対して三次元モーションキャプチャ、例えば、VRシーンでの複数人三次元モーションキャプチャなどを行うために、当該シーン内に複数のカメラを設けており、具体的には、以下のとおりである。
【0032】
図1から図11を参照し、本発明の実施例1は、
複数人三次元モーションキャプチャ方法であり、前記方法は、以下のステップを含む。
【0033】
S1において、複数のカメラの同期ビデオフレームを取得し、各カメラの各同期ビデオフレームに対して、それぞれ関節ポイント認識及び位置測定を行い、各カメラによる各人物の2D関節ポイント情報を得る。
【0034】
本実施例において、三次元モーションキャプチャが必要なシーンに複数のカメラを設置し、複数のカメラの同期ビデオフレームを取得し、ここで、各ビデオフレームは3チャンネルBGR形式の画像である。A={n|1≦n≦N}として、Aはカメラの集合で、nはカメラ番号である。本実施例において、カメラを12台設置しているが、他の均等な実施例において、実際のニーズに応じてカメラの台数を設定することができる。
【0035】
本実施例において、OpenPoseを利用して、全てのカメラ内の各人体の関節ポイントを検出して位置を測定し、各カメラによる各人物の2D関節ポイント情報を取得する。ここで、各カメラが認識した2D人物の数は、それぞれKであり、kが人物番号を表すとして、その値の範囲は1...Kである。X={Rnodenk|n∈A,1≦k≦Kn}が全てのカメラが認識した2D人物を表し、Rnodenkが認識された2D人物を表すとして、各3D人物の再構築入力パラメータは、1セットの2D人物からなり、2D人物が属するカメラは共通部分を持たない。シーンに入る人物が不確定なので、複数セットの2D人物のマッチングを行う必要がある。
【0036】
ここで、図9に示すように、2D点マッチングアルゴリズムにおいて、関節ポイントの信頼度に対して閾値フィルタリングを行い、誤認識された関節ポイントをフィルタリングで除去する。この方法によれば、ユーザに閾値条件を変更や設定させてフィルタリングして、現場の干渉による誤認識現象を解消することができる。ここで、信頼度の閾値は、現場のシーンや実際の応用に応じて柔軟に設定することができる。
【0037】
S2において、各2D関節ポイントの逆投影射線を計算し、逆投影射線間の最短距離である場合の2つの端点座標に基づいてクラスタリングすることで、最適な2D人物マッチングスキームを得て、逆投影射線は、2D関節ポイントに対応するカメラから2D関節ポイントを指す射線である。
【0038】
本実施例において、同一の関節ポイントに対する異なるカメラからの逆投影射線同士は交差するはずであるが、観測の誤差や2D認識の誤差により、同一の関節ポイントに対する異なるカメラからの逆投影射線同士は、交差しない可能性があるものの、必ず近接しているので、逆投影射線間の最短距離である場合の2つの端点座標に基づいてクラスタリングすることで、異なるカメラ内の関節ポイントのマッチング関係を判断し、これにより、異なるカメラ内の異なる人物の対応関係を確定し、2D人物マッチングスキームを取得することができる。こうして、シーン内の異なる視角に対して収集と認識を行うとともに、同一関節ポイントに対する異なるカメラからの逆投影射線同士が交差するはずであるという原理に基づいて、最短距離の計算とクラスタリングを行うことで、異なるカメラの複数の関節ポイントに対して正確なマッチングと対応を行うので、密集シーンに存在する遮蔽、2Dの誤認識による2D点集合マッチングの問題を解決し、複数人に対するモーションキャプチャを実現した。
【0039】
S3において、三次元モーションキャプチャを行うために、最適な2D人物マッチングスキームに従って、各人物の3D再構築を行い、各人物の3D情報を生成する。
【0040】
図1から図11を参照し、本発明の実施例2は、
複数人三次元モーションキャプチャ方法であり、上記実施例1に基づいて、本実施例による更なる限定は以下のとおりである。
【0041】
ここで、ステップS2は、具体的には、以下のステップを含む。
【0042】
S21において、全ての2D関節ポイント情報を関節ポイントのタイプ別に分けて、各関節タイプに対応する全ての2D関節ポイント情報を得る。
【0043】
図5に示すように、OpenPoseにとって言えば、認識される2D関節ポイントは25種類からなるので、本実施例における関節ポイントのタイプは25種類である。他の実施例においても、実際のニーズに応じて関節ポイントタイプを適切に選択していれば、本願の均等な実施例に該当する。
【0044】
S22において、各関節ポイントタイプの各2D関節ポイント情報に対して、それぞれ逆投影射線の計算を行い、逆投影射線間の最短距離に基づいてクラスタリングすることで、各前記関節ポイントタイプの関節ポイントマッチングスキームを得る。
【0045】
本実施例において、25種類の2D関節ポイントのそれぞれについて、同一関節ポイントタイプの関節ポイントのみに対してマッチング計算するので、マッチング演算の回数を減らし、処理速度を向上させた。特に人物の数が多い場合、処理速度を著しく向上させることが可能である。
【0046】
S23において、全ての関節ポイントタイプの関節ポイントマッチングスキームをマージして、最適な2D人物マッチングスキームを得る。
【0047】
すなわち、25種類の関節ポイントマッチングスキームで1つの2D人物マッチングスキームを得て、当該2D人物マッチングスキームは幾つかのマッチング項目を含み、当該マッチング項目の数は、シーンに入っている人数と同じである。
【0048】
図1から図11を参照し、本発明の実施例3は、
複数人三次元モーションキャプチャ方法であり、上記実施例2に基づいて、図2に示すように、本実施例による更なる限定は以下のとおりである。
【0049】
図3に示すように、ステップS22は、具体的には、以下のステップを含む。
【0050】
S221において、各2D関節ポイントについて、座標原点及び対応するカメラ外部パラメータに基づいてカメラ3D座標を得て、カメラ3D座標を逆投影射線の端点として、対応するカメラ内部パラメータ、カメラ外部パラメータ及び各2D関節ポイントの2D関節ポイント座標情報に基づいて、逆投影射線の方向ベクトルを得ることで、各2D関節ポイントの逆投影射線を得る。
【0051】
本実施例において、2D関節ポイントuvnkを通る逆投影射線を算出し、uvnk∈Rnodenkである。
【0052】
ここで、逆投影射線はカメラ3D座標と2D関節ポイントuvnk上の方向ベクトルで構成される。
【0053】
ここで、カメラ3D座標Pは座標原点にカメラ外部パラメータを乗じることで算出でき、その式はP=extrinsic*0である。ここで、extrinsicはカメラ外部パラメータで、Oは座標原点(0,0,0)である。
【0054】
ここで、方向ベクトルは、2D関節ポイント座標情報、所属カメラの内部パラメータ及び外部パラメータから算出でき、その式は
【数24】
である。ここで、
【数25】
はカメラの内部パラメータである。
【0055】
S222において、各カメラ内の各2D関節ポイントの逆投影射線と、同一の関節ポイントタイプの他の前記カメラ内の各2D関節ポイントの逆投影射線とについて、それぞれ2つずつ最短線分の計算を行って、2本の逆投影射線間の最短線分である場合の2つの端点の端点座標を得る。
【0056】
本実施例において、マルチカメラ視覚の基本原理によれば、複数のカメラで観測されたある人物のある3D関節ポイントについて、その逆投影射線は必ず当該関節ポイントで交差するが、観測の誤差や2D認識の誤差により、同一の関節ポイントに対する異なるカメラからの逆投影射線同士は、交差しない可能性があるものの、必ず近接している。このため、3D空間において、3D関節ポイントの近傍には大量の端点が集まっているはずである。
【0057】
なお、本実施例において、図12に示すように、2本の逆投影射線間の距離は空間における2本線間の距離であり、図12の場合、交差する点があるように見えるが、三次元空間内では交差していない可能性もあるので、図12は計算時の図示にすぎない。このため、2本の逆投影射線間の最短線分である場合の2つの端点の端点座標を得るステップは、具体的には、
逆投影射線
【数26】
の始点座標と方向ベクトルがそれぞれs
【数27】
であり、逆投影射線
【数28】
の始点座標と方向ベクトルがそれぞれt
【数29】
であるとすると、逆投影射線
【数30】
のベクトル表現式を
【数31】
として、逆投影射線
【数32】
のベクトル表現式を
【数33】
とするステップS2221と、
逆投影射線
【数34】
と逆投影射線
【数35】
と間の最短線分である場合の2つの端点の端点座標がそれぞれsとtであるとすると、2つの端点座標のベクトル表現式を
【数36】

【数37】
として、ベクトルを
【数38】
と記すと、逆投影射線
【数39】
と逆投影射線
【数40】
との間の最短線分のベクトル表現式を、第1式:
【数41】
とするステップであって、sとtはスカラであるステップS2222と、
最短線分のベクトル表現式を
【数42】

【数43】
にそれぞれ代入して第2式と第3式を得て、第2式は
【数44】
で、第3式は
【数45】
であり、
【数46】
と記すと、スカラs=(be-cd)/(ac-b)とスカラt=(ae-bd)/(ac-b)とを得るステップS2223と、
ac-bが0に等しいか否かを判断し、そうであれば、逆投影射線
【数47】
と逆投影射線
【数48】
は平行関係であり、何れか1つの逆投影射線上で1つの固定点を端点の1つとして指定し、第2式と第3式を代入すると、2つの端点座標sとtを得ることができ、そうでなければ、スカラsc=(be-cd)/(ac-b)とスカラtc=(ae-bd)/(ac-b)とに基づいて、2つの端点座標sとtを求めるステップS2224と、
を含む。
【0058】
ac-bが0に等しければ、逆投影射線
【数49】
と逆投影射線
【数50】
とは平行関係であり、両者間の距離は定数であるため、どの端点を選んでも、算出される距離は同じである。
【0059】
S223において、各関節ポイントタイプ内の全ての端点をクラスタリングしてクラスタリング結果を出力し、クラスタリング結果に基づいて、組み合わせにより各関節ポイントタイプの関節ポイントマッチングスキームを生成する。
【0060】
本実施例において、ステップS223は、具体的には、
何れか2本の逆投影射線間の最短線分である場合の2つの端点座標を得たときに、2つの端点座標sとtから、最短線分の最短距離dmin=|s-t|を得るステップS2231と、
各関節ポイントタイプ内の、最短距離dminが既定距離閾値を超える最短線分をフィルタリングして削除し、各関節ポイントタイプ内の残された最短線分に対応する端点を端点集合Rとして形成させるステップであって、各端点は、2D関節ポイント、カメラ識別子及び人物識別子に対応するステップS2232と、
k最近傍分類アルゴリズムによって、各関節ポイントタイプ内の端点集合R内の全ての端点に対して、近傍マッチングを行って、近傍端点で形成されるクラスタを得て、各クラスタ内の端点の数の多い順に、クラスタをソートして、各関節ポイントタイプ内のソート後のクラスタ情報を得るステップS2233と、を含み、
ここで、本実施例において、空間における稠密度に基づいてクラスタリングし、ユーザが入力する唯一のパラメータはε(Eps)近傍エリアである。この方法は、具体的には、以下のように実現される。
【0061】
k最近傍分類アルゴリズムknnによって、端点と端点との距離を求め、ε(Eps)近傍エリアに最大で2つの端点が現れると仮定すると、knnの値は次式に設定できる。
【0062】
【数51】
探索が完了した後に、結果セットをトラバースし、ε(Eps)で探索結果内の近傍距離をフィルタリングし、各端点に近傍マッチング関係を生成し、
その後、端点の近傍マッチング関係をソートし、
全ての近傍マッチング関係の処理が完了するまで、未処理の端点を順次抽出し、その端点から直接密度到達可能な近傍端点を見つけてクラスタを形成する。最後に、密度の高い順にクラスタをソートし、クラスタ情報を出力し、その効果は図8に示されている。
【0063】
S2234において、各関節ポイントタイプに対して、それぞれマッチングスキームを生成し、即ち、現在のマッチング項目を取得し、各クラスタ内の各端点をトラバースし、トラバースされた端点が現在のマッチング項目に使用されておらず、かつ、現在のマッチング項目がトラバースされた端点のカメラ識別子を有さない場合、現在のマッチング項目に端点を追加し、クラスタ内の各端点に対するトラバースが完了すると、各関節ポイントタイプの関節ポイントマッチングスキームを得る。
【0064】
本実施例において、クラスタ内の各端点は、1つの2D関節ポイントuvnk、2D人物Rnodenkに関連付けられることが可能である。アルゴリズムが実行されると、Rnodeavailabeが未使用の2D関節ポイント集合を表すとして、現在のマッチング項目はmcurrentで表され、Rnodeavailable=X、mcurrent=Φであり、各端点Rnodenkをトラバースして、カメラの相互排他原則によって、端点が使用されておらず、かつ、現在のマッチング項目mcurrentに同じカメラの端点がなければ、mcurrent+=Rnode、Rnodeavailabe-=Rnodeであり、クラスタ内の全ての端点をトラバースして、端点の処理が完了すると終了し、これでマッチング項目が生成される。
【0065】
全てのクラスタに対する順次処理が終わる、又はRnodeavailable=Φになると、アルゴリズムの実行が終了し、複数のマッチング項目が生成されて、マッチングスキームの生成が完了する。
【0066】
ここで、本実施例において、図10に示すように、5人の人物の左手関節のマッチングスキームである。
【0067】
S2235において、全ての前記関節ポイントタイプの関節ポイントマッチングスキームをマージして、最適な2D人物マッチングスキームを得るステップは、具体的には、
全ての関節ポイントタイプの関節ポイントマッチングスキーム内の各マッチング項目の出現回数を統計し、出現回数が最も多いマッチング項目を組み合わせて最適な2D人物マッチングスキームとするステップを含む。
【0068】
本実施例において、25組の関節ポイントマッチングスキームをマージする必要があり、具体的な手順は以下である。25組のマッチングスキーム内の全てのマッチング項目を統計し、マッチング項目の出現回数に基づいてソートし、アルゴリズムが実行されると、マッチングスキームが空M=Φであり、そして、マッチング項目mを順番にトラバースし、mがマッチングスキームと衝突しなければ、当該マッチング項目をスキームに追加し、その式は
【数52】
で、isConflict(m,M)は、衝突関数である。
【0069】
図4に示すように、ステップS3は、具体的には、
2D人物マッチングスキームの各マッチング項目をトラバースして、各マッチング項目内の各関節ポイントに含まれる2D関節ポイント座標情報及び対応するカメラパラメータ情報を取得するステップS31と、
マルチカメラビジュアル三次元計測技術によって、複数の2D関節ポイント座標情報を3D三次元空間座標として計算して、3D関節ポイント情報を得るステップS32と、
3D関節ポイント情報に基づいて、再投影誤差を計算し、再投影誤差が既定投影誤差を超えた3D関節ポイント情報をフィルタリングで除去するステップS33と、
各マッチング項目内の全ての関節ポイントに対するトラバースが完了すると、残された全ての3D関節ポイント情報に基づいて、1つの人物の3D情報を生成するステップS34と、
全てのマッチング項目に対するトラバースが完了すると、マッチング項目の数に対応する複数人物の3D情報を得るステップS35と、
を含む。
【0070】
ここで、図6及び図7に示すように、カメラ4台+ボウリングピン2個を用いて3D再構築を行う過程を実演し、ここで、カメラは左から[0ー3]の順に番号付けされ、画面中のボウリング2Dポイントは、[0ー0]、[0ー1]、[1ー0]、[1ー1]、[2ー0]、[2ー1]、[3ー0]、[3ー1]と番号付けされている。ボウリングピンの3D再構築の正しい2Dマッチングスキームは、{0-1,1-0,2-0,3-0},{0-0,1-1,2-1,3-1}になるべきである。
【0071】
図7に示すように、カメラ4台+ボウリングピン2個では、8つのボウリングピン2D点があり、各点は1本の逆投影射線に対応しており、各直線と異なるカメラの直線とで最短直線距離を求める。24本の最短線分、合計48個の端点を得ることができ、密度クラスタリングアルゴリズムの半径を0.2メートルとすると、クラスタリングで13個の結果を得ることができ、そのうちの2つの結果の端点の個数は丸内に示されるように12個で、当該12個の点はちょうど4本の直線間の最短線分の端点であるので、近接点のクラスタリング結果に基づいて、以下の2D点マッチングスキームを生成する。
【0072】
第0グループのクラスタリング結果:{0-1,1-0,2-0,3-0}、
第1グループのクラスタリング結果:{0-0,1-1,2-1,3-1}。
【0073】
以上の2D点マッチングスキームは予想と一致しているので、ボウリングピンの2Dポイントに対する正確な認識を実現した。
【0074】
図11に示すように、実際の応用シーンにおいて、本実施例では、カメラ4台に2人の人物という応用シーンで説明し、4台のカメラは、左から右へ順に0、1、2、3で、2人の人物はそれぞれ0と1であるので、最終的なマッチングスキームは、{0-0,1-0,2-1,3-0},{0-1,1-1,2-0,3-1}になるべきである。
【0075】
関節ポイントの認識とマッチング関係の計算により、最終的に得られた25組のマッチングスキームをそれぞれ表1に示す。
【0076】
表1:25グループのマッチングスキーム
【表1】
【0077】
以上より分析すると、{0-1,1-1,2-0,3-1}、{0-0,1-0,2-1,3-0}は、関節ポイントの大部分がマッチングするスキームであり、21回もあり、他の関節ポイントのマッチングスキームがこのスキームの部分集合であるので、この{0-1,1-1,2-0,3-1}、{0-0,1-0,2-1,3-0}という人物マッチングスキームを選択し、予想のスキームと一致する。
【0078】
図1から図11を参照し、本発明の実施例4は、
複数人三次元モーションキャプチャ方法であり、上記実施例3に基づいて、本実施例はさらに、
現在の同期ビデオフレーム及び次の同期ビデオフレームによってそれぞれ得られた複数人物の3D情報を取得して、前後2つの同期ビデオフレームにおける各人物の人体重心位置のオフセット距離が、既定最大移動距離閾値よりも小さいか否かを判断し、そうであれば、次の同期ビデオフレームの各人物の人体重心位置に応じて、過去人物位置集合内の人物一意ID(Identity document、身分識別子)に対応する位置情報を更新するステップS36と、
次の同期ビデオフレームのある人物の、現在の同期ビデオフレーム内の全ての人物の人体重心位置からのオフセット距離が、既定最大移動距離閾値より大きければ、その人物を新たな人物として判定し、新たな人物に新たな人物一意IDを付与して、新たな人物の位置情報を、過去人物位置集合に追加するステップS37と、
現在の同期ビデオフレームのある人物の、次の同期ビデオフレーム内の全ての人物の人体重心位置からのオフセット距離が、既定最大移動距離閾値より大きければ、その人物を退出人物として判定し、過去人物位置集合から、退出人物に対応する人物一意IDの位置情報を除去するステップS38と、
を含む。
【0079】
本実施形態では、過去人物位置集合を とすると、最初の実行時にLC=Φであり、次のフレームで1セットの人物3D情報 が認識され、当該セットの人物の中心位置情報C={c}を算出し、cは単一人物の中心位置を表し、その計算式は
【数53】
であり、近傍探索アルゴリズムにより、LC、C内の各人物の中心の相互位置距離を求め、式はd(c,c’)=|c-c’|、c∈C、c’∈LCであり、ここで、cはC内の人員中心位置を表し、c’は過去人物LC内の人物中心位置であり、人物の最大移動距離をDmaxとして、d(c,c’)≦Dmaxが成立すれば、人物の中心位置距離の変化が閾値より小さいことになり、cとc’を同一人物とみなし、人物c’の中心位置を更新し、d(c,∀c’)>Dmax、c∈C、∀c’∈LCの場合、cとLCの全ての人物との距離が閾値より大きく、cは新たな人物であり、当該人物にIDを生成し、LCに当該人物を追加し、d(∀c,c’)>Dmax、∀c∈C、c’∈LCの場合、c’とCの全ての人物との距離が閾値をより大きく、c’を退出人物とみなし、LCから当該人物を除去する。
【0080】
本発明の実施例5は、以下のとおりである。
【0081】
本発明の別の態様によれば、コンピュータプログラムを記憶したコンピュータ読み取り可能な記憶媒体を提供し、前記コンピュータプログラムがプロセッサによって実行されたときに、上記の実施例1から4の何れか1つの実施例の複数人三次元モーションキャプチャ方法を実現する。
【0082】
図13を参照し、本発明の実施例6は、
電子機器1であり、電子機器1はメモリ3、プロセッサ2及びメモリに記憶され且つプロセッサ2上で実行可能なコンピュータプログラムを含み、プロセッサ2によってコンピュータプログラムを実行したときに、上記の実施例1から4の何れか1つの実施例の複数人三次元モーションキャプチャ方法を実現する。
【0083】
以上のように、本発明が提供する複数人三次元モーションキャプチャ方法、記憶媒体及び電子機器によれば、OpenPose姿勢検出により、深層畳み込みネットワークを用いて姿勢検出を行うことにより、いかなるウェアラブルデバイスに頼らずに、人体姿勢検出を行うことができる。複数のカメラによって、シーン内の異なる視角に対して収集と認識を行うとともに、同一関節ポイントに対する異なるカメラからの逆投影射線同士が交差するはずであるという原理に基づいて、最短距離の計算とクラスタリングを行うことで、異なるカメラの複数の関節ポイントに対して正確なマッチングと対応を行うので、密集シーンに存在する遮蔽、2Dの誤認識による2D点集合マッチングの問題を解決し、複数人に対するモーションキャプチャを実現した。それとともに、関節ポイントタイプに応じて複数の関節ポイントを分類し、既定距離閾値を設定してフィルタリングを行い、信頼度フィルタリングを行い、端点クラスタリングアルゴリズムとして密度クラスタリングアルゴリズムを採用し、そして遮蔽された関節ポイントを削除するなど、さらに限定することにより、処理速度を向上させ、作業効率を向上させることができるとともに、認識の正確性を保証することができる。
【0084】
以上に述べたのは本発明の実施例にすぎず、それによって本発明の保護範囲を制限するわけではない。本発明の明細書及び図面の内容を利用してなされた均等な変換、或いは直接または間接的な関連する技術分野への応用は、同じ理由で本発明の特許の保護範囲に含まれる。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13