Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Yaepiii authored Oct 17, 2024
1 parent bf5bedf commit 80a3446
Showing 1 changed file with 79 additions and 3 deletions.
82 changes: 79 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,84 @@
# TRLO: Direct LiDAR Odometry with 3D Dynamic Object Tracking and Removal
# TRLO: An Efficient LiDAR Odometry with 3D Dynamic Object Tracking and Removal

The official implementation of TRLO (An Efficient LiDAR Odometry with 3D Dynamic Object Tracking and Removal), an accurate LiDAR odometry approach targeted for dynamic environments. TRLO can provide continuous object tracking and accurate localization results while preserving the keyframe selection mechanism in the odometry system. This work is submitted for IEEE T-IM.

![Video](./web/resources/TRLO.mp4)

If you think our work useful for your research, please cite:

## :gear: Installation

### Dependence

Our system has been tested extensively on Ubuntu 20.04 Focal with ROS Noetic, although other versions may work. The following configuration with required dependencies has been verified to be compatible:

- Ubuntu 20.04
- ROS Noetic (roscpp, std_msgs, sensor_msgs, geometry_msgs, pcl_ros, jsk_recognition_msgs)
- C++ 14
- CMake >= 3.22.3
- OpenMP >= 4.5
- Point Cloud Library >= 1.10.0
- Eigen >= 3.3.7
- Cuda 11.3
- TensorRT 8.5.3.1

Installing the binaries from Aptitude should work though:

```
sudo apt install libomp-dev libpcl-dev libeigen3-dev
```
### Building

You can use the following command to build the project:

```bash
#!/bin/bash
source "/opt/ros/${ROS_DISTRO}/setup.bash"
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
git clone [email protected]:Yaepiii/TRLO.git
cd ..
catkin_make
```

## :running: Run

According to the dataset you want to test, you can modify the parameter values of 'pointcloud_topic' and 'imu_topic' in trlo.launch. If an IMU is not being used, set the trlo/imu ROS param to false in cfg/trlo.yaml. However, if IMU data is available, please allow TRLO to calibrate and gravity align for three seconds before moving. Note that the current implementation assumes that LiDAR and IMU coordinate frames coincide, so please make sure that the sensors are physically mounted near each other.

After sourcing the workspace, launch the TRLO ROS nodes via:

```bash
#!/bin/bash
# run TRLO node
roslaunch trlo trlo.launch

# play your bag
rosbag play your_test.bag
```

## :clipboard: Evaluation

To save TRLO's generated map into .pcd format, call the following service:

```bash
rosservice call /robot/trlo_map/save_pcd LEAF_SIZE SAVE_PATH
```

To save the trajectory in KITTI format, call the following service:

```bash
rosservice call /robot/dlo_odom/save_traj SAVE_PAT
```

## :rose: Acknowledgements

We thank the authors of the [DLO](https://github.com/vectr-ucla/direct_lidar_odometry) and [CenterPoint](https://github.com/tianweiy/CenterPoint) open-source packages:

- K. Chen, B. T. Lopez, A. -a. Agha-mohammadi and A. Mehta, "Direct LiDAR Odometry: Fast Localization With Dense Point Clouds," in IEEE Robotics and Automation Letters, vol. 7, no. 2, pp. 2000-2007, April 2022

- Yin, Tianwei et al. “Center-based 3D Object Detection and Tracking.” 2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) (2020): 11779-11788.

This is the repository that contains source code for the [TRLO website](https://yaepiii.github.io/TRLO/).

The code is being organized...

# Website License
<a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by-sa/4.0/88x31.png" /></a><br />This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike 4.0 International License</a>.

0 comments on commit 80a3446

Please sign in to comment.