LjStudio — キャリブレーションの考え方と手順

器具の「ずれ」の種類・なぜ 1 点合わせでは足りないか・現場の流れ・模擬での確かめ方 / 最終更新 2026-10-24 07:41

LjStudio は Martin LightJockey 2.7 が書いたデータを読み書きする独自実装です。 Martin 社の製品ではなく、同社とは関係がありません。取り込んだ原本には一切書き込みません。 画面の絵はすべて LjStudio 自身の画面で、試験用のデータで撮ったものです(冒頭のイメージ図だけは AI 生成のコンセプト画です)。

0. 動画で見る

★動いているところを映像で見る:「LjStudio キャリブレーション——ずれの種類と直し方(斜めに吊った器具を模擬で追う・4 分 54 秒)」 https://youtu.be/pUBuDA-dn5E

1. 読み方と、「ずれ」とは何か(器具 1 台に 9 つ)

この頁の読み方

  1. 実機(本物のムービング)での校正は、まだ一度も確認していません。「実機で確認済み」と読める箇所は、この頁にはありません。傾きの符号(正のピッチがどちらへ倒れるか)も、実機では未確認です。
  2. 出てくる数字(「傾き 1.5° で顔の高さ 24 cm 外れる」など)は、合成データの数値実験です。計算機の中で真の姿勢を決めて観測を作り、解き直した結果で、現場の実測ではありません。
  3. 「合わなかったらその場で合わせる」は間違いではありません。ただし校正の代わりにはなりません。何が直って何が直らないかを、ずれの種類ごとに書きます。

「ずれ」とは何か

ムービング 1 台が「ここを狙え」に応えるとき、卓や LjStudio は次の前提で Pan/Tilt を計算しています。

現場ではこの前提のどれもが少しずつ崩れます。崩れ方を数えると、次の 9 つになります。図の色分けは、LjStudio が解く物(シアン)と解かない物(灰色)の区別です。

器具 1 台のずれ 9 つ。シアン=LjStudio が解くもの、灰色=解かないもの(押すと原寸・もう一度押すと戻る)

数え方の注意: 参照用の別の解き手(CalibTrack)の誤差モデルは 10 項目(位置 3・ロール/ピッチ/ヨー・pan0/tilt0・kPan/kTilt)ですが、ヨーと pan0 は光だけからは見分けられないため、1 つにまとめて実質 9 つです(見分けられない理由は 3 章)。

位置のずれ(X・Y・Z)

向きのずれ——ヨー(水平に回る向き)

向きのずれ——ピッチ・ロール(傾き)

Pan/Tilt の機械ゼロ(pan0・tilt0)

可動角の係数(kPan・kTilt)

ずれLjStudio備考
位置 X/Y/Z解く位置を信じるなら固定にもできる
ヨー解くpan0 を含めて 1 つ
ピッチ・ロール解く(10-23〜)符号は実機未確認
pan0ヨーに吸収別には持たない
tilt0解けるが反映先が無い置き場を作るのは今後
kPan・kTilt解かない.spt/GDTF を信じる

下の 2 枚は、このあと 7 章で使う「模擬」の絵です。卓が信じている姿勢では光が目印に乗っている(傾き無し)のに、現実の器具が傾いていると光は外れる、という違いを並べます。どちらも Visualizer の絵で、実機ではありません。

模擬(Visualizer の絵で、実機ではない): 現実の器具を、分かりやすさのため 6°/−5° と大きめに傾けた例。卓は P1 を狙っているのに、光は約 2.1 m 外れる(押すと原寸・もう一度押すと戻る)
模擬(Visualizer の絵): 傾き無し(卓が信じている姿勢=真の姿勢)。校正シーンの白い光が P1 に乗っている(押すと原寸・もう一度押すと戻る)

▲ 先頭へ

2. なぜ「1 点で合わせる」では足りないか

2-1. 1 点合わせで直るもの・直らないもの

「ずれていたら、その場でスティックを寄せて合わせる」を、1 点オフセットと呼びます(grandMA3 の Patch の Offset Pan/Tilt と同じ考え方)。これは Pan と Tilt に一定の足し算をするだけです。

