𝗧𝗿𝗮𝗰𝗸𝗶𝗻𝗴 𝗮𝗻𝗱 𝗼𝗯𝗷𝗲𝗰𝘁 𝗱𝗲𝘁𝗲𝗰𝘁𝗶𝗼𝗻 𝗳𝗼𝗿 𝗿𝗼𝗯𝗼𝘁𝗶𝗰𝘀 在機器人技術中,物體檢測是一個快照:“在這個畫面中,(x, y) 有一個瓶子。” 物體追蹤則是更困難、更具操作性的事情:“這是之前的同一個瓶子,它這樣移動,即使我在 200 毫秒內看不見它,它仍然在那裡。” 想像一下在廚房檯面上的移動操控器。任務在紙上看起來很簡單:在一個雜亂的桌子上拿起藍色瓶子,同時一個人就在附近移動。 機器人有一個相機(也許還有深度感測器)。它運行一個物體檢測器,並獲得一個標記為“瓶子”的邊界框,並附有信心分數。這聽起來像是感知,但還不是。 在第一幀中,檢測器看到了瓶子。在第二幀中,人的手臂部分遮擋了它,信心下降,邊界框消失。在第三幀中,瓶子重新出現,但檢測器稍微移動了邊界框。從規劃者的角度來看,瓶子似乎消失了並瞬移了。 在雜亂中,你還會得到重複的情況:檢測器可能會為同一物體產生兩個合理的“瓶子”邊界框。如果機器人直接對每幀的檢測做出反應,你會看到經典的失敗行為: ➤ 它猶豫不決,因為目標在每幾幀中“消失”, ➤ 它不斷重新規劃,因為目標位置抖動, ➤ 當出現兩個相似物品時,它朝錯誤的物體伸手, ➤ 它無法可靠地執行“不要與人碰撞”,因為人的邊界框也在閃爍。 這就是為什麼機器人感知很少僅停留在檢測上。它需要物體的持久性:能夠說“這仍然是同一個瓶子,即使我短暫失去視線。” 追蹤是將逐幀的猜測轉變為穩定世界模型的過程。 一種典型的方法是“基於檢測的追蹤”:你仍然在每幀運行檢測器,但你將檢測結果隨著時間附加到持久的追蹤(ID)上,使用預測 + 關聯。 具體來說,追蹤器做三件事: ➤ 預測“瓶子現在應該在哪裡?” ➤ 關聯“哪個檢測屬於哪個追蹤?” ➤ 在變化下保持身份 ...