4.1
基於 ORB-SLAM2 (tracking, local mapping, loop closure) , 增加了 針對於 objects 的模組。這些模組使用 the ellipse/ellipsoid modeling framework, 和 points 使用相同的策略, 即在 frames 上跟蹤 objects, 以 3D 的方式估計,插入到地圖,然後不斷最佳化。object tracking and object initial reconstruction are added to the main tracking thread。
- The local object mapping is handled in a similar way as the local point mapping and continuously refines the object models. It is run in a separate thread .
透過整合 objects, 重定位模組被增強,提高了 robustness.
圖 2:系統:藍色項對應於 ORB-SLAM2 主幹網中新新增的元素。請注意,每個模組(Tracking,
Local Mapping, Loop Closing and Local Object Mapping)都在單獨的執行緒中執行
4.2 橢球體 object 表示
使用一個 3D 橢球體,建模一個 object。這個 object 在影像中的觀測 是一個 橢圓。這是一個 粗略但輕量級的表示,只需要九個引數:三個引數用於 axes size,三個引數用於orientation,三個引數用於position。
此外,橢球體在任何視點下都投影為橢圓。其方程可以使用對偶空間以閉合形式表示。在該空間中,橢球體由 4 × 4 矩陣 Q 定義,橢圓由 3 × 3 矩陣 C 定義,它們透過投影矩陣 P [12] 連線在一起:
相比之下,使用物體的長方體表示是不可能的。事實上,將 3D box corners with the 2D box edges 相匹配會導致高組合性。
4.3 Object 檢測和關聯
YOLO。 為了穩健性,我們只考慮分數高於 0.5 的檢測,並丟棄其他檢測。
隨時間推移在物件檢測之間建立關聯是我們系統的關鍵部分。給定當前幀中的一組檢測,目標是將每個檢測與現有 Object 軌跡匹配,或者決定建立一個新物件軌跡。關聯首先受到物件類別的約束。此外,我們還考慮了檢測框的重疊以及檢測框之間的 points 匹配。這使我們能夠處理不準確或部分的 Object 檢測。