Pan を回したときの床の落ち先。水平なら円、Pan 軸が傾くと偏った輪になる(押すと原寸・もう一度押すと戻る)

Pan 軸が傾いていると、Pan を 1 周させたときの床の落ち先は、器具の真下を中心とした円ではなく、ずれた中心の円になります。1 点で合わせると、その点だけ合って、少し Pan を回した別の方向では傾きぶんだけ外れます。

下の絵は模擬(Visualizer の絵で、実機ではない)です。傾きを 2°/−1.5° にした現実の器具で、卓は目印を狙っているのに光が 0.60 m 外れています。

模擬(Visualizer の絵で、実機ではない): 現実の器具を 2°/−1.5° 傾けた例。卓は目印 P1 を狙っているのに、光は 0.60 m 外れる(押すと原寸・もう一度押すと戻る)

2-2. 数字(合成データの数値実験)

数値実験その 1(器具 6 m・床 4 点・目の合わせ誤差 0.3°・300 回平均。顔の高さ 1.6 m の平均のずれと、95% 点):

取付の傾き(前後/左右)傾きを解かない(位置 3+ヨー)傾きも解く(位置 3+ヨー・ピッチ・ロール)
0°/0°4.9 cm(95%: 11.7)7.9 cm(21.9)
0.5°/−0.5°7.8 cm(19.1)8.0 cm(22.3)
1.5°/−2.0°24.2 cm(55.1)8.5 cm(23.1)
3.0°/−3.0°38.9 cm(83.7)7.8 cm(21.4)

数値実験その 2(LjStudio の計算部で再現した結果。σ=0.3°・200 試行・5 点・顔の高さ 1.6 m の着地のずれの平均):

傾き従来の 4 未知数(yaw)6 自由度(full)
0°3.0 cm3.6 cm
1.5°13.9 cm3.6 cm
3°22.1 cm3.5 cm

読み方: 水平ならわずかに従来が良く、傾きが 1.5° を超えると 6 自由度が大きく勝ちます。2 つの実験は条件(点の数・試行回数)が違うので、数字を直接並べて比べないでください。

アプリでの通し(合成の観測): 器具 1 台にピッチ 2°・ロール −1.5° を付けて 5 点を記録し、解いた結果の原文です。観測は計算機内の合成で、本物の器具ではありません。

calib solve 1 mode=yaw
  #1 悪い(最大残差21.2cm・5点・mode=yaw) (-6.8,6.5,3.0)/294°/傾き0.0°,0.0°→(-6.7,6.9,2.7)/294°/傾き0.0°,0.0°

calib solve 1 mode=full verify=P5
  #1 良い(最大残差0.7cm・4点・mode=full) 検証点P5:0.9cm (-6.8,6.5,3.0)/294°/傾き0.0°,0.0°→(-6.7,6.5,3.0)/294°/傾き2.1°,-1.5°

calib apply 1 mode=full
  1 台へ反映(控え: LjStudio.rig.json.bak): #1 良い(最大残差0.9cm・5点・mode=full) (-6.8,6.5,3.0)/294°/傾き0.0°,0.0°→(-6.7,6.5,3.0)/294°/傾き2.0°,-1.5°

2-3. 「合わなかったらそこで合わせる」の位置づけ

整理すると、次の分担です。

道具何を直すかいつ使うか
水準器・シム・クランプの締め直し傾きの根本吊り込み時(1 台 1〜2 分)
6 自由度の校正位置・ヨー・傾き(全方向で合う)吊り込み後に 1 回
1 点オフセット小さな一定のずれ開演前の確認で、ずれた器具だけ
同じ 4 点で、1 点合わせのオフセットと 6 自由度を解く場合の違い(押すと原寸・もう一度押すと戻る)

同じ 4 点で、1 点オフセットは合わせた点の近くだけ合い、6 自由度は全方向で合う、という比較図です。

▲ 先頭へ

3. 光からは見分けられない組み合わせ

