TouchDesigner Kinect 體感偵測入門:LiDAR、MIDI、Arduino 感測器總覽|IVD487 W11

想知道 TouchDesigner 能接哪些實體感測器?這篇把 Kinect 體感偵測、LiDAR 光達、MIDI Launchpad、Arduino/ESP 一次整理清楚:每種感測器的原理、代表硬體、適用情境與限制都做成對照表,並列出對應的 TD 節點(Kinect Azure、Serial DAT、MIDI In Map、Joystick、Trigger)。附節點速查、章節時間戳與踩坑提醒,選感測器前先掃一遍。

May 18, 2026
🧰 TouchDesigner 工具庫 | Luxmin Institute on Patreon
我們把接案與展場現場累積下來的 TouchDesigner 元件、專案檔與製作系統,整理發佈在 Patreon,部分工具與 Demo 免費開放下載。
https://www.patreon.com/cw/LuxminInstitute
⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑

TouchDesigner Kinect 體感偵測入門:LiDAR、MIDI、Arduino 感測器總覽

上一週用 OSC 把手機變成控制器,這一週把範圍放大到一整櫃的實體感測器與硬體控制器。今天的重點不是把某一個範例做深,而是認識媒介:Kinect 體感、LiDAR 光達、MIDI 鍵盤/Launchpad、Arduino/ESP、遊戲搖桿、立體 camera——每一種感測器看世界的方式不一樣,能接進 TouchDesigner 的節點也不一樣。
先講一個貫穿全場的觀念:做互動時,先選對感測器,再決定軟體層怎麼設計。 感測器決定了你拿得到什麼資料(深度、骨架、座標、channel),視覺怎麼玩是後面的事。這篇是重點整理,之後要挑硬體、規劃展場時回來掃一遍就能定位。
讀完這篇你會知道:
  • 五大類感測媒介的原理、代表硬體、適用情境與限制(一張對照表)
  • MIDI 裝置為什麼接上去沒反應,MIDI Device Mapper 要做什麼
  • Arduino/ESP 怎麼走 Serial (DAT) 進 TouchDesigner
  • LiDAR 光達為什麼要設 IP、為什麼會有遮擋
  • Kinect Azure 出的顏色/深度/IR/骨架/point cloud 各能拿來做什麼
Video preview

一、感測器怎麼分類:一張對照表看懂五種媒介

這一堂的感測器可以粗分成五大類。原理不同、拿到的資料格式不同,適合的場景也就不同。先給對照表,後面再逐類補關鍵細節。
類型
原理
代表硬體
適用情境
主要限制
LiDAR 光達
紅外線 360° 旋轉掃描測距,輸出 2D 平面
Hokuyo、平價款(SLAMTEC 類)
把牆面/地面變觸控、踩踏與擊打互動
沿中心掃描,物體後方會被遮擋
鏡頭深度辨識(Kinect)
鏡頭+紅外線算深度,可再抽出人體骨架
Kinect 2.0、Azure Kinect DK
體感互動、骨架驅動視覺、多人
DK 已停產,改用後續衍生機種
立體視覺 camera
雙鏡頭視差估深度,帶一點 AI 運算
ZED、RealSense 類
戶外、需要防水的場景
無紅外線,暗處不能用;深度較不準
手勢辨識
近距離感測手部骨架
Leap Motion 類
手勢控制、細部指節互動
感測範圍小
MIDI 控制器
傳 MIDI 訊號(channel+index)
MIDI 鍵盤、ROLI Lumi Keys、Novation Launchpad
現場演出即時視覺
要先在 Mapper 建 mapping 才有訊號
自製感測器
Arduino/ESP 讀類比訊號走 Serial
Arduino Uno、ESP+各種模組
客製互動(吹氣、震動打擊)
電子訊號有誤差,需保險機制
遊戲搖桿
完整的按鍵+類比搖桿軸訊號
Xbox 手把
遊戲式互動、雙軸操控
Xbox 手把限 Windows
💡 選型心法: 先問「我要偵測的是位置、深度、還是動作事件?」平面上的觸碰點 → LiDAR;人的身體與骨架 → Kinect;離散的觸發訊號 → MIDI/自製感測器。媒介選對,後面視覺才有發揮空間。
手勢辨識這條線之後會單獨展開——下一週用 IVD487 W12|MediaPipe 手勢辨識 講純鏡頭、免專用硬體的做法,可以跟 Leap Motion 對照著看。
📺 影片段落:2:13

二、按鍵類:持軸鍵盤與 MIDI 控制器

持軸鍵盤(可換鍵帽的小鍵盤)跟一般鍵盤的差別在「鍵程」——它有深度之分,按多深都讀得到。所以可以把它的訊號當成類比搖桿:進 TouchDesigner 後直接取 Joystick (CHOP) 的 x 軸,按越深數值越大,範例裡就是拿它控制發射物的左右位移,中鍵做 reset。
MIDI 鍵盤/Launchpad 則是走 MIDI 訊號。這裡有個新手一定會卡的地方:
  • 接上去預設沒有任何反應。 要到 MIDI Device Mapper 手動 create new mapping,在 in device 選你自己的裝置(例如 ROLI Lumi Keys、Launchpad),按下去才會有訊號。
  • 拿到訊號後,MIDI 傳的是 channel+index。用 MIDI In Map (CHOP) 把它接出來,就能依按鍵去驅動視覺——例如不同音色對應不同圖形(圓形、三角形)或不同顏色,讓演出當下即時產生視覺反饋。
  • 範例裡的堆疊延伸感是 Feedback (TOP) 做的,把畫面持續往上累積而已,是很單純的一組迴圈。
⚠️ MIDI 視覺化前,先把所有鍵按過一遍。 系統要先「記住」每個鍵對應的 channel,channel 建立出來後,之後彈奏對應音階訊號才會出現。少了這一步,會覺得有些鍵怎麼按都沒反應。
Novation Launchpad 功能多一點,會分 live/stellar/MIDI port,但邏輯一樣:連好 mapper、取 channel+index、對應到你要的圖形。
📺 影片段落:4:336:327:4013:1813:5216:2418:00

三、自製感測器:Arduino/ESP 走 Serial (DAT)

想做客製化互動(吹氣、打擊、翻動),就會走到 Arduino/ESP 這類開發板。它們最常見的傳輸協定是 serial,在 TouchDesigner 裡用 Serial (DAT) 接:選 port → 板子裡自己寫好程式 → 訊號進來
課堂上兩個實例把「自製感測器」的兩種脾氣講得很清楚:
  • Arduino Uno+麥克風模組(吹氣): 這顆麥克風對講話不敏感,對它吹氣才明顯。進來的訊號拿去觸發粒子飛散,模擬蒲公英被吹散的感覺。重點是門檻——被前一組同學吹到數值跑掉時,要回 Trigger (CHOP) 把觸發區間調回實際的變動範圍。
  • ESP+震動感測器(打擊): 蠟筆小新互動展的做法,把多顆震動 sensor 貼在娃娃背後,打下去觸發影片播放。裝多顆是關鍵——單顆電子元件會有誤差。
⚠️ 多顆感測器=保險機制。 範例裝了 5 顆震動 sensor,邏輯是「5 顆裡有 3 顆以上超過門檻才觸發」。在 TouchDesigner 裡數有幾個 1 超過門檻再放行,用投票避免單顆誤差毀掉整個互動體驗。
💡 Trigger 門檻要對著真實訊號調。 預設區間(例如 10 以內)常常跟實際吹氣/震動的數值差很多,先看進來的數值跳到哪,再把 Trigger (CHOP) 設在會變動的區間。
📺 影片段落:20:1422:0122:3225:0327:19

四、LiDAR 光達:把任何表面變觸控

LiDAR 是 2D 平面的感測方式,裡面一顆馬達帶著紅外線持續 360° 旋轉,掃描周圍最近物體的距離——能把牆面、地面變成一塊觸控螢幕。牆面繪製、地面踩踏、丟球打擊牆面,這些常見的大型互動多半是它做的。
接法上有兩個和其他感測器不一樣的地方:
  • 它走網路,不是 USB。 要先到電腦的乙太網路設定,把 IP 設成 192.168.0.x(後面數字隨意),跟感測器同網域才連得上。接上後感測器下方會亮藍燈、機身會有旋轉的震動感。
  • 資料是極座標,要轉 2D。 原始是「角度+距離」的波形(極座標),轉成 2D 座標軸後,再用工具把感測到的碰觸位置 mapping、校準到你的畫面。校準做好,精準度可達兩三公分。
課堂上另外補了一顆平價版光達(SLAMTEC 類,約兩千多塊,對比專業款要四萬多):電路板裸露在外,正好看清楚結構——一顆馬達帶動、持續旋轉辨識環境距離、轉成 2D 空間判斷有沒有碰撞。原理跟高階款一模一樣。
⚠️ LiDAR 有遮擋問題。 因為它沿中心掃描、只認「最近的物體」,被前面的人或物擋住,後方就完全感測不到。規劃安裝位置時要先想好掃描死角,地面踩踏這種還要注意人站的位置別互相遮擋。
📺 影片段落:29:1931:3833:0135:2636:541:02:03

五、遊戲搖桿:完整的搖桿訊號

嚴格說搖桿不算感測器,但它是很順手的實體控制器。在 TouchDesigner 用 Joystick (CHOP) 就能拿到完整的按鍵+類比軸訊號,不同按鍵、扳機(trigger)各自觸發不同功能,你只要擷取需要的幾顆按鈕去接效果就好。課堂範例把控制訊號送進一個由 AI 寫的網頁小遊戲,說明搖桿也能跨到網頁層——TD 負責取訊號,複雜邏輯交給網頁。
⚠️ Xbox 手把限 Windows。 微軟不給 Apple 用 Xbox 手把,所以這顆只能在 Windows 上跑;一般搖桿其實 Mac 也能用,是這款硬體本身的限制。挑硬體前先確認你的展場電腦系統。
📺 影片段落:40:12

六、Kinect 體感偵測:深度、骨架、point cloud(核心)

這一堂的主角。Kinect 是以鏡頭為主的深度辨識,能感測肢體與深度,還能抽出人體骨架。課堂帶的是 Azure Kinect DK(Kinect 2.0 的後續機型),用 Kinect Azure (TOP/CHOP) 家族的節點取資料。它一台就能出五種格式,各有玩法:
輸出
是什麼
拿來做什麼
顏色(RGB)
一般彩色影像
基底畫面、疊加效果
深度
每個像素離鏡頭多近(越近數值越……近)
驅動 Geometry (COMP) instance 的大小、分層位移
IR 紅外線
紅外線影像
看得到冷氣遙控器、車鑰匙發出的紅外線光點
骨架
手、脖子、鼻子等各關節位置點
追蹤臉/身體、對應到 Metaball (SOP)
point cloud
把深度轉成 3D 座標的點雲
直接在 3D 空間重建人形
幾個範例把「骨架」和「深度」兩條路徑講得很具體:
  • 骨架追臉: 用脖子/鼻子的點追蹤人臉,做出一顆會左右跟著你移動的巨大眼睛(注意是位移在跟、不是旋轉)。
  • 骨架 → Metaball: 把每個骨架節點對應到一顆 Metaball (SOP),球跟球靠近會黏在一起,整個人被轉成流動的人形,而且支援多人(現場約六人沒問題)。
  • 深度 → instance/分層: 「金錢的奴隸」用深度訊號驅動 Geometry (COMP) instance 讓錢的符號有大有小;另一個範例則把人的顏色圖層依深度(例如 0.1、0.2、0.3 依序累加)分層位移,後面就能用選擇的方式把不同層拆開來用。
💡 邏輯其實很單純。 這些效果的互動機制大多是基本款——感測器選對、拿到滿意的資料(骨架點/深度值),剩下的就是視覺元素怎麼發揮。難的不是接線,是設計。
⚠️ Azure Kinect DK 已停產。 現在展場還看得到,但會越來越少,之後多半改用其他家的衍生機種。功能大同小異,選型時把停產、料件供應一併考慮進去。
📺 影片段落:44:2346:4148:1152:4354:0955:23

七、立體 camera:像人眼的深度辨識

最後一類是立體視覺 camera(ZED、RealSense 類)。它用兩顆隔一點距離的鏡頭,靠視差去估深度,跟人眼的立體辨識很像,運算上會用到一點 AI。實際輸出跟 Kinect 類似——有 RGB、可選左右眼(因為有視差才能算立體)、也有深度。
它和 Kinect 的取捨很清楚:
⚠️ 立體 camera 暗處不能用。 它沒有紅外線,全靠鏡頭看,所以暗處無法運作,深度也相對不準(是「估」出來的,不是紅外線直接打回來)。但它的好處是防水、能放戶外——這正是 Kinect 這類紅外線深度相機做不到的場景。戶外選它、暗處選 Kinect。
📺 影片段落:3:26

常見問題 FAQ

Q1:MIDI 鍵盤/Launchpad 接上去完全沒訊號?
預設就是沒反應。要到 MIDI Device Mappercreate new mapping,在 in device 選你的裝置才會通。另外做視覺化前要先把所有鍵按過一遍,讓系統記住每個鍵的 channel,之後訊號才會正確出現。
Q2:Arduino/ESP 怎麼把訊號送進 TouchDesigner?
Serial (DAT):選對 port、板子裡自己寫好程式,訊號就會進來。要做觸發就接 Trigger (CHOP),並把門檻調到實際會變動的數值區間,別用預設值。
Q3:LiDAR 光達為什麼常常感測不到?
兩個原因。一是它沿中心掃描、只認最近物體,被擋住後方就讀不到(遮擋問題);二是它走網路,要先把電腦 IP 設在 192.168.0.x 同網域才連得上。
Q4:Kinect Azure 能拿到哪些資料,各能做什麼?
顏色、深度、IR、骨架、point cloud 五種。骨架點可以對應 Metaball (SOP) 做人形、追臉;深度可以驅動 Geometry (COMP) 的 instance 大小或做圖層分層位移;point cloud 直接給你 3D 座標點雲。
Q5:立體 camera 和 Kinect 差在哪,怎麼選?
立體 camera 用雙鏡頭視差估深度,防水、能放戶外,但沒有紅外線、暗處不能用、深度較不準;Kinect 用紅外線算深度,暗處也能用、骨架更完整,但不防水。戶外選立體、室內暗處選 Kinect。
Q6:為什麼一個互動要裝好幾顆感測器?
電子元件的訊號會有誤差,單顆誤判就會毀掉體驗。用多顆做投票(例如 5 顆裡過 3 顆才觸發)當保險機制,能大幅降低誤觸發。

課後練習

  1. MIDI 視覺化(Launchpad/鍵盤擇一)。 接上裝置,用 MIDI Device Mapper create new mapping,先按過所有鍵記住 channel,再取 channel+index 對應不同圖形或顏色,最後加 Feedback (TOP) 讓畫面累積。
  2. Arduino 吹氣粒子。 Arduino Uno+麥克風模組走 Serial (DAT) 進 TD,用 Trigger (CHOP) 把門檻對齊實際吹氣的數值,觸發一組粒子飛散效果。
  3. Kinect 骨架或深度(本週核心)。Kinect Azure 取骨架點對應 Metaball (SOP) 做多人流動人形;或改取深度,驅動 Geometry (COMP) instance 的大小、做圖層分層位移。
  4. 設計一個保險機制。 假想一個多人踩踏或打擊互動,先決定用哪種感測器,再寫出「多顆投票、過門檻才觸發」的判斷邏輯,練習「先選 sensor 再定軟體層」的思路。

影片章節

時間
內容
感測器分類總覽:五種互動媒介
持軸鍵盤:用鍵程當 joystick x 軸
持軸取 Joystick (CHOP) x 軸做發射
MIDI 鍵盤
ROLI Lumi Keys 彩色鍵盤
MIDI Device Mapper:create new mapping
依 MIDI in 做視覺化(先記住 channel)
Feedback (TOP) 累積畫面
Novation Launchpad
傳 channel+index 對應圖形
Arduino/ESP 自製感測器
Arduino Uno+麥克風模組:吹氣
Serial (DAT) 接開發板
Trigger (CHOP) 調門檻數值
ESP 五顆震動 sensor 保險機制
Hokuyo 光達開箱
光達走網路:IP 設 192.168.0.x
極座標 → 2D 座標與 mapping 校準
地面踩踏/打擊牆面範例
Xbox 搖桿(限 Windows)
Azure Kinect DK 開箱
深度+骨架:眼睛跟臉
骨架 → Metaball (SOP) 多人
金錢的奴隸:深度+instance
IR 紅外線與 point cloud
平價光達:馬達旋轉掃描
 
⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑⭑
Luxmin Institute (互動研究院) on Patreon
教學講的是觀念,工具則是我們在真實展場裡跑過、改過、確定能用的東西。TD 元件、專案檔、校正與製作流程都陸續發佈在 Patreon 上,免費層可以先看 Demo 與公開工具,付費層取得完整檔案與更新:
https://www.patreon.com/cw/LuxminInstitute
最新的活動動態與報名資訊:
https://www.threads.com/@luxmin.institute
 
如有相關專案或其他需求,請洽 luxmin.art