LoginSignup
1
1

More than 1 year has passed since last update.

HTC Viveでトラッカーを超高精度トラッキング

Last updated at Posted at 2022-03-19

はじめに

  • HTC viveを使って誤差数mm単位でトラッカーをトラッキングする手法を紹介します。
  • ロボットの位置推定など、実空間上の座標を扱う分野で活躍できると思います。

必要な機材

  • HTC VIVE Tracker (2.0) もしくは (3.0)
  • HTC Base Station (1.0) もしくは (2.0) を2つ
  • Windows PC 1台 (普通のノートPCでも動く)
  • 三脚(ベースステーションの設置用、最後に後述してます)

必要なソフト

  • SteamVR(Steamから検索してインストールする)
  • Python3が動く環境

手順

機材のセットアップ

  • ベースステーション2台を設置
  • SteamからSteamVRをインストール

SteamVRの設定を変更

  • 以下の設定ファイルを開く
C:\Program Files (x86)\Steam\steamapps\common\SteamVR\resources\settings\default.vrsettings
  • requireHmd を false に、activateMultipleDriversをtrueにして保存する。

ドングルをPCに接続

  • トラッカーに同梱されていたUSBドングルをWindows PCに接続し、SteamVRを再起動する。

トラッカーの認識

  • トラッカーの電源を入れ、2つのベースステーションから見通しが良い位置に設置する。
  • 認識に成功するとSteamVRのアプリ内のトラッカーとベースステーションアイコンが青くなる。

triad_openvrのダウンロード

  • 作成者に感謝してgithubからtriad_openvrをダウンロードして解凍する。

実行してみる

  • ダウンロードしたフォルダ内のtracker_test.pyを実行してみる。
  • openvrが入っていない場合はエラーが出るのでインストールする。pip install openvr
  • 成功するとトラッカーの6自由度が表示される。
  • このコードをヒントにcsv等に書き込めるようにプログラムを書き換えることもできる。

補足

  • 座標の原点はどちらかのベースステーションとなる
  • サンプリングレートは最大250fps?要調査が必要
  • 測定範囲は7m×7mあたりが限界
  • 誤差はxとy軸で0.3cm程度、y軸で1cm程度
  • 最低1台のベースステーションから見えていれば6自由度が取得できる
  • 需要があれば書き足していきます

三脚について

広範囲で見通し内となるようにするため、ベースステーションは可能な限り高い位置から見下ろす形にすると良いらしい。そこで高い三脚が役に立つ。しかし、調べてみると分かるが2mを超えるような三脚は非常に高価である。安価かつ2mを超えるような三脚を調べ尽くした結果、このようなものを見つけた。最大231cmまで伸ばせられる上に、使い勝手が良かったのでオススメである。

参考にした記事・文献

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1