校正は「光の向き」だけを観測します。そのため、光の向きが同じ変化になるずれは、区別できません。

3-1. ヨーと pan0

ヨー(取り付けの回転)と pan0(Pan のゼロのずれ)は光だけでは見分けられない(押すと原寸・もう一度押すと戻る)

3-2. tilt0 と高さ(またはピッチ)

tilt0 と吊り高さ Y は、真下に近い点だけだと混ざる。遠い点を混ぜると分かれる(押すと原寸・もう一度押すと戻る)

▲ 先頭へ

4. 何点要るか・どこに置くか

マーカーの置き方。良い例(4〜5 点・2 m 以上・一直線にしない・高さ違い・検証点)と悪い例(押すと原寸・もう一度押すと戻る)

4-1. 点の数

1 点を狙うごとに、Pan と Tilt の 2 つの値が得られます。

点数解けるもの注意
3 点位置+ヨー(4 未知数)。吊り位置を信じるなら向き 3 つだけ(fixedpos)答え合わせ(余り)が無い
4 点以上位置+ヨー+傾き(6 未知数)3 点では傾きまで解かない。LjStudio は 4 点以上で自動的に傾きまで解く(mode=auto)
5 点(推奨)同上+検証点を 1 つ残せる検証点=計算に使わず答え合わせだけに回す点
8〜9 点CalibTrack の 9 未知数(tilt0・kPan・kTilt まで)理由は 4-3

3 点未満は、LjStudio は「断り」にして反映しません。

4-2. 置き方

下はマーカー表の例です(P1〜P5。床の点は Y=0)。

Rig setup 窓のマーカー表(P1〜P5。床の点は Y=0)。これは模擬(Visualizer)で使った表で、実機の会場ではない(押すと原寸・もう一度押すと戻る)

4-3. CalibTrack の 9 未知数が 8〜9 点を要する理由

4-4. 目の合わせ誤差

▲ 先頭へ

5. 今の LjStudio でできること(2026-10-23 時点)

LjStudio の取扱説明書(「校正シーン」「校正から位置を計算する」)に沿った手順です。以下の絵は、すべて模擬(Visualizer の絵)で、実機ではありません。

5-1. 準備: マーカーを置く・器具の姿勢を入れる

Rig setup の校正マーカー表に、会場で実測した点を入れます(名前は 12 文字まで・空白なし・床は Y=0)。AI からは marker add P1 -3 0 2。器具の姿勢(位置・ヨー・ピッチ°・ロール°)も同じ窓の欄に入ります。

Rig setup 窓の器具の姿勢の欄(位置・ヨー・ピッチ°・ロール°)。模擬の画面(押すと原寸・もう一度押すと戻る)

5-2. 校正シーンに入る

入り方は 4 つあり、どれでも同じ状態になります。

入ると、ムービング全台がマーカー用のビームサイズで点きます。調べる 1 台だけが白く明るい細い光(床の光の直径 0.5 m)になり、ほかの器具は暗い色変化の光になります。

5-3. 寄せる

調べる器具の白い光が、床の目印に乗っているかを見ます。ずれていたら、左スティックで寄せます(LT を押しながらでゆっくり・R3 で元へ戻す)。AI からは calscene nudge <dX> <dZ>(m。X は右が+、Z は客席側が+)。下の絵は、調べる器具 #1 の白い光が P1 から外れている状態です(画面の帯は「ずれ なし」=まだ寄せていない)。

校正シーン(模擬): 調べる器具 #1 の白い光が P1 から外れている。帯は「ずれ なし」=まだ寄せていない(押すと原寸・もう一度押すと戻る)

5-4. 記録する

A を押す(AI からは calscene ok、または calib mark P1 3)と、その器具の Pan/Tilt(寄せたあとの値)が LjStudio.calib.json に記録され、次の器具へ進みます。下の絵は寄せたあとで、帯に「ずれ 左0.24 m・手前0.49 m」と出ています(寄せた分の表示)。光が P1 に乗っているので、ここで記録します。

