JP6848571B2 - 姿勢算出装置、姿勢計測システム、及び姿勢算出方法 - Google Patents

姿勢算出装置、姿勢計測システム、及び姿勢算出方法 Download PDF

Info

Publication number
JP6848571B2
JP6848571B2 JP2017055616A JP2017055616A JP6848571B2 JP 6848571 B2 JP6848571 B2 JP 6848571B2 JP 2017055616 A JP2017055616 A JP 2017055616A JP 2017055616 A JP2017055616 A JP 2017055616A JP 6848571 B2 JP6848571 B2 JP 6848571B2
Authority
JP
Japan
Prior art keywords
sensor
value
angular velocity
posture
period
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.)
Active
Application number
JP2017055616A
Other languages
English (en)
Other versions
JP2018159569A (ja
Inventor
将司 上田
将司 上田
量平 山本
量平 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2017055616A priority Critical patent/JP6848571B2/ja
Publication of JP2018159569A publication Critical patent/JP2018159569A/ja
Application granted granted Critical
Publication of JP6848571B2 publication Critical patent/JP6848571B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Gyroscopes (AREA)

Description

本発明は、姿勢算出装置、姿勢計測システム、及び姿勢算出方法に関する。
角速度センサ、加速度センサ及び地磁気センサが搭載されたセンサデバイスを用いて、運動中の物体の姿勢を計測する方法がある。角速度センサの検出結果によれば、ある時刻から次の時刻への姿勢変化が得られる。したがって、この姿勢変化を積算することで、姿勢のトラッキングが可能である。一方で、角速度センサの出力値には、誤差が含まれているため、角速度センサの出力値を積算し続けると、算出される姿勢は徐々に真値から外れていく。このため、角速度センサの出力値を補正する必要がある。
例えば、特許文献1には、加速度センサによって検出される重力方向及び地磁気センサによって検出される地磁気方向と、角速度センサの出力値に基づいて算出される姿勢の重力方向及び地磁気方向との比較により、角速度センサの出力値を補正することについて開示されている。
特開2013−200162号公報
例えば特許文献1に係る技術のように、加速度センサ及び地磁気センサの出力値を用いて角速度センサの出力値を補正する場合において、加速度センサ及び地磁気センサの出力にも、環境等の様々な要因で局所的なノイズが重畳することがある。角速度センサの補正にこのような局所的なノイズが影響すると、角速度センサの出力値に基づく姿勢算出が正確に行われなくなる。
本発明は、角速度を用いた正確な姿勢算出を行える、姿勢算出装置、姿勢計測システム、及び姿勢算出方法を提供することを目的とする。
本発明の一態様によれば、姿勢算出装置は、角速度値を検出する角速度センサと参照地磁気方向を検出する地磁気センサとを有するセンサユニット、で取得された第1の期間の角速度履歴値を取得する角速度値取得部と、前記センサユニットで取得された前記第1の期間の参照地磁気方向履歴値を取得する参照姿勢取得部と、前記センサユニットの角速度センサより取得された前記角速度値を順次に積算することでセンサ積算履歴値を算出する積算履歴値算出部と、前記センサ積算履歴値に基づいて、前記センサ積算履歴値の地磁気方向成分であるセンサ地磁気方向履歴値を算出する方向算出部と、前記センサ地磁気方向履歴値と前記参照地磁気方向履歴値とを比較することで得られる地磁気方向誤差を含む参照角度差を算出する角度差算出部と、前記参照角度差に基づいて前記角速度値を補正する補正値を算出する補正値算出部と、前記補正値で補正した前記角速度値を順次に積算することで前記センサユニットのセンサ姿勢を算出する姿勢算出部とを備える。
本発明の一態様によれば、姿勢算出装置は、角速度値を検出する角速度センサと参照重力方向を検出する加速度センサとを有するセンサユニット、で取得された第1の期間の角速度履歴値を取得する角速度値取得部と、前記センサユニットで取得された前記第1の期間の参照重力方向履歴値を取得する参照姿勢取得部と、前記センサユニットの角速度センサより取得された前記角速度値を順次に積算することでセンサ積算履歴値を算出する積算履歴値算出部と、前記センサ積算履歴値に基づいて、前記センサ積算履歴値の重力方向成分であるセンサ重力方向履歴値を算出する方向算出部と、前記センサ重力方向履歴値と前記参照重力方向履歴値とを比較することで得られる重力方向誤差を含む参照角度差を算出する角度差算出部と、前記参照角度差に基づいて前記角速度値を補正する補正値を算出する補正値算出部と、前記補正値で補正した前記角速度値を順次に積算することで前記センサユニットのセンサ姿勢を算出する姿勢算出部とを備える。
本発明の一態様によれば、姿勢計測システムは、上述の姿勢算出装置と、前記センサユニットとを備える。
本発明の一態様によれば、姿勢算出方法は、角速度値を検出する角速度センサと参照地磁気方向を検出する地磁気センサとを有するセンサユニット、で取得された第1の期間の角速度履歴値を取得することと、前記センサユニットで取得された前記第1の期間の参照地磁気方向履歴値を取得することと、前記センサユニットの角速度センサより取得された前記角速度値を順次に積算することでセンサ積算履歴値を算出することと、前記センサ積算履歴値に基づいて、前記センサ積算履歴値の地磁気方向成分であるセンサ地磁気方向履歴値を算出することと、前記センサ地磁気方向履歴値と前記参照地磁気方向履歴値とを比較することで得られる地磁気方向誤差を含む参照角度差を算出することと、前記参照角度差に基づいて前記角速度値を補正する補正値を算出する補正値算出部と、前記補正値で補正した前記角速度値を順次に積算することで前記センサユニットのセンサ姿勢を算出することとを含む。
本発明の一態様によれば、姿勢算出方法は、角速度値を検出する角速度センサと参照重力方向を検出する加速度センサとを有するセンサユニット、で取得された第1の期間の角速度履歴値を取得することと、前記センサユニットで取得された前記第1の期間の参照重力方向履歴値を取得することと、前記センサユニットの角速度センサより取得された前記角速度値を順次に積算することでセンサ積算履歴値を算出することと、前記センサ積算履歴値に基づいて、前記センサ積算履歴値の重力方向成分であるセンサ重力方向履歴値を算出することと、前記センサ重力方向履歴値と前記参照重力方向履歴値とを比較することで得られる重力方向誤差を含む参照角度差を算出することと、前記参照角度差に基づいて前記角速度値を補正する補正値を算出することと、前記補正値で補正した前記角速度値を順次に積算することで前記センサユニットのセンサ姿勢を算出することとを含む。
本発明によれば、角速度を用いた正確な姿勢算出を行える、姿勢算出装置、姿勢計測システム、及び姿勢算出方法を提供できる。
図1は、本発明の一実施形態に係る姿勢計測システムの構成例の概略を示すブロック図である。 図2は、一実施形態に係る姿勢計測システムの使用方法の一例を説明するための図である。 図3は、一実施形態に係る姿勢計測システムで用いられる方向について説明するための図である。 図4Aは、一実施形態に係る姿勢算出処理の一例の概略を示すフローチャートである。 図4Bは、一実施形態に係る姿勢算出処理の一例の概略を示すフローチャートである。 図5は、一実施形態に係る誤差算出処理の一例の概略を示すフローチャートである。 図6Aは、一実施形態に係る姿勢計測システムにおける角速度補正値の算出について説明するための図であり、評価区間と誤差平均との関係について説明するための図である。 図6Bは、一実施形態に係る姿勢計測システムにおける角速度補正値の算出について説明するための図であり、算出された角速度補正値を適用する区間について説明するための図である。 図6Cは、一実施形態に係る姿勢計測システムにおける角速度補正値の算出について説明するための図であり、評価区間と誤差平均との関係について説明するための図である。 図7は、一実施形態に係る角速度補正値探索処理の一例の概略を示すフローチャートである。 図8は、一実施形態に係る角速度補正値の算出方法について説明するための図である。 図9は、一実施形態に係る姿勢・誤差算出処理の一例の概略を示すフローチャートである。 図10は、変形例に係る姿勢計測システムにおける角速度補正値の算出について説明するための図である。
[システム構成]
本発明の一実施形態について図面を参照して説明する。本実施形態は、センサユニットに設けられた角速度センサの検出値に基づいてセンサユニットの姿勢を算出する姿勢計測システムに関する。検出された角速度を時間経過に沿って積算することで、すなわち時間経過に沿って姿勢を回転させてトラッキングしていくことで、センサユニットの姿勢は高精度で求められ得る。ただし、角速度センサは誤差を有している。このため、検出結果を積算すると誤差も蓄積され、算出される姿勢は正しい値から離れていく。そこで本実施形態では、角速度センサとの位置関係が固定された加速度センサ及び地磁気センサを用いて計測された重力方向及び地磁気方向に基づいて、角速度センサの出力を補正する補正値が算出される。この際、加速度センサ及び地磁気センサの短期的な検出誤差の影響を受けないようにするために、ある程度長い期間の各センサの出力を用いて補正値が算出される。
本実施形態に係る姿勢計測システム1の構成例の概略を図1に示す。姿勢計測システム1は、センサユニット10と解析ユニット20とを含む。本実施形態では、センサユニット10は、角速度、加速度、地磁気方向を検出するセンサを有しており、任意の期間の検出結果を保存する。解析ユニット20は、センサユニット10に記録された任意の期間の角速度、加速度、地磁気方向に係る情報を読み出して、これらに基づいて解析を行いセンサユニット10の姿勢を算出する。解析ユニット20は、姿勢算出装置として機能する。
センサユニット10は、バスライン19を介して互いに接続された角速度センサ11と、加速度センサ12と、地磁気センサ13と、プロセッサ14と、random access memory(RAM)15と、フラッシュメモリ16と、入力装置17と、インターフェイス(I/F)18とを備える。
角速度センサ11は、例えばMEMS角速度センサが3軸方向に設けられた構成を有し、各軸周りの角速度を検出する。加速度センサ12は、例えばMEMS加速度センサが3軸方向に設けられた構成を有し、各軸方向の加速度を検出する。加速度センサ12の検出結果に基づけば、重力方向が求められる。地磁気センサ13は、例えば3軸地磁気センサであり、地磁気方向を検出する。
プロセッサ14は、例えばCentral Processing Unit(CPU)、Application Specific Integrated Circuit(ASIC)、Field Programmable Gate Array(FPGA)等といった集積回路であり、各種信号処理等を行う。RAM15は、プロセッサ14の主記憶装置として機能する。フラッシュメモリ16には、角速度センサ11、加速度センサ12、地磁気センサ13により検出され、プロセッサ14で処理された角速度情報、加速度情報、地磁気情報等が記録される。また、フラッシュメモリ16には、プロセッサ14で用いられるプログラム、パラメータ等各種情報も記録されている。RAM15及びフラッシュメモリ16は、これに限らず各種記憶装置に置換され得る。入力装置17は、例えばスイッチ等、ユーザの入力を受け付ける装置であり、例えばセンサユニット10の起動や計測の開始及び終了の指示が入力される。I/F18は、センサユニット10の外部とデータの送受信を行うためのインターフェイスである。
解析ユニット20は、バスライン29によって互いに接続されたプロセッサ21と、RAM22と、記録装置23と、ディスプレイ24と、入力装置25と、I/F26とを備える。I/F26は、解析ユニット20の外部とデータの送受信を行うためのインターフェイスであり、例えばセンサユニット10と通信を行う。センサユニット10と解析ユニット20との間の通信は、有線で行われても、無線で行われてもよい。
プロセッサ21は、例えばCPU、ASIC、FPGA等といった集積回路であり、各種信号処理等を行う。プロセッサ21は、センサユニット10から読み出した、角速度情報、加速度情報、地磁気情報に基づいて、センサユニット10の姿勢を算出する。RAM22は、プロセッサ21の主記憶装置として機能する。
記録装置23には、プロセッサ21で用いられるプログラム、パラメータ等各種情報が記録されている。また、記録装置23には、センサユニット10から読み出された検出結果、プロセッサ21で算出されたセンサユニット10の姿勢等が記録される。RAM22及び記録装置23は、これに限らず各種記憶装置に置換され得る。ディスプレイ24は、これに限らないが例えば液晶ディスプレイ等であり、センサユニット10の姿勢等は、ディスプレイ24に表示される。入力装置25は、例えばキーボード、マウス等である。解析ユニット20は、例えばパーソナルコンピュータ(PC)等であり得る。
姿勢計測システム1の使用状況の一例を図2に模式的に示す。図2の例において、センサユニット10は、計測対象である人物90の腰などの体幹に装着される。この状態で人物90が運動をする。その結果、センサユニット10には、人物90の動きに関わるデータが蓄積される。運動後、解析ユニット20は、センサユニット10からデータを読み出し、人物90の運動を解析する。解析ユニット20は、解析結果に基づいて、そのディスプレイ24に、姿勢をアニメーション表示してもよいし、力積、速度等を表示してもよい。
センサユニット10は、人物90のどこにいくつ装着されてもよい。また、姿勢計測システム1は、人物の運動に関わらず、例えば各種ロボット、機械、自動車、航空機等の運動解析に用いられてもよい。
なお、ここでは、センサユニット10は人物90の運動に支障が出ない程度に小型のものであることを想定しているが、これに限らない。角速度センサ11と、加速度センサ12と、地磁気センサ13とは、相対的な位置関係が維持されていれば、互いに離れて配置されていてもよい。
[システムの動作]
上述のとおり、姿勢計測システム1が使用される際、まずセンサユニット10が計測対象に装着される。センサユニット10は、計測対象の運動中に計測される角速度、加速度、地磁気方向をフラッシュメモリ16に記録する。計測対象である運動の終了後、センサユニット10と解析ユニット20とは接続され、解析ユニット20は、センサユニット10のフラッシュメモリ16に記録された運動に係るデータを読み出し、記録装置23に保存する。その後、解析ユニット20のプロセッサ21は、記録装置23に記録されたデータを用いて、計測期間中のセンサユニット10の姿勢の変化を解析する。
角速度センサ11の出力の積算によって得られるセンサユニット10の姿勢をセンサ姿勢と称し、センサ姿勢が示す重力方向の成分をセンサ重力方向と称し、センサ姿勢が示す地磁気方向の成分をセンサ地磁気方向と称することにする。また、加速度センサ12の出力に基づいて得られる重力方向を参照重力方向と称し、地磁気センサ13の出力に基づいて得られる地磁気方向を参照地磁気方向と称し、参照重力方向及び参照地磁気方向を合わせて参照姿勢と称することにする。参照重力方向の算出には、加速度センサ12の出力の所定期間の時間平均が用いられることが好ましい。また、参照地磁気方向の算出には、地磁気センサ13の出力の所定期間の時間平均が用いられることが好ましい。
本実施形態で取り扱われる方向等について、図3を参照して説明する。図3に示すように、センサ重力方向と参照重力方向とには、角度θ1に示すような重力方向誤差が生じることがある。同様に、センサ地磁気方向と参照地磁気方向とには、角度θ2に示すような地磁気方向誤差が生じることがある。この重力方向誤差θ1及び地磁気方向誤差θ2を含む参照角度差がなくなるように、角速度センサ11の出力値が角速度補正値によって補正される。
本実施形態では、解析ユニット20は、角速度センサ11で取得された角速度履歴値と、加速度センサ12で取得された参照重力方向履歴値と、地磁気センサ13で取得された参照地磁気方向履歴値とを取得する。その後に、解析ユニット20のプロセッサ21で行われる本実施形態に係る姿勢算出処理について、図4A及び図4Bに示すフローチャートを参照して説明する。
ステップS101において、プロセッサ21は、運動前のセンサユニット10が静止していた状態における加速度センサ12及び地磁気センサ13の出力値を用いて、センサ姿勢の重力方向及び地磁気方向を初期化する。すなわち、プロセッサ21は、加速度センサ12の出力の時間平均に基づいて、重力方向を決定する。プロセッサ21は、この重力方向をセンサ重力方向の初期値とする。同様に、プロセッサ21は、地磁気センサ13の出力の時間平均に基づいて、地磁気方向を決定する。プロセッサ21は、この地磁気方向をセンサ地磁気方向の初期値とする。
ステップS102において、プロセッサ21は、角速度補正値を初期化する。角速度補正値の初期値は、例えばx軸、y軸、z軸のそれぞれについて0とする。さらに、1つの角速度補正値を求めるために用いられる期間である評価区間の開始時を初期化する。評価区間の開始時をセンサユニット10で記録された全データの開始時(t=0)に設定する。以降、各々の評価区間の開始時を時刻iと表記することにする。また、時刻を順に進めながら解析を行っていくが、現在解析を行っている時刻を時刻Nと表記することにする。
ステップS103において、プロセッサ21は、誤差算出処理を行う。誤差算出処理では、後述するように、時刻iから経過時間に沿って順次にセンサ姿勢及びその誤差を算出していく。ここで算出される誤差は、角速度補正値を求めるための評価区間を決定するために用いられる。誤差算出処理について、図5に示すフローチャートを参照して説明する。
ステップS201において、プロセッサ21は、角速度センサ11の出力に角速度補正値を適用して、補正後の角速度を積分することにより、センサ姿勢を取得する。すなわち、前回のセンサ姿勢を、補正した角速度センサ11の出力に基づいて得られる回転角度だけ回転させて現在のセンサ姿勢を算出する。
各時刻のセンサユニット10の姿勢をPi、各時刻の回転変化をRiとしたとき、両者の関係は、
1 = R0・P0
2 = R1・P1 = R1・R0・P0
3 = R2・P2 = R2・R1・R0・P0
で表される。すなわち、
i = Ri-1・Pi-1
で表される。ここで、初期姿勢P0は既知である。Pi、Riは3×3の回転行列でもよいし、大きさ1のクォータニオンでもよい。
誤差算出処理で算出されるセンサ姿勢をセンサ積算値と称し、その履歴をセンサ積算履歴値と称することにする。
ステップS202において、プロセッサ21は、センサ積算値及び参照姿勢に基づいて、参照角度差を取得する。すなわち、センサ積算値の重力方向(センサ重力方向)と加速度センサ12の出力に基づいて取得された重力方向(参照重力方向)とを比較して、重力方向の角度差(重力方向誤差)を算出する。同様に、センサ積算値の地磁気方向(センサ地磁気方向)と地磁気センサ13の出力に基づいて取得された地磁気方向(参照地磁気方向)とを比較して、地磁気方向の角度差(地磁気方向誤差)を算出する。これらの重力方向の角度差と地磁気方向の角度差とを参照角度差とする。
すなわち、世界座標系の重力方向が
Figure 0006848571
世界座標系の地磁気方向が
Figure 0006848571
(簡単のため、地磁気の伏角を無視している)だとすると、Piのときのセンサから見た重力方向(センサ重力方向)Gi pは、
Figure 0006848571
となり、地磁気方向(センサ地磁気方向)Mi pは、
Figure 0006848571
となる。
このとき、加速度センサ12から得られた重力方向(参照重力方向)をGi sとし、地磁気センサ13から得られた地磁気方向(参照地磁気方向)をMi sとすると、重力方向の角度差(参照角度差)Di Gは、
Figure 0006848571
となり、地磁気方向の角度差(参照角度差)Di Mは、
Figure 0006848571
となる。
ステップS203において、プロセッサ21は、評価区間の開始時である時刻iから現在解析対象としている時刻Nまでの誤差平均を算出する。ここで、誤差平均は、時刻iから時刻Nまでの参照角度差の時間平均である。一般に、誤差平均は時間経過と共に大きくなる傾向がある。
以上で誤差算出処理を終了し、誤差平均が戻り値としてメイン処理に返される。
図4Aに戻って説明を続ける。誤差算出処理の後、処理はステップS104に進む。ステップS104において、プロセッサ21は、解析対象としている全期間、すなわち、センサユニット10でデータが取得された全期間について誤差平均の算出がおこなわれたか否かを判定する。全期間について誤差平均の算出がおこなわれていないとき、処理はステップS105に進む。
ステップS105において、プロセッサ21は、誤差平均は所定の第1の閾値TH1より大きいか否かを判定する。ここで、第1の閾値TH1は、例えば角速度センサ11の特性などを参考にして決定する。誤差平均が第1の閾値TH1より大きくないとき、処理はステップS106に進む。
ステップS106において、プロセッサ21は、解析対象の時刻tを進める。その後、処理はステップS103に戻る。すなわち、角速度センサ11の出力に基づいてセンサ積算履歴値を取得して誤差平均の履歴値を算出することを、全期間について解析が終わるか、誤差平均が第1の閾値TH1より大きくなるまで繰り返す。
ステップS105において、誤差平均が第1の閾値TH1より大きいと判定されたとき、処理はステップS107に進む。このときまでの時刻に対する誤差平均の変化の一例を図6Aに示す。図6Aにおいて、横軸は時刻を示し、縦軸は誤差平均を示す。時刻t0を評価区間の開始時刻iとする。誤差平均が第1の閾値TH1より大きいと判定された時刻を時刻t1とする。すなわち、時刻t1は、処理がステップS106に進むときの現在解析対象としている時刻Nである。図6Aに示すように、時刻t0(i)から誤差平均は、概ね時間経過と共に大きくなり、現在解析対象としている時刻t1(N)において、第1の閾値TH1を超えている。時刻t0から時刻t1までの時間は、これに限らないが、例えば10秒程度となるように各パラメータは設定される。
ステップS107において、プロセッサ21は、評価区間を設定する。ここで設定される評価区間は、評価区間開始時の時刻iから、誤差平均が第1の閾値TH1より大きいと判定された時刻Nまでとする。
ステップS108において、プロセッサ21は、角速度補正値探索処理を行う。角速度補正値探索処理について、図7のフローチャート及び図8を参照して説明する。
ステップS301において、プロセッサ21は、角速度センサ11のx,y,z軸について、角速度補正値を算出していない軸のうち、誤差が最大となっている軸を選択する。
ステップS302において、プロセッサ21は、ステップS301で選択された軸について、角速度補正値ごとに、その補正値を評価区間全体に適用した場合に得られる参照角度差の二乗和を算出する。すなわち、プロセッサ21は、現在設定されている角速度補正値の近傍に角速度補正値の仮値を仮補正値として設定する。図8は、横軸に角速度補正値を示し、縦軸に各々の角速度補正値が適用された場合に評価区間全体で算出される参照角度差の二乗和を示す。例えば図8の例では、白抜きの丸印で示した5点の角速度補正値が仮補正値とされており、その各々について算出される仮参照角度差としての参照角度差の二乗和が示されている。
ステップS303において、プロセッサ21は、ステップS302の算出結果について、2次曲線近似を行い、参照角度差の二乗和が最小となる最適値を算出する。すなわち、図8の例では、黒丸で示した角速度補正値が最適値であると算出される。
ステップS304において、プロセッサ21は、上述のようにして算出される角速度補正値が、角速度センサ11のx,y,z軸の全てについて算出されたか否かを判定する。全ての軸について算出されていないとき、処理はステップS301に戻り、次に誤差が大きい軸を選択し、当該軸について同様に角速度補正値が算出される。この際、既に算出した軸についての角速度補正値を適用して演算が行われる。ステップS304において、全ての軸について角速度補正値が算出されたと判断されたとき、角速度補正値探索処理は終了し、算出されたx,y,z軸のそれぞれの角速度補正値が戻り値としてメイン処理に返される。
このような方法で角速度補正値を算出することで高次元の方程式を解く必要なく、容易に最適値を算出することができる。すなわち、角速度補正値は時刻iから時刻Nまでの各回転に適用されるため、数式で表すと(N−i)次方程式となり解析的に最適値を算出することは困難である。このため、前回の角速度補正値の近傍値を用いて参照角度差を再計算し、回帰推定を行う本手法は、演算量の削減に貢献する。
また、誤差が大きい軸から順に角速度補正値を決定することで、高精度に角速度補正値を決定することができる。なお、角速度補正値探索処理において、角速度補正値の算出は、誤差最大の軸から行われずに、例えば常にx軸、y軸、z軸の順に行われてもよい。
図4Bに戻って説明を続ける。ステップS108の角速度補正値探索処理の後、処理はステップS109に進む。ステップS109において、プロセッサ21は、誤差平均に係る値をクリアし、解析対象とする時刻tを評価区間の開始の時刻iに再設定する。
ステップS110において、プロセッサ21は、姿勢・誤差算出処理を実行する。すなわち、評価区間の最初から、ステップS108の角速度補正値探索処理で決定された角速度補正値を角速度センサ11の出力に適用し、それを用いてセンサ姿勢を算出する。また、このときの誤差平均を改めて求める。
姿勢・誤差算出処理について、図9に示すフローチャートを参照して説明する。ステップS401において、プロセッサ21は、角速度センサ11の出力にステップS108で算出された角速度補正値を適用し、補正後の角速度を積算することにより、センサ姿勢を取得する。後述するように、ここで算出されるセンサ姿勢が、最終的にセンサユニット10の姿勢として確定される値となる。
ステップS402において、プロセッサ21は、センサ姿勢及び参照姿勢に基づいて、参照角度差を取得する。参照角度差の算出は、図5を参照して説明したステップS202の処理と同様である。すなわち、センサ姿勢の重力方向(センサ重力方向)と加速度センサ12の出力に基づいて取得された重力方向(参照重力方向)とを比較して、重力方向の角度差(重力方向誤差)を算出する。同様に、センサ姿勢の地磁気方向(センサ地磁気方向)と地磁気センサ13の出力に基づいて取得された地磁気方向(参照地磁気方向)とを比較して、地磁気方向の角度差(地磁気方向誤差)を算出する。
ステップS403において、プロセッサ21は、評価区間の開始時である時刻iから現在解析対象としている時刻Nまでの誤差平均を算出する。誤差平均の算出は、図5を参照して説明したステップS203の処理と同様である。すなわち、誤差平均は、時刻iから時刻Nまでの参照角度差の時間平均である。
以上で姿勢・誤差算出処理を終了し、センサ姿勢と誤差平均とが戻り値としてメイン処理に返される。
図4Bに戻って説明を続ける。姿勢・誤差算出処理の後、ステップS111において、プロセッサ21は、データが存在する全期間についてセンサ姿勢が決定されたか否かを判定する。全期間についてセンサ姿勢が決定されていないとき、処理はステップS112に進む。
ステップS112において、プロセッサ21は、誤差平均が所定の第2の閾値TH2より大きいか否かを判定する。ここで、第2の閾値TH2は、第1の閾値TH1よりも小さい値であり、一般に誤差平均が第2の閾値TH2より大きくなるのは、誤差平均が第1の閾値TH1より大きくなるよりも早い。誤差平均が第2の閾値TH2よりも大きくないとき、処理はステップS113に進む。ステップS113において、プロセッサ21は、解析対象の時刻tを進める。その後、処理はステップS110に戻る。すなわち、角速度センサ11の出力に基づいてセンサ姿勢を取得すること及び平均誤差を算出することが、全期間について解析が終わるか、誤差平均が第2の閾値TH2より大きくなるまで繰り返される。
ステップS112において、誤差平均が第2の閾値TH2よりも大きいと判定されたとき、処理はステップS114に進む。
このときまでの時刻に対する誤差平均の変化の一例を図6Bに示す。図6Bにおいて、横軸は時刻を示し、縦軸は誤差平均を示す。実線はこのステップS110の姿勢・誤差算出処理で算出された誤差平均の変化を示し、破線は、図6Aに示したステップS103の誤差算出処理で算出された誤差平均を示す。このように、ステップS108の角速度補正値探索処理で決定された角速度補正値が適用されているので、実線で示した誤差平均は、破線で示した誤差平均よりも小さい。しかしながら、誤差平均の値は、時刻の経過と共に徐々に大きくなる。時刻t2(N)において、誤差平均は第2の閾値TH2を超えている。
図4Bに戻って説明を続ける。ステップS114において、プロセッサ21は、時刻i(t0)から時刻N(t2)までのセンサ姿勢の確定値をステップS110で算出されたセンサ姿勢とする。すなわち、上述した一連の処理によって、例えば時刻t0から時刻t2までのセンサユニット10の姿勢が、角速度補正値で補正された角速度センサ11の出力値の積算によって決定される。ここで、第2の閾値TH2が第1の閾値TH1よりも小さく設定されていることは、精度が高いセンサ姿勢の決定に貢献する。
ステップS115において、プロセッサ21は、続いて行われる積算によるセンサ姿勢の算出の初期値となるセンサ姿勢を、重力センサの出力及び地磁気センサ13の出力に基づいて改めて決定する。また、プロセッサ21は、誤差平均に係る値をクリアし、解析対象とする評価区間の開始の時刻iを誤差平均が第2の閾値TH2を超えた時刻N(t2)に設定する。その後、処理はステップS103に戻り、上述の処理が繰り返される。
図6Bの状態に続いてステップS103乃至ステップS106の処理が繰り返され、ステップS105で誤差平均が第1の閾値TH1よりも大きいと判定されたときの、時刻に対する誤差平均の値を図6Cに示す。図6Cにおいて、実線がこのときに得られた時刻と誤差平均との関係を示す。一点鎖線は、図6Aに示した前回のステップS103乃至ステップS105の処理に係る時刻と誤差平均との関係を示し、破線は、図6Bに示した前回のステップS110乃至ステップS113の処理に係る時刻と誤差平均との関係を示す。時刻t2である評価区間の開始時刻iにおいて加速度センサ12の出力及び地磁気センサ13の出力に基づいてセンサ姿勢が初期化されているので、実線で示すように、評価区間の開始時刻i(t2)の時点での誤差平均は0である。図6Aに示した場合と同様に、評価区間の開始時刻i(t2)より後においては、誤差平均は時間経過と共に徐々に大きくなる。ただし、時刻t0から時刻t1までの評価区間に基づいて算出された角速度補正値が適用されているので、一般に実線で示したこのときの誤差平均は、一点鎖線で示した前回の誤差平均よりも大きくなるのが遅い。このため、誤差平均が第1の閾値TH1よりも大きくなる時刻を時刻t3とすると、時刻t2から時刻t3までの時間は、時刻t0から時刻t1までの時間よりも長くなる。以下、同様の処理が順に繰り返されることで、誤差平均が第2の閾値TH2よりも大きくならないように、区間ごとに順にセンサ姿勢が決定されていく。
以上の処理を言い換えると次のようになる。センサユニット10で記録された角速度値が存在する期間を第1の期間とする。時刻t0を第1の時点としたときに、センサ積算履歴値は、第1の時点から一定の角速度補正値で補正した角速度値を順次に積算することで算出される。参照角度差の第1の時点からの累積値の時間平均である誤差平均が所定の第1の閾値TH1よりも大きくなる時刻t1を第2の時点とする。このとき、第1の時点から第2の時点までの評価区間を第2の期間とすると、第2の期間で参照角度差が最小となる角速度補正値が算出される。第1の時点である時刻t0から第3の時点としての時刻t2までの期間を第3の期間とすると、算出された角速度補正値は、第3の期間の角速度値に適用されてセンサ姿勢が算出される。
ステップS103乃至ステップS106の繰り返し処理において、ステップS104で全期間についてのセンサ姿勢の算出が終了したと判定されたとき、処理はステップS107に進む。すなわち、この場合、評価区間は時刻iから最後のデータが存在する時刻Nまでに設定され、角速度補正値が決定され、この角速度補正値を用いて時刻i以降について順にセンサ姿勢が決定される。
ステップS111の判定において、全期間について姿勢が決定されたと判定されたとき、決定されたセンサ姿勢は確定値とされ、姿勢算出処理は終了する。
以上のように、プロセッサ21は、角速度値取得部、参照姿勢取得部、積算履歴値算出部、方向算出部、角度差算出部、補正値算出部、及び姿勢算出部としての機能を有する。ここで、角速度値取得部は、センサユニット10で取得された角速度履歴値を取得する。角速度履歴値が取得される期間を第1の期間と称することにする。参照姿勢取得部は、センサユニット10から上述の第1の期間に対応する加速度センサ12及び地磁気センサ13の検出値を取得し、これらの値に基づいて、第1の期間に対応する参照重力方向履歴値及び参照地磁気方向履歴値を取得する。積算履歴値算出部は、上述の角速度値取得部で取得した角速度値を順次に積算することでセンサ積算履歴値を算出する。方向算出部は、積算履歴値算出部で算出したセンサ積算履歴値に基づいて、センサ積算履歴値の重力方向成分であるセンサ重力方向履歴値とセンサ積算履歴値の地磁気方向成分であるセンサ地磁気方向履歴値とを算出する。角度差算出部は、方向算出部で算出されたセンサ重力方向履歴値と参照重力方向履歴値とを比較し、センサ重力方向と参照重力方向との差である重力方向誤差を算出する。また角度差算出部は、センサ地磁気方向履歴値と参照地磁気方向履歴値とを比較し、センサ地磁気方向と参照地磁気方向との差である地磁気方向誤差を算出する。角度差算出部は、重力方向誤差及び地磁気方向誤差を含む参照角度差の履歴を算出する。補正値算出部は、角速度補正値を算出する。例えば、補正値算出部は、参照角度差が所定の期間で最小となるように角速度補正値を算出する。この角速度補正値は、角速度値を補正する値である。姿勢算出部は、角速度補正値で補正した角速度値を順次に積算することで、センサユニット10のセンサ姿勢を算出する。特に上述の実施形態では、補正値算出部は、上述の第1の期間の一部期間である複数の第2の期間ごとに、すなわち評価区間ごとに、複数の角速度補正値を算出する。姿勢算出部は、算出された角速度補正値で補正した角速度値に基づいて、センサ姿勢を算出し、決定する。特に上述の実施形態では、姿勢算出部は、上述の第1の期間の一部期間である複数の第3の期間ごとに、複数の補正値の何れかを用いて角速度値を補正して、センサ姿勢を算出する。
[姿勢計測システムの特長]
本実施形態に係る姿勢計測システム1の解析ユニット20は、角速度補正値を順次に算出して更新しながら、角速度センサ11の出力を用いてセンサ姿勢を算出する。このため、本実施形態に係る姿勢算出方法を用いる解析ユニット20は、角速度補正値を変更しなければならないような各種外乱に対してロバストに対応できる。例えば、角速度センサの出力に含まれるノイズは、直流から高周波領域まで広域にわたるため、固定のフィルタによるカットや固定値を用いたオフセットでは除去しきれず、角速度センサの出力を積算することにより得られる角度値は、穏やかに振動する傾向がある。また、角速度センサの出力特性は、温度変化などによっても変化する。本実施形態に係る解析ユニット20によれば、このような角速度センサの特性に対してもロバストである。
また、解析ユニット20は、瞬間値ではなく比較的長時間の評価区間における参照角度差を用いて角速度補正値を算出する。このため、得られるセンサ姿勢は、加速度センサ12及び地磁気センサ13に対する外乱に対してロバストである。また、一般的に微小である角速度の誤差を十分に長い時間蓄積させているため、解析ユニット20は、精度よく角速度補正値を算出でき、正確なセンサ姿勢を得ることができる。
また、上述の評価区間は適応的に決定され、また、その評価区間によって得られた角速度補正値を角速度センサ11の出力に適用する区間も適応的に決定される。このため、解析ユニット20は、センサユニット10の解析対象とする運動に応じた適切なセンサ姿勢の算出が行える。
[変形例]
以下、上述の姿勢計測システム1のいくつかの変形例について説明する。
上述の実施形態では、角速度補正値は、重力方向と地磁気方向とに基づいて決定される例を示したが、例えば、重力方向又は地磁気方向の回転方向に制限が設けられている場合、重力方向と地磁気方向とのうち一方のみに基づいて角速度補正値は決定され得る。例えば、重力方向に維持される回転軸周りにのみ回転する系においては、地磁気方向についてのみ各種データを取得し、各種演算が行われればよい。必要な軸についてのみ演算が行われることで、演算量が削減され得る。なお、上述の実施形態のように3軸について演算が行われれば、どのような姿勢であっても算出され得る。
また、上述の実施形態は、センサユニット10と別体として設けられている解析ユニット20がセンサ姿勢の算出を行う場合である。しかしながらこれに限らない。センサ姿勢の算出は、計測対象に取り付けられるセンサユニット10のプロセッサ14で行われてもよい。すなわち、検出データに基づいてセンサ姿勢を算出する姿勢算出装置は、センサユニット10に組み込まれていてもよい。その場合、センサユニット10で算出されたセンサ姿勢が、センサユニット10の外部のPC等に出力されてもよい。
また、上述の実施形態では、センサユニット10を用いて、角速度、加速度、地磁気方向が検出される全期間内に複数の評価区間が設定されている。この評価区間の数は、いくつであってもよい。データが取得される全期間が1つの評価区間として取り扱われてもよい。
また、上述の実施形態では、時間経過に沿って、前の時点(過去)から後の時点(未来)へ向けて順次にセンサ姿勢が算出される場合を例に挙げた。センサ姿勢の算出は、これに限らず、例えば後の時点(未来)から前の時点(過去)へ向けて順次にセンサ姿勢が算出されてもよい。すなわち、例えば運動終了後の静止しているときを基準として、時間をさかのぼって角速度センサの出力を積算していくことで、各時点のセンサ姿勢が算出されてもよい。この場合も、上述の実施形態と同様にある程度の期間を有する評価区間のデータに基づいて角速度補正値が算出され、算出された角速度補正値がある区間について適用されることになる。
このように、解析対象とする運動が終了した後に、センサ姿勢が算出される場合、前の時点から後の時点に向けて順にセンサ姿勢を決定しても、後の時点から前の時点に向けて順にセンサ姿勢を決定してもよい。したがって、解析対象について運動前に安定した静止状態があるか、運動後に安定した静止状態があるか等に応じて、解析の手順は適宜に選択され得る。
また、センサ姿勢は前の時点(過去)から後の時点(未来)へ向けて順に算出され、評価区間を決定するためのセンサ積算履歴値は後の時点(未来)から前の時点(過去)にさかのぼって算出されることも可能である。この場合の例を図10に示す。図10において、横軸は時刻を示し、縦軸は誤差平均を示す。点線は、区間ごとに順にセンサ姿勢が算出されるときの誤差平均の値の変化を示す。
実線で示した時刻t2からのセンサ姿勢の算出に注目して説明する。上述の実施形態と同様に、時刻t2の姿勢を基準として、時刻t2以前に決定された角速度補正値で補正した角速度センサ11の出力を積算することで、順にセンサ姿勢を算出していく。このときの誤差平均を順に求めていった結果が実線で示されている。誤差平均は、時間経過と共に徐々に大きくなり、時刻t3において、第2の閾値TH2より大きくなったとする。このとき、角速度補正値の再設定が行われる。
新たな角速度補正値の算出は、次のように行われる。すなわち、時刻t3におけるセンサ姿勢を基準として、時刻t2から時刻t3までの間のセンサ姿勢の算出に用いられた角速度補正値を用いて各時刻に得られた角速度センサ11の出力を補正し、それらを時間をさかのぼりながら積算して各時点のセンサ積算値を算出する。このようにして得られたセンサ積算値について、各々の時点での誤差平均を算出すると、図10の破線のようになる。すなわち、t3から時間をさかのぼっていくと、誤差平均は徐々に大きくなる。そして、時刻t1において第1の閾値TH1よりも大きくなったとする。このとき、時刻t3から時刻t1までの区間が評価区間に設定される。この評価区間における参照角度差の二乗和が最小となるような角速度補正値が算出される。
このようにして求まった角速度補正値が、時刻t3以降のセンサ姿勢の算出に用いられる。時刻t3以降の誤差平均は、図10の一点鎖線で示すように、時間経過と共に徐々に増加する。時刻t4において誤差平均がTH2よりも大きくなったとすると、上述と同様に時刻t4から遡って評価区間が設定され、新たな角速度補正値が算出される。
図10を参照して説明したようにセンサ姿勢及び角速度補正値が算出される場合、常にセンサ姿勢を算出している時点よりも過去の角速度センサ11の出力値を用いており、未来の角速度センサ11の出力値を用いていない。このため、本手法によれば、センサユニット10による角速度、加速度及び地磁気の検出と共に、センサ姿勢の算出が行われ得る。すなわち、演算能力が十分にあれば、リアルタイムにセンサ姿勢が算出され得る。
同様に、センサ姿勢は後の時点から前の時点にさかのぼって算出され、角速度補正値は前の時点から後の時点へ向けて順に算出されてもよい。
また、上述の実施形態では、角速度補正値の算出において、角速度補正値を変更しながら評価区間についての複数の参照角度差の二乗和を算出し、この値に二次関数をフィッティングして角速度補正値の最適値を算出する例を示した。しかしながら、これに限らない。勾配法等を含む各種解析方法が用いられ得る。角速度補正値は、3軸の補正値の各々が順に算出されるに限らず、3軸の補正値の各々が一度に算出されてもよい。演算能力、要求される算出速度等に応じて適切な手法が選択され得る。
なお、本発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の発明が含まれており、開示される複数の構成要件から選択された組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、課題が解決でき、効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[1]
角速度値を検出する角速度センサと参照地磁気方向を検出する地磁気センサとを有するセンサユニット、で取得された第1の期間の角速度履歴値を取得する角速度値取得部と、
前記センサユニットで取得された前記第1の期間の参照地磁気方向履歴値を取得する参照姿勢取得部と、
前記センサユニットの角速度センサより取得された前記角速度値を順次に積算することでセンサ積算履歴値を算出する積算履歴値算出部と、
前記センサ積算履歴値に基づいて、前記センサ積算履歴値の地磁気方向成分であるセンサ地磁気方向履歴値を算出する方向算出部と、
前記センサ地磁気方向履歴値と前記参照地磁気方向履歴値とを比較することで得られる地磁気方向誤差を含む参照角度差を算出する角度差算出部と、
前記参照角度差に基づいて前記角速度値を補正する補正値を算出する補正値算出部と、
前記補正値で補正した前記角速度値を順次に積算することで前記センサユニットのセンサ姿勢を算出する姿勢算出部と
を備える姿勢算出装置。
[2]
角速度値を検出する角速度センサと参照重力方向を検出する加速度センサとを有するセンサユニット、で取得された第1の期間の角速度履歴値を取得する角速度値取得部と、
前記センサユニットで取得された前記第1の期間の参照重力方向履歴値を取得する参照姿勢取得部と、
前記センサユニットの角速度センサより取得された前記角速度値を順次に積算することでセンサ積算履歴値を算出する積算履歴値算出部と、
前記センサ積算履歴値に基づいて、前記センサ積算履歴値の重力方向成分であるセンサ重力方向履歴値を算出する方向算出部と、
前記センサ重力方向履歴値と前記参照重力方向履歴値とを比較することで得られる重力方向誤差を含む参照角度差を算出する角度差算出部と、
前記参照角度差に基づいて前記角速度値を補正する補正値を算出する補正値算出部と、
前記補正値で補正した前記角速度値を順次に積算することで前記センサユニットのセンサ姿勢を算出する姿勢算出部と
を備える姿勢算出装置。
[3]
前記センサユニットは、参照重力方向を検出する加速度センサをさらに有し、
前記参照姿勢取得部は、前記センサユニットで取得された前記第1の期間の参照重力方向履歴値をさらに取得し、
前記方向算出部は、前記センサ積算履歴値に基づいて、前記センサ積算履歴値の重力方向成分であるセンサ重力方向履歴値をさらに算出し、
前記角度差算出部は、前記センサ重力方向履歴値と前記参照重力方向履歴値とを比較することで得られる重力方向誤差をさらに含む前記参照角度差を算出する、
[1]に記載の姿勢算出装置。
[4]
前記補正値算出部は、前記第1の期間の一部期間である複数の第2の期間を設定し、前記第2の期間ごとに複数の前記補正値を算出し、
前記姿勢算出部は、前記第1の期間の一部期間である複数の第3の期間を設定し、前記第3の期間ごとに前記複数の補正値の何れかで前記角速度値を補正して前記センサ姿勢を算出し、
前記第3の期間の長さは、前記第2の期間の長さ以下である、
[1]乃至[3]のうち何れか一に記載の姿勢算出装置。
[5]
前記補正値算出部は、第1の時点から第2の時点までを前記第2の期間に設定して前記補正値を算出し、
前記姿勢算出部は、前記第1の時点から前記第2の時点までを前記第2の期間として算出した前記補正値を用いて、前記第1の時点から第3の時点までを前記第3の期間に設定して前記センサ姿勢を算出する、
[4]に記載の姿勢算出装置。
[6]
前記積算履歴値算出部は、第1の時点から一定の前記補正値で補正した前記角速度値を順次に積算することで前記センサ積算履歴値を算出し、
前記角度差算出部は、前記参照角度差の前記第1の時点からの累積値の時間平均が所定の閾値よりも大きくなる第2の時点を決定し、
前記補正値算出部は、前記第1の時点から前記第2の時点までを前記第2の期間に設定して前記補正値を算出し、
前記姿勢算出部は、前記第1の時点から前記第2の期間までを前記第2の期間として算出した前記補正値を用いて、前記第1の時点から第3の時点までを前記第3の期間に設定して前記センサ姿勢を算出する、
[4]に記載の姿勢算出装置。
[7]
前記補正値算出部が前記第1の時点から前記第2の時点までを前記第2の期間に設定して前記補正値を算出することと、
前記姿勢算出部が前記補正値を用いて、前記第1の時点から第3の時点までを前記第3の期間に設定して前記センサ姿勢を算出することと、
前記補正値算出部が前記第3の時点を前記第1の時点として前記第2の期間を再設定することと、
前記姿勢算出部が前記第3の時点を前記第1の時点として前記第3の期間を再設定することと
が繰り返されて、前記姿勢算出部は、前記第1の期間の前記センサ姿勢を順次算出する、
[5]又は[6]に記載の姿勢算出装置。
[8]
前記補正値算出部は、前記補正値として、前記参照角度差が所定の期間で最小となる前記補正値を算出する、[1]乃至[7]のうち何れか一に記載の姿勢算出装置。
[9]
前記補正値算出部は、前記補正値の仮値を仮補正値としたときに、前記仮補正値で前記角速度値を補正した場合の前記参照角度差である仮参照角度差を、複数の前記仮補正値について求め、前記仮補正値と前記仮参照角度差との関係に基づいて、前記参照角度差が最小となる前記補正値を決定する、[8]に記載の姿勢算出装置。
[10]
[1]乃至[9]のうち何れか一に記載の姿勢算出装置と、
前記センサユニットと
を備える姿勢計測システム。
[11]
角速度値を検出する角速度センサと参照地磁気方向を検出する地磁気センサとを有するセンサユニット、で取得された第1の期間の角速度履歴値を取得することと、
前記センサユニットで取得された前記第1の期間の参照地磁気方向履歴値を取得することと、
前記センサユニットの角速度センサより取得された前記角速度値を順次に積算することでセンサ積算履歴値を算出することと、
前記センサ積算履歴値に基づいて、前記センサ積算履歴値の地磁気方向成分であるセンサ地磁気方向履歴値を算出することと、
前記センサ地磁気方向履歴値と前記参照地磁気方向履歴値とを比較することで得られる地磁気方向誤差を含む参照角度差を算出することと、
前記参照角度差に基づいて前記角速度値を補正する補正値を算出する補正値算出部と、
前記補正値で補正した前記角速度値を順次に積算することで前記センサユニットのセンサ姿勢を算出することと
を含む姿勢算出方法。
[12]
角速度値を検出する角速度センサと参照重力方向を検出する加速度センサとを有するセンサユニット、で取得された第1の期間の角速度履歴値を取得することと、
前記センサユニットで取得された前記第1の期間の参照重力方向履歴値を取得することと、
前記センサユニットの角速度センサより取得された前記角速度値を順次に積算することでセンサ積算履歴値を算出することと、
前記センサ積算履歴値に基づいて、前記センサ積算履歴値の重力方向成分であるセンサ重力方向履歴値を算出することと、
前記センサ重力方向履歴値と前記参照重力方向履歴値とを比較することで得られる重力方向誤差を含む参照角度差を算出することと、
前記参照角度差に基づいて前記角速度値を補正する補正値を算出することと、
前記補正値で補正した前記角速度値を順次に積算することで前記センサユニットのセンサ姿勢を算出することと
を含む姿勢算出方法。
1…姿勢計測システム、10…センサユニット、11…角速度センサ、12…加速度センサ、13…地磁気センサ、14…プロセッサ、15…random access memory(RAM)、16…フラッシュメモリ、17…入力装置、18…インターフェイス(I/F)、19…バスライン、20…解析ユニット、21…プロセッサ、22…RAM、23…記録装置、24…ディスプレイ、25…入力装置、26…I/F、29…バスライン。

Claims (12)

  1. 角速度値を検出する角速度センサと参照地磁気方向を検出する地磁気センサとを有するセンサユニット、で取得された第1の期間の角速度履歴値を取得する角速度値取得部と、
    前記センサユニットで取得された前記第1の期間の参照地磁気方向履歴値を取得する参照姿勢取得部と、
    前記センサユニットの角速度センサより取得された前記角速度値を順次に積算することでセンサ積算履歴値を算出する積算履歴値算出部と、
    前記センサ積算履歴値に基づいて、前記センサ積算履歴値の地磁気方向成分であるセンサ地磁気方向履歴値を算出する方向算出部と、
    前記センサ地磁気方向履歴値と前記参照地磁気方向履歴値とを比較することで得られる地磁気方向誤差を含む参照角度差を算出する角度差算出部と、
    前記参照角度差に基づいて前記角速度値を補正する補正値を算出する補正値算出部と、
    前記補正値で補正した前記角速度値を順次に積算することで前記センサユニットのセンサ姿勢を算出する姿勢算出部と
    を備える姿勢算出装置。
  2. 角速度値を検出する角速度センサと参照重力方向を検出する加速度センサとを有するセンサユニット、で取得された第1の期間の角速度履歴値を取得する角速度値取得部と、
    前記センサユニットで取得された前記第1の期間の参照重力方向履歴値を取得する参照姿勢取得部と、
    前記センサユニットの角速度センサより取得された前記角速度値を順次に積算することでセンサ積算履歴値を算出する積算履歴値算出部と、
    前記センサ積算履歴値に基づいて、前記センサ積算履歴値の重力方向成分であるセンサ重力方向履歴値を算出する方向算出部と、
    前記センサ重力方向履歴値と前記参照重力方向履歴値とを比較することで得られる重力方向誤差を含む参照角度差を算出する角度差算出部と、
    前記参照角度差に基づいて前記角速度値を補正する補正値を算出する補正値算出部と、
    前記補正値で補正した前記角速度値を順次に積算することで前記センサユニットのセンサ姿勢を算出する姿勢算出部と
    を備える姿勢算出装置。
  3. 前記センサユニットは、参照重力方向を検出する加速度センサをさらに有し、
    前記参照姿勢取得部は、前記センサユニットで取得された前記第1の期間の参照重力方向履歴値をさらに取得し、
    前記方向算出部は、前記センサ積算履歴値に基づいて、前記センサ積算履歴値の重力方向成分であるセンサ重力方向履歴値をさらに算出し、
    前記角度差算出部は、前記センサ重力方向履歴値と前記参照重力方向履歴値とを比較することで得られる重力方向誤差をさらに含む前記参照角度差を算出する、
    請求項1に記載の姿勢算出装置。
  4. 前記補正値算出部は、前記第1の期間の一部期間である複数の第2の期間を設定し、前記第2の期間ごとに複数の前記補正値を算出し、
    前記姿勢算出部は、前記第1の期間の一部期間である複数の第3の期間を設定し、前記第3の期間ごとに前記複数の補正値の何れかで前記角速度値を補正して前記センサ姿勢を算出し、
    前記第3の期間の長さは、前記第2の期間の長さ以下である、
    請求項1乃至3のうち何れか1項に記載の姿勢算出装置。
  5. 前記補正値算出部は、第1の時点から第2の時点までを前記第2の期間に設定して前記補正値を算出し、
    前記姿勢算出部は、前記第1の時点から前記第2の時点までを前記第2の期間として算出した前記補正値を用いて、前記第1の時点から第3の時点までを前記第3の期間に設定して前記センサ姿勢を算出する、
    請求項4に記載の姿勢算出装置。
  6. 前記積算履歴値算出部は、第1の時点から一定の前記補正値で補正した前記角速度値を順次に積算することで前記センサ積算履歴値を算出し、
    前記角度差算出部は、前記参照角度差の前記第1の時点からの累積値の時間平均が所定の閾値よりも大きくなる第2の時点を決定し、
    前記補正値算出部は、前記第1の時点から前記第2の時点までを前記第2の期間に設定して前記補正値を算出し、
    前記姿勢算出部は、前記第1の時点から前記第2の期間までを前記第2の期間として算出した前記補正値を用いて、前記第1の時点から第3の時点までを前記第3の期間に設定して前記センサ姿勢を算出する、
    請求項4に記載の姿勢算出装置。
  7. 前記補正値算出部が前記第1の時点から前記第2の時点までを前記第2の期間に設定して前記補正値を算出することと、
    前記姿勢算出部が前記補正値を用いて、前記第1の時点から第3の時点までを前記第3の期間に設定して前記センサ姿勢を算出することと、
    前記補正値算出部が前記第3の時点を前記第1の時点として前記第2の期間を再設定することと、
    前記姿勢算出部が前記第3の時点を前記第1の時点として前記第3の期間を再設定することと
    が繰り返されて、前記姿勢算出部は、前記第1の期間の前記センサ姿勢を順次算出する、
    請求項5又は6に記載の姿勢算出装置。
  8. 前記補正値算出部は、前記補正値として、前記参照角度差が所定の期間で最小となる前記補正値を算出する、請求項1乃至7のうち何れか1項に記載の姿勢算出装置。
  9. 前記補正値算出部は、前記補正値の仮値を仮補正値としたときに、前記仮補正値で前記角速度値を補正した場合の前記参照角度差である仮参照角度差を、複数の前記仮補正値について求め、前記仮補正値と前記仮参照角度差との関係に基づいて、前記参照角度差が最小となる前記補正値を決定する、請求項8に記載の姿勢算出装置。
  10. 請求項1乃至9のうち何れか1項に記載の姿勢算出装置と、
    前記センサユニットと
    を備える姿勢計測システム。
  11. 角速度値を検出する角速度センサと参照地磁気方向を検出する地磁気センサとを有するセンサユニット、で取得された第1の期間の角速度履歴値を取得することと、
    前記センサユニットで取得された前記第1の期間の参照地磁気方向履歴値を取得することと、
    前記センサユニットの角速度センサより取得された前記角速度値を順次に積算することでセンサ積算履歴値を算出することと、
    前記センサ積算履歴値に基づいて、前記センサ積算履歴値の地磁気方向成分であるセンサ地磁気方向履歴値を算出することと、
    前記センサ地磁気方向履歴値と前記参照地磁気方向履歴値とを比較することで得られる地磁気方向誤差を含む参照角度差を算出することと、
    前記参照角度差に基づいて前記角速度値を補正する補正値を算出する補正値算出部と、
    前記補正値で補正した前記角速度値を順次に積算することで前記センサユニットのセンサ姿勢を算出することと
    を含む姿勢算出方法。
  12. 角速度値を検出する角速度センサと参照重力方向を検出する加速度センサとを有するセンサユニット、で取得された第1の期間の角速度履歴値を取得することと、
    前記センサユニットで取得された前記第1の期間の参照重力方向履歴値を取得することと、
    前記センサユニットの角速度センサより取得された前記角速度値を順次に積算することでセンサ積算履歴値を算出することと、
    前記センサ積算履歴値に基づいて、前記センサ積算履歴値の重力方向成分であるセンサ重力方向履歴値を算出することと、
    前記センサ重力方向履歴値と前記参照重力方向履歴値とを比較することで得られる重力方向誤差を含む参照角度差を算出することと、
    前記参照角度差に基づいて前記角速度値を補正する補正値を算出することと、
    前記補正値で補正した前記角速度値を順次に積算することで前記センサユニットのセンサ姿勢を算出することと
    を含む姿勢算出方法。
JP2017055616A 2017-03-22 2017-03-22 姿勢算出装置、姿勢計測システム、及び姿勢算出方法 Active JP6848571B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017055616A JP6848571B2 (ja) 2017-03-22 2017-03-22 姿勢算出装置、姿勢計測システム、及び姿勢算出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017055616A JP6848571B2 (ja) 2017-03-22 2017-03-22 姿勢算出装置、姿勢計測システム、及び姿勢算出方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021033722A Division JP7120361B2 (ja) 2021-03-03 2021-03-03 補正装置、姿勢算出装置、補正方法、及び、プログラム

Publications (2)

Publication Number Publication Date
JP2018159569A JP2018159569A (ja) 2018-10-11
JP6848571B2 true JP6848571B2 (ja) 2021-03-24

Family

ID=63796435

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017055616A Active JP6848571B2 (ja) 2017-03-22 2017-03-22 姿勢算出装置、姿勢計測システム、及び姿勢算出方法

Country Status (1)

Country Link
JP (1) JP6848571B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102360306B1 (ko) * 2018-11-23 2022-02-10 주식회사 엔텍로직 짐벌카메라와 지향제어장치의 캘리브레이션 검사 방법 및 장치
CN111625764B (zh) * 2020-05-21 2023-05-12 北京嘀嘀无限科技发展有限公司 移动数据的校准方法、装置、电子设备和存储介质
CN113137983B (zh) * 2021-04-30 2023-08-22 深圳市恒星物联科技有限公司 一种自学习的井盖姿态监测方法及监测系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3581392B2 (ja) * 1994-04-18 2004-10-27 株式会社ザナヴィ・インフォマティクス 積分型センシング装置
JPH11248456A (ja) * 1998-02-27 1999-09-17 Olympus Optical Co Ltd 3軸姿勢検出装置
JP2013217793A (ja) * 2012-04-10 2013-10-24 Sony Corp オフセット算出装置、オフセット算出方法、プログラム、及び情報処理装置
WO2014185009A1 (ja) * 2013-05-15 2014-11-20 旭化成株式会社 オフセット推定装置、方法、およびプログラム
US10451438B2 (en) * 2015-02-05 2019-10-22 Alpinereplay, Inc. Systems and methods for in-motion gyroscope calibration
JP2017049115A (ja) * 2015-09-02 2017-03-09 カシオ計算機株式会社 電子機器及び電子機器のセンサ較正方法、電子機器のセンサ較正プログラム

Also Published As

Publication number Publication date
JP2018159569A (ja) 2018-10-11

Similar Documents

Publication Publication Date Title
US8913134B2 (en) Initializing an inertial sensor using soft constraints and penalty functions
JP6702543B2 (ja) 情報処理装置、方法およびプログラム
JP6848571B2 (ja) 姿勢算出装置、姿勢計測システム、及び姿勢算出方法
US10309983B2 (en) Systems and methods for motion detection
JPWO2021019602A1 (ja) 構造物の変位を推定するためのシステム、方法、及びプログラム
CN105841695B (zh) 信息处理装置、信息处理方法以及记录介质
CN110319851B (zh) 传感器的校正方法、装置、设备及存储介质
EP2910954B1 (en) Method for counting steps and electronic apparatus using the same
JP2014185996A (ja) 計測装置
TW201833557A (zh) 空間定向的決定
JP6074897B2 (ja) 運動解析装置及び運動解析方法
CN107632966B (zh) 运动轨迹确定方法及电子设备
JP7120361B2 (ja) 補正装置、姿勢算出装置、補正方法、及び、プログラム
CN108225368B (zh) 计步装置和计步方法
KR101639351B1 (ko) 웨어러블 입력 시스템 및 모션 인식 방법
KR101870542B1 (ko) 모션 인식 방법 및 장치
JP2006038650A (ja) 姿勢計測方法、姿勢制御装置、方位計及びコンピュータプログラム
JP6147446B1 (ja) ソフト制約及びペナルティ機能を使用した慣性センサの初期化
CN108413970B (zh) 一种定位方法、云系统、电子设备及计算机程序产品
JP6972675B2 (ja) 姿勢評価装置、姿勢算出装置、姿勢計測システム、姿勢評価方法及びプログラム
CN108519100A (zh) 用于估算步长的方法、云系统、设备和计算机程序产品
JP5958920B2 (ja) 傾斜角度推定システム
JP5424226B2 (ja) 傾斜角度推定システム
Tran et al. Kalman filtering for wearable fitness monitoring
JP2017015605A (ja) 慣性計測システムおよびその位置出力方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210118

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210202

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210215

R150 Certificate of patent or registration of utility model

Ref document number: 6848571

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150