JP2021122736A - 関節の回転中心を見つける方法 - Google Patents
関節の回転中心を見つける方法 Download PDFInfo
- Publication number
- JP2021122736A JP2021122736A JP2021013016A JP2021013016A JP2021122736A JP 2021122736 A JP2021122736 A JP 2021122736A JP 2021013016 A JP2021013016 A JP 2021013016A JP 2021013016 A JP2021013016 A JP 2021013016A JP 2021122736 A JP2021122736 A JP 2021122736A
- Authority
- JP
- Japan
- Prior art keywords
- point
- center
- search
- tracker
- bones
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 210000000988 bone and bone Anatomy 0.000 claims abstract description 46
- 210000001364 upper extremity Anatomy 0.000 claims abstract description 13
- 210000003141 lower extremity Anatomy 0.000 claims abstract description 10
- 210000000707 wrist Anatomy 0.000 claims description 22
- 230000003252 repetitive effect Effects 0.000 claims description 17
- 210000000245 forearm Anatomy 0.000 claims description 16
- 239000011159 matrix material Substances 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 238000013500 data storage Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 210000004247 hand Anatomy 0.000 claims description 3
- 230000033001 locomotion Effects 0.000 description 27
- 238000005259 measurement Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 210000003414 extremity Anatomy 0.000 description 7
- 238000010408 sweeping Methods 0.000 description 6
- 230000007613 environmental effect Effects 0.000 description 3
- 210000001991 scapula Anatomy 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 240000002299 Symphytum officinale Species 0.000 description 2
- 235000005865 Symphytum officinale Nutrition 0.000 description 2
- 210000003423 ankle Anatomy 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 210000001624 hip Anatomy 0.000 description 2
- 210000002758 humerus Anatomy 0.000 description 2
- 210000003127 knee Anatomy 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000000513 principal component analysis Methods 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 206010011878 Deafness Diseases 0.000 description 1
- 241000282412 Homo Species 0.000 description 1
- 101000666896 Homo sapiens V-type immunoglobulin domain-containing suppressor of T-cell activation Proteins 0.000 description 1
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 102100038282 V-type immunoglobulin domain-containing suppressor of T-cell activation Human genes 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- IJJVMEJXYNJXOJ-UHFFFAOYSA-N fluquinconazole Chemical compound C=1C=C(Cl)C=C(Cl)C=1N1C(=O)C2=CC(F)=CC=C2N=C1N1C=NC=N1 IJJVMEJXYNJXOJ-UHFFFAOYSA-N 0.000 description 1
- 210000002683 foot Anatomy 0.000 description 1
- 210000002411 hand bone Anatomy 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000004549 pulsed laser deposition Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000033764 rhythmic process Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012109 statistical procedure Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 229910052724 xenon Inorganic materials 0.000 description 1
- FHNFHKCVQCLJFQ-UHFFFAOYSA-N xenon atom Chemical compound [Xe] FHNFHKCVQCLJFQ-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/003—Navigation within 3D models or images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/10—Selection of transformation methods according to the characteristics of the input images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/23—Recognition of whole body movements, e.g. for sport training
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Social Psychology (AREA)
- Multimedia (AREA)
- Psychiatry (AREA)
- General Health & Medical Sciences (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Processing Or Creating Images (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
- Complex Calculations (AREA)
Abstract
【課題】関節の回転中心を見つける。
【解決手段】本発明は、ユーザ(USR)の上肢または下肢の2つの骨または骨のセットをつなげる関節の回転中心(Pc’)を見つけるための方法であって、a)ユーザによって、関節の周りの骨または骨のセットの1つをスイープする一連の繰り返し動作を実行し、同時に、当該一連の繰り返し動作の間に骨または骨のセットの3D位置を取得し、そうすることによって3D点群(P)を取得するステップと、b)他の骨または骨のセットの末端の3D位置を含む3D探索空間において、中心点(Pc)と称される点を算出するステップであって、中心点は、標準偏差が、探索点と3D点群の各点との間の距離のセットを考慮して、標準偏差が最も低い探索点である、ステップと、c)3D点群を平面に変換するステップと、d)中心点を平面に投影し、そうすることによって関節の回転中心(Pc’)を取得するステップとを含む方法に関する。
【選択図】図2
【解決手段】本発明は、ユーザ(USR)の上肢または下肢の2つの骨または骨のセットをつなげる関節の回転中心(Pc’)を見つけるための方法であって、a)ユーザによって、関節の周りの骨または骨のセットの1つをスイープする一連の繰り返し動作を実行し、同時に、当該一連の繰り返し動作の間に骨または骨のセットの3D位置を取得し、そうすることによって3D点群(P)を取得するステップと、b)他の骨または骨のセットの末端の3D位置を含む3D探索空間において、中心点(Pc)と称される点を算出するステップであって、中心点は、標準偏差が、探索点と3D点群の各点との間の距離のセットを考慮して、標準偏差が最も低い探索点である、ステップと、c)3D点群を平面に変換するステップと、d)中心点を平面に投影し、そうすることによって関節の回転中心(Pc’)を取得するステップとを含む方法に関する。
【選択図】図2
Description
本発明は、コンピュータプログラム及びシステムの分野に関し、特に没入型環境におけるデジタルヒューマンモデリング、製品レビュー、人間工学分析及び検証の分野に関する。
没入型環境では、ユーザは、一般にアバターと称されるグラフィック表現を介して3Dシーンと対話する。一人称の映像化(ユーザは、自身のアバターの腕は見るが、アバター全体は見えない)であっても、第三者の映像化(ユーザは自身のアバターを見る)であっても、アバターの腕の長さの推定はできるだけ正確でなければならない。特に、人間工学の検証では、手足の長さについて数ミリメートルの精度が必要である。例えば、緊急停止ボタンを備えたワークステーションのシミュレーションでは、没入型環境においてユーザがそれに到達できるかどうかは、ワークステーションを検証するために非常に重要である。
したがって、仮想没入型環境での体験は、現実世界から仮想世界へのマッピングが正確である場合にのみ意味があり、現実的である。この態様は、仮想現実デバイスを使用してモデル化されたオブジェクトのプロトタイプを評価するためにアバターが使用されるシナリオにも関係する。このシナリオの基本的な要件の1つは、アバターと現実世界でのその対応部分(人間)との寸法の均一性である。これは、アバターの寸法(dimension)を、アバターを誘導している人間の寸法で修正することによって実現することができる。
ただし、人間の骨格構造のモデリングは複雑である。人間の骨格は骨のグループとして見ることができる。関節(articulated joints)は、これらの骨のいくつかの間の相対的な相互作用として定義することができ、これらの相互作用は、骨の回転、並進、及びスライド運動を含む。これらの解剖学的関節の動作は、単純な固定回転軸から非常に複雑な多軸結合運動まで様々である。例えば、肩甲骨−上腕骨のリズムを考えると、肩甲骨と上腕骨は1/2の比率で動く。腕が180度外転すると、肩甲骨の回転によって60度が生じ、肩端での上腕骨の回転によって120度が生じる。本出願では、関節が回転軸のように振る舞うと考える。実際、本発明の目標は、ユーザの実際の骨格を決定することではなく、手足の長さ及び関節をモデル化することである。その単純化にもかかわらず、これらの動きを限られた数のトラッカーを使用して正確にキャプチャし、デジタル人間にマッピングすることは困難な作業である。
一方、人体構造のモデリングは、人体の適切な位置に磁気及び/または光学マーカーを配置することによって実行することができる。非特許文献1は、磁気モーションキャプチャデータを使用して関節階層(articulated hierarchy)の関節パラメータ(joint parameter)を決定する手法を開示している。この手法は、外部測定を行わなくても、対象者の手足の長さ、関節の位置、及びセンサーの配置を決定することを可能にする。上記非特許文献1の表1によると、開示された手法は非常に正確である。上腕の場合、測定値(定規を使用)と算出値との差は平均で2/3ミリメートルに等しい。ただし、この手法では、センサーを備えたモーションキャプチャハーネスを着用する必要があり、これは、モデリングが完了すると没入型体験には無用になる。さらに、この種のソリューションの精度は通常、マーカーの位置決めの精度に関連しており、そのため、セットアップを単独で行うことはできず(通常は専門家によって行われる)、コストと時間がかかる。
一方、マーカーなしのトラッキングシステムを使用する骨の長さの推定は、マーカーベースのシステムと比較した場合、精度が低くなる。マーカーなしのシステムは、例えばビデオゲームアプリケーション用の消費者向け仮想現実システムに見られる。その場合、ユーザは自分のサイズを入力し、上肢の長さは統計的考察に基づいて導出される。ただし、サイズと手足の長さとの間に実際の比例関係はなく、背の高い人が短い腕を持つこともあるし、その逆もある。よって、この手法は正確ではない。
したがって、没入型環境アプリケーションのために、特に上肢または下肢の骨をつなげる関節の回転中心を見つける(locating)ために、そして、上肢または下肢の寸法を推定するためにも、ユーザの上肢または下肢をモデル化するための迅速かつ正確なマーカーレスの方法を提供する必要がある。
James F. O’Brien et al., "Automatic Joint Parameter Estimation from Magnetic Motion Capture Data", Proceedings of the Graphics Interface 2000 Conference, May 15-17, 2000
本発明の対象は、ユーザの上肢または下肢の2つの骨または骨のセットをつなげる関節の回転中心を見つけるための方法であって、当該方法は、
a)ユーザによって、関節の周りの骨または骨のセットの1つをスイープする一連の繰り返し動作を実行し、同時に、当該一連の繰り返し動作の間に骨または骨のセットの3D位置を取得し、そうすることによって3D点群(cloud of points)を取得するステップと、
b)他の骨または骨のセットの末端の3D位置を含む3D探索空間において、中心点と称される点を算出するステップであって、当該中心点は、3D探索空間の探索点と3D点群の各点との間の距離のセットを考慮して、標準偏差が最も低い探索点である、ステップと、
c)3D点群を平面に変換するステップと、
d)中心点を上記平面に投影し、そうすることによって関節の回転中心を取得するステップと
を含む。
a)ユーザによって、関節の周りの骨または骨のセットの1つをスイープする一連の繰り返し動作を実行し、同時に、当該一連の繰り返し動作の間に骨または骨のセットの3D位置を取得し、そうすることによって3D点群(cloud of points)を取得するステップと、
b)他の骨または骨のセットの末端の3D位置を含む3D探索空間において、中心点と称される点を算出するステップであって、当該中心点は、3D探索空間の探索点と3D点群の各点との間の距離のセットを考慮して、標準偏差が最も低い探索点である、ステップと、
c)3D点群を平面に変換するステップと、
d)中心点を上記平面に投影し、そうすることによって関節の回転中心を取得するステップと
を含む。
好ましい実施形態では、
−方法は、2つのハンドヘルドトラッカーを提供する予備ステップを含み、
−ステップa)では、他の骨または骨のセットの末端に対して維持されている、モバイルトラッカーと称されるハンドヘルドトラッカー、及び、リファレンストラッカーと称されるもう一方のハンドヘルドトラッカーのうちの1つを保持している間に、一連の繰り返し動作が実行される。
−方法は、2つのハンドヘルドトラッカーを提供する予備ステップを含み、
−ステップa)では、他の骨または骨のセットの末端に対して維持されている、モバイルトラッカーと称されるハンドヘルドトラッカー、及び、リファレンストラッカーと称されるもう一方のハンドヘルドトラッカーのうちの1つを保持している間に、一連の繰り返し動作が実行される。
好ましい実施形態では、ステップb)は、
b1)3D探索空間を、事前定義されたエッジ長の立方体として定義するステップであって、前記立方体は、参照点と称される、リファレンストラッカーの3D位置を中心とする、ステップと、
b2)ユーザから、上記参照点と共に探索点のセットを構成する立方体の点のセットを識別する入力を受け取るステップと、
b3)各探索点について、探索点と3D点群の各点との間の距離を算出し、各探索点の標準偏差を導出するステップと、
b4)探索点のセットの中から、標準偏差が最も低い少なくとも1つの探索点を識別するステップと、
b5)立方体のエッジ長が事前定義された閾値以下になるまで、立方体のエッジ長を半分にし、識別された探索点を中心に立方体を配置することによって、ステップb1)、b2)、b3)、及びb4)を繰り返すステップであって、そのとき、中心点は識別された探索点に対応する、ステップと
によって、3D探索空間を再帰的に細分割するサブステップを含む。
b1)3D探索空間を、事前定義されたエッジ長の立方体として定義するステップであって、前記立方体は、参照点と称される、リファレンストラッカーの3D位置を中心とする、ステップと、
b2)ユーザから、上記参照点と共に探索点のセットを構成する立方体の点のセットを識別する入力を受け取るステップと、
b3)各探索点について、探索点と3D点群の各点との間の距離を算出し、各探索点の標準偏差を導出するステップと、
b4)探索点のセットの中から、標準偏差が最も低い少なくとも1つの探索点を識別するステップと、
b5)立方体のエッジ長が事前定義された閾値以下になるまで、立方体のエッジ長を半分にし、識別された探索点を中心に立方体を配置することによって、ステップb1)、b2)、b3)、及びb4)を繰り返すステップであって、そのとき、中心点は識別された探索点に対応する、ステップと
によって、3D探索空間を再帰的に細分割するサブステップを含む。
好ましい実施形態では、ステップb2)において、立方体は8つのより小さい立方体に細分割され、探索点のセットは、参照点または識別された探索点、小さい立方体の中心、隣接する2つのより小さい立方体の正方形の中心、隣接する2つのより小さい立方体のエッジの中間点を含む。
好ましい実施形態では、ステップc)は、
c1)3D点群の点の共分散行列(covariance matrix)を算出するサブステップと、
c2)共分散行列の固有値と固有ベクトルを算出するサブステップと、
c3)3D点群を取り囲む矩形の境界ボックス(bounding box)、固有ベクトルに対応する境界ボックスの方向、固有値に対応する境界ボックスの寸法(dimension)を作成するサブステップと、
c4)境界ボックスのジオメトリ中心(geometry center)を算出するサブステップと、
c5)最大の固有値を有する2つの固有ベクトルによって定義され、境界ボックスのジオメトリ中心を通過する平面を作成するサブステップと
を含む。
c1)3D点群の点の共分散行列(covariance matrix)を算出するサブステップと、
c2)共分散行列の固有値と固有ベクトルを算出するサブステップと、
c3)3D点群を取り囲む矩形の境界ボックス(bounding box)、固有ベクトルに対応する境界ボックスの方向、固有値に対応する境界ボックスの寸法(dimension)を作成するサブステップと、
c4)境界ボックスのジオメトリ中心(geometry center)を算出するサブステップと、
c5)最大の固有値を有する2つの固有ベクトルによって定義され、境界ボックスのジオメトリ中心を通過する平面を作成するサブステップと
を含む。
好ましい実施形態では、ステップa)において、取得された3D位置はフレームに格納され、各フレームは、事前定義された数の3D位置を含み、ステップb)、c)、及びd)は、新しいフレームが取得されていると常に、すべてのフレームに対して実施される。
好ましい実施形態では、方法は、
−ステップa)、b)、c)、及びd)の実行ごとに、リファレンストラッカーの3D位置を保存するステップと、
−リファレンストラッカーの3D位置の平均を算出するステップと、
−リファレンストラッカーの3D位置が、リファレンストラッカーの保存された3D位置の平均から、事前定義された値を超えて異なる場合、対応するフレームを破棄するステップと
を含む。
−ステップa)、b)、c)、及びd)の実行ごとに、リファレンストラッカーの3D位置を保存するステップと、
−リファレンストラッカーの3D位置の平均を算出するステップと、
−リファレンストラッカーの3D位置が、リファレンストラッカーの保存された3D位置の平均から、事前定義された値を超えて異なる場合、対応するフレームを破棄するステップと
を含む。
好ましい実施形態では、方法は、ステップc2)において、他のものよりも小さい単一の固有値がないと判定された場合に、フレームを破棄するステップを含む。
好ましい実施形態では、方法は、最小標準偏差の指示をユーザにリアルタイムで送信するステップを含む。
本発明はまた、ユーザの上肢の寸法を推定するための方法に関し、当該方法は、
S1:上記請求のいずれかによる方法で算出された手首の回転中心の位置と、モバイルトラッカーの原点の位置との間の距離に基づいて手の長さを算出するステップと、
S2:上記請求のいずれかによる方法で算出された手首の回転中心の位置と、上記請求のいずれかによる方法で算出された肘の回転中心の位置との間の距離に基づいて前腕の長さを算出するステップと、
S3:上記請求のいずれかによる方法で算出された手首の回転中心の位置と、上記請求のいずれかによる方法で算出された肩の回転中心の位置との間の距離に基づいて、上腕及び前腕の長さを算出するステップと、
S4:上腕及び前腕の長さ、手の長さ、並びにリファレンストラッカーとモバイルトラッカーとがそれぞれユーザの異なる手で保持されていて、腕を伸ばした状態でユーザの前額面で振った場合のリファレンストラッカーとモバイルトラッカーとの間の最大距離に基づいて、左右の肩の間の長さを算出するステップと
を含む。
S1:上記請求のいずれかによる方法で算出された手首の回転中心の位置と、モバイルトラッカーの原点の位置との間の距離に基づいて手の長さを算出するステップと、
S2:上記請求のいずれかによる方法で算出された手首の回転中心の位置と、上記請求のいずれかによる方法で算出された肘の回転中心の位置との間の距離に基づいて前腕の長さを算出するステップと、
S3:上記請求のいずれかによる方法で算出された手首の回転中心の位置と、上記請求のいずれかによる方法で算出された肩の回転中心の位置との間の距離に基づいて、上腕及び前腕の長さを算出するステップと、
S4:上腕及び前腕の長さ、手の長さ、並びにリファレンストラッカーとモバイルトラッカーとがそれぞれユーザの異なる手で保持されていて、腕を伸ばした状態でユーザの前額面で振った場合のリファレンストラッカーとモバイルトラッカーとの間の最大距離に基づいて、左右の肩の間の長さを算出するステップと
を含む。
本発明はまた、コンピュータシステムに上記請求のいずれかによる方法を実行させるためのコンピュータ実行可能命令を含む、非一時的なコンピュータ読み取り可能データ記憶媒体に記憶されたコンピュータプログラム製品に関する。
本発明はまた、コンピュータシステムに前述の方法を実行させるためのコンピュータ実行可能命令を含む非一時的なコンピュータ読み取り可能データ記憶媒体に関する。
本発明はまた、2つのハンドヘルドトラッカー、非一時的なメモリに結合されたプロセッサ、スクリーン、コンピュータシステムに前述の方法を実行させるためのコンピュータ実行可能命令を記憶するメモリを備えるコンピュータシステムに関する。
本発明の追加の特徴及び利点は、添付の図面と併せて以下の説明から明らかになるであろう。
図1は、手首の回転の中心を決定するために手をスイープする一連の繰り返し動作を実行しているユーザの上面図を示す。
本発明の方法の第1のステップにおいて、a)ユーザUSRは、関節の周りの骨の1つまたは骨のセットをスイープする一連の繰り返し動作を実施し、同時に当該一連の繰り返し動作の間に骨または骨のセットの3D位置を取得し、そうすることによって3D点群Pを取得する。取得された3D点群を、図2に示す。
ユーザの手首の回転中心を見つけるのに特に適している好ましい実施形態では、ユーザUSRは、両手にトラッカー(MT、RT)を保持する。
トラッカー(MT、RT)は、例えば「HTC Vive」(商標)仮想現実システムなどの仮想現実システムの一部とすることができる。このようなシステムは、少なくとも1つのハンドヘルドトラッカー(無線ハンドヘルドコントローラー)、没入型コンテキストにおいてユーザに3Dシーンを表示するための仮想現実ヘッドセットを備える。請求項に記載された方法は没入型体験自体を対象にしておらず、ユーザのアバターの事前較正を対象にしているので、発明された方法の実装は、仮想現実ヘッドセットの使用を必要としない。さらに、本発明は、2つのハンドヘルドトラッカー、すなわち、1つは左上肢/下肢用であり、1つは右上肢/下肢用である、を使用する必要がある。したがって、高価なモーションキャプチャシステムを必要としない。
トラッカーは、基地局との連携を通じて、表面検出、マーカー、環境認識、ジャイロスコープ制御ユニット、コンピュータービジョンによってなど、さまざまな方法で仮想環境の座標系に配置することができる。発明された方法では、各トラッカーの原点の位置は、これらの手法の1つによって分かる。
3D位置を決定できるのであれば、トラッカーは仮想現実専用でなくともよい。トラッカーは、較正処理のためだけに使用できる。
この実施形態では、ハンドヘルドトラッカー(MT、RT)は同一である。手首の周りで手の骨のセットをスイープする繰り返し動作を行う手によって保持されるトラッカーは、モバイルトラッカーMTと称され、もう一方のトラッカーはリファレンストラッカーRTと称される。
回転中心の位置の推定値は、骨または骨のセットのすべての3D位置が取得された後に算出することができる。あるいは、推定値は、事前定義された数の点が取得されていると常に算出してもよく、以下では、事前定義された数の点はフレームと称される。したがって、トラッカーのハードウェアに応じて、また仮想現実ソフトウェアにも応じて、回転中心の位置のリアルタイム推定を実行することができる。例えば、「HTC Vive」(商標)仮想現実システムのハンドヘルドトラッカーは、最大90Hzのリフレッシュレートを有する。リアルタイムのビジュアルレンダリングを強化するために、リフレッシュレートを90Hzよりもはるかに低い値に設定することもできる。請求項に記載された方法では、モバイルトラッカーMTの3D位置は、事前定義された長さのフレーム(例えば、25個の点)に格納され、回転中心の位置は、最初に第1フレームについて、次に2つの第1フレームについて(例えば、50個の点)、次に3つの第1フレーム(例えば、75個の点)について、というように算出される。したがって、ユーザはほぼリアルタイムの測定を感じ、測定値の精度は時間とともに向上する。
手首の回転の中心を見つけるために、ユーザUSRはモバイルトラッカーMTとリファレンストラッカーRTを手に持つ。図1に示すように、リファレンストラッカーRTを安定させて手首に近づけたまま、ユーザはモバイルトラッカーMTを左から右にそしてその逆方向に複数回振る。
リファレンストラッカーRTは、3つの機能を有する。第一に、以下で説明するように、ユーザは手首の近くの前腕上にリファレンストラッカーRTを保持するように求められるので(ただし、手首ではなく、そうでなければ測定処理はノイズが多くなるだろう)、それは、手首の回転中心の位置の最初の推定値を提供する。第二に、リファレンストラッカーRTを前腕上に保持することにより、前腕がより安定し、したがって、測定の精度が向上する。第三に、較正処理の間にリファレンストラッカーRTの位置を知ることにより、リファレンストラッカーRTに対するモバイルトラッカーMTの相対的な動きのみを考慮することができ、前腕の全体的な動きを補償することができる。これにより、較正処理の安定性が向上するだろう。
手は、手首の回転中心の周りで広い角変位(約130〜140°)を持つことができるが、関節の停止などの極端な姿勢になるまで手を振らない方がよい。手首にとって重要なのは、動きの終わりに、ユーザが手首を「壊す」傾向がある、つまり、点Pの平面を根本的に変更する傾向があるからである。肩の動きにとっても重要なのは、肩の動きが広すぎると、肩甲骨も動くため、いくつかの関節を示す動きが非常に複雑になる傾向があるからである。ユーザは、広すぎる角変位を行わないように求められる。例えば、ユーザ向けのガイドとして意図されたビデオチュートリアルのスナップショットの例を示す図1、5A、5B、及び5Cでは、極端な姿勢に対応する角度範囲は、所望の姿勢に対応する範囲とは異なる方法(例えば、異なる色)で表示される。
ユーザUSRは、スクリーン上の視覚的指示を通じて、図1に示すように腕を配置するように求められ得る。このような動きは、専門家ではないユーザでも簡単に行える。
請求項に記載された方法の第2のステップb)において、中心点Pcと称される点が、他の骨または骨のセットの末端の3D位置を含む3D探索空間において算出される。中心点Pcは、探索点と3D点群の各点との間の距離のセットを考慮して、標準偏差を最小化する探索空間の点である。
3D探索空間は、最初に、他の骨または骨のセットの末端の3D位置(図1の例によれば、手首に近い前腕の末端)を含む。したがって、リファレンストラッカーRTを関節の近くに置くようにユーザを誘導することにより、安定性が向上し(骨または骨のセットを振ることを除いて手足の動きが少ないため)、中心点Pcの算出が実際の回転中心に近い点から始まり、それによって方法の速度が向上する。
次いで、円弧状の点の束のように見える3D点群Pのおおよその中心を見つけるために、方法は参照点Porgから開始し、最後に、探索点と3D点群の各点との間の距離のセットを考慮して標準偏差を最小化する点をその近傍で見つける。
好ましい実施形態では、中心点Pcは、八分木探索アルゴリズムに基づいて算出され、このアルゴリズムでは、3D探索空間が再帰的に細分割され、ステップb)の以下のサブステップを含む。
最初のサブステップb1)では、3D探索空間は、事前定義されたエッジ長の立方体CUBとして定義され、当該立方体CUBはリファレンストラッカーRTの3D位置に対応する参照点Porgを中心とする。図4は、立方体CUBを概略的に示す。例えば、最初の事前定義されたエッジ長は、上肢のすべての種類の関節に適合されるように、数デシメートルに等しくてもよい。実際、関節の回転中心とモバイルトラッカーとの間の最大距離は、もちろんユーザに応じて、約50センチメートルの長さである腕全体の長さの測定を対象とする。下肢(足首、膝、または腰)の回転中心の位置を測定するために、同じ理由で、最初の事前定義されたエッジ長が1メートルに等しくてもよい。最初の事前定義されたエッジ長は、例えば29=512mmに等しくてよく、これは、パフォーマンスと精度の理由を考慮すると、適切なトレードオフである。
次いで、第2のサブステップb2)において、立方体CUBの点のセットが識別される。この識別された点のセットは、参照点Porgとともに、探索点Psのセットを構成する。識別された点は、例えば、周期的な配置で、参照点Porgの周囲に配置された点のネットワークを形成する。
好ましい実施形態では、ステップb)の最初の反復のために、立方体CUBは、8つのより小さい立方体SCUB(ボクセル)に細分割され、探索点Psのセットは、以下の点、すなわち、
−立方体CUBの中心に位置する参照点Porg、
−8つの小さい立方体の中心、
−隣接する2つのより小さい立方体SCUBの正方形の12の中心、及び、
−隣接する2つのより小さい立方体SCUBのエッジの6つの中間点
を含む。
−立方体CUBの中心に位置する参照点Porg、
−8つの小さい立方体の中心、
−隣接する2つのより小さい立方体SCUBの正方形の12の中心、及び、
−隣接する2つのより小さい立方体SCUBのエッジの6つの中間点
を含む。
探索点の別の選択を行うこともできる。ただし、これらの点を使用すると、算出速度の点で優れた結果が得られることが分かった。
次いで、第3のサブステップb3)において、立方体CUBの各探索点Psについて、探索点Psと3D点群Pの各点との間の距離が算出される。3D点のフレームが取得されるように方法が実施される場合、探索点Psと3D点群Pの点との間の距離は、取得された3D点についてのみ算出されることが理解される。
時間tにおいて、N個の点が取得され、Nps個の探索点があると仮定する。立方体CUBの各探索点Psについて、N個の距離が算出される。このN個の距離のセットに対して、標準偏差が算出される。Nps個の探索点Psについて、Nps個の標準偏差が算出される。
次いで、第4のサブステップb4)において、標準偏差が最も低い少なくとも1つの探索点Psが識別される。最も低い標準偏差を有する探索点(複数可)は、定義により、探索点と3D点群Pの各点との間の距離が、距離の平均に近い傾向があることを示す。
次いで、ステップb1)、b2)、b3)、及びb4)が繰り返される。立方体CUBを(リファレンストラッカーRTの位置に対応する)参照点Porgを中心に配置する代わりに、立方体CUBを、標準偏差が最も低い探索点Ps(識別された探索点と称される)を中心に配置する。新しい反復ごとに、立方体CUBのエッジ長が半分になる。
好ましい実施形態では、サブステップb4)において、最も低い標準偏差を有する2つの探索点が識別され、両方の点に対して並行して反復が行われる。したがって、各反復の後、識別された探索点の数は2倍になる。各反復の後に1つの探索点のみが識別される場合、27個以上の探索点Psを定義することにより、方法の精度が向上する。
いずれにせよ、各反復で1つの識別された探索点がある場合でも、各反復で複数の識別された探索点がある場合でも(例えば、2つの識別された探索点)、立方体のエッジ長が事前定義された閾値以下になると、反復が続行され、各反復の後に単一の探索点が識別される。例えば、閾値は16mmに等しくてもよい。
次いで、立方体のエッジ長が別の事前定義された閾値、例えば2mm以下になると、反復は停止する。中心点Pcは、エッジ長が2mm以下の立方体CUB内にある。したがって、その場合の解像度は1mmに等しく(最後の反復の探索点は、2mmのエッジ長を有する立方体の中心にある)、前述の方法に比べて高い解像度である。
ステップb)の結果、及び好ましい実施形態では八分木探索の結果は、中心点Pcである。
あるいは、(対数の複雑さの)八分木探索アルゴリズムに基づいて中心点Pcを算出する代わりに、(線形の複雑さの)ブルートフォース線形探索に基づいて中心点Pcを算出してもよい。
次いで、第3のステップc)で、3D点群Pが平面に変換される。ステップc)の目標は、非常に多くの情報を失う一方で、3D点群Pを2次元でマッピングすることである。
好ましい実施形態では、3Dから2Dへの変換は、以下に説明する「主成分分析(principal component analysis)」と呼ばれる統計的手順を使用することによって実行され得る。
c1)3D点群(P)の点の共分散行列を算出する。
c2)共分散行列の固有値と固有ベクトルを算出する。
c3)3D点群Pを取り囲む矩形の境界ボックス、固有ベクトルに対応する境界ボックスの方向、固有値に対応する境界ボックスの寸法を作成する。
c4)境界ボックスのジオメトリ中心を算出する。
c5)最大の固有値を有する2つの固有ベクトルによって定義され、境界ボックスのジオメトリ中心を通過する平面を作成する。ユーザが、スクリーンに表示される手順に従い、スイープ動作を適切に実施することを前提とする。3D点群Pはほぼ同じ平面上にあり、円弧形状(arc shape)のように見える。したがって、通常、この点群の厚さを表す固有値の1つは、他の2つの固有値よりもはるかに小さい。
一連の繰り返し動作が完了すると、平面が作成され得る。好ましい実施形態では、平面は、事前定義された長さのフレームの取得後に、既に取得されたすべてのフレームとともに作成される。したがって、ステップc)もほぼリアルタイムで実施され、平面の作成の安定性が不十分な場合、ユーザは自分の動きを修正することができる。特に、ステップc3)の間に、例えば許容マージンに基づいて、3つの固有値が非常に類似していると判定された場合、フレームは破棄され得る。したがって、3Dから2Dへの変換は、情報の損失を最小限に抑えて行われる。
あるいは、「主成分分析」法を使用する代わりに、最初に、3D点群を囲む矩形の境界ボックスを算出することによって平面は作成され得る。次いで、境界ボックスの最も大きい面の両方に平行で、境界ボックスを2つの等しい体積に分割する平面が算出される。
請求項に記載された方法の最後のステップd)において、ステップb)で算出された中心点Pcは、ステップc)で算出された平面上に投影される。中心点Pcの投影は、関節の回転中心Pc’の位置に対応する。ユーザがモバイルトラッカーMTを保持する本発明の特定の実施形態では、回転中心Pc’の位置は、モバイルトラッカーMTの原点の3D位置に対する3D位置を参照する。
図2および図3は、3D点群P、中心点Pc、及び回転中心Pc’を示す。
好ましい実施形態では、ステップa)、b)、c)、及びd)は、新しいフレーム(例えば、25個の点を含む)が取得されていると常に繰り返される。言い換えると、新しいフレームが取得されていると、回転中心Pc’の位置がすべての3D位置で再算出される。リファレンストラッカーRTの3D位置はリアルタイムで保存され、リファレンストラッカーRTのすべての保存位置の平均位置が算出される。リファレンストラッカーの3D位置が、リファレンストラッカーの保存された3D位置の平均から、事前定義された値を超えて異なる場合、新しい入フレーム(incoming frame)は破棄される。したがって、一連の動きの間にユーザが動き過ぎると、リファレンストラッカーRTの3D位置は不安定になり、対応するフレームを破棄することで、ユーザの不安定な位置に対する回転中心Pc’の算出を回避する。
回転中心Pc’と3D点群Pの各点との間の距離dkを算出することができる。Dc={d0、・・・dn-1}をn個の距離のセットと仮定する(n=Card(p))。Dcの平均は、回転中心Pc’とモバイルトラッカーMTの原点との間のおおよその距離である。骨または骨のセットの長さは、おおよその距離から簡単に導出することができる。一連の動きを実施しながら、特定の指でモバイルトラッカーMTのボタンを押すようにユーザに求めることにより、指の末端の位置は分かるため(それは、押されたボタンの位置に対応する)、指の末端と回転中心Pc’との間の距離を算出することができる。
結果の品質を推定するために、Dcの標準偏差を算出してもよい。標準偏差が高すぎると、推定は信頼できない。例えば、結果の品質は、標準偏差が10mm未満の場合は許容可能、10mmから15mmの場合は疑わしい、15mmを超える場合は悪い結果として示される。Dcの標準偏差、または品質レベル(許容可能/疑わしい/悪い)をリアルタイムでユーザに送信(表示)できるため、ユーザは現在の一連の動きを修正して品質レベルを向上させることができる。したがって、ユーザは、標準偏差を示す視覚的なフィードバックを通じて、測定の品質を確認することができる。より一般的には、請求項に記載された方法は、ユーザ自身によって行うことができ、専門家によって、または非専門家によってさえ支援される必要はない。
本発明者らは、安定性基準が満たされている場合、約1000点の3D点群について、測定の良好な精度が達成されることを経験的に試験した。リフレッシュレートが90Hzのトラッカー(「HTC Vive」(商標)という仮想現実システムの場合)を使用すると、取得は約11秒で行われる。例えば、1000点など、超えると処理が停止する点の閾値の数を設定することができる。結果が非常に安定している場合、閾値の数の点を取得する前に処理が停止してもよい。
ユーザの上肢の寸法(dimension)を推定するために、最初に手(hand)の長さL1を上述した方法で測定する。これは、図6のフローチャートに示されたステップS1を表す。前述のステップa)〜d)が実施され、測定値が安定していてノイズが多くない(not noisy)場合は、肘の回転中心を算出するために、同じ処理が前腕に対して実施される(ステップS2)。ここでは、ユーザUSRは図5Aに示されるように、一方のコントローラー(リファレンストラッカーRT)を安定させ、肘の近くに維持し、もう一方のコントローラー(モバイルトラッカーMT)を、屈曲/伸展運動及びその逆を複数回行うことによって振る。
手首の回転中心の(モバイルトラッカーMTの原点に対する)位置は以前に算出されているため、肘の回転中心に基づき、かつ、手首の回転中心に基づいて、前腕の長さL2を算出することができる。
前述のステップa)〜d)が実施され、測定値が安定していてノイズが多くない場合(推奨に反して、リファレンストラッカーRTが広範囲に移動する場合、またはモバイルトラッカーMTが平面内で移動しない場合、ノイズの多い測定値が発生する可能性がある)、肩の回転中心を算出するために、同じ処理が前腕に対して実施される(ステップS3)。肩の回転の中心を算出するために、同じ処理が腕に対して実施される。ユーザUSRは、図5Bに示されるように、一方のコントローラー(リファレンストラッカーRT)を安定させて肩に近づけ、腕をまっすぐに保ち、もう一方のコントローラー(モバイルトラッカーMT)を腕によって上下及びその逆に複数回振る。
手首の回転中心の(モバイルトラッカーMTの原点に対する)位置は以前に算出されているため、肩の回転中心に基づき、かつ、手首の回転中心に基づいて、腕(前腕及び上腕)の長さL3を算出することができる。
最後に、図5Cに示すように、両腕を伸ばして上下にスイープする一連の繰り返し動作を実施しながら、左右の肩の間の長さL4を算出する。ユーザUSRは、一方の手にリファレンストラッカーRTを持ち、もう一方の手にモバイルトラッカーRTを持つ。このステップでは、両方のトラッカーが動かされる。
手(hand)の長さL1及び腕(arm)の長さL3は同じであると想定されており、したがって、一方の側で以前に算出された手の長さL1及び腕の長さL3は、もう一方の側で同一であるとみなされる。
一連の繰り返し動作中に、リファレンストラッカーRTとモバイルトラッカーRTとの間の長さLtが算出される。長さLtの最大値が得られるように、トラッカーをユーザの前額面(frontal plane)で可能な限り動かす。次いで、左右の肩の間の長さL4を次の式で算出する。
L4=max(Lt)−2×(L3+L1)
あるいは、手の長さL1はユーザの両側で以前に算出されている可能性があり(L1l=左手の長さ、及びL1r=右手の長さ)、腕の長さL3はユーザの両側で以前に算出されている可能性がある(L3l=左腕の長さ、及びL3r=右腕の長さ)。
あるいは、手の長さL1はユーザの両側で以前に算出されている可能性があり(L1l=左手の長さ、及びL1r=右手の長さ)、腕の長さL3はユーザの両側で以前に算出されている可能性がある(L3l=左腕の長さ、及びL3r=右腕の長さ)。
その場合、左右の肩の間の長さL4は、次の式で算出される。
L4=max(Lt)−(L1l+L1r+L3l+L3r)
ステップS1〜S4の各ステップが約1000点で実行され、リフレッシュレートが90Hzであることを考慮すると、上肢(upper limb)の寸法の完全な推定は1分未満で完了し、これは、磁気及び/または光学マーカーを使用する手法と比較して非常に高速である。
ステップS1〜S4の各ステップが約1000点で実行され、リフレッシュレートが90Hzであることを考慮すると、上肢(upper limb)の寸法の完全な推定は1分未満で完了し、これは、磁気及び/または光学マーカーを使用する手法と比較して非常に高速である。
オプションの予備ステップでは、S1のステップa)の前に、ユーザUSRは自身のサイズを入力するよう求められてもよい。したがって、各要素の長さの非常に大まかな推定値は、推定された回転中心に基づいて骨または骨のセットの寸法を算出する前に、ステップS1〜S4の開始時に表示され得る。
前述の方法はまた、足によって支えることができるトラッカーによって、ユーザの下肢(lower limb)の寸法を測定するために実施され得る。関節は、足首、膝、股関節(hip)である。
本発明の方法は、場合によりコンピュータネットワークを含み、ハードディスク、ソリッドステートディスクまたはCD−ROMなどのコンピュータ読み取り可能媒体上に不揮発性の形態で適切なプログラムを記憶し、そのマイクロプロセッサ(複数可)とメモリを使用して上記のプログラムを実行する、適切にプログラムされた汎用コンピュータまたは仮想現実システムによって実施することができる。
本発明の例示的な実施形態による方法を実行するのに適したコンピュータCPTを、図7を参照して説明する。図7では、コンピュータCPTは、RAM M1またはROM M2、またはハードディスクドライブ(HDD)M3、DVD/CDドライブM4などのメモリデバイスに記憶された、あるいはリモートに記憶された実行可能プログラム、すなわち、コンピュータ読み取り可能命令のセットを実行しながら、上記の方法のステップを実施する中央処理ユニットCPUを含む。
請求項に記載された発明は、コンピュータ読み取り可能命令及び/または本発明の処理のデータ構造が記憶されたコンピュータ読み取り可能媒体の形態によって制限されない。例えば、命令とファイルは、CD、DVD、フラッシュメモリ、RAM、ROM、PROM、EPROM、EEPROM、ハードディスク、またはサーバーやコンピュータなど、コンピュータが通信するその他の情報処理デバイスに保存することができる。プログラムとファイルは、同じメモリデバイスまたは異なるメモリデバイスに保存することができる。
さらに、本発明の方法を実行するのに適したコンピュータプログラムは、中央処理ユニットCPU、及びMicrosoft VISTA、Microsoft Windows 10、UNIX、Solaris、LINUX、Apple MAC-OS、及び当業者に知られているその他のシステムなどのオペレーティングシステムと連携して実行されるユーティリティアプリケーション、バックグラウンドデーモン、またはオペレーティングシステムのコンポーネント、あるいはそれらの組み合わせとして提供され得る。
中央処理ユニットCPUは、米国のIntel社のXenonプロセッサまたは米国のAMD社のOpteronプロセッサとすることができ、あるいは米国のFreescale CorporationのFreescale ColdFire、IMX、またはARMプロセッサなどの他のプロセッサタイプとすることができる。あるいは、CPUは、米国のIntel CorporationのCore2Duoなどのプロセッサとすることができ、または当業者が認識するように、FPGA、ASIC、PLD上に、または個別論理回路を使用して実装することができる。さらに、中央処理ユニットは、前述した本発明の処理のコンピュータ読み取り可能命令を実行するために協調して動作する複数のプロセッサとして実装することができる。
図7の仮想現実システムは、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネットなどのネットワークとインターフェイスするための米国のIntel CorporationのIntel Ethernet PROネットワークインターフェイスカードなどのネットワークインターフェイスNIも含む。仮想現実システムは、ヘッドトラッキングデバイスHEDを有するヘッドマウントディスプレイデバイスHMDをさらに含む。汎用I/OインターフェイスIFは、トラッカー(RT、MT)とインターフェイスする。トラッカー(MT、RT)は、例えば「HTC Vive」(商標)仮想現実システムなどの仮想現実システムの一部とすることができる。仮想現実システムの各ワイヤレスハンドヘルドコントローラーは、トラッカー(リファレンストラッカーまたはモバイルトラッカー)を備える。ハンドヘルドコントローラーのトラッキングは、基地局との連携を通じて、表面検出、マーカー、環境認識、ジャイロスコープ制御ユニット、コンピュータービジョンによってなど、さまざまな方法で実行できる。
ディスプレイ、キーボード、及びポインティングデバイスは、ディスプレイコントローラー及びI/Oインターフェイスとともに、グラフィカルユーザインターフェイスを形成し、ユーザが入力コマンドを提供するために、そしてコンピュータが3Dオブジェクトを表示するために使用される。
ディスクコントローラーDKCは、HDD M3及びDVD/CD M4を、コンピュータのすべてのコンポーネントを相互接続するための、ISA、EISA、VESA、PCI、または類似のものとすることができる通信バスCBSに接続する。
本明細書で説明された任意の方法のステップは、処理における特定の論理機能またはステップを実装するための1つまたは複数の実行可能命令を含むモジュール、セグメント、またはコードの一部を表すものとして理解されるべきであり、代替の実装は、本発明の例示的な実施形態の範囲内に含まれる。
Claims (13)
- ユーザ(USR)の上肢または下肢の2つの骨または骨のセットをつなげる関節の回転中心(Pc’)を見つけるための方法であって、
a)前記ユーザ(USR)によって、前記関節の周りの前記骨または骨のセットの1つをスイープする一連の繰り返し動作を実行し、同時に、当該一連の繰り返し動作の間に前記骨または骨のセットの3D位置を取得し、そうすることによって3D点群(P)を取得するステップと、
b)他の骨または骨のセットの末端の3D位置を含む3D探索空間において、中心点(Pc)と称される点を算出するステップであって、前記中心点は、前記3D探索空間の探索点と前記3D点群の各点との間の距離のセットを考慮して、標準偏差が最も低い探索点である、ステップと、
c)前記3D点群(P)を平面に変換するステップと、
d)前記中心点を前記平面に投影し、そうすることによって前記関節の前記回転中心(Pc’)を取得するステップと
を含むことを特徴とする方法。 - 前記方法は、2つのハンドヘルドトラッカー(RT、MT)を提供する予備ステップを含み、
ステップa)では、前記他の骨または骨のセットの前記末端に対して維持されている、モバイルトラッカー(MT)と称されるハンドヘルドトラッカー、及び、リファレンストラッカー(RT)と称されるもう一方のハンドヘルドトラッカーのうちの1つを保持している間に、前記一連の繰り返し動作が実行されることを特徴とする請求項1に記載の方法。 - ステップb)は、
b1)前記3D探索空間を、事前定義されたエッジ長の立方体(CUB)として定義するステップであって、前記立方体(CUB)は、参照点(Porg)と称される、前記リファレンストラッカー(RT)の前記3D位置を中心とする、ステップと、
b2)前記ユーザから、前記参照点(Porg)と共に探索点(Ps)のセットを構成する前記立方体(CUB)の点のセットを識別する入力を受け取るステップと、
b3)各探索点(Ps)について、前記探索点(Ps)と前記3D点群(P)の各点との間の前記距離を算出し、各探索点(Ps)の標準偏差を導出するステップと、
b4)前記探索点(Ps)のセットの中から、標準偏差が最も低い少なくとも1つの探索点(Ps)を識別するステップと、
b5)前記立方体の前記エッジ長が事前定義された閾値以下になるまで、前記立方体(CUB)の前記エッジ長を半分にし、前記識別された探索点を中心に前記立方体を配置することによって、ステップb1)、b2)、b3)、及びb4)を繰り返すステップであって、そのとき、前記中心点(Pc)は前記識別された探索点に対応する、ステップと
によって、前記3D探索空間を再帰的に細分割するサブステップを含むことを特徴とする請求項2に記載の方法。 - ステップb2)において、前記立方体(CUB)は8つのより小さい立方体(SCUB)に細分割され、前記探索点(Ps)のセットは、前記参照点(Porg)または前記識別された探索点、小さい立方体の中心、隣接する2つのより小さい立方体(SCUB)の正方形の中心、隣接する2つのより小さい立方体(SCUB)のエッジの中間点を含むことを特徴とする請求項3に記載の方法。
- ステップc)は、
c1)前記3D点群(P)の点の共分散行列を算出するサブステップと、
c2)前記共分散行列の固有値と固有ベクトルを算出するサブステップと、
c3)前記3D点群(P)を取り囲む矩形の境界ボックス、前記固有ベクトルに対応する前記境界ボックスの方向、前記固有値に対応する前記境界ボックスの寸法を作成するステップと、
c4)前記境界ボックスのジオメトリ中心を算出するサブステップと、
c5)最大の固有値を有する2つの前記固有ベクトルによって定義され、前記境界ボックスの前記ジオメトリ中心を通過する前記平面を作成するサブステップと
を含むことを特徴とする請求項1乃至4のいずれかに記載の方法。 - ステップa)において、前記取得された3D位置はフレームに格納され、各フレームは、事前定義された数の3D位置を含み、ステップb)、c)、及びd)は、新しいフレームが取得されていると常に、すべての前記フレームに対して実施されることを特徴とする請求項1乃至5のいずれかに記載の方法。
- ステップa)、b)、c)、及びd)の実行ごとに、前記リファレンストラッカーの前記3D位置を保存するステップと、
前記リファレンストラッカーの前記3D位置の平均を算出するステップと、
前記リファレンストラッカーの前記3D位置が、前記リファレンストラッカーの前記保存された3D位置の前記平均から、事前定義された値を超えて異なる場合、対応するフレームを破棄するステップと
を含むことを特徴とする、請求項2に従属する場合の請求項6に記載の方法。 - ステップc2)において、他のものよりも小さい単一の固有値がないと判定された場合に、フレームを破棄するステップを含むことを特徴とする請求項6または7に記載の方法。
- 最小標準偏差の指示を前記ユーザにリアルタイムで送信するステップを含むことを特徴とする請求項1乃至8のいずれかに記載の方法。
- ユーザの上肢の寸法を推定するための方法であって、
S1:請求項1乃至9のいずれかによる方法で算出された手首の回転中心の位置と、モバイルトラッカー(MT)の原点の位置との間の距離に基づいて手の長さ(L1)を算出するステップと、
S2:請求項1乃至9のいずれかによる方法で算出された前記手首の前記回転中心の位置と、請求項1乃至9のいずれかによる方法で算出された肘の回転中心の位置との間の距離に基づいて前腕の長さ(L2)を算出するステップと、
S3:請求項1乃至9のいずれかによる方法で算出された前記手首の前記回転中心の位置と、請求項1乃至9のいずれかによる方法で算出された肩の回転中心の位置との間の距離に基づいて、上腕及び前腕の長さ(L3)を算出するステップと、
S4:前記上腕及び前腕の長さ(L3)、前記手の長さ(L1)、並びにリファレンストラッカー(RT)と前記モバイルトラッカー(MT)とがそれぞれ前記ユーザ(USR)の異なる手で保持されていて、腕を伸ばした状態で前記ユーザの前額面で振った場合の前記リファレンストラッカー(RT)と前記モバイルトラッカー(MT)との間の最大距離に基づいて、左右の肩の間の長さを算出するステップと
を含むことを特徴とする方法。 - コンピュータシステムに請求項1乃至10のいずれかによる方法を実行させるためのコンピュータ実行可能命令を含む、非一時的なコンピュータ読み取り可能データ記憶媒体(M1、M2、M3、M4)に記憶されたコンピュータプログラム製品。
- コンピュータシステムに請求項1乃至10のいずれかによる方法を実行させるためのコンピュータ実行可能命令を含む非一時的なコンピュータ読み取り可能データ記憶媒体(M1、M2、M3、M4)。
- 2つのハンドヘルドトラッカー(RT、MT)と、非一時的なメモリ(M1、M2、M3、M4)に結合されたプロセッサ(CPU)と、スクリーン(DY)とを備え、前記メモリは、コンピュータシステムに請求項1乃至10のいずれかによる方法を実行させるためのコンピュータ実行可能命令を記憶するコンピュータシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP20305112.3A EP3862850B1 (en) | 2020-02-06 | 2020-02-06 | Method for locating a center of rotation of an articulated joint |
EP20305112.3 | 2020-02-06 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021122736A true JP2021122736A (ja) | 2021-08-30 |
JP2021122736A5 JP2021122736A5 (ja) | 2024-01-18 |
Family
ID=69804795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021013016A Pending JP2021122736A (ja) | 2020-02-06 | 2021-01-29 | 関節の回転中心を見つける方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210248802A1 (ja) |
EP (1) | EP3862850B1 (ja) |
JP (1) | JP2021122736A (ja) |
CN (1) | CN113298953A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023007969A1 (ja) | 2021-07-27 | 2023-02-02 | 三菱重工業株式会社 | 磁気ギアード電気機械、発電システム、及び駆動システム |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114565978B (zh) * | 2022-04-28 | 2022-07-26 | 深圳市第二人民医院(深圳市转化医学研究院) | 基于动作捕捉点云的关节旋转中心优化方法及设备 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5604856A (en) * | 1994-10-13 | 1997-02-18 | Microsoft Corporation | Motion compensated noise reduction method and system for computer generated images |
FR2785517B1 (fr) * | 1998-11-10 | 2001-03-09 | Univ Joseph Fourier | Procede et dispositif de determination du centre d'une articulation |
US7209776B2 (en) * | 2002-12-03 | 2007-04-24 | Aesculap Ag & Co. Kg | Method of determining the position of the articular point of a joint |
NZ561570A (en) * | 2005-03-16 | 2010-02-26 | Lucasfilm Entertainment Compan | Three-dimensional motion capture |
AU2008307076A1 (en) * | 2007-10-06 | 2009-04-09 | Joint Research Pty Limited | A device and method for assisting the alignment of limbs |
EP3063496A4 (en) * | 2013-10-24 | 2017-06-07 | Ali Kord | Motion capture system |
WO2018213749A1 (en) * | 2017-05-18 | 2018-11-22 | Smith & Nephew, Inc. | Systems and methods for determining the position and orientation of an implant for joint replacement surgery |
US11618438B2 (en) * | 2018-03-26 | 2023-04-04 | International Business Machines Corporation | Three-dimensional object localization for obstacle avoidance using one-shot convolutional neural network |
US10964053B2 (en) * | 2018-07-02 | 2021-03-30 | Microsoft Technology Licensing, Llc | Device pose estimation using 3D line clouds |
-
2020
- 2020-02-06 EP EP20305112.3A patent/EP3862850B1/en active Active
-
2021
- 2021-01-29 US US17/163,201 patent/US20210248802A1/en active Pending
- 2021-01-29 CN CN202110123707.1A patent/CN113298953A/zh active Pending
- 2021-01-29 JP JP2021013016A patent/JP2021122736A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023007969A1 (ja) | 2021-07-27 | 2023-02-02 | 三菱重工業株式会社 | 磁気ギアード電気機械、発電システム、及び駆動システム |
Also Published As
Publication number | Publication date |
---|---|
EP3862850B1 (en) | 2023-03-29 |
EP3862850A1 (en) | 2021-08-11 |
US20210248802A1 (en) | 2021-08-12 |
CN113298953A (zh) | 2021-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7127081B1 (en) | Method for tracking motion of a face | |
Haggag et al. | Real time ergonomic assessment for assembly operations using kinect | |
CN106164978B (zh) | 使用参数化可变形网状物来构造个性化具体化的方法和系统 | |
JP5931215B2 (ja) | 姿勢を推定する方法及び装置 | |
Harders et al. | Calibration, registration, and synchronization for high precision augmented reality haptics | |
CN105094335B (zh) | 场景提取方法、物体定位方法及其系统 | |
US9477312B2 (en) | Distance based modelling and manipulation methods for augmented reality systems using ultrasonic gloves | |
KR101519775B1 (ko) | 오브젝트의 모션 인식 기반 애니메이션 생성 방법 및 장치 | |
Bianchi et al. | High precision augmented reality haptics | |
KR20160096473A (ko) | 동작 평가 시스템 및 방법 | |
Wiedemann et al. | Performance evaluation of joint angles obtained by the Kinect v2 | |
JP2022505423A (ja) | 電磁追跡のための周囲電磁歪み補正 | |
JP2021122736A (ja) | 関節の回転中心を見つける方法 | |
US10433725B2 (en) | System and method for capturing spatially and temporally coherent eye gaze and hand data during performance of a manual task | |
JPH09330424A (ja) | 3次元骨格構造の動き変換装置 | |
JP2015186531A (ja) | 動作情報処理装置、及びプログラム | |
CN111539300A (zh) | 一种基于ik算法的人体运动捕捉方法、装置、介质及设备 | |
KR20120041086A (ko) | 아바타 생성을 위한 처리 장치 및 방법 | |
Baek et al. | Dance experience system using multiple kinects | |
CN109781104A (zh) | 运动姿态确定及定位方法、装置、计算机设备及介质 | |
Schönauer et al. | Wide area motion tracking using consumer hardware | |
CN111459280B (zh) | Vr空间扩展方法、装置、设备及存储介质 | |
WO2020179526A1 (ja) | 座標系変換パラメータ推定装置、方法及びプログラム | |
CN115714000A (zh) | 一种康复训练评估方法及装置 | |
WO2002031772A2 (en) | Method for tracking motion of a face |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240110 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240110 |