校正シーン(模擬): 寄せたあと(帯に「ずれ 左0.24 m・手前0.49 m」)。光が P1 に乗った=ここで記録する(押すと原寸・もう一度押すと戻る)

5-5. 解く

Rig setup の[校正から計算…]、または calib solve [器具NO] [mode=…] [verify=P5] です(calib solve は書かない下見です)。mode は次の 5 つです。

mode解く物要る点
auto(既定)別々のマーカーが 4 点以上なら full、3 点なら yaw3〜
yaw位置+ヨー(傾きは 0 と仮定)3
full位置+ヨー+傾き(6)4 以上(5 推奨)
fixedpos位置は動かさず向きだけ3
full+tilt0full + Tilt のゼロ(7)。tilt0 は rig.json に書かず確認用4 以上(5 推奨)

解いた結果の原文(2 章の回と同じ)です。mode=yaw は悪く、mode=full verify=P5 は良く、反映すると傾きが 2.0°/−1.5° になります。

calib solve 1 mode=yaw
  #1 悪い(最大残差21.2cm・5点・mode=yaw) (-6.8,6.5,3.0)/294°/傾き0.0°,0.0°→(-6.7,6.9,2.7)/294°/傾き0.0°,0.0°

calib solve 1 mode=full verify=P5
  #1 良い(最大残差0.7cm・4点・mode=full) 検証点P5:0.9cm (-6.8,6.5,3.0)/294°/傾き0.0°,0.0°→(-6.7,6.5,3.0)/294°/傾き2.1°,-1.5°

calib apply 1 mode=full
  1 台へ反映(控え: LjStudio.rig.json.bak): #1 良い(最大残差0.9cm・5点・mode=full) (-6.8,6.5,3.0)/294°/傾き0.0°,0.0°→(-6.7,6.5,3.0)/294°/傾き2.0°,-1.5°

5-6. 判定の読み方

結果の表には、器具ごとに使ったマーカー・残差・判定・解き方(mode)・旧→新の位置/ヨー/ピッチ/ロール・検証点の残差が並びます。

断り: 次の場合は反映できません(中途半端な数字を黙って書かないため)。

  1. 点が 3 つに足りない
  2. マーカーどうしが近すぎる(2 m 未満)
  3. ほぼ一直線
  4. 計算が収束しない(発散)
  5. 数値が壊れた(NaN)

5-7. 反映・取り消し

チェックを入れた器具だけを[反映](AI から calib apply)。書く前に LjStudio.rig.json.bak に控えを残し、[元に戻す](calib undo)で直前の反映を取り消せます(控えは 1 世代だけ)。書き先は LjStudio.rig.json の 1 本だけで、LightJockey の原本には書きません。

5-8. 確かめる

追尾を入れて、BACK+十字キーでマーカー(P1〜P4)へ跳び、全台のビームが印に当たるかを見ます。下の 2 枚は、解いて反映したあとの P1 と P3 です。寄せ無しで光が目印に乗っています(帯は「記録 5 点」)。

確かめる(模擬): 解いて反映したあと、寄せ無しで P1 に乗る。帯は「記録 5 点」(押すと原寸・もう一度押すと戻る)
確かめる(模擬): 同じく P3 に乗る(押すと原寸・もう一度押すと戻る)

5-9. できないこと

▲ 先頭へ

6. 現場の手順(段取り表)

現場の流れ。校正して、確かめて、合わない器具だけやり直す。開演前の近道も(押すと原寸・もう一度押すと戻る)

出典のある時間の目安だけを入れます。ほかの数字は未確認です。

