BlackTrax 統合のセットアップ
BlackTrax (BT) は CAST から提供されるビジョンベースのトラッキングシステムで、オブジェクトと人の両方をトラッキングできます。BT からのトラッキングデータは Disguise ソフトウェアに入力し、Disguise ビジュアライザー内のオブジェクトや Prop にマッピングできます。
BT システムは、ステージリグに配置されたカメラのアレイを使って、タレントや Prop に取り付けられた IR マーカー(小型 LED)を観察します。これらのアクティブマーカーは、トラス/ステージに取り付けられたカメラのアレイによって観察されると、Disguise に送られるリジッドボディ情報を生成します。マーカーが 2 台のカメラで観察できる限り、正確な位置特定が可能です。
マーカーは小型の BT Beacon ユニット(通常はタレントのベルトに取り付けられる)に取り付けられます。このユニットは IR マーカーに電源と制御を提供します。
BlackTrax は 2 つの方法で統合できます:
- Actor/タレントのトラッキング
- Prop/Screen のトラッキング(可動の舞台美術用)
BlackTrax サーバーには、BTWYG、BlackTrax、Motive など、BT システムの構成に必要なソフトウェアプログラムが含まれます。
⚠️ 以下に概説するワークフローは古い可能性がある点にご注意ください。このセクションは見直し中で、新しいワークフローが評価・確認され次第、更新情報を追加します。
BlackTrax の使用に関する追加情報とトレーニングについては、CAST のウェブサイトをご覧ください。
Disguise プロジェクトのセットアップ
Section titled “Disguise プロジェクトのセットアップ”キャリブレーション時に発生しうる問題を避けるため、ビジュアライザーは実世界の環境にできるだけ近づけてセットアップする必要があります。次の手順に従って Designer でプロジェクトをセットアップします。
1. プロジェクトを作成してトラッキングを有効にする
Section titled “1. プロジェクトを作成してトラッキングを有効にする”- プロジェクトを作成します。
- d3 プロジェクトで、プロジェクトの internal フォルダーを開きます。
- dlls を開き、dlls.txt を開きます。
- tracking.dll を追加し、テキストファイルを保存します。
2. プロジェクトを開いてトラッキングポイントを追加する
Section titled “2. プロジェクトを開いてトラッキングポイントを追加する”- プロジェクトを開き、Stage > Camera > Visualiser camera > Visible を右クリックしてビジュアライザーカメラを開きます。
- visibility タブを開き、tracking point と tracking labels を表示します。
3. プロジェクターのプロパティを設定する
Section titled “3. プロジェクターのプロパティを設定する”解像度、レンズ、位置などのプロジェクターのプロパティを設定します。また、フィードの解像度も設定します。正しく設定されていないと、キャリブレーションプロセスに影響することがあります。 実世界のプロジェクターには、ワーピング、キーストーン、レンズシフト、ズームがあってはなりません。
4. 視覚的な参照を追加する
Section titled “4. 視覚的な参照を追加する”ビジュアライザー内のステージの原点(0,0,0)に、既知の寸法のメッシュ(たとえば長方形のメッシュ)を追加します。このメッシュは、オブジェクトの向きの不一致を評価する視覚的な参照として機能し、後でキャリブレーション手順の基準点として役立ちます。
BlackTrax システムをセットアップして構成した後、次のステップはプロジェクト内に BlackTrax デバイスを登録することです。正確な位置トラッキングのためにデバイスを統合して整合させるには、次の手順に従います:
-
BlackTrax デバイスを作成する ダッシュボードで、デバイスリスト内を右クリックして Add Automation Device を選択します。利用可能なオプションから BlackTrax を選びます。
-
ドライバーを割り当てる デバイスが作成されると、そのエディターウィンドウが自動的に開きます。Driver タブに移動して BlackTraxDriver を割り当てます。 注: 正常に作成されると、暫定的な BlackTrax トラッキングデータがシステムにストリーミングされ始めます。これは、ビーコンの文字列位置に対応する緑の点としてビジュアライザーに視覚的に表されます。
-
登録エリアを準備する BlackTrax と Disguise の座標系を整合させるため、環境登録プロセスを開始します:
- 先ほど作成した参照メッシュと同じ寸法を使って、ステージを中心とした 90 度の角度をマークします。
- センターステージ(CS)ポイントと、直角の両端点(X 方向と Z 方向を定義)にトラッキングストリンガーを配置します。
注: 物理的なマーキングが、仮想の基準メッシュの寸法と向きに正確に一致することを確認してください。
-
登録ツールを開く 既存の BlackTrax デバイスを右クリックしてエディターを開きます。Registration タブに移動します。
-
参照ポイントを配置する カーソルが配置ツールに変わり、登録ポイントを定義する準備ができたことを示します。基準メッシュに 3 つの参照ポイントをドロップします:
- センターステージ(CS)
- 正の X 方向
- 正の Z 方向
-
仮想と実世界のポイントをリンクする 登録 UI を使って、ドロップした各参照ポイントを、対応するライブの BlackTrax ビーコン位置にリンクします。3 つすべてのポイントを正常に登録したら、最終処理に進みます。
-
登録を最終処理する 登録 UI で Finalise フィールドを選択します。このステップは計算された変換を適用し、仮想空間を実世界の BlackTrax 座標系と整合させます。
完了すると、GUI に整合された参照ポイントとトラッキングポイントが表示され、キャリブレーションが成功したことを確認できます。
注: システムは BlackTrax から 100 Hz の周波数で位置データを受信し、リアルタイムのトラッキング精度を可能にします。
注: BT システムから 100Hz のレートで位置情報を受信します。
OSC のセットアップ
Section titled “OSC のセットアップ”この時点で、プロジェクトの基本的なセットアップはすべて完了します。次のセクションでは、必要な OSC 外部ハードウェアの統合方法を示します。その理由は、これが Disguise でキャリブレーションプロセスを制御する最も簡単な方法だからです(なお、古いバージョンのソフトウェアでは、システムをキャリブレーションする唯一の方法は OSC インターフェースです)。OSC をセットアップするには、次の手順に従います:
-
ダッシュボードで「device」を右クリックして Disguise で OSC デバイスを作成します。開くとプラスとマイナスのフィールドがあり、これを使ってプロジェクトにデバイスを追加・削除します。
-
+ を選択すると、よく使われるデバイスのリストから選択できます。このリストに OSC1 というデバイスがあります。これを選択してプロジェクトに追加します。
-
追加したら、デバイスのすべてのフィールドが正しく入力されていることを確認します(以下の表を参考にしてください):
OSC ハードウェア Disguise OSC Host d3net ポートアドレス Port (Outgoing) Port receive Port (incoming) Port send Local IP address OSC ハードウェア IP -
TouchOSC エディター で OSC レイアウトをハードウェアに同期します。これで、OSC コントローラーで何かを変更すると、ダッシュボードの OSC デバイスインジケーターが緑に光り、信号を受信していることを示します。
TouchOSC layout explained
Section titled “TouchOSC layout explained”BlackTrax ベースのプロジェクターキャリブレーション用の TouchOSC レイアウトは、Resources ページの OSC セクション からダウンロードできます。
- Start: キャリブレーションプロセスを開始します。
- Cancel: 最後に配置したポイントをキャンセルしてやり直せるようにします。
- Done: キャリブレーションプロセスを終了します。
- Skip: プロジェクターが今回ポイントをキャリブレーションしない場合(たとえばストリンガーの現在位置をカバーしていない場合など)に使います。単一プロジェクターのフラスタムの端をキャリブレーションするときに使われます。
- Trackpad: クロスヘアの素早い大まかな配置に使います。
- Directional key クリックごとの微調整や、単一軸でのクロスヘアの移動に使います。ボタンを長く押すほどクロスヘアが速く移動します。
- Rotate left & right: クロスヘアの移動方向を、キャリブレーションを行うユーザーの向きに合わせるために使います。
- Previous & Next: 操作モード間を移動するために使います。
プロジェクターキャリブレーション
Section titled “プロジェクターキャリブレーション”- BT デバイスを開き、エディターの下部で「BtProjectorCalibrator」というフィールドを選択すると、BT キャリブレーションエディターが開きます。
- キャリブレーションに使う OSC デバイスを割り当てます。(注: 使わない場合でもこのデバイスを設定してください。)
- トラッキングポイントを割り当てます。これはキャリブレーションプロセスに使われる文字列です。
- BT システムで使うプロジェクターを割り当てます。
- 指定のレイアウトで touch OSC を開きます。(または「Remote Calibrator」タブにある GUI インターフェース。)
- OSC で start を押してプロセスを開始します(出力にテストパターンが点滅して全出力サイズを示します。通常はプロジェクターのワイヤフレームの色です)。
- ストリンガーをプロジェクターの出力内に配置します(たとえば色付き出力の右下)。
- OSC アプリで next を押すと、ラインアップグリッドが起動します。
- OSC エディターでクロスヘアを動かして、プロジェクター出力内のクロスヘアを動かします。これを文字列に合わせて空間をキャリブレーションします。
- 正しい位置になったら OSC アプリで next をクリックします。
- ソフトウェアは 2 番目のプロジェクターのラインアップグリッドとオーバーラップを表示します。ポイントが次のプロジェクターの視野内にある場合は、文字列を参照ポイントとして使います。合わせたら next を押します。
- 手順 7 から 11 を繰り返し、プロジェクターごとに少なくとも 6 つの参照ポイントを作成します。
- GUI に複数のポイントが表示されます。これらのポイントはキャリブレーションポイントを表します。
- ポイントの配置が終わったら、OSC アプリで Done を押します。
注: GUI インターフェースも同じプロセスで動作するため、同じ手順を使います。
注: 最良のキャリブレーションを得るため、異なる高さと奥行きでポイントをキャリブレーションします。システムが処理する情報が多いほど、キャリブレーションが良くなります。
これでプロジェクターの値がグレーアウトされて表示され、空間がキャリブレーションされ、ビデオがオブジェクトをトラッキングできるようになります。
一部のポイントは、QuickCal で不適切にキャリブレーションされたポイントがラインアップを台無しにするのと同じように、キャリブレーションに悪影響を与えることがあります。これは次の手順で確認できます:
- BlackTrax プロセスに使うプロジェクターの 1 つのエディターを開きます。
- プロジェクターキャリブレーションを開きます。
- キャリブレーションスコアを表示します。スコアが悪い場合は、ポイントをミュートしてキャリブレーション結果を改善してみます。
リジッドボディ
Section titled “リジッドボディ”次のステップは、オブジェクトをトラッキングできるよう、オブジェクトを文字列に割り当てることです。このプロセスを開始するには、次の手順に従います:
- デバイスリストでデバイスを右クリックして BlackTrax デバイスを開くと、デバイスエディターが開きます。
- 「Rigid Body」タブを開くと、プラスとマイナスのフィールドが表示され、これを使ってオブジェクトを追加・削除します。
- リジッドボディを作成するとエディターが開きます。これには次ページに示すフィールドが含まれます:
- 目的のオブジェクトを選択します。
- カーソルがポイントを表し、ポイントをドロップする準備ができていることを示します。オブジェクトに 4 つの参照ポイントをドロップします。これは静的な参照ポイントとして使われます。
- points タブで、トラッキングしたい数だけフィールドを追加します。
- 静的ポイントを設定し、使われる BlackTrax ビーコンとなるトラッキングポイントを設定します。
- 「calibrate: snap to fixed point」フィールドを選択します。
- これで実世界のオブジェクトが GUI 内のオブジェクトの向きと位置に一致するはずです。実世界のオブジェクトが動くと、ビジュアライズされたオブジェクトが追従するはずです。
- さまざまなしきい値を編集して、動きをより滑らかにします。
Object: RigidBody にしたいオブジェクトを選択します。
Engaged: RigidBody のトラッキングを有効または無効にします。
Status: Not Calibrated は、オブジェクトがトラッキングされないことを意味します。手動で calibrated に設定して、ボディのオブジェクトへのトラッキングを有効にできます。そうすると、選択したオブジェクトが、その固定ポイントを選択したトラッキングポイントに合わせるようにジャンプします。
次に、Calibrated オプションは、Points で説明する Calibrate ボタンを押した結果になります。
Skip: プロジェクターが今回ポイントをキャリブレーションしない場合(たとえばストリンガーの現在位置をカバーしていない場合など)に使います。単一プロジェクターのフラスタムの端をキャリブレーションするときに使われます。
Iterations: RigidBody ソルバーは反復的で、つまり n 回の反復(最大反復回数はこの数値で定義)の間、RigidBody が座標系内でどこにあるべきかを最もよく表す位置回転行列の解決を試みます。
Solver mode RigidBody または Actor。
RigidBody に設定すると、X、Y、Z の位置と回転をトラッキングできます。
Actor に設定すると、X、Y、Z の位置トラッキングは可能ですが、回転はできません。どちらのソルバーモードも技術的には 1 つ以上の見えるストリンガーからトラッキングできますが、ほとんどの場合、リジッドボディにはこれは良い考えではありません。RigidBody ソルバーの場合、回転を計算するには複数のストリンガーが見える必要があります。Actor ソルバーは、入力位置と参照位置を平均し、更新ごとに差を計算します。Motive 設定のリフレッシュレートに従って、100Hz で更新します。
Movement Threshold: 非ゼロ値に設定すると、Dynamic Blend の再計算を防ぎます。これは、ほぼ静的なオブジェクトでの静的な振動が問題になるときに使います。
Rotation Threshold: 非ゼロ値に設定すると、Dynamic Blend の再計算を防ぎます。
これは、ほぼ静的なオブジェクトでの静的な振動が問題になるときに使います。
Points: Points は、リジッドボディモデルの頂点をクリックして配置した固定ポイントをいくつか選択し、ストリンガーに結び付ける場所です。正しいポイントを選択し、必要に応じてオフセットを設定するだけです。
Tweak: Tweak は、リジッドボディへの投影をより正確に整合させるために使います。投影が合うまで XYZ 位置と回転のオフセットを使います。なお、結果によっては、代わりにモデルを再スケーリングした方が良い場合があります。
Constraints: 移動を制限したいすべての軸に設定します。1 でオン、0 でオフです。
Tracking lost: トラッキングが失われたときの設定で、トラッキングデータが失われた場合に 3 種類の動作を選べます:
Do nothing: 何もしません。
Reset は、トラッキングデータが失われた場合にリジッドボディがジャンプする位置を定義できます。
Follow sequencing は、冗長性の一形態として、タイムライン上にプログラムされた任意の ScreenPositionModule に追従することを意味します。