SwisTrack/版本 3/使用 SwisTrack
此頁面指的是 SwisTrack 的版本 3。 除非您仍在使用此舊版本,否則您可能希望閱讀SwisTrack 最新版本的文件。
SwisTrack 在不同的步驟中處理影像,而每個步驟都可以在特定的模式下執行。例如,您可以從裝置 A 獲取影像,使用方法 B 對其進行分割,並使用方法 C 進行跟蹤。這些選擇彼此獨立,例如,影像來自相機還是影片並不重要。相反,每個步驟都期望以特定格式提供資料,並相應地生成輸出。
本手冊的組織方式與 SwisTrack 用於影像處理的方案相同,在下表中總結。
| 步驟 | 輸入 | 輸出 | 示例 |
|---|---|---|---|
|
輸入 |
任何影片源(相機或檔案)。 |
原始影像 |
|
|
分割器 |
原始影像 |
一個二進位制影像,其中潛在的目標為白色斑點。 |
|
|
分割器後處理 |
一個二進位制影像 |
分割器後處理對影像執行一些過濾(侵蝕/膨脹)以獲得更平滑的斑點,從而更容易檢測輪廓。此外,還可以應用掩碼影像(右側)來拒絕影像特定區域之外的斑點。 |
|
|
粒子濾波器 |
一個二進位制影像 |
一個輪廓列表,滿足特定標準(大小、形狀等)。被拒絕的輪廓(“粒子”)用紅色圓圈表示,而被接受的輪廓用綠色圓圈表示。 |
|
|
跟蹤器 |
一個粒子列表 |
一個軌跡列表 |
|
|
校準 |
一個軌跡列表 |
一個軌跡列表(已校準) |
n.a. |
|
輸出 |
一個軌跡列表 |
一個包含軌跡座標和時間戳的文字檔案。 |
n.a. |
此模式使用 Intel OpenCV 的影片獲取功能,該功能使用影片視窗 (VfW) 編解碼器載入 AVI 和 MPEG 檔案。確保您安裝了正確的編解碼器,SwisTrack 不支援 DirectShow 驅動程式!一個很好的測試是使用 VirtualDub 軟體(開源),它允許您獲取有關使用編解碼器的更詳細資訊。
此模式使用卡內基梅隆大學開發的火線驅動程式。在安裝之前,請確保您解除安裝了隨相機附帶的驅動程式!CMU 驅動程式附帶一個小的測試應用程式,它允許您測試您的相機,以及執行一些 SwisTrack 尚不可用的設定。
此模式利用您作業系統的原生影片驅動程式。在 Windows 下,此模式允許訪問標準 USB 相機(“網路攝像頭”)。在 Linux 下,它也應該允許訪問火線相機,但這尚未經過測試。
透過從每個影片幀中減去場景的背景影像來分割影像。一個固定的閾值定義了將畫素計為不屬於背景所需的最小差異。
此模式對光照條件的變化很敏感。
顯然,您需要確保背景影像與影片檔案的尺寸完全相同。從 SwisTrack 本身匯出的 bmp 並不總是具有相同的尺寸。
此模式不需要背景影像,而是所有迄今為止處理過的影片幀的執行平均值。引數alpha指定執行平均值的速率,即每個新幀對平均值的貢獻比率。
此模式在處理光照條件變化時更強大,但無法應對長時間停止移動的物體,因為它們會成為背景的一部分。
此功能目前正在修訂中。
選項“最大允許速度”以畫素為單位,定義了 SwisTrack 尋找潛在目標的半徑。“最大允許速度”不一定代表物體的物理速度,還應考慮物體合併和分裂後出現的場景,這種場景會導致軌跡上的位移,而這些物體實際上並沒有移動。
選項“軌跡可以共享一個粒子嗎?”允許你指定軌跡是否可以合併到一個粒子(例如,當兩隻昆蟲重疊時)或是否不希望出現這種情況(例如,當跟蹤配備標記的機器人時)。



