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

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

▶ キヤノン株式会社の特許一覧

<>
  • 特許-較正装置およびその制御方法 図1
  • 特許-較正装置およびその制御方法 図2
  • 特許-較正装置およびその制御方法 図3
  • 特許-較正装置およびその制御方法 図4
  • 特許-較正装置およびその制御方法 図5
  • 特許-較正装置およびその制御方法 図6
  • 特許-較正装置およびその制御方法 図7
  • 特許-較正装置およびその制御方法 図8
  • 特許-較正装置およびその制御方法 図9
  • 特許-較正装置およびその制御方法 図10
  • 特許-較正装置およびその制御方法 図11
  • 特許-較正装置およびその制御方法 図12
  • 特許-較正装置およびその制御方法 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-19
(45)【発行日】2023-12-27
(54)【発明の名称】較正装置およびその制御方法
(51)【国際特許分類】
   G01C 19/00 20130101AFI20231220BHJP
   G01P 15/00 20060101ALI20231220BHJP
【FI】
G01C19/00 Z
G01P15/00 Z
【請求項の数】 7
(21)【出願番号】P 2020021878
(22)【出願日】2020-02-12
(65)【公開番号】P2021128030
(43)【公開日】2021-09-02
【審査請求日】2023-02-13
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】岡野 裕
(72)【発明者】
【氏名】武本 和樹
【審査官】山▲崎▼ 和子
(56)【参考文献】
【文献】特開2012-018075(JP,A)
【文献】特開平03-092713(JP,A)
【文献】特開平09-292248(JP,A)
【文献】特開2000-180172(JP,A)
【文献】特開2012-037405(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01C 19/00-19/72
G01P 1/00-21/02
B81B 1/00-7/04
(57)【特許請求の範囲】
【請求項1】
慣性センサの較正装置であって、
前記慣性センサから角速度値を取得する取得手段と、
所与の期間に前記取得手段が取得した複数の角速度値に関して、時間的に隣接する角速度値の差分の分布を導出する導出手段と、
前記分布に基づいて、該所与の期間に前記慣性センサが静止状態であったか否かを判定する判定手段と、
前記判定手段により前記慣性センサが静止状態にあると判定された場合に、前記複数の角速度値に基づいて前記慣性センサのバイアス値を決定し、前記取得手段により得られた角速度値を補正する補正手段と、
を有し、
前記取得手段は、前記慣性センサから3軸の角速度値を取得し、
前記導出手段は、前記所与の期間に前記取得手段が取得した複数の3軸の角速度値に関して、時間的に隣接する角速度値の差分を3軸それぞれについて計算し、該3軸の差分の合成成分を計算し、前記所与の期間における前記合成成分の分布の尖度を計算し、
前記判定手段は、前記尖度が閾値より大きい場合に前記慣性センサが静止状態であったと判定する
ことを特徴とする較正装置。
【請求項2】
前記取得手段は、所定の周期で角速度値を取得するよう構成されており、
前記所与の期間は、現時刻から直近の所定の時間に対応する期間である
ことを特徴とする請求項に記載の較正装置。
【請求項3】
前記慣性センサから3軸の加速度値を取得する第2の取得手段と、
前記所与の期間に前記第2の取得手段が取得した複数の3軸の加速度値に関して、時間的に隣接する加速度値の差分を3軸それぞれについて計算し、該3軸の差分の第2の合成成分を計算し、前記所与の期間における前記第2の合成成分の分布の第2の尖度を計算する第2の導出手段と、
をさらに有し、
前記判定手段は、前記尖度が閾値より大きくかつ前記第2の尖度が第2の閾値より大きい場合に前記慣性センサが静止状態であったと判定する
ことを特徴とする請求項に記載の較正装置。
【請求項4】
前記導出手段は、計算した尖度をバッファに格納するよう構成されており、
前記判定手段は、前記バッファに格納された複数の尖度の平均が前記閾値より大きい場合に前記慣性センサが静止状態にであったと判定する
ことを特徴とする請求項に記載の較正装置。
【請求項5】
慣性センサと、
請求項1乃至の何れか1項に記載の較正装置と、
を有する頭部搭載型ディスプレイ(HMD)。
【請求項6】
慣性センサの較正装置の制御方法であって、
前記慣性センサから角速度値を取得する取得工程と、
所与の期間に前記取得工程により取得された複数の角速度値に関して、時間的に隣接する角速度値の差分の分布を導出する導出工程と、
前記分布に基づいて、該所与の期間に前記慣性センサが静止状態であったか否かを判定する判定工程と、
前記判定工程により前記慣性センサが静止状態にあると判定された場合に、前記複数の角速度値に基づいて前記慣性センサのバイアス値を決定し、前記取得工程により得られた角速度値を補正する補正工程と、
を含み、
前記取得工程では、前記慣性センサから3軸の角速度値を取得し、
前記導出工程では、前記所与の期間に前記取得工程で取得された複数の3軸の角速度値に関して、時間的に隣接する角速度値の差分を3軸それぞれについて計算し、該3軸の差分の合成成分を計算し、前記所与の期間における前記合成成分の分布の尖度を計算し、
前記判定工程では、前記尖度が閾値より大きい場合に前記慣性センサが静止状態であったと判定する
ことを特徴とする制御方法。
【請求項7】
コンピュータを、請求項1乃至の何れか1項に記載の較正装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、慣性センサの較正に関するものである。
【背景技術】
【0002】
慣性センサ(IMU:Inertial Measurement Unit)は、運動体の挙動を計測・制御する用途に使用され、カメラ、ゲーム機器、車両などに搭載されている。また、近年では、仮想現実(VR:Virtual Reality)や複合現実(MR:Mixed Reality)を実現する電子機器に広範に採用されている。慣性センサは、角速度(Gyro)センサおよび加速度センサを含み、角速度および加速度を出力する。一般に、慣性センサから出力されるこれらの値には誤差が含まれることが知られている。
【0003】
誤差は、「ゲイン」と「バイアス」を使ってモデル化することが可能である。特許文献1には、3軸加速度センサの合成加速度が重力加速度とほぼ一致していることをもって静止を判定し、静止判定された期間中の角速度値を用いて、バイアス値を更新することが記載されている。また、非特許文献1には、加速度の3軸合成成分と重力加速度との差分、各軸の前回角速度値と現在の角速度値の差、バイアス値を差し引いた各軸の現在角速度値、のそれぞれが閾値以下である場合に静止していると判定することが記載されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2012-37405号公報
【非特許文献】
【0005】
【文献】Valenti et al., "Keeping a Good Attitude: A Quaternion-Based Orientation Filter for IMUs and MARGs",Sensors, 2015
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、慣性センサにより得られる加速度ないし角速度は、温度変化・気圧変化・振動・衝撃などにも影響を受ける。そのため、補正精度にも影響を与え、場合によってはユーザにとって満足な精度を持つ補正結果が得られないことがある。
【0007】
本発明は、このような問題に鑑みてなされたものであり、慣性センサの較正をより好適に実現可能とする技術を提供することを目的としている。
【課題を解決するための手段】
【0008】
上述の問題点を解決するため、本発明に係る較正装置は以下の構成を備える。すなわち、慣性センサの較正装置は、
前記慣性センサから角速度値を取得する取得手段と、
所与の期間に前記取得手段が取得した複数の角速度値に関して、時間的に隣接する角速度値の差分の分布を導出する導出手段と、
前記分布に基づいて、該所与の期間に前記慣性センサが静止状態であったか否かを判定する判定手段と、
前記判定手段により前記慣性センサが静止状態にあると判定された場合に、前記複数の角速度値に基づいて前記慣性センサのバイアス値を決定し、前記取得手段により得られた角速度値を補正する補正手段と、
を有し、
前記取得手段は、前記慣性センサから3軸の角速度値を取得し、
前記導出手段は、前記所与の期間に前記取得手段が取得した複数の3軸の角速度値に関して、時間的に隣接する角速度値の差分を3軸それぞれについて計算し、該3軸の差分の合成成分を計算し、前記所与の期間における前記合成成分の分布の尖度を計算し、
前記判定手段は、前記尖度が閾値より大きい場合に前記慣性センサが静止状態であったと判定する
【発明の効果】
【0009】
本発明によれば、慣性センサの較正をより好適に実現可能とする技術を提供することができる。
【図面の簡単な説明】
【0010】
図1】第1実施形態に係る慣性センサの機能構成を示すブロック図である。
図2】慣性センサのハードウェア構成を示すブロック図である。
図3】第1実施形態における慣性センサの動作を示すフローチャートである。
図4】角速度取得部により得られる角速度情報の例を示す図である。
図5】角速度差分の合成成分の時系列変化および時間窓の例を示す図である。
図6】時間窓における合成成分の度数分布および尖度の例を示す図である。
図7】第2実施形態における慣性センサの動作を示すフローチャートである。
図8】角速度差分の時系列変化および時間窓の例を示す図である。
図9】時間窓における角速度差分の度数分布および歪度の例を示す図である。
図10】平滑化処理に用いられる尖度のリストを示す図である。
図11】平滑化処理に用いられる歪度のリストを示す図である。
図12】第3実施形態に係る慣性センサの機能構成を示すブロック図である。
図13】第3実施形態における慣性センサの動作を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【0012】
(第1実施形態)
本発明に係る較正装置の第1実施形態として、慣性センサのバイアス補正を行う較正装置を例に挙げて以下に説明する。
【0013】
<慣性センサの較正>
慣性センサからの出力値に含まれる誤差は、「ゲイン(g)」と「バイアス(b)」を用いて数式(1)のようにモデル化することが可能である。ここで、ωは取得された角速度値、ω’は補正後の角速度値である。
【0014】
【数1】
【0015】
ゲインによる誤差は、センサが実際の運動量とは異なる量(異なるスケール)を出力することに起因する。例えば、慣性センサから角速度値「60」が計測されたとする。しかし実際には慣性センサは角速度値「30」で運動していたとする。その場合、角速度のゲイン値は「2」となる。バイアスによる誤差は、角速度センサが出力する角速度値が一定のオフセットを持って出力することに起因する。例えば、静止状態にあるにも関わらず慣性センサが「0」から離れた角速度値を測定により得る場合、当該慣性センサはバイアス値を加算した角速度値を出力することになる。
【0016】
そこで、測定により得られた角速度値からバイアス値を減算することで実際の運動に即した角速度値を得るバイアス補正が利用されている。バイアス補正は、オフセット補正、ゼロレート補正、zero-motion calculationとも呼ばれる。特に、静止時に得られる角速度値は、バイアス値と同等であると考えられるため、一定時間慣性センサを静止させ、その時間の角速度を測定しその平均をバイアス値とすることが広く行われている。
【0017】
一般にバイアス値とゲイン値を用いた角速度値の較正は、数式(1)に従って行われる。なお、複数の軸(例えば3軸)に関して角速度が出力されている場合には、それぞれの軸に対してゲイン値、バイアス値を計算する。
【0018】
バイアス補正は、慣性センサの使用を開始する度、またはユーザが姿勢値にずれを感じる度に、ユーザによって実施されることが多い。これは、温度、気圧、外部震動・衝撃などによって慣性センサの出力特性が変わりバイアス値が変化するためである。しかしながら、バイアス補正のための操作やバイアス補正の必要性判断を行うことがユーザにとって煩わしいという問題がある。そのため、ユーザが意識することなく自動的にバイアス補正が行われるようにすることが望まれている。
【0019】
そこで、以下では、慣性センサの出力値を監視することにより好適に当該慣性センサが静止状態にあることを検出しバイアス補正を行う慣性センサについて説明する。
【0020】
<装置構成>
図1は、第1実施形態に係る較正装置100の機能構成を示すブロック図である。較正装置100は、角速度取得部110と、指標算出部120と、静止判定部130と、バイアス補正部140を有する。図2は、較正装置100のハードウェア構成を示すブロック図である。較正装置100は、入力部101、記憶部102、制御部103、およびバス104を備える。図示されるように、角速度取得部110は、角速度を検出/計測する慣性センサ200に相当する。また、指標算出部120と静止判定部130とバイアス補正部140は、較正装置100に相当する。較正装置100は、慣性センサ200からの出力(角速度値)を受信し較正の処理を行う装置である。なお、図2では、較正装置100と慣性センサ200とを別体のものとして記載しているが、一体の構成(例えば頭部搭載型ディスプレイ)としてもよい。
【0021】
角速度取得部110は、慣性センサ200から出力される角速度値を受信し取得する。慣性センサ200は、測定対象の物体(例えば、頭部搭載型ディスプレイ)に設置され、当該設置場所における角速度を周期的(たとえば5ms毎)に計測し出力する。以下の説明では、慣性センサ200は3軸(XYZ)の角速度(yaw,pitch,roll)を計測可能に構成されることを想定するが、1軸以上の角速度値を出力可能であればよい。慣性センサ200からの出力値は、角速度を符号化(デジタル数値化)したものである。以下では、説明を簡単にするために、慣性センサ200からの出力値は「deg/s」の単位で表される角速度値であるとする。なお、角速度取得部110は、取得した角速度値を即時指標算出部120に与えても良いし、一時的にバッファ(不図示)に溜めてから与えても良い。
【0022】
指標算出部120は、角速度取得部110から継続的に角速度値を受け取り、複数の角速度値に基づいて指標値を導出する。ここで、指標値は、所定の時間窓において、時間的に隣接する角速度値の差分(Δ角速度値)のヒストグラム分布の特徴を示す値である。詳細については図5および図6を参照して後述する。
【0023】
静止判定部130は、指標算出部120により算出された指標値を利用して慣性センサ200が設置されている箇所が静止状態にある(慣性系に対して静止している)か否かの判定を行う。具体的には、静止判定部130は、指標算出部120から得た指標値が所定の条件を満たすか否かに基づいて静止状態にあるか否かの判定を行い、判定結果を出力する。
【0024】
バイアス補正部140は、慣性センサ200から出力される角速度値に含まれるバイアス値を取り除く処理を行う。まず、バイアス補正部140は、静止判定部130によって静止状態と判定された期間の角速度値の平均値、または中央値、またはその他の統計的な代表値をバイアス値として決定する。そして、バイアス補正部140は、決定されたバイアス値を角速度値から取り除いた値を出力する。
【0025】
入力部101は、慣性センサ200からの出力値(角速度値、加速度値)を較正装置100に入力する機能部である。入力部101は、併せて、較正装置100へ情報を入力するために使用される入力デバイスからの信号を較正装置100に入力してもよい。入力デバイスは、例えば、ユーザによるタッチを検出するタッチセンサ、マウス若しくはタッチパッドなどのポインティングデバイスを含み得る。さらに、入力デバイスは、キーボード、キーパッド、ボタン又はスイッチなどのその他の種類のデバイスを含み得る。
【0026】
記憶部102は、半導体メモリ(RAMやROM)、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)などにより構成され、較正装置100による処理のためのプログラム及びデータを記憶する。記憶部102により記憶されるデータは、例えば、入力部101から得た角速度値、制御部103で計算した指標値、及び後述する様々なデータを含み得る。なお、本明細書で説明するプログラム及びデータの一部は、記憶部102の代わりに、外部のデータソース(例えば、データサーバ、ネットワークストレージ又は外付けメモリなど)から取得され得る。
【0027】
制御部103は、CPU(Central Processing Unit)又はDSP(Digital Signal Processor)などのプロセッサにより構成される。制御部103は、記憶部102又は他の記憶媒体に記憶されるプログラムを実行することにより、後述する較正装置100の様々な処理を実現する。
【0028】
バス104は、入力部101、記憶部102、制御部103を相互に通信可能に接続する。バス104は、有線接続によるものに限定されず、無線接続によるものであってもよい。
【0029】
<装置の動作>
図3は、第1実施形態における較正装置100の動作を示すフローチャートである。特に、第1実施形態では、3軸(XYZ)のΔ角速度値の合成である合成成分(Δω)の分布の尖度に基づき静止状態を判定する形態について説明する。なお、尖度そのものの代わりに、分布の尖り具合を示す他の指標(尖度を単純化したものなど)を用いてもよい。
【0030】
ステップS101では、角速度取得部110(慣性センサ200)は、3軸の角速度を計測し、計測により得られた3軸の角速度値を時刻情報とともに指標算出部120に出力する。例えば、角速度値の更新間隔を200Hzに設定した場合、これらの角速度値は5msごとに出力される。以下のS101~S105のループは、角速度値が出力されるごと(すなわち5ms)に実行される。
【0031】
図4は、角速度取得部110により得られる角速度情報の例を示す図である。ここでは、角速度情報が、タイムスタンプ221、X軸周りの角速度(ωx)222、Y軸周りの角速度(ωy)223、Z軸周りの角速度(ωz)224を含む例を示している。ここでは角速度222~224の値は「deg/s」の単位で表されるものとしているが、センサ依存の値を出力するよう構成してもよい。加速度センサ依存の値は、角速度センサのデータシートなどに記載された換算式により所定の物理量(例えば「deg/s」)に変換され得る。また、ここでは5msごとに加速度情報が出力/追加されている例を示しているが、出力間隔は用途/アプリケーションの都合によって自由に設定され得る。
【0032】
ステップS102では、指標算出部120は、S101で取得された角速度情報から、各軸に関して角速度の差分(Δω、Δω、Δω)を計算する。そして、さらに3軸の差分の合成成分Δωを計算する。
【0033】
ステップS103では、指標算出部120は、S102で算出された合成成分Δωに関して、所与の期間である時間窓(Δt)における分布を導出しの尖度を計算する。ここでは、現時刻(角速度情報の最新の時刻)から過去1秒間のデータに基づいて尖度を計算する。
【0034】
図5は、角速度差分の合成成分の時系列変化および時間窓の例を示す図である。横軸は時間を示し、縦軸は角速度の合成成分の大きさを示している。曲線231は、S102で算出された合成成分Δωの時間変化を表している。時間窓232は、曲線231に対する時間窓を表しており、ここでは、現時刻(曲線231の右端)から過去1秒間の幅(Δt)の時間区間を表している。指標算出部120は、時間窓232に含まれる複数の合成成分Δωの大きさのヒストグラム分布に基づいて、指標値である尖度を算出する。
【0035】
図6は、時間窓における合成成分の度数分布および尖度の例を示す図である。図5の時間窓232の期間におけるΔωの度数分布がヒストグラム分布234として示されている。また、ヒストグラム分布234に基づいて算出された尖度の値がテーブル235に示されている。
【0036】
指標算出部120は、数式(2)に示す計算によって合成成分Δωの尖度を計算する。
【0037】
【数2】
【0038】
ここで、
n:ヒストグラムを作るために用いられたΔωの個数、
:ヒストグラムにおけるi番目の区間の出現回数(度数)、
:xの平均、
s:時間窓232に含まれるΔωの標準偏差、
である。
【0039】
算出された尖度の値は、バッファに格納される。ここでは直近で求めた5回分の尖度の値をバッファすることを想定する。
【0040】
ステップS104では、指標算出部120は、S103により算出された尖度を平滑化する。ここでは、直近で求めた5回分の尖度の値の平均を算出する。
【0041】
図10は、平滑化処理に用いられる尖度のリストを示す図である。このリストに格納された尖度の値は前述のバッファに格納された直近で求めた5回分の尖度の値に相当する。図10に示した5個の尖度の値の例に対しては、指標算出部120は、これら5個の平均である「0.0」を算出する。
【0042】
ステップS105では、静止判定部130は、S104で算出された平滑化指標値(尖度)を利用して静止状態であるか否かの判定を行う。ここでは、所定の条件として閾値「-0.5」より大きいという条件を満たす場合に静止状態であると判定する。すなわち、S104で算出された平滑化指標値が閾値より大きい場合に「真(=静止状態である)」と判定しS106に進み、閾値以下である場合に「偽」と判定しS101に戻る。そのため、平滑化指標値が「0.0」と算出されている場合は真と判定されS106に進む。なお、閾値は、例えば判定に求められる精度に応じて適宜設定され得る。
【0043】
ステップS106では、バイアス補正部140は、S101で取得された角速度のバイアス補正を行う。ここでは、バイアス補正部140は、静止判定が真と判定された際の角速度情報を平均した値を、バイアス値として決定する。その後、バイアス補正部140は、S101で取得された角速度値からバイアス値を減算することで較正された角速度値を算出し、不図示のアプリケーションまたはプラットフォームに出力する。
【0044】
以上説明したとおり第1実施形態によれば、慣性センサ200により得られる角速度値に基づいてバイアス値を適応的/自動的に決定することが出来、慣性センサ200の較正をより好適に実現することが出来る。特に、角速度値の差分の合成成分Δωに関する分布の尖度を指標値として用いることで、好適に静止状態であるか否かの判定を行うことが可能となる。
【0045】
(第2実施形態)
第2実施形態では、慣性センサの各回転軸における角速度差分の度数分布の歪度に基づいて静止状態を判定し、当該慣性センサのバイアス補正を行う形態について説明する。なお、装置構成については第1実施形態と同様であるため説明は省略する。
【0046】
<装置の動作>
図7は、第2実施形態における較正装置の動作を示すフローチャートである。上述したように、第2実施形態では、3軸(XYZ)のΔ角速度値の分布の歪度に基づき静止状態を判定する形態について説明する。なお、歪度そのものの代わりに、分布の非対称性具合を示す他の指標(歪度を単純化したものなど)を用いてもよい。
【0047】
ステップS111では、角速度取得部110(慣性センサ200)は、3軸の角速度を計測し、計測により得られた3軸の角速度値を時刻情報とともに指標算出部120に出力する。例えば、角速度値の更新間隔を200Hzに設定した場合、これらの角速度値は5msごとに出力される。以下のS111~S115のループは、角速度値が出力されるごと(すなわち5ms)に実行される。
【0048】
ステップS112では、指標算出部120は、S111で取得された角速度情報から、各軸に関して角速度の差分(Δω)を計算する。ここで、iは、x、y、zの各軸に対応する。
【0049】
ステップS113では、指標算出部120は、S112で算出された角速度の差分(Δω)に関して、所与の期間である時間窓(Δt)における分布を導出し歪度を計算する。すなわち、3軸の各軸について歪度を計算する。ここでは、現時刻(角速度情報の最新の時刻)から過去1秒間のデータに基づいて尖度を計算する。
【0050】
図8は、角速度差分の時系列変化および時間窓の例を示す図である。横軸は時間を示し、縦軸は角速度の差分の大きさを示している。ここでは例としてX軸のみに関する時系列変化が示しているが、Y軸およびZ軸に関しても同様に算出される。
【0051】
曲線241は、S112で算出された角速度の差分(Δω)の時間変化を表している。時間窓242は、曲線241に対する時間窓を表しており、ここでは、現時刻(曲線241の右端)から過去1秒間の幅(Δt)の時間区間を表している。指標算出部120は、時間窓242に含まれる複数の差分(Δω)の大きさのヒストグラム分布に基づいて、指標値である歪度を算出する。
【0052】
図9は、時間窓における角速度差分の度数分布および歪度の例を示す図である。図8の時間窓242の期間におけるΔωの度数分布がヒストグラム分布244として示されている。また、ヒストグラム分布244に基づいて算出された歪度の値がテーブル245に示されている。ここでは例としてX軸のみに関する度数分布および歪度を示しているが、Y軸およびZ軸に関しても同様に算出される。
【0053】
指標算出部120は、数式(3)に示す計算によって角速度の差分(Δω)の歪度を計算する。
【0054】
【数3】
【0055】
ここで、
n:ヒストグラムを作るために用いられたΔωの個数、
:ヒストグラムにおけるi番目の区間の出現回数(度数)、
:xの平均、
s:時間窓242に含まれるΔωの標準偏差、
である。
【0056】
算出された歪度の値は、各軸についてバッファに格納される。ここでは直近で求めた5回分の歪度の値をバッファすることを想定する。
【0057】
ステップS114では、指標算出部120は、S113により算出された各軸の歪度を平滑化する。ここでは、直近で求めた5回分の歪度の値の平均を算出する。
【0058】
図11は、平滑化処理に用いられる歪度のリストを示す図である。このリストに格納された歪度の値は前述のバッファに格納された直近で求めたX軸の5回分の歪度の値に相当する。図11に示した5個の歪度の値の例に対しては、指標算出部120は、これら5個の平均である「+0.3」を算出する。
【0059】
ステップS115では、静止判定部130は、S114で算出された3軸の平滑化指標値(歪度)を利用して静止状態であるか否かの判定を行う。ここでは、所定の条件として、指標値の全てが閾値範囲「-0.5」から「+0.5」に含まれるという条件を満たす場合に静止状態であると判定する。すなわち、S114で算出された3軸の平滑化指標値全てが閾値範囲内にある場合に「真(=静止状態である)」と判定しS116に進む。一方、1軸でも閾値範囲外である場合には「偽」と判定しS111に戻る。そのため、X軸に関して平滑化指標値が「+0.3」と算出され、かつY軸・Z軸に関しても閾値範囲内である場合は真と判定されS116に進む。なお、閾値範囲は、例えば判定に求められる精度に応じて適宜設定され得る。
【0060】
ステップS116では、バイアス補正部140は、S111で取得された角速度のバイアス補正を行う。ここでは、バイアス補正部140は、静止判定が真と判定された際の角速度情報を平均した値を、バイアス値として決定する。その後、バイアス補正部140は、S111で取得された角速度値からバイアス値を減算することで較正された角速度値を算出し、不図示のアプリケーションまたはプラットフォームに出力する。
【0061】
以上説明したとおり第2実施形態によれば、慣性センサ200により得られる角速度値に基づいてバイアス値を適応的/自動的に決定することが出来、慣性センサ200の較正をより好適に実現することが出来る。特に、各軸の角速度値の差分に関する分布の歪度を指標値として用いることで、好適に静止状態であるか否かの判定を行うことが可能となる。
【0062】
(第3実施形態)
第3実施形態では、慣性センサ200に含まれる加速度センサから出力をさらに利用する形態について説明する。具体的には、角速度による閾値判定に加え加速度による閾値判定を併用することにより、よりロバストな静止状態の判定を行っている。
【0063】
<装置構成>
図12は、第3実施形態に係る較正装置の機能構成を示すブロック図である。第1実施形態の機能構成(図1)に対して加速度取得部150が追加されている。他の構成要素は第1実施形態と同様であるため説明を省略する。
【0064】
加速度取得部150は、慣性センサ200から出力される加速度値を受信し取得する。慣性センサ200は、角速度を定期的に計測し出力すると共に加速度を定期的に計測し出力する。以下の説明では、慣性センサ200は、角速度に加え3軸(XYZ)の加速度を計測可能に構成されることを想定する。慣性センサ200からの出力値は、加速度を符号化(デジタル数値化)したものである。以下では、説明を簡単にするために、慣性センサ200からの出力値は「m/s」の単位で表される加速度値であるとする。なお、加速度取得部150は、取得した加速度値を即時指標算出部120に与えても良いし、一時的にバッファ(不図示)に溜めてから与えても良い。
【0065】
<装置の動作>
図13は、第3実施形態における較正装置の動作を示すフローチャートである。S102、S103、S106については第1実施形態と同様であるため説明を省略する。なお、以下では、角速度と同様に、加速度に関しても差分の合成成分ΔAの尖度を算出しているが、尖度そのものの代わりに、分布の尖り具合を示す他の指標(尖度を単純化したものなど)を用いてもよい。
【0066】
ステップS201では、角速度取得部110(慣性センサ200)は、3軸の角速度を計測し、計測により得られた3軸の角速度値および3軸の加速度値を時刻情報とともに指標算出部120に出力する。例えば、角速度値および加速度値の更新間隔を200Hzに設定した場合、これらの値は5msごとに出力される。以下のS201~S205のループは、角速度値および加速度値が出力されるごと(すなわち5ms)に実行される。
【0067】
ステップS202では、指標算出部120は、S201で取得された加速度情報から、各軸に関して加速度の差分(ΔA、ΔA、ΔA)を計算する。そして、さらに3軸の差分の合成成分ΔAを計算する。
【0068】
ステップS203では、指標算出部120は、S202で算出された合成成分ΔAに関して、所与の期間である時間窓(Δt)における分布の尖度を計算する。ここでは、現時点(角速度情報の最新の時刻)から過去1秒間のデータに基づいて尖度を計算する。
【0069】
ステップS204では、指標算出部120は、S103により算出された尖度およびS203により算出された尖度をそれぞれ平滑化する。ここでは、角速度および加速度それぞれに関して、直近で求めた5回分の尖度の値の平均を算出する。
【0070】
ステップS205では、静止判定部130は、S204で算出された角速度および加速度それぞれに関する平滑化指標値(尖度)を利用して静止状態であるか否かの判定を行う。第1実施形態のS105と同様に、S204で算出された平滑化指標値が閾値より大きい場合に「真(=静止状態である)」と判定し、閾値以下である場合に「偽」と判定する。角速度および加速度それぞれに関する平滑化指標値において、両方とも真と判定された場合にS106に進む。一方でも偽と判定されればS201に戻る。
【0071】
以上説明したとおり第3実施形態によれば、慣性センサ200により得られる角速度値および加速度値に基づいてバイアス値を適応的/自動的に決定することが出来、慣性センサ200の較正をより好適に実現することが出来る。特に、第1実施形態に比較して、角速度・加速度という性質の異なる2つの測定値を利用することにより、よりロバストに静止状態の判定を行うことが可能となる。
【0072】
(変形例)
慣性センサ200を固定設置する対象は、用途に応じて多岐に渡る。例えば、カメラ、ゲームのコントローラ、車両内部、仮想現実や複合現実を実現する頭部搭載型ディスプレイ(HMD:Head Mounted Display)などがある。例えばHMDに慣性センサ200を固定設置し、当該HMDを装着するユーザの頭部の位置姿勢を慣性センサ200によって計測しつつ、逐次上述の実施形態で説明した処理を実行し、慣性センサ200の較正を実現してもよい。
【0073】
さらに、指標値の算出方法は、上述の実施形態で説明した算出方法に限定されるものではなく、較正装置100の外部から得られる他の情報と合わせて指標値を算出しても良い。例えば、HMDが、角速度取得部110とは別に画像処理・別個のセンサ利用などによって姿勢の計測を行っている場合には、当該計測された姿勢を利用して指標値を算出してもよい。具体的には、計測された姿勢の情報から上述の実施形態で説明したものと同様の処理により指標値を算出し、角速度取得部110から得られる指標値と合算して静止状態の判定を行うことが出来る。
【0074】
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0075】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【0076】
100 較正装置; 110 角速度取得部; 120 指標算出部; 130 静止判定部; 140 バイアス補正部; 150 加速度取得部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13