開発ツール

開発ツール

Motiveソフトウェアで3次元計測したトラッキングデータにネットワーク経由でアクセスするNatNet SDKや、カメラの制御・2DオブジェクトのトラッキングなどMotiveソフトウェアを使用せずに開発するためのCamera SDK、さらにはMotive APIといった開発ツールについて紹介します。

NatNet SDK

Motiveソフトウェアで取得したトラッキングデータ(位置・姿勢データ)をリアルタイムでネットワーク配信するクライアント/サーバ型のSDKです。

参考事例

東京工業大学ではNatNetSDKを活用し、3次元倒立振子の安定化制御を行いました。

SDKの内容

●NatNetライブラリ

C++ネイティブのネットワーク用ライブラリ(ヘッダ・静的ライブラリ(.lib)・動的ライブラリ(.lib / .dll))

●NatNetアセンブリ

.NET用アセンブリ(NatNetML.dll)を.Net対応クライアントへ組み込めます。

●サンプルアプリケーション

コードに素早く組み込むことのできるサンプルプロジェクトと実行可能なファイルが用意されています。

●MatNet interface to MATLAB

マーカー・剛体・スケルトンをライブストリーミングできるように.NET Interfaceとサンプルプログラ(MatNet.m)が用意されています。 MatNetサンプルはMATLABモジュールを必要としないMATLABのコア部から直接動作します。

APIの構造

●NatNetクライアント

NatNetサーバー(Motive)と通信するためのクラス。

●NatNetデータタイプ

NatNetパケットにはカプセル化された構造データが入っています。

●NatNet アセンブリ

.NETコンポーネントから呼び出すことができるマネージド(.NET)のクラスライブラリ。NatNetアセンブリは本来のNatNetライブラリをラップし、.NET互換環境(VB.NET、C#、MatLab等)で使用するためにNatNetClientおよびNatNetデータタイプを提供します。

データタイプ

●マーカーセットデータ

識別されたマーカーとその座標(x,y,z)。

●剛体データ

ユニークなID、座標、回転角が入ったデータ、またその剛体を定義する際に使用された識別されたマーカーデータ。

●スケルトンデータ

階層構造を持った剛体の集合体。

●フォースプレートデータ

力とモーメントのデータの再ブロードキャスト。

●デバイスデータ

DAQデバイスなどのアナログデバイスからデータを再ブロードキャスト。

Camera SDK

Camera SDKはオリジナルのトラッキングシステムやビジョンアプリケーションを作成するためにOptiTrackカメラのコントロール、
2次元計測をユーザー自身が行える無償の開発パッケージです。
SDKにはフルカメラコントロール、2Dオブジェクトデータへのアクセス、カメラの同期、Vector Trackingが含まれます。

参考事例

株式会社タクラム・デザイン・エンジニアリングでは、Camera SDKとOptiTrackカメラ一台で自身の影が動き出すエンターテインメントを創りました。

特徴・機能

●C++に対応

C++インターフェースで様々なソフトウェア言語やシステムに組み込み可能です。

●カメラの制御

Camera SDKは以下のようなカメラ機能、メソッド、コールバック、プロパティにアクセスできます。

  • ビデオモード(オブジェクト、セグメント、プレシジョン、ローグレースケール、モーションJPG)
  • フレームレート(フレームデシメーション調整)
  • 露出(自動露出調整)
  • 自動ゲイン調整
  • ハードウェアマスク
  • イメージサイズウィンドウ調整
  • しきい値
  • イルミネーション
  • フィルタースウィッチャー
  • ハイパワーモード(Flex 3/Flex 13のみ)
  • LEDステータス調整

●オブジェクトデータ

カメラビューでとらえられる最大512個までの2Dオブジェクトはトラッキングあるいはフィルタリングするために以下のような情報として取り出すことが可能です。

  • 位置(加重X,Y座標)
  • エリア
  • 幅・高さ
  • 真円率
  • レンズの歪みによる影響を除去する機能

●6自由度のベクタートラッキング

Camera SDKには基本的なVector Tracking*が含まれ、メーカーが提供するTrackClipという特定のマーカー配列をもつ剛体を使用し、6自由度を取得することができます。

*Vector Trackingは3つのマーカーを使用して1台のカメラで6自由度のトラッキングを行うことができる独自の技術です。

●複数カメラの同期

シャッターとフレームの露出を同時に行うことで複数カメラを同期させることができます。各カメラからそれぞれのフレームを取得する代わりに、同期したフレームを取得し、カメラが正しく同期されていることを確認するためにグループを作成します。

●ソースコード付きサンプルアプリケーション

サンプルアプリケーションにはソースコードとドキュメントが付属しており、最良の実践モデルとしてお役立ていただけます。サンプルアプリケーションは以下の通りです。

  • カメラスタートアップとリスティング
  • フレーム同期
  • イメージプロセッシング
  • MJPEGビューワ
  • グレースケールイメージのプロセス
  • 6自由度Vector Tracking

Motive API

Motive APIではC / C ++を使用してMotiveの様々な機能にアクセスすることが可能です。

参考事例

アクセスできること:

  • カメラの制御
  • フレームの制御
  • 点群の三次元化エンジンの制御
  • 三次元化されたマーカーデータの取得と使用
  • 剛体のトラッキング
  • クエリ結果の提供
  • ネットワーク経由でのデータストリーミング

アクセスできないこと:

  • 詳細なハードウェア制御(カスタマイズされたハードウェアの同期など)
  • データ収録・再生
  • 外部機器からの制御(フォースプレートやNI-DAQなど)
  • スケルトンの機能

要件:

  • Windowsのみ
  • 有効なMotiveのライセンス+USBハードウェアキー

モーションキャプチャー実機デモ

ご検討中のカメラシステムのキャプチャー精度や範囲を、弊社スタジオにて無償でご確認いただけます。
また、最新のソフトウェアMotive3.0のデモも承っています。

ダウンロード

モーションキャプチャーシステムのソフト・プラグイン・総合カタログ・事例をダウンロード

事例・動画集

事例・動画集

サポート

カメラ、ソフトウェアからシステム、ライセンス関連など、よくある質問

who we are

(株)スパイス
モーションキャプチャー事業部のご紹介

製品に関するご質問や実機デモのご依頼