This repository is a core 3D MOT component within SLAMMOT. It performs continuous object tracking and trajectory estimation for robust online tracking and smooth object trajectories.
- Factor-graph optimization: models motion priors, observation constraints, and marginalization as factors and solves them in a unified optimization framework.
- ROS 1 (Noetic recommended)
- PCL, Eigen, and OpenCV
- Ceres Solver
- Prepare a catkin workspace and place this package in
src/:
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
git clone https://github.com/GREAT-WHU/FGO-MOT.git
cd ..
catkin_make
source devel/setup.bash- Prepare the KITTI point clouds and images. Calibration, pose, OXTS, and PointRCNN detection files are already provided under
data/.
kitti_helper:
base_path: "data/"
detection_folder: "pointrcnn_Car_val"- Launch tracking:
roslaunch fgo_mot run.launchRun without RViz if needed:
roslaunch fgo_mot run.launch visualization:=false-
Dataset:
- Calibration, pose, OXTS, and PointRCNN detection files are included under
data/. - Download KITTI Tracking and copy only the point clouds and stereo images into this directory.
The completed data directory should be:
data/ ├── calib/ # provided ├── oxts/ # provided ├── pose/ # provided ├── pointrcnn_Car_val/ # provided detections ├── velodyne/ # copy from KITTI tracking/training │ ├── 0000/ │ ├── ... │ └── 0020/ ├── image_02/ # copy from KITTI tracking/training │ ├── 0000/ │ ├── ... │ └── 0020/ └── image_03/ # copy from KITTI tracking/training ├── 0000/ ├── ... └── 0020/ - Calibration, pose, OXTS, and PointRCNN detection files are included under
-
Detection directory:
detection_folderis relative tobase_path. For example:detection_folder: "pointrcnn_Car_val"
reads detections from:
<base_path>/pointrcnn_Car_val/0001.txt -
Parameters:
- Tracking and optimization parameters: config/config.yaml.
-
Evaluation:
- Results are saved under
output/tracking_kitti/relative to the package directory. - Evaluate with the official KITTI Tracking tools or TrackEval for CLEAR MOT, HOTA, and identity metrics.
- Results are saved under
The following results were evaluated on the KITTI Tracking validation sequences 0001, 0006, 0008, 0010, 0012, 0013, 0014, 0015, 0016, 0018, and 0019. These are validation-set results.
| HOTA | DetA | AssA | MOTA | IDF1 | Precision | Recall |
|---|---|---|---|---|---|---|
| 77.48 | 74.31 | 81.04 | 85.52 | 92.37 | 97.32 | 88.02 |
output/
├── tracking_kitti/
└── rosbag/
The output directories are created automatically.
If this project is useful in your research, please cite the related work:
@article{feng2023fgomot,
title = {Accurate and Real-Time 3D-LiDAR Multi-Object Tracking Using Factor Graph Optimization},
author = {Feng, S. and Li, X. and Yan, Z. and others},
journal = {IEEE Sensors Journal},
year = {2023}
}
@article{feng2025lvimot,
title = {LVIMOT: Accurate and robust LiDAR-visual-inertial localization and multi-object tracking in dynamic environments via tightly coupled integration},
author = {Feng, S. and Li, X. and Yan, Z. and others},
journal = {ISPRS Journal of Photogrammetry and Remote Sensing},
year = {2025},
volume = {230},
pages = {675--692}
}
@article{li2024liolot,
title = {LIO-LOT: Tightly-Coupled Multi-object Tracking and LiDAR-Inertial Odometry},
author = {Li, X. and Yan, Z. and Feng, S. and others},
journal = {IEEE Transactions on Intelligent Transportation Systems},
year = {2024}
}
@article{feng2023vimot,
title = {VIMOT: A Tightly-Coupled Estimator for Stereo Visual-Inertial Navigation and Multi-Object Tracking},
author = {Feng, S. and Li, X. and Xia, C. and others},
journal = {IEEE Transactions on Instrumentation and Measurement},
year = {2023}
}
@article{feng2024LVMOT,
title = {Tightly Coupled Integration of LiDAR and Vision for 3D Multiobject Tracking},
author = {Feng, S. and Li, X. and Yan, Z. and others},
journal = {IEEE Transactions on Intelligent Vehicles},
year = {2024}
}