JP2004101273A - 磁気式位置計測システムの誤差校正方法 - Google Patents
磁気式位置計測システムの誤差校正方法 Download PDFInfo
- Publication number
- JP2004101273A JP2004101273A JP2002261228A JP2002261228A JP2004101273A JP 2004101273 A JP2004101273 A JP 2004101273A JP 2002261228 A JP2002261228 A JP 2002261228A JP 2002261228 A JP2002261228 A JP 2002261228A JP 2004101273 A JP2004101273 A JP 2004101273A
- Authority
- JP
- Japan
- Prior art keywords
- error
- lut
- magnetic
- reliability
- coordinates
- 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
Images
Landscapes
- Measurement Of Length, Angles, Or The Like Using Electric Or Magnetic Means (AREA)
Abstract
【課題】磁気式位置計測システムにおいて、磁界の歪みに起因する位置座標の計測誤差を補正するLUT(Look Up Table:誤差対応表)を簡易かつ迅速に作成する。
【解決手段】非磁性体部材からなる棒1に複数の磁気センサ2が等間隔Lで直線状に配置された計測棒3とトランスミッタ4とを備えた磁気式モーションキャプチャシステムにおいて、計測棒3を測定範囲内で任意に動かし、計測棒に取付けられた磁気センサから取得した位置座標と計算により求められた位置座標との差を比較することにより、誤差の大きさと誤差の信頼度を求め、信頼度が高い場合は一定の条件のもとにLUTを更新する。
【選択図】 図1
【解決手段】非磁性体部材からなる棒1に複数の磁気センサ2が等間隔Lで直線状に配置された計測棒3とトランスミッタ4とを備えた磁気式モーションキャプチャシステムにおいて、計測棒3を測定範囲内で任意に動かし、計測棒に取付けられた磁気センサから取得した位置座標と計算により求められた位置座標との差を比較することにより、誤差の大きさと誤差の信頼度を求め、信頼度が高い場合は一定の条件のもとにLUTを更新する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は空間形状(三次元位置情報)を取得するために用いられる磁気式位置計測システムにおいて、磁界の歪みに起因する位置座標(位置情報)の計測誤差を補正する誤差校正方法に関するものである。
【0002】
【従来の技術】
磁気式位置計測システムの応用例の一つである磁気式モーションキャプチャ装置は、トランスミッタ(磁場発生源)と計測場内で移動できる磁気センサを用いて空間形状(三次元位置情報)をダイナミックに得るための装置である。磁気式は、被験者(被測定物)の動きに制限されず実時間での位置情報の取得が可能となる点で機械式や光学式などのものよりも優れている。
【0003】
一方、磁気式の欠点は周囲の金属や電装品等により磁界が歪み測定誤差が生じやすいことである。例えば特許文献1には、磁気式モーションキャプチャ装置が磁場の歪みによる影響を受けやすい旨記載されている。
【0004】
磁気式モーションキャプチャ装置は多くの用途に適用されうるが、中でも、仮想現実(ヴァーチャル・リアリティ)への応用が期待されている。
【0005】
仮想現実の世界では、没入感(体験者が仮想空間に没入できること)と、インタラクティブ性(体験者の動作に伴う仮想空間の変化が、現実世界同様にリアルタイムにフィードバックされること)と、自律性(仮想空間内の目的物が現実世界と同様の自律的な動きを行なうこと)が重要であるといわれるが、位置情報の測定誤差が大きいとインタラクティブ性が低下しVRの現実感が低下する。
【0006】
誤差を補正する従来方法として、あらかじめ求めておいた磁気センサの正確な位置情報と磁気センサによる実測値から求められた位置情報とを比較し、誤差情報を補正するテーブルいわゆる誤差対応表(LUT:Look Up Table)による線形補間を行い、測定誤差を含んだ位置情報を正しい位置情報に補正する方法が知られている。
【0007】
LUTを用いる補正では表の各値の間は線形に補間されるためテーブルの規模が大きいほど精度が高いという利点がある。従って、精度の高いLUTを作成する時は、磁気センサの間隔をできるだけ小さくして測定することが好ましい。
【0008】
【特許文献1】
特開2000−146509号公報(4段落等)
【0009】
【発明が解決しようとする課題】
しかし、誤差の測定は非常に多くの労力を要する。例えば、3m四方の空間内の4面(正面・両側・床面)上にコンピューターグラフィックスによる映像を立体表示させて仮想世界を体験できる立体表示装置(バーチャル・リアリティシステム)を例にとると、この3m×3m×3mのシステム空間内を30cm間隔で測定する場合、約1000点もの測定が必要となる。
【0010】
磁気センサの数は限られているし、これを人間が三次元的に精度良く等間隔に配置することは実際には極めて困難である。モーションキャプチャ装置自体に備わっているキャリブレーション機能を使ってLUTを作成することもできるが、本件発明者たちの実験では、精度が要求される領域では10cm間隔の測定でも精度の高いLUTを作成することはできなかった。
【0011】
一方、高精度で非磁性体からなるメカニカルアームを使って数万点の計測を行い、極めて精度の高いLUTを作成する方法も理論的には可能であるが、これはコストが高くなりすぎる点で非現実的である。
【0012】
このように、補正の精度を高くするために、大規模かつ高精度のLUTを作成する場合、計測点数及び測定精度の難しさが飛躍的に増大し、かつ、その測定の労力は計り知れないものとなる。
【0013】
本発明は、誤差測定の労力を軽減すると共に補正精度を向上させる新規なLUTの作成方法を提供することを目的とする。
【0014】
【課題を解決するための手段】
本発明に係る磁気式位置計測システムの誤差校正方法は、非磁性体部材からなる棒1に複数の磁気センサ2が等間隔Lで直線状に配置された計測棒3と前記磁気センサが感知できる磁界を発生させるトランスミッタ4とを備えており、
A 前記複数の磁気センサのうち前記トランスミッタと最も近い距離にある磁気センサが取得した位置(M1)又はこれを誤差情報をもとに補正した位置(C1)を基準点とし、少なくとも前記基準点を通過する直線の方程式から計算により他のセンサの位置座標(Rn)を求めるステップと、
B 前記計測棒に取付けられた各磁気センサが取得した位置座標(Mn)又はこれを誤差情報により補正した位置座標(Cn)と、前記計算により求められた位置座標(Rn)との誤差(En)及び前記誤差の信頼度(s)をそれぞれ計算するステップと、
C 前記信頼度が所定値より高い場合は前記誤差情報を更新するステップと、
を備えていることを特徴とする。
【0015】
この方法によると、誤差情報を校正するLUTを作成する労力を大幅に軽減することができる。特に、誤差の大きい場所において計測棒を細かい間隔で振り廻すことにより、大規模かつ高精度のLUTを簡単にしかも低コストで作成することができる。なお、LUTは、誤差情報を表にしたものであるが、具体的にはコンピュータなどで扱うデータ列等を意味するものである。
【0016】
また、トランスミッタの近傍についてはあらかじめ正確な測定に基づいたLUTを作成しておき、常に計測棒の一端がトランスミッタの近傍にあるようにし、他端をトランスミッタからなるべく遠く離れるように振り廻すことにより、誤差が大きい場所すなわちトランスミッタから遠い部分についてのみ上記LUTの更新方法を適用することが好ましい。
【0017】
これは、以下の理由による。本発明の方法は、基準点(P1)の計測値が正確であると仮定しているが実際にはわずかな誤差が存在しているため、特に誤差が大きいところでは効果を発揮する。そこで、わずかな誤差が存在するトランスミッタ近傍には本発明の方法を用いず、あらかじめ正確なLUTを作成しておくことにより、より正確なLUTを作成することができる。
【0018】
【発明の実施の形態】
位置座標の計測値はトランスミッタに近い場所で取得したものほど正確であるが、逆に遠い場所でのデータは不正確である。一方、直線状に等間隔に磁気センサを配置しておけば、遠い場所であっても計算により容易に正確な位置を求めることができる。
【0019】
(システム構成)
本発明に係るモーションキャプチャシステムは、トランスミッタと、モーションキャプチャ装置本体と、計測棒に等間隔で直線状に取付けた磁気センサ群と、LUT作成用コンピューターとから構成される。なお磁気センサはコイルなどからなる。また、没入感を出すために、実験では、3m四方の空間内の4面(正面・両側・床面)上にコンピューターグラフィックスによる映像を立体表示させて仮想世界を体験できる三次元表示装置CAVE(登録商標)を用いている。
【0020】
図1(a)は、試作した計測棒を例示したものである。計測棒3は、非磁性体部材からなる棒1に複数の磁気センサ2が等間隔で直線状に配置されてなる。モーションキャプチャシステムを稼働状態にして、モーションキャプチャ可能な領域内(トランスミッタ4が発生した磁界の到達範囲内)で計測棒3を測定者が振り回すことにより、LUTの更新を行う。
【0021】
試作した計測棒の仕様は以下のとおりである。
材質 木製
長さ 220cm
磁気センサ間隔 20cm
磁気センサ数 10個
【0022】
あらかじめ本件発明者たちは誤差の大きさをCAVE(登録商標)内で測定したところ、トランスミッタから3.2m離れたところで誤差が最大(120cm)となった。このような誤差の大きな領域で計測棒を振り回すと、誤差の大きい領域における高精度で細かなLUTが作成される。
【0023】
逆に、誤差の小さい領域では、あまりLUTが更新されず、非効率的である。このような場合、別の手段であらかじめ正確なLUTを作成しておくとよい。そうすれば、より正確なLUTを作成できる。以下、LUTの更新方法について説明する。
【0024】
【実施例】
本発明を実現するための具体例として、以下のS1乃至S8の各ステップを複数回繰り返すことが考えられる。
S1 前記計測棒3をトランスミッタ4から発生された磁界の到達範囲内におき、前記各磁気センサ2にその位置座標を計測させるステップ
S2 ステップS1で前記磁気センサ2が計測した計測座標M(M1,M2,・・・,Mn)を誤差対応表(LUT)により補正し、補正座標C(C1,C2,・・・,Cn)を求めるステップ
S3 前記補正座標のうち、前記トランスミッタと最短距離にある座標C1を除く他の数点について、位置座標の加重平均を行い加重平均座標Pavを計算するステップ(ただし、加重平均は、トランスミッタ4に近い磁気センサの座標ほど加重する)
S4 前記トランスミッタ4と最短距離にある座標C1と、前記加重平均座標Pavとを通過する直線の方程式を計算するステップ
S5 前記直線の方程式から計算により各磁気センサの位置座標を推定するステップ
S6 ステップS5で求めた推定座標Rn(R1,R2,・・・,Rn)と、前記計測座標(M1,M2,・・・,Mn)とを比較して、誤差En(E1,E2,・・・,En)を求めるステップと
S7 ステップS6で求めた前記誤差En(E1,E2,・・・En)から誤差距離|E|を計算するステップ
S8 前記誤差距離|E|が所定の値よりも大きいときは前記LUT更新せず、誤差距離|E|が所定の値よりも小さいときは前記誤差距離|E|の大きさに対応してあらかじめ決められた信頼度sを重みとして平均誤差値を計算し、これを前記LUTに格納しLUTを更新するステップ
【0025】
以下、より具体的に説明する。
(LUT更新方法)
−ステップ1:位置座標の計算値の算出−
LUTの更新方法は、x,y,z各座標とも同様であるので、x座標について説明し、y,z座標の説明は省略する。
(1)トランスミッタに近い方から各点の座標をP1(px1,py1,pz1)、P2(px2,py2,pz2)、・・・、Pn(pxn,pyn,pzn)とする。
(2)これら各点の測定値をM1(mx1,my1,mz1,)、M2(mx2,my2,mz2,)、・・・、Mn(mxn,myn,mzn)とする。
(3)測定値に対しLUTを用いて補正した値をC1(cx1,cy1,cz1)、C2(cx2,cy2,cz2)、・・・、Cn(cxn,cyn,czn)とする。LUTがゼロのときはCn=Mnとなる。
(4)C1を除く、C1近傍の4点C2〜C4について加重平均をとり、加重平均座標Pav(px,py,pz)を求める。この場合、トランスミッタから距離が近いものほど信頼度が高いので基準点P1に近い座標ほど加重する。
px=(cx2×3+cx3×2+cx4×1)÷6
(5)補正座標C1と、加重平均座標Pavの距離dと、直線C1Pavの傾きaを求める。補正座標C1は最も信頼度が高いのでこれを基準点とするためである。
d=((px−cx1)2+(py−cy1)2+(pz−cz1)2)1/2
ax=(px−cx1)÷d
(6)ここから、予想される各点の推定座標R(rx,ry,rz)と、計測座標M(mx,my,mz)との誤差E(exN,eyN,ezN)(ただしN=2,3,4)を各点ごとに求める。
rx=cx1+ax×(P1からの距離)
exN=rxN−mxN
【0026】
−ステップ2:LUTの更新−
(7)まず、P2,P3,P4について誤差距離E(ΣEN)を求める。
(8)誤差距離Eの値に応じて信頼度を決定する。例えば、
・5〜8cmなら信頼度s=1
・3〜5cmなら信頼度s=2
・0〜3cmなら信頼度s=3
とし、誤差が8cm以上の場合はLUTの更新を行わない。なお、この8cmという値は補正対象や環境等により変化する値であるため、数多くの比較実験をして決定する。
(9)測定点の近傍8点のLUTを以下の手順で更新する。
LUTの信頼度をlsとする。(LUTの各点には、誤差情報と信頼度を記載する。)ls=0(初期値)なら、そこには値が入っていないため、信頼度sと誤差exをそのまま入れる。ls≠0のとき(誤差の値lxが既に入っているとき)は、
lx’=(lx×lS 2+ex×s2)÷(ls 2+s2)
で得られたlx’を入れ、信頼度はlsとsの高い方を入れる。lxはLUTに格納されている誤差値であり、初期値は0となり、LUTの更新によって変化する。
【0027】
−ステップ3:LUTを用いて実際に誤差を補正する方法−
(10)測定点の近傍数点(たとえば8点)のLUTの値を用いる。
この時LUTが空(ls=0)の場合は、その方向で最も近い空でない点を探す。なお、近傍の定義は各種存在するが、最もシンプルな近傍の考え方として、任意の点に対しそれを取り囲む格子点(これはLUTに格納される計測点)が必ず8点定まるので、いわゆる8近傍を採用している。格子は立方体を構成し、すべての点はその格子点の中のどこかに存在するので、8点が確実かつ容易に求められる。
(11)測定点とLUTの各点との距離をそれぞれd1〜d8とする。
(12)この距離と、LUTの信頼度lsを重みとして用いて補正する。
cx=mx+(lx1×lS1×1/d1+・・+lx8×lS8×1/d8)÷(lS1×1/d1+・・・+lS8×1/d8)
このように信頼値に従って、信頼できるものにより大きな重みをつけながら平均をとる。
【0028】
(LUTの更新例)
ここで、LUTが計算により更新されていく様子を具体的に説明する。ただし、直感的理解を容易にするため、二次元座標(x,y)でセンサ数4つの例について説明する。しかし、三次元の場合も基本的な考え方は二次元の場合と全く同様であるし、センサ数が増加しても同様にして計算することができる。
【0029】
図2は、計測棒に取付けられた4つの磁気センサ位置座標(P1〜P4)と、磁気センサが取得した位置座標(M1〜M4)とを、x−y座標上に示したグラフである。なお、M1〜M4は既知、P1〜P4は未知である。これらの位置座標を列記すると以下のようになる。
【0030】
P1( 5.00, 5.00) M1( 5.00, 6.00)
P2(10.00, 7.50) M2(10.00,10.00)
P3(15.00,10.00) M3(13.75,17.50)
P4(20.00,12.50) M4(17.50,31.00)
【0031】
図3(a)は、初期のLUTを示し、(b)は初期の信頼度表を示した図である。いずれも初期値はゼロからスタートしている。なお、LUTと信頼度表は1つの表にまとめてもよい。
【0032】
次に、測定値に対しLUTを用いて補正した補正座標をC1(cx1,cy1)、C2(cx2,cy2)を求める。LUTが初期値であるので、Mn=Cn(n=1,2,3,4)である。すなわち、
C1( 5.00, 6.00)
C2(10.00,10.00)
C3(13.75,17.50)
C4(17.50,31.00)
である。
【0033】
次に、C2〜C4について加重平均Pav(Px,Py)をとる。信頼度の高い点(トランスミッタに近いセンサの座標)ほど加重して平均をとる。
よって、加重平均座標Pav(px、py)は、Pav(12.50,16.00)となる(図2)。
【0034】
次に、最も信頼度の高い補正座標C1(位置座標M1の補正座標)と加重平均座標Pav(px,py,pz)で表わされる距離をdとして、直線C1Pavの傾きaを求める。
【0035】
予想される実際の位置Rn(rxn、ryn)は、
により計算される。なお、P1からの距離は、各点が等間隔にならんでいるので、P1−P2間の距離Lを求めてこれを整数倍すればよい。P1やP2の座標は未知であるが、計測棒のセンサ間隔を実測することは容易である。なお、この例の場合、以下のようにしてP1−P2の座標からLを求めることができる。
L=((10−5)2+(7.5−5)2)1/2≒5.59
【0036】
また、誤差En(exn,eyn,ezn)(ただしn=2,3,4)は、
exn=rxn−mxn
eyn=ryn−myn
により求められる。
【0037】
x座標について具体的に計算すると、
【0038】
y座標についても同様に、
【0039】
このようにして誤差Enを求め、誤差の大きさに応じて信頼度を決定する。まずRとEの距離(誤差距離)ΣEnを計算する。
【0040】
上記の例では、
となる。
【0041】
誤差距離の合計が8以上の場合には、信頼度が低すぎると判断しLUTを更新しない。この例では、誤差距離(16.21)が8以上の値であるため、本来ならば更新されないが、LUTの更新例を示すため、今回は例外として、信頼度s=1としつつLUTを更新する。
【0042】
LUT及び信頼度表は共に初期値(ゼロ)のままであるため、上記で求めたRをそのまま格納する。図4(a)は、更新後のLUTを示し、(b)は更新後の信頼度表を示した図である。
【0043】
Rx2=(5+0.6×5.59×1)≒8.35
Rx3=(5+0.6×5.59×2)≒11.71
Rx4=(5+0.6×5.59×3)≒15.06
Ry2=(6+0.8×5.59×1)≒10.47
Ry3=(6+0.8×5.59×2)≒14.94
Ry4=(6+0.8×5.59×3)≒19.42
【0044】
すでに信頼度表に値が入っている場合は、信頼度sを重みとして計算した平均誤差値をLUTに格納する。但し今回は信頼度が不採用値(16.21)であるため、信頼度更新分の箇所に「s=1」を記載する。
【0045】
LUTがカバーする範囲は、LUT上に用意されている計測点が存在する範囲となる。LUT上に記載されている計測点から離れた部分での誤差値データが得られても、LUTを変化させることがないので、計算対象から除外する。この意味において、R4のデータは、R4の観測された座標M4(17.5,31)がLUTのカバー範囲外となるので、R4の値を書き込む場所(すなわちM4)がLUTに存在しない。よって、更新には利用されない。なお、実際の処理では、早い段階でこのような計測範囲外の点は除外しておくことが好ましい。
【0046】
このように、直線状に等間隔に配置された計測棒を使ってLUTを更新すれば誤差測定の労力を軽減すると共に補正精度を向上させることができる。
【0047】
なお、非磁性体部材からなる棒1は、木製・プラスチック・セラミックなど非磁性体の部材で、磁気センサに直線状に等間隔に配置できるものであればよい。また、非磁性体部材からなる棒1の長さ、磁気センサ2の個数及び間隔は適宜選択できる。
【0048】
本発明は、バーチャル・リアリティシステム空間内に限られず、磁気センサを用いて位置情報を取得するシステムすべてに適用可能である。
【発明の効果】
本発明によると、従来よりも誤差補正に要する労力を大幅に軽減することができる。特に、誤差の大きい場所における精度の高い大規模なLUTを簡易かつ低コストで作成することができる。30cm間隔で直線格子上の点を測定し、誤差測定の所要時間を調べたところ、従来方法では5時間要したものが、本発明による方法では約30分に短縮された。
【図面の簡単な説明】
【図1】図1は、本発明に係る計測棒の一例を示す平面図である。
【図2】図2は、計測棒に取付けられた4つの磁気センサ位置座標(P1〜P4)と、磁気センサが取得した位置座標(M1〜M4)とを、x−y座標上に示したグラフである。
【図3】図3(a)は、初期のLUTを示し、(b)は初期の信頼度表を示した図である。
【図4】図4(a)は、更新後のLUTを示し、(b)は更新後の信頼度表を示した図である。
【符号の説明】
1 非磁性体部材からなる棒
2 磁気センサ
3 計測棒
4 トランスミッタ
【発明の属する技術分野】
本発明は空間形状(三次元位置情報)を取得するために用いられる磁気式位置計測システムにおいて、磁界の歪みに起因する位置座標(位置情報)の計測誤差を補正する誤差校正方法に関するものである。
【0002】
【従来の技術】
磁気式位置計測システムの応用例の一つである磁気式モーションキャプチャ装置は、トランスミッタ(磁場発生源)と計測場内で移動できる磁気センサを用いて空間形状(三次元位置情報)をダイナミックに得るための装置である。磁気式は、被験者(被測定物)の動きに制限されず実時間での位置情報の取得が可能となる点で機械式や光学式などのものよりも優れている。
【0003】
一方、磁気式の欠点は周囲の金属や電装品等により磁界が歪み測定誤差が生じやすいことである。例えば特許文献1には、磁気式モーションキャプチャ装置が磁場の歪みによる影響を受けやすい旨記載されている。
【0004】
磁気式モーションキャプチャ装置は多くの用途に適用されうるが、中でも、仮想現実(ヴァーチャル・リアリティ)への応用が期待されている。
【0005】
仮想現実の世界では、没入感(体験者が仮想空間に没入できること)と、インタラクティブ性(体験者の動作に伴う仮想空間の変化が、現実世界同様にリアルタイムにフィードバックされること)と、自律性(仮想空間内の目的物が現実世界と同様の自律的な動きを行なうこと)が重要であるといわれるが、位置情報の測定誤差が大きいとインタラクティブ性が低下しVRの現実感が低下する。
【0006】
誤差を補正する従来方法として、あらかじめ求めておいた磁気センサの正確な位置情報と磁気センサによる実測値から求められた位置情報とを比較し、誤差情報を補正するテーブルいわゆる誤差対応表(LUT:Look Up Table)による線形補間を行い、測定誤差を含んだ位置情報を正しい位置情報に補正する方法が知られている。
【0007】
LUTを用いる補正では表の各値の間は線形に補間されるためテーブルの規模が大きいほど精度が高いという利点がある。従って、精度の高いLUTを作成する時は、磁気センサの間隔をできるだけ小さくして測定することが好ましい。
【0008】
【特許文献1】
特開2000−146509号公報(4段落等)
【0009】
【発明が解決しようとする課題】
しかし、誤差の測定は非常に多くの労力を要する。例えば、3m四方の空間内の4面(正面・両側・床面)上にコンピューターグラフィックスによる映像を立体表示させて仮想世界を体験できる立体表示装置(バーチャル・リアリティシステム)を例にとると、この3m×3m×3mのシステム空間内を30cm間隔で測定する場合、約1000点もの測定が必要となる。
【0010】
磁気センサの数は限られているし、これを人間が三次元的に精度良く等間隔に配置することは実際には極めて困難である。モーションキャプチャ装置自体に備わっているキャリブレーション機能を使ってLUTを作成することもできるが、本件発明者たちの実験では、精度が要求される領域では10cm間隔の測定でも精度の高いLUTを作成することはできなかった。
【0011】
一方、高精度で非磁性体からなるメカニカルアームを使って数万点の計測を行い、極めて精度の高いLUTを作成する方法も理論的には可能であるが、これはコストが高くなりすぎる点で非現実的である。
【0012】
このように、補正の精度を高くするために、大規模かつ高精度のLUTを作成する場合、計測点数及び測定精度の難しさが飛躍的に増大し、かつ、その測定の労力は計り知れないものとなる。
【0013】
本発明は、誤差測定の労力を軽減すると共に補正精度を向上させる新規なLUTの作成方法を提供することを目的とする。
【0014】
【課題を解決するための手段】
本発明に係る磁気式位置計測システムの誤差校正方法は、非磁性体部材からなる棒1に複数の磁気センサ2が等間隔Lで直線状に配置された計測棒3と前記磁気センサが感知できる磁界を発生させるトランスミッタ4とを備えており、
A 前記複数の磁気センサのうち前記トランスミッタと最も近い距離にある磁気センサが取得した位置(M1)又はこれを誤差情報をもとに補正した位置(C1)を基準点とし、少なくとも前記基準点を通過する直線の方程式から計算により他のセンサの位置座標(Rn)を求めるステップと、
B 前記計測棒に取付けられた各磁気センサが取得した位置座標(Mn)又はこれを誤差情報により補正した位置座標(Cn)と、前記計算により求められた位置座標(Rn)との誤差(En)及び前記誤差の信頼度(s)をそれぞれ計算するステップと、
C 前記信頼度が所定値より高い場合は前記誤差情報を更新するステップと、
を備えていることを特徴とする。
【0015】
この方法によると、誤差情報を校正するLUTを作成する労力を大幅に軽減することができる。特に、誤差の大きい場所において計測棒を細かい間隔で振り廻すことにより、大規模かつ高精度のLUTを簡単にしかも低コストで作成することができる。なお、LUTは、誤差情報を表にしたものであるが、具体的にはコンピュータなどで扱うデータ列等を意味するものである。
【0016】
また、トランスミッタの近傍についてはあらかじめ正確な測定に基づいたLUTを作成しておき、常に計測棒の一端がトランスミッタの近傍にあるようにし、他端をトランスミッタからなるべく遠く離れるように振り廻すことにより、誤差が大きい場所すなわちトランスミッタから遠い部分についてのみ上記LUTの更新方法を適用することが好ましい。
【0017】
これは、以下の理由による。本発明の方法は、基準点(P1)の計測値が正確であると仮定しているが実際にはわずかな誤差が存在しているため、特に誤差が大きいところでは効果を発揮する。そこで、わずかな誤差が存在するトランスミッタ近傍には本発明の方法を用いず、あらかじめ正確なLUTを作成しておくことにより、より正確なLUTを作成することができる。
【0018】
【発明の実施の形態】
位置座標の計測値はトランスミッタに近い場所で取得したものほど正確であるが、逆に遠い場所でのデータは不正確である。一方、直線状に等間隔に磁気センサを配置しておけば、遠い場所であっても計算により容易に正確な位置を求めることができる。
【0019】
(システム構成)
本発明に係るモーションキャプチャシステムは、トランスミッタと、モーションキャプチャ装置本体と、計測棒に等間隔で直線状に取付けた磁気センサ群と、LUT作成用コンピューターとから構成される。なお磁気センサはコイルなどからなる。また、没入感を出すために、実験では、3m四方の空間内の4面(正面・両側・床面)上にコンピューターグラフィックスによる映像を立体表示させて仮想世界を体験できる三次元表示装置CAVE(登録商標)を用いている。
【0020】
図1(a)は、試作した計測棒を例示したものである。計測棒3は、非磁性体部材からなる棒1に複数の磁気センサ2が等間隔で直線状に配置されてなる。モーションキャプチャシステムを稼働状態にして、モーションキャプチャ可能な領域内(トランスミッタ4が発生した磁界の到達範囲内)で計測棒3を測定者が振り回すことにより、LUTの更新を行う。
【0021】
試作した計測棒の仕様は以下のとおりである。
材質 木製
長さ 220cm
磁気センサ間隔 20cm
磁気センサ数 10個
【0022】
あらかじめ本件発明者たちは誤差の大きさをCAVE(登録商標)内で測定したところ、トランスミッタから3.2m離れたところで誤差が最大(120cm)となった。このような誤差の大きな領域で計測棒を振り回すと、誤差の大きい領域における高精度で細かなLUTが作成される。
【0023】
逆に、誤差の小さい領域では、あまりLUTが更新されず、非効率的である。このような場合、別の手段であらかじめ正確なLUTを作成しておくとよい。そうすれば、より正確なLUTを作成できる。以下、LUTの更新方法について説明する。
【0024】
【実施例】
本発明を実現するための具体例として、以下のS1乃至S8の各ステップを複数回繰り返すことが考えられる。
S1 前記計測棒3をトランスミッタ4から発生された磁界の到達範囲内におき、前記各磁気センサ2にその位置座標を計測させるステップ
S2 ステップS1で前記磁気センサ2が計測した計測座標M(M1,M2,・・・,Mn)を誤差対応表(LUT)により補正し、補正座標C(C1,C2,・・・,Cn)を求めるステップ
S3 前記補正座標のうち、前記トランスミッタと最短距離にある座標C1を除く他の数点について、位置座標の加重平均を行い加重平均座標Pavを計算するステップ(ただし、加重平均は、トランスミッタ4に近い磁気センサの座標ほど加重する)
S4 前記トランスミッタ4と最短距離にある座標C1と、前記加重平均座標Pavとを通過する直線の方程式を計算するステップ
S5 前記直線の方程式から計算により各磁気センサの位置座標を推定するステップ
S6 ステップS5で求めた推定座標Rn(R1,R2,・・・,Rn)と、前記計測座標(M1,M2,・・・,Mn)とを比較して、誤差En(E1,E2,・・・,En)を求めるステップと
S7 ステップS6で求めた前記誤差En(E1,E2,・・・En)から誤差距離|E|を計算するステップ
S8 前記誤差距離|E|が所定の値よりも大きいときは前記LUT更新せず、誤差距離|E|が所定の値よりも小さいときは前記誤差距離|E|の大きさに対応してあらかじめ決められた信頼度sを重みとして平均誤差値を計算し、これを前記LUTに格納しLUTを更新するステップ
【0025】
以下、より具体的に説明する。
(LUT更新方法)
−ステップ1:位置座標の計算値の算出−
LUTの更新方法は、x,y,z各座標とも同様であるので、x座標について説明し、y,z座標の説明は省略する。
(1)トランスミッタに近い方から各点の座標をP1(px1,py1,pz1)、P2(px2,py2,pz2)、・・・、Pn(pxn,pyn,pzn)とする。
(2)これら各点の測定値をM1(mx1,my1,mz1,)、M2(mx2,my2,mz2,)、・・・、Mn(mxn,myn,mzn)とする。
(3)測定値に対しLUTを用いて補正した値をC1(cx1,cy1,cz1)、C2(cx2,cy2,cz2)、・・・、Cn(cxn,cyn,czn)とする。LUTがゼロのときはCn=Mnとなる。
(4)C1を除く、C1近傍の4点C2〜C4について加重平均をとり、加重平均座標Pav(px,py,pz)を求める。この場合、トランスミッタから距離が近いものほど信頼度が高いので基準点P1に近い座標ほど加重する。
px=(cx2×3+cx3×2+cx4×1)÷6
(5)補正座標C1と、加重平均座標Pavの距離dと、直線C1Pavの傾きaを求める。補正座標C1は最も信頼度が高いのでこれを基準点とするためである。
d=((px−cx1)2+(py−cy1)2+(pz−cz1)2)1/2
ax=(px−cx1)÷d
(6)ここから、予想される各点の推定座標R(rx,ry,rz)と、計測座標M(mx,my,mz)との誤差E(exN,eyN,ezN)(ただしN=2,3,4)を各点ごとに求める。
rx=cx1+ax×(P1からの距離)
exN=rxN−mxN
【0026】
−ステップ2:LUTの更新−
(7)まず、P2,P3,P4について誤差距離E(ΣEN)を求める。
(8)誤差距離Eの値に応じて信頼度を決定する。例えば、
・5〜8cmなら信頼度s=1
・3〜5cmなら信頼度s=2
・0〜3cmなら信頼度s=3
とし、誤差が8cm以上の場合はLUTの更新を行わない。なお、この8cmという値は補正対象や環境等により変化する値であるため、数多くの比較実験をして決定する。
(9)測定点の近傍8点のLUTを以下の手順で更新する。
LUTの信頼度をlsとする。(LUTの各点には、誤差情報と信頼度を記載する。)ls=0(初期値)なら、そこには値が入っていないため、信頼度sと誤差exをそのまま入れる。ls≠0のとき(誤差の値lxが既に入っているとき)は、
lx’=(lx×lS 2+ex×s2)÷(ls 2+s2)
で得られたlx’を入れ、信頼度はlsとsの高い方を入れる。lxはLUTに格納されている誤差値であり、初期値は0となり、LUTの更新によって変化する。
【0027】
−ステップ3:LUTを用いて実際に誤差を補正する方法−
(10)測定点の近傍数点(たとえば8点)のLUTの値を用いる。
この時LUTが空(ls=0)の場合は、その方向で最も近い空でない点を探す。なお、近傍の定義は各種存在するが、最もシンプルな近傍の考え方として、任意の点に対しそれを取り囲む格子点(これはLUTに格納される計測点)が必ず8点定まるので、いわゆる8近傍を採用している。格子は立方体を構成し、すべての点はその格子点の中のどこかに存在するので、8点が確実かつ容易に求められる。
(11)測定点とLUTの各点との距離をそれぞれd1〜d8とする。
(12)この距離と、LUTの信頼度lsを重みとして用いて補正する。
cx=mx+(lx1×lS1×1/d1+・・+lx8×lS8×1/d8)÷(lS1×1/d1+・・・+lS8×1/d8)
このように信頼値に従って、信頼できるものにより大きな重みをつけながら平均をとる。
【0028】
(LUTの更新例)
ここで、LUTが計算により更新されていく様子を具体的に説明する。ただし、直感的理解を容易にするため、二次元座標(x,y)でセンサ数4つの例について説明する。しかし、三次元の場合も基本的な考え方は二次元の場合と全く同様であるし、センサ数が増加しても同様にして計算することができる。
【0029】
図2は、計測棒に取付けられた4つの磁気センサ位置座標(P1〜P4)と、磁気センサが取得した位置座標(M1〜M4)とを、x−y座標上に示したグラフである。なお、M1〜M4は既知、P1〜P4は未知である。これらの位置座標を列記すると以下のようになる。
【0030】
P1( 5.00, 5.00) M1( 5.00, 6.00)
P2(10.00, 7.50) M2(10.00,10.00)
P3(15.00,10.00) M3(13.75,17.50)
P4(20.00,12.50) M4(17.50,31.00)
【0031】
図3(a)は、初期のLUTを示し、(b)は初期の信頼度表を示した図である。いずれも初期値はゼロからスタートしている。なお、LUTと信頼度表は1つの表にまとめてもよい。
【0032】
次に、測定値に対しLUTを用いて補正した補正座標をC1(cx1,cy1)、C2(cx2,cy2)を求める。LUTが初期値であるので、Mn=Cn(n=1,2,3,4)である。すなわち、
C1( 5.00, 6.00)
C2(10.00,10.00)
C3(13.75,17.50)
C4(17.50,31.00)
である。
【0033】
次に、C2〜C4について加重平均Pav(Px,Py)をとる。信頼度の高い点(トランスミッタに近いセンサの座標)ほど加重して平均をとる。
よって、加重平均座標Pav(px、py)は、Pav(12.50,16.00)となる(図2)。
【0034】
次に、最も信頼度の高い補正座標C1(位置座標M1の補正座標)と加重平均座標Pav(px,py,pz)で表わされる距離をdとして、直線C1Pavの傾きaを求める。
【0035】
予想される実際の位置Rn(rxn、ryn)は、
により計算される。なお、P1からの距離は、各点が等間隔にならんでいるので、P1−P2間の距離Lを求めてこれを整数倍すればよい。P1やP2の座標は未知であるが、計測棒のセンサ間隔を実測することは容易である。なお、この例の場合、以下のようにしてP1−P2の座標からLを求めることができる。
L=((10−5)2+(7.5−5)2)1/2≒5.59
【0036】
また、誤差En(exn,eyn,ezn)(ただしn=2,3,4)は、
exn=rxn−mxn
eyn=ryn−myn
により求められる。
【0037】
x座標について具体的に計算すると、
【0038】
y座標についても同様に、
【0039】
このようにして誤差Enを求め、誤差の大きさに応じて信頼度を決定する。まずRとEの距離(誤差距離)ΣEnを計算する。
【0040】
上記の例では、
となる。
【0041】
誤差距離の合計が8以上の場合には、信頼度が低すぎると判断しLUTを更新しない。この例では、誤差距離(16.21)が8以上の値であるため、本来ならば更新されないが、LUTの更新例を示すため、今回は例外として、信頼度s=1としつつLUTを更新する。
【0042】
LUT及び信頼度表は共に初期値(ゼロ)のままであるため、上記で求めたRをそのまま格納する。図4(a)は、更新後のLUTを示し、(b)は更新後の信頼度表を示した図である。
【0043】
Rx2=(5+0.6×5.59×1)≒8.35
Rx3=(5+0.6×5.59×2)≒11.71
Rx4=(5+0.6×5.59×3)≒15.06
Ry2=(6+0.8×5.59×1)≒10.47
Ry3=(6+0.8×5.59×2)≒14.94
Ry4=(6+0.8×5.59×3)≒19.42
【0044】
すでに信頼度表に値が入っている場合は、信頼度sを重みとして計算した平均誤差値をLUTに格納する。但し今回は信頼度が不採用値(16.21)であるため、信頼度更新分の箇所に「s=1」を記載する。
【0045】
LUTがカバーする範囲は、LUT上に用意されている計測点が存在する範囲となる。LUT上に記載されている計測点から離れた部分での誤差値データが得られても、LUTを変化させることがないので、計算対象から除外する。この意味において、R4のデータは、R4の観測された座標M4(17.5,31)がLUTのカバー範囲外となるので、R4の値を書き込む場所(すなわちM4)がLUTに存在しない。よって、更新には利用されない。なお、実際の処理では、早い段階でこのような計測範囲外の点は除外しておくことが好ましい。
【0046】
このように、直線状に等間隔に配置された計測棒を使ってLUTを更新すれば誤差測定の労力を軽減すると共に補正精度を向上させることができる。
【0047】
なお、非磁性体部材からなる棒1は、木製・プラスチック・セラミックなど非磁性体の部材で、磁気センサに直線状に等間隔に配置できるものであればよい。また、非磁性体部材からなる棒1の長さ、磁気センサ2の個数及び間隔は適宜選択できる。
【0048】
本発明は、バーチャル・リアリティシステム空間内に限られず、磁気センサを用いて位置情報を取得するシステムすべてに適用可能である。
【発明の効果】
本発明によると、従来よりも誤差補正に要する労力を大幅に軽減することができる。特に、誤差の大きい場所における精度の高い大規模なLUTを簡易かつ低コストで作成することができる。30cm間隔で直線格子上の点を測定し、誤差測定の所要時間を調べたところ、従来方法では5時間要したものが、本発明による方法では約30分に短縮された。
【図面の簡単な説明】
【図1】図1は、本発明に係る計測棒の一例を示す平面図である。
【図2】図2は、計測棒に取付けられた4つの磁気センサ位置座標(P1〜P4)と、磁気センサが取得した位置座標(M1〜M4)とを、x−y座標上に示したグラフである。
【図3】図3(a)は、初期のLUTを示し、(b)は初期の信頼度表を示した図である。
【図4】図4(a)は、更新後のLUTを示し、(b)は更新後の信頼度表を示した図である。
【符号の説明】
1 非磁性体部材からなる棒
2 磁気センサ
3 計測棒
4 トランスミッタ
Claims (1)
- 非磁性体部材からなる棒(1)に複数の磁気センサ(2)が等間隔(L)で直線状に配置された計測棒(3)と前記磁気センサが感知できる磁界を発生させるトランスミッタ(4)とを備えた磁気式位置計測システムにおいて、
A 前記複数の磁気センサのうち前記トランスミッタと最も近い距離にある磁気センサが取得した位置(M1)又はこれを誤差情報をもとに補正した位置(C1)を基準点とし、少なくとも前記基準点を通過する直線の方程式から計算により他のセンサの位置座標(Rn)を求めるステップと、
B 前記計測棒に取付けられた各磁気センサが取得した位置座標(Mn)又はこれを誤差情報により補正した位置座標(Cn)と、前記計算により求められた位置座標(Rn)との誤差(En)及び前記誤差の信頼度(s)をそれぞれ計算するステップと、
C 前記信頼度が所定値より高い場合は前記誤差情報を更新するステップと、
を備えていることを特徴とする磁気式位置計測システムの誤差校正方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002261228A JP2004101273A (ja) | 2002-09-06 | 2002-09-06 | 磁気式位置計測システムの誤差校正方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002261228A JP2004101273A (ja) | 2002-09-06 | 2002-09-06 | 磁気式位置計測システムの誤差校正方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004101273A true JP2004101273A (ja) | 2004-04-02 |
Family
ID=32261665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002261228A Pending JP2004101273A (ja) | 2002-09-06 | 2002-09-06 | 磁気式位置計測システムの誤差校正方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004101273A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7249419B2 (en) | 2005-02-23 | 2007-07-31 | Yamaha Corporation | Portable terminal apparatus with auto caliblation of orientation measurement |
WO2011052402A1 (ja) * | 2009-10-27 | 2011-05-05 | 株式会社 日立メディコ | 磁気式位置検出部を備えた検査装置、磁場計測用冶具、磁場計測用プログラム |
JP2013138871A (ja) * | 2006-03-31 | 2013-07-18 | Koninkl Philips Electronics Nv | 電磁式追跡システムにおける局所的誤差補償システム |
WO2017175313A1 (ja) * | 2016-04-05 | 2017-10-12 | オリンパス株式会社 | 磁場センサシステム及びそれを備える軟性装置 |
WO2018084278A1 (ja) * | 2016-11-04 | 2018-05-11 | フジデノロ株式会社 | 計測装置 |
JP2019142290A (ja) * | 2018-02-16 | 2019-08-29 | 大豊精機株式会社 | 遠隔操作装置 |
-
2002
- 2002-09-06 JP JP2002261228A patent/JP2004101273A/ja active Pending
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7249419B2 (en) | 2005-02-23 | 2007-07-31 | Yamaha Corporation | Portable terminal apparatus with auto caliblation of orientation measurement |
JP2013138871A (ja) * | 2006-03-31 | 2013-07-18 | Koninkl Philips Electronics Nv | 電磁式追跡システムにおける局所的誤差補償システム |
US9733336B2 (en) | 2006-03-31 | 2017-08-15 | Koninklijke Philips N.V. | System for local error compensation in electromagnetic tracking systems |
JP5686739B2 (ja) * | 2009-10-27 | 2015-03-18 | 株式会社日立メディコ | 磁気式位置検出部を備えた検査装置、磁場計測用冶具、磁場検出用プログラム |
JPWO2011052402A1 (ja) * | 2009-10-27 | 2013-03-21 | 株式会社日立メディコ | 磁気式位置検出部を備えた検査装置、磁場計測用冶具、磁場計測用プログラム |
US8666474B2 (en) | 2009-10-27 | 2014-03-04 | Hitachi Medical Corporation | Magnetic-field measurement jig, magnetic-field measurement program, and inspection device provided with magnetic position detector |
CN102665570A (zh) * | 2009-10-27 | 2012-09-12 | 株式会社日立医疗器械 | 具有磁气式位置检测部的检查装置、磁场测量夹具、磁场测量程序 |
WO2011052402A1 (ja) * | 2009-10-27 | 2011-05-05 | 株式会社 日立メディコ | 磁気式位置検出部を備えた検査装置、磁場計測用冶具、磁場計測用プログラム |
WO2017175313A1 (ja) * | 2016-04-05 | 2017-10-12 | オリンパス株式会社 | 磁場センサシステム及びそれを備える軟性装置 |
JPWO2017175313A1 (ja) * | 2016-04-05 | 2019-02-28 | オリンパス株式会社 | 磁場センサシステム及びそれを備える軟性装置 |
WO2018084278A1 (ja) * | 2016-11-04 | 2018-05-11 | フジデノロ株式会社 | 計測装置 |
JPWO2018084278A1 (ja) * | 2016-11-04 | 2019-09-26 | フジデノロ株式会社 | 計測装置 |
JP2019142290A (ja) * | 2018-02-16 | 2019-08-29 | 大豊精機株式会社 | 遠隔操作装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10095815B2 (en) | System and a method for mapping a magnetic field | |
CN109475386B (zh) | 内部设备跟踪系统以及操作其的方法 | |
CN109313417A (zh) | 帮助机器人定位 | |
CN109791048A (zh) | 使用场景捕获数据校准惯性测量单元(imu)的组件的方法和系统 | |
JP2008096131A (ja) | センサ・モジュール、補正方法、プログラム及び記録媒体 | |
JP7423266B2 (ja) | 作業空間に対して磁気作動システムおよび検出システムを同時に較正する方法、および磁気作動検出システム | |
JP2020079780A (ja) | 磁場センサの位置及び配向の判定 | |
JP2018535482A (ja) | 差動測定による磁石の位置の追跡方法 | |
US10488471B2 (en) | System and a method for mapping a magnetic field | |
JP6487050B2 (ja) | 少なくとも1個の可動磁性体の位置を特定する方法および関連するシステム | |
JP2020153663A (ja) | 位置検出装置、信号処理回路および磁気センサシステム | |
JP2008128649A (ja) | 方位センサおよび記録媒体 | |
JP2004101273A (ja) | 磁気式位置計測システムの誤差校正方法 | |
JP2007163388A (ja) | 方位センサおよび記録媒体 | |
KR20120058802A (ko) | 3차원 위치/방향 추정 시스템에서 3차원 위치를 보정하는 장치 및 방법 | |
Meier et al. | Concept for detecting angles and displacements from a MR-sensor-array using an ICP algorithm | |
CN105708463B (zh) | 磁场的建模 | |
JP2000292111A (ja) | 姿勢位置測定装置及び測定方法 | |
JP6559238B2 (ja) | 少なくとも1個の可動磁性体の位置を特定する方法および関連システム | |
EP3392748B1 (en) | System and method for position tracking in a virtual reality system | |
JP2020153665A (ja) | 信号処理回路、位置検出装置および磁気センサシステム | |
KR101352245B1 (ko) | Mems 지자기 센서의 방위각 보정 방법 및 장치 | |
JP2011185868A (ja) | 方位検知装置 | |
JP5498209B2 (ja) | 磁界検知装置 | |
JP2011185863A (ja) | 磁界検知装置 |