HTC Viveでトラッカーを超高精度トラッキング
はじめに
- 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自由度が取得できる
- 需要があれば書き足していきます
三脚について
- 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自由度が取得できる
- 需要があれば書き足していきます
三脚について
機材のセットアップ
- ベースステーション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まで伸ばせられる上に、使い勝手が良かったのでオススメである。
参考にした記事・文献
Author And Source
この問題について(HTC Viveでトラッカーを超高精度トラッキング), 我々は、より多くの情報をここで見つけました https://qiita.com/f_world/items/16591c093536e194b534著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .