CombineMasksVideo
功能概述
CombineMasksVideo 節點透過計算所有輸入視訊中每個像素的逐像素最大值 (Pixel-wise Maximum),將多條遮罩視訊合併拼接為單一完整的複合遮罩視訊。對於長度時長不一致的視訊,節點會自動為較短的影片填充黑畫面畫格以對齊時長。
適用情境
在以下情況使用 CombineMasksVideo 節點:
- 將多個不同的遮罩視訊整合成單一遮罩
- 將來自不同追蹤來源或演算法的多個物體遮罩進行聯集 (Union) 疊加
- 統整處理多個語意分割 (Segmentation) 產生的視訊遮罩
- 將多個目標追蹤軌跡整合為單一合成選區
使用方式說明
基礎設定步驟
- 將 CombineMasksVideo 節點新增至工作流程中
- 將多個遮罩視訊來源連線至 "mask_videos" 輸入埠(接收清單形式的多條視訊)
- 執行工作流程以運算合併遮罩
參數說明
- mask_videos:欲合併的遮罩視訊清單(相容 VideoArtifact 與 VideoUrlArtifact 格式)
輸出埠說明
- combined_mask:合併運算完成的複合遮罩視訊產物,可供後續節點引用
運作原理解析
節點採用逐畫格 (Frame-by-frame) 處理機制,執行逐像素最大值邏輯:
- 每一畫格會先統一轉換為單通道灰階(若尚未為灰階格式)
- 針對畫格中的每個像素座標,選取所有輸入遮罩當中的最大數值
- 產生的最終遮罩代表:只要任何輸入遮罩中該位置為白(255),輸出畫格該處即呈現為白
- 若各輸入視訊長度不一,較短的影片將自動以純黑畫格 (0) 補齊,以對齊最長視訊的總時長
進度指示器會即時呈現運算狀態(0-90% 為畫格逐格計算,90-100% 為視訊封裝編碼)。
範例展示
合併分別追蹤前景人物與移動車輛的兩條遮罩視訊:
- 將兩條遮罩視訊共同連線至 mask_videos 輸入埠
- 執行工作流程
- 輸出遮罩將完整包含兩個目標物體的聯集白色選區,背景環境維持全黑
重要注意事項
- CombineMasksVideo 節點核心依賴 FFmpeg 進行底層畫格編解碼與合成處理。
- 運算過程中所有輸入遮罩畫格皆會自動轉換為標準單通道灰階陣列。
- 解析度對齊規則:輸出視訊的解析度以第一條輸入視訊 (First input video) 的尺寸為準。
- 自動透過黑色畫格填充完美解決多段視訊時長不對等的相容性問題。
- 輸出視訊一律嚴格維持第一條基準視訊的原生畫格率 (FPS)。
- 支援輸出詳細的處理日誌以供除錯與效能診斷。