
概要 📖 – ZED で深度と点群を取得
ZED TOPは、Stereolabs ZED ステレオカメラから深度・点群・カラー画像を取り込み、SVO 再生・ネットワーク受信にも対応する TOPです。Input Source で USB 直結・SVO 録画再生・ネットワークストリームの 3 経路を切り替え、Image パラメータで取得モード (カラー映像・深度・コンフィデンス・点群・法線等) を選ぶことで、用途に応じた画像を 1 つの TOP から取り出せます。
主な用途 🎯
- Stereolabs ZED ステレオカメラから深度マップを取得し、距離情報を後段の合成・マスクに利用
- 左右どちらかの RGB カメラ映像を取り込み、AR・モーションキャプチャの背景映像として利用
- 3D 点群 (Point Cloud) を 32-bit float テクスチャとして取得し、GPU 上で空間表現に活用
- SVO 録画ファイルを再生して、現場収録した深度シーケンスをオフラインで再現
- ネットワーク経由で配信されたリモート ZED の映像を受信し、分散システムで深度を共有
データフロー 🔄
入力: ZED ステレオカメラ (USB) / SVO 録画ファイル / ネットワークストリーム
↓
Input Source で経路を選択
↓
Image で出力モード (Color / Depth / Confidence / Disparity / Normals / Point Cloud / Spatial Texture / Mask) を選択
↓
Sensing Mode・Depth Quality・カメラ姿勢でステレオ計算を調整
↓
出力: TOP テクスチャ (モードに応じたチャンネル数・ビット深度)
初心者の方は、以下日本語書籍も手元にあると安心です。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!
パラメータ解説 ⚙️
ZED Page 📋
Active .active ✅
ZED カメラからのキャプチャ オン/オフ:
- Active:
Active(有効) をオンにすると ZED カメラからの画像ストリームのキャプチャを開始します。オフにすると取り込みを停止し、USB / GPU 帯域を節約できます
Input Source .inputsource 🔌
入力経路の選択 (USB / SVO 録画 / ネットワーク配信)
| 項目 | 内部名 | 説明 |
|---|---|---|
| USB | .usb |
USB で直結された ZED カメラからリアルタイムに取得 |
| SVO File | .svofile |
事前に収録した SVO / SVO2 録画ファイルを再生 |
| Network Streaming | .stream |
別マシンで動く ZED の映像をネットワーク経由で受信 |
Camera .camera 🎚️
USB モード時の ZED センサー選択:
- Camera:
Camera(カメラ選択) — USB モードで複数台の ZED を接続している場合に、どのカメラを使うかを指定します。Input Source= USB の時のみ有効
SVO File .file 🎞️
SVO / SVO2 録画ファイルのパス:
- File:
File(ファイル) — 再生する SVO / SVO2 録画ファイルのパスを指定します。Input Source= SVO File の時のみ有効
Network Stream .stream 🌐
ネットワーク配信の受信先 (IP / ポート):
- Stream IP:
Stream IP(配信元 IP アドレス) — ネットワークストリーミング元の ZED が動くマシンの IP アドレス。Input Source= Network Streaming の時のみ有効 - Stream Port:
Stream Port(配信元ポート) — ストリーミング元のポート番号。Input Source= Network Streaming の時のみ有効
SVO Playback .svoplayback ▶️
SVO 再生の頭出し・再生コントロール
Initialize .initialize 🔄
– Initialize (初期化) — パルス。SVO 再生位置をゼロに戻します
– Input Source = SVO File の時のみ有効
Start .start 🟢
– Start (開始) — パルス。SVO 再生を開始します
Play .play ⏯️
– Play (再生) — 1 で再生、0 で停止
Cue .cue 🎯
– Cue (キュージャンプ) — 1 にすると Cue Point で指定した位置にジャンプします
Cue Point .cuepoint 📍
– Cue Point (キュー位置) — ジャンプ先となる SVO 再生位置を指定します
Cue Unit .cueunit 📐
Cue Point の単位選択
| 項目 | 内部名 | 説明 |
|---|---|---|
| Index | .index |
SVO サンプルインデックスで指定 |
| Frames | .frames |
フレーム数で指定 |
| Seconds | .seconds |
秒数で指定 |
Perspective .perspective 👁️
左右どちらのカメラ画像を出力するか
| 項目 | 内部名 | 説明 |
|---|---|---|
| Left | .left |
左カメラ (デフォルト視点) |
| Right | .right |
右カメラ |
Image .image 🖼️
ZED から取り出す画像モードの選択
| 項目 | 内部名 | 説明 |
|---|---|---|
| Color | .color |
RGB カメラの生のカラー映像 |
| Depth | .depth |
深度マップ (各ピクセルがカメラからの距離 [m]) |
| Confidence | .confidence |
深度推定の信頼度マップ (値が低いほど確からしい) |
| Disparity | .disparity |
左右画像のずれ量 (視差マップ) |
| Normals | .normals |
推定された表面法線マップ (XYZ ベクトル) |
| Point Cloud | .pointcloud |
32-bit float テクスチャで各ピクセルが XYZ 座標 (単位 m) を保持する点群 |
| Spatial Texture | .spatialtexture |
Spatial Mapping で生成した空間テクスチャ |
| Mask | .mask |
Region of Interest 等で生成されたマスクテクスチャ |
Camera Resolution .cameraresolution 📐
ZED カメラのキャプチャ解像度:
- Camera Resolution:
Camera Resolution(カメラ解像度) — ZED のセンサー側キャプチャ解像度を選択します。モデルによって対応解像度が異なり、高解像度ほど USB 帯域と GPU コストが上がります
Camera FPS .camerafps 🎬
ZED カメラのキャプチャフレームレート:
- Camera FPS:
Camera FPS(フレームレート) — ZED カメラのキャプチャレート。解像度との組み合わせ可能値はモデル仕様に依存します
Sensing Mode .sensingmode 🧠
深度計算の精度モード
| 項目 | 内部名 | 説明 |
|---|---|---|
| Standard | .standard |
標準モード。未確定領域はそのまま不確定値として出力される |
| Fill | .fill |
未確定領域を周辺ピクセルから補間して埋める。視覚的な穴は減るが信頼度は下がる |
Depth Quality .depthquality 🎯
深度計算の品質モード:
- Depth Quality:
Depth Quality(深度品質) — カメラの深度計算モードを選択します。高品質ほど精度は上がりますが GPU コストも増えます。プレビュー目的では低品質、解析・記録目的では高品質を選びます
Depth Range .depthrange 📏
深度計算の最小・最大距離 (メートル)
Minimum Depth .mindepth 📏
– Minimum Depth (最小深度) — 計算される最小距離をメートル単位で指定します
– 小さくしすぎると近接ノイズが増え、GPU 負荷も上がります
Maximum Depth .maxdepth 📐
– Maximum Depth (最大深度) — 計算される最大距離をメートル単位で指定します
– ZED モデル仕様により実用範囲が決まります
Out-of-Range Values .outofrangevalues 🚫
範囲外・未確定ピクセルへの代替値
Too Close Value .toocloseval 🚫
– Too Close Value (近接限界値) — カメラに近すぎて深度を測定できなかったピクセルに出力する値
Too Far Value .toofarval 🚷
– Too Far Value (遠方限界値) — カメラから遠すぎて測定できなかったピクセルに出力する値
Unknown Value .unknownval ❓
– Unknown Value (未確定値) — 反射・遮蔽等で深度が決定できなかったピクセルに出力する値
Depth Stabilization .depthstabilization 🛡️
深度マップのフレーム間安定化:
- Depth Stabilization:
Depth Stabilization(深度安定化) — オンにすると、フレーム間で深度マップを安定化させます。静止物の深度ちらつきが減り、合成・マスク用途で扱いやすくなります
Rerange .rerange 📊
ピクセル値を 0-1 範囲に再マップ:
- Rerange:
Rerange(再マップ) — オンにすると、出力テクスチャのピクセル値を 0〜1 の範囲にリマップします。深度値をそのまま色として可視化したい時に有効
Reference Frame .referenceframe 🧭
Point Cloud の座標基準系
| 項目 | 内部名 | 説明 |
|---|---|---|
| World | .world |
ワールド座標系基準 (カメラ姿勢を反映) |
| Camera | .camera |
カメラ座標系基準 (常にカメラ原点) |
Camera Transform Reset .resetcameratransform 🔄
カメラの基準姿勢を再リセット:
- Camera Transform:
Camera Transform(姿勢リセット) — 上記 Reference Frame で使うカメラ位置・姿勢をパルスでリセットします。Reference Frame= World 時にワールド原点に対するカメラ位置を再設定したい時に使います
Mirror Image .mirrorimage 🪞
出力画像を Y 軸 (左右) で反転:
- Mirror Image:
Mirror Image(ミラー反転) — 出力画像を Y 軸 (左右) 方向に反転します。鏡像表示インスタレーションで「体験者が画面の同じ側に映る」演出に有効
Self Calibration .disableselfcalib ⚙️
起動時のセルフキャリブレーションを無効化:
- Disable Self-Calibration:
Disable Self-Calibration(セルフキャリブレーション無効) — オンにすると、カメラ起動時のセルフキャリブレーション処理をスキップします。事前に外部でキャリブレーション済みの場合や、起動時間を短縮したい場合に使用
Region of Interest .roi 🗺️
検出範囲マスクを別 TOP で指定
Region of Interest Mask .roimask 🗺️
– Region of Interest Mask (関心領域マスク) — 関心領域マスクのテクスチャを保持する TOP のパスを指定
– オブジェクトのバウンディングボックスの過半が領域外なら、その検出は破棄されます
Region of Interest Channel .roimchannel 🎨
– Region of Interest Channel (マスクチャンネル) — マスクテクスチャのどのチャンネルを最終マスクとして使うかを選択 (R / G / B / A など)
Settings Page 🎛️
Brightness .brightness 🔆
カメラ映像の明るさ調整
Brightness .bright ✅
– Brightness (明るさ有効) — オンにすると以下の明るさ値を適用、オフならデフォルト値を使用
Brightness Value .brightval 🔆
– Brightness (明るさ値) — カメラ映像の明るさを指定
Contrast .contrast 🌗
カメラ映像のコントラスト調整
Contrast .cont ✅
– Contrast (コントラスト有効) — オンにすると以下のコントラスト値を適用、オフならデフォルト値を使用
Contrast Value .contval 🌗
– Contrast (コントラスト値) — カメラ映像のコントラストを指定
Hue .hue 🎨
カメラ映像の色相調整
Hue .hue ✅
– Hue (色相有効) — オンにすると以下の色相値を適用、オフならデフォルト値を使用
Hue Value .hueval 🎨
– Hue (色相値) — カメラ映像の色相を指定
Saturation .saturation 🌈
カメラ映像の彩度調整
Saturation .sat ✅
– Saturation (彩度有効) — オンにすると以下の彩度値を適用、オフならデフォルト値を使用
Saturation Value .satval 🌈
– Saturation (彩度値) — カメラ映像の彩度を指定
Sharpness .sharpness 🔪
カメラ映像のシャープネス調整
Sharpness .sharp ✅
– Sharpness (シャープネス有効) — オンにすると以下のシャープネス値を適用、オフならデフォルト値を使用
Sharpness Value .sharpval 🔪
– Sharpness (シャープネス値) — カメラ映像のシャープネスを指定
Gamma .gamma 📈
カメラ映像のガンマ調整
Gamma .gamma ✅
– Gamma (ガンマ有効) — オンにすると以下のガンマ値を適用、オフならデフォルト値を使用
Gamma Value .gammaval 📈
– Gamma (ガンマ値) — カメラ映像のガンマを指定
Auto Gain-Exposure .autogainexp 🤖
ゲイン・露光の自動調整:
- Auto Gain-Exposure:
Auto Gain-Exposure(自動ゲイン・露光) — オンにすると、カメラがゲインと露光を自動で調整します。オフ時は下記 Gain / Exposure の手動値が適用される
Gain .gain 📡
カメラのゲイン (信号増幅率)
Gain .gain ✅
– Gain (ゲイン有効) — オンにすると以下のゲイン値を適用、オフならデフォルト値を使用
Gain Value .gainval 📡
– Gain (ゲイン値) — カメラのゲインを指定
Exposure .exposure 📷
カメラの露光時間
Exposure .exp ✅
– Exposure (露光有効) — オンにすると以下の露光値を適用、オフならデフォルト値を使用
Exposure Value .expval 📷
– Exposure (露光値) — カメラの露光時間を指定
Auto ROI .roi 🎯
自動ゲイン・露光の対象領域
Region of Interest .roi 🎯
– Region of Interest (関心領域有効) — オンにすると、自動ゲイン・露光の計算対象を画面全体ではなく、下記の矩形領域に限定します
ROI Coordinate .coord 📍
– ROI Coordinate (左上座標) — 関心領域矩形の左上コーナーをカメラ解像度基準で指定
ROI Dimension .dim 📏
– ROI Dimension (サイズ) — 関心領域矩形の幅と高さをカメラ解像度基準で指定
White Balance .whitebalance 🌡️
ホワイトバランス調整
Auto White Balance .autowhitebal 🤖
– Auto White Balance (自動ホワイトバランス) — オンで自動調整、オフで下記の手動値を適用
White Balance .whitebal ✅
– White Balance (ホワイトバランス有効) — オンにすると以下の手動値を適用
White Balance Value .whitebalval 🌡️
– White Balance (ホワイトバランス値) — カメラのホワイトバランスを指定。内部で 100 倍されて [2800, 6500] ケルビン範囲にマップされます
LED Status .ledstat 💡
本体前面 LED のオン/オフ:
- LED Status:
LED Status(LED 表示) — オンで ZED 本体の前面 LED を点灯、オフで消灯します。撮影現場で LED を消したい時に有効
Common Page 🔧
| 項目 | 内部名 | 説明 |
|---|
実践アイデア 💡
Example 1: 深度マスクで人物切抜き 🎭
ZED TOP (Depth) → Threshold TOP → Composite TOP (背景映像と Over 合成)
ZED TOP を Depth モードで動かし、近距離の人物だけ残るように Threshold TOP で 2 値マスクを作成、別の背景映像と Composite TOP の Over 合成で重ねることで、グリーンバック無しのリアルタイム人物切り抜きが実現できます。
- ZED TOP を配置し、
Input SourceをUSB、ImageをDepthに設定 Minimum DepthとMaximum Depthを被写体が立つ距離レンジに合わせる- Threshold TOP を接続し、人物が立つ距離 (例: 1.5m 以下) でしきい値を切ってマスクを作成
- 背景映像 (Movie File In TOP 等) と Composite TOP の Over モードでマスクを使って合成
Example 2: 3D 点群リアル可視化 🌌
ZED TOP (Point Cloud) → GLSL TOP / Geometry COMP (Instancing で点描画)
ZED の Point Cloud モードを使うと、各ピクセルが XYZ 座標を持つ 32-bit float テクスチャが得られます。これを GLSL TOP や Geometry COMP の Instancing 機能と組み合わせることで、ZED が見ている空間を 3D 点群としてリアルタイム可視化できます。
- ZED TOP を配置し、
ImageをPoint Cloud、Reference FrameをCameraまたはWorldに設定 Unknown Valueを遠方値に設定して未確定ピクセルをシーン外に逃がす- Geometry COMP の Instancing で点群テクスチャの XYZ チャンネルを Instance Translate に接続
- GLSL マテリアルで Z レンジによる色グラデーションをかけて深度を視覚化
Example 3: SVO 録画再生 🎞️
ZED TOP (SVO File) → Threshold TOP → 合成パイプライン
現場収録した .svo / .svo2 ファイルを ZED TOP で再生することで、ライブカメラなしで深度シーケンスをオフラインで再現できます。本番前のリハーサルや、再現性のあるアルゴリズム検証で重宝します。
- ZED TOP を配置し、
Input SourceをSVO Fileに設定、Fileに SVO ファイルパスを指定 Initializeをパルスで再生位置をゼロに戻し、Playを 1 にして再生開始- 頭出ししたい場合は
Cue Point+Cue Unitで位置を指定し、Cueを 1 にしてジャンプ
関連オペレータ 🔗
類似機能OP 🔍
- Kinect TOP — Microsoft Kinect (v1 / v2) で深度・カラー・赤外線を取得
- Kinect Azure TOP — Azure Kinect 用の深度・カラー取得 TOP
- RealSense TOP — Intel RealSense 深度センサー用の TOP
- OAK Select TOP — Luxonis OAK カメラの画像ストリーム選択用 TOP
- Video Device In TOP — 一般 USB カメラ・キャプチャデバイスからの映像取得
組み合わせ推奨OP 🔄
- Threshold TOP — 深度画像をしきい値でマスク化、距離フィルタとして利用
- Composite TOP — ZED 映像と背景映像のレイヤ合成
- Math TOP — 深度値のレンジ変換・正規化、コンフィデンス値のスケーリング
- Crop TOP — ZED 視野の特定領域だけを切り出して後段処理コストを下げる
- Channel Mix TOP — Point Cloud テクスチャから XYZ いずれかのチャンネルを抽出
- Cache TOP — ZED 入力を一定フレーム蓄積してフレーム間差分・残像演出
- Edge TOP — 深度マップから輪郭を抽出して人物シルエットを得る
前処理・後処理TOP 🎯
Info CHOP情報 📊
ZED TOPは Info CHOP による詳細情報取得に対応しています。
TOP固有情報 🖼️
resx: TOP の出力解像度 X (ピクセル単位)resy: TOP の出力解像度 Y (ピクセル単位)aspectx: アスペクト比 Xaspecty: アスペクト比 Ydepth: 3D テクスチャ / テクスチャ配列の深度 (2D テクスチャでは 1)gpu_memory_used: TOP が消費している GPU メモリ量 (MB 単位)
汎用オペレータ情報 🔄
total_cooks: プロセス開始からのクック回数cook_time: 最後のクック時間 (ミリ秒)cook_frame: 最後にクックされたフレーム番号warnings: 警告数errors: エラー数
代表的な取得チャンネル 📡
resolution_x / resolution_y: 出力テクスチャの幅・高さ (ピクセル)aspectx / aspecty: 出力テクスチャのアスペクト比 (横 / 縦)depth: ピクセルフォーマットのビット深度 (8 / 16 / 32)num_components: 出力チャンネル数 (Color=4 / Depth=1 / Point Cloud=4 等、Image モードに依存)gpu_mem_used: GPU メモリ使用量 (バイト)、Point Cloud 等の重いモードでの負荷確認に有用
トラブルシューティング ⚠️
よくある問題と解決策 🔧
❌ Problem: ZED から何も取り込めない / テクスチャが真っ黒
✅ Solution:
Activeがオンになっているか確認Input Sourceが現在の使用形態 (USB / SVO File / Network Streaming) と一致しているか確認- ZED SDK が OS にインストール済みか、USB 3.0 ポートに ZED が直接接続されているか確認 (USB 2.0 では帯域不足)
❌ Problem: 深度マップに穴やノイズが多い
✅ Solution:
Sensing ModeをFillにして未確定領域を補間 (信頼度は下がる)Depth Qualityを高品質側に切り替えてステレオ計算精度を上げるDepth Stabilizationをオンにしてフレーム間のちらつきを抑える- 後段で Math TOP や GLSL TOP で範囲外ピクセルをマスク処理
❌ Problem: Point Cloud に「飛び」点が大量に出る
✅ Solution:
Unknown Valueを Z=遠方値に設定して、無効ピクセルをシーン外に張り付けMinimum DepthとMaximum Depthを被写体距離に絞り込んで範囲外を除外Reference Frame= Camera に固定し、カメラ移動による点群ドリフトを切り分ける
❌ Problem: SVO 録画ファイルが再生されない
✅ Solution:
Input SourceがSVO Fileになっているか確認Fileパスが SVO / SVO2 形式のファイルを指しているか確認 (拡張子・パス区切り)Initializeをパルスで再生位置をゼロにリセットした後、Playを 1 にする
参考資料 📚
その他 🔗
- TouchDesigner Wiki — Category:TOPs
- TouchDesigner Wiki — Pixel Formats 解説
- TouchDesigner Wiki ホーム
- TouchDesigner 公式 Forum
- Facebook — TouchDesigner Help Group