順いつやること時間の目安
1吊り込み時水準器で器具の水平を出す(シム・クランプの締め直し)。傾きの根本はここで減らす1 台 1〜2 分
2校正の前マーカーの座標を実測して Rig setup に入れる(床は Y=0)。測り誤差が最終精度の限界になる未確認
3校正校正シーンで寄せて記録 → 解く → 判定を読む(5 章)1 回の寄せ 20〜40 秒の見込み【推測】。1 台の合計は未確認
4反映良い器具だけ[反映]。「悪い」は合わせ直して記録し直す。やり直すのは合わない器具だけ—
5確認追尾で各マーカーへ跳んで当たりを見る—
6開演前中央のマーカーへ全台を一斉に向けて目で見る。ずれた器具だけ1 点オフセットで直す(近道)1 台 30 秒【推測】
7運用中ずれたら人が校正し直す方針。常時の自動再校正は採らない。オフセットで吸収できない大きなずれ(吊り替え・バトンの高さ変更)だけ、3〜5 をやり直す—

▲ 先頭へ

7. 実機が無いときの確かめ方(模擬)

模擬の構成。1 台の LjStudio の中の「卓」と「現実」/2 台で Art-Net をつなぐ構成(押すと原寸・もう一度押すと戻る)

7-1. 以前の Visualizer では「ずれ」が絵に出なかった

Visualizer は、rig.json にある1 つの姿勢で器具とビームを描きます。校正は「ビームが印に乗っているか」を見るので、そのままではビームは必ず印に乗り、ずれが絵に出ません。実機なら起きる「器具の姿勢が思っていたのと違う」を、絵だけでは再現できませんでした。

7-2. 数値での模擬: 真の姿勢で記録して、ずらして解く

  1. 器具に真の姿勢(例: ピッチ 2°・ロール −1.5°)を入れる。
  2. 校正シーンで、その真の姿勢のまま 5 点を記録する(光は印に乗る。観測は真の姿勢での Pan/Tilt)。
  3. 姿勢をわざとずらす(位置・ヨー・傾きを 0 に戻す)。
  4. calib solve 1 mode=full verify=P5 で解き、真の姿勢に戻るか見る。比較として mode=yaw も解く。
  5. calib apply → rig list → calib undo で反映と取り消しも通す。

結果は 2 章のとおりです。数値としては正しく動きますが、この方法だけでは画面に「光が外れる」様子は出ません。

7-3. 「真の姿勢で描く」模擬(rig truth)

Visualizer だけが真の姿勢でビームと器具を描き、校正・Fast Focus・追尾は rig.json の信じている姿勢のまま計算する模擬です(命令 rig truth …・保存しない)。次のことが目に見えるようになります。

模擬(Visualizer の絵で、実機ではない): 反映前(光が外れる)と反映後(光が目印に乗る)の並び(押すと原寸・もう一度押すと戻る)

寄せの回数(2°/−1.5° の例を、光の落ち先と目印のずれ〔m〕で測ったもの。寄せるたびに小さくなります):

目印寄せる前1 回目2 回目3 回目
P10.6040.0580.010—
P21.2080.1890.0280.010
P30.5740.0540.010—

これは模擬(Visualizer の絵)の中での話で、シミュレーターでどう見えるかの説明です。実機の挙動の確認ではありません。

7-4. 2 台構成(卓/現実)

もう 1 つの案は、2 台で役割を分ける構成です。卓は信じている姿勢(rig.json)で狙いを計算して Art-Net を出し、現実は Art-Net を受けて真の姿勢で光を描く Visualizer です。実機の構成(卓→Art-Net→器具)に近く、「現実側の姿勢」を卓の計算とは完全に別に持てます。1 台で足りる構成を先に使い、2 台構成は後にする想定です。

▲ 先頭へ

8. 今後

8-1. 状態(2026-10-23 夜)

内容状態
C# と Python の解を同じ合成データで比較する突き合わせ済
6 自由度化(画面・ソルバー)済(アプリでの通しは合成の観測)
実機 1 台をわざと 2° 傾けて吊る未(実機の手配待ち)
開演前の近道(Pan/Tilt オフセット)済(実機では未確認)
MVR 3 軸の書き出し・読み込み済。onPC・UE5 での再取込と答え合わせは未
GDTF 読み済。実物 GDTF と実機での検算は未
EyeTrack/UE5 側の逆補正層未

実機では一度も確認していません。

8-2. 最優先の未確認つぶし: 実機 1 台を 2° 傾けて吊る

実機を 1 台、わざと 2° 傾けて吊り、次を測ります。

  1. Pan/Tilt の符号と Tilt 0 の姿勢(LjStudio・GDTF の仮定を確かめる)
  2. .spt/GDTF の可動角
  3. 水準器で傾きを実測
  4. マーカー 5 点で記録 → 4 未知数と 6 未知数で解く → 追尾で 3 点へ飛ばして着地のずれを巻尺で測る

合格線は 10 m 先で ±5 cm(CalibTrack の合格線)。実機の手当が決まるまで、「実機で通す」「tilt0」は未確認のままです。

8-3. その他の残り

8-4. grandMA3・UE5 へ渡せる物

渡し先受け取れるもの数
grandMA3Position(3)+Rotation(3)+ Patch の Offset Pan/Tilt(2)8 つ
Unreal Engine 5(DMX プラグイン)Transform(位置 3+回転 3)だけ。実器具との補正機能は無い6 つ
シミュレーターの候補(費用・機能は未確認のものが多い)

動画や絵のために、Visualizer だけで足りなければ他のシミュレーターを検討する、という意向があります。費用・機能は出典に無いものを推測で書かず、「未確認」とします。

候補使い方校正まわりの機能
LjStudio 2 台(卓+現実を Art-Net で分ける)/rig truth7 章追加費用なし
UE5+DMX プラグインMVR 取込で位置・回転、GDTF で Pan/Tilt 範囲実器具との補正機能は無い。実器具と合わないという報告あり【未照合】
grandMA3 onPC+MA 3DMVR 取込・Position Calibration(3 点可・4 点推奨)・Offset Pan/TiltPosition Calibration は残差の記載なし。解き直すと器具が大きくずれる報告あり【未照合】
Capture器具プロファイルの向き確認位置は解かない【未照合】。そのほかは未確認
Depence未確認未確認

購入の判断は、LjStudio 1 台で模擬した動画を見てからで足ります。

▲ 先頭へ

9. 用語表

用語意味
ヨー器具の取付の、水平に回る向き(Y 軸=鉛直軸まわり)。LjStudio の Rig setup の「ヨー」。Pan のゼロのずれ(pan0)を含みます
ピッチ取付の前後の傾き。正=器具の上端が客席側(+Z)へ倒れる(計算上の定義・実機未確認)
ロール取付の左右の傾き。正=器具の上端が左(−X)へ倒れる(同上)
pan0・tilt0Pan・Tilt の機械ゼロ。「DMX が中央のとき、Pan/Tilt が図面の向きにあるか」のずれ。pan0 はヨーに吸収、tilt0 は解けるが反映先が無い
kPan・kTiltPan・Tilt の可動角の係数。LjStudio は解かず .spt/GDTF を信じる
残差解いた姿勢でマーカーを狙ったとき、ビームが落ちる点とマーカーの距離(マーカーの高さの面・m)。CalibTrack は方向ベクトル差(角度)で別の尺度
検証点5 点のうち計算に使わず、答え合わせだけに回す 1 点(verify=P5)。判定には使わない
mode解き方の選択(auto/yaw/full/fixedpos/full+tilt0)。5 章
マーカー会場の床などに付けた基準点(名前+実測の X/Y/Z)。Rig setup の校正マーカー表と Visualizer の水色の十字
校正シーン光をマーカー用に整え(調べる 1 台が白く細い)、寄せて記録するための特別な光の状態。RT/Q/Visualizer/calscene on で入る
1 点オフセットPan/Tilt に一定量を足して 1 点だけ合わせる手(grandMA3 の Offset Pan/Tilt と同じ)
6 自由度位置 3+向き 3(ヨー・ピッチ・ロール)。mode=full
CalibTrack別の解き手(Python)。10 未知数(実質 9)。LjStudio の参照実装

▲ 先頭へ

★操作(ゲームパッドで追尾する・校正シーン)の説明は別の頁にあります: 一斉追尾とキャリブレーション(ゲームパッドの操作説明)

← LightJockey 関連資料目録トップへ