This repository contains code for our APPRAS project conducted in the WS23 by:
- Bryan Oppong-Boateng
- Daniia Vergazova
- Mehmet Yasin Cifci
- Sönke Nickelsen
- Ziad Abouhalawa
We have implemented an extension of the LCC-Net [1] architecture for usage on a custom real world dataset with two lidar inputs and evaluated it's performance. The results can be seen in the technical report.
- Install ROS Humble.
- Install
rosdep - Install
colcon - Install the Git LFS client appropriate for your operating system.
- If you already cloned the repository and you want to get the latest LFS object that are on the remote repository, such as for a branch from origin:
git lfs fetch origin main - Clone this repository.
- Move into workspace directory.
cd workspace - Install ROS dependencies.
rosdep install --from-paths src --ignore-src -r -y
- Build package.
colcon build
- Source the workspace.
source install/setup.sh
Two primary workflows are defined to cover the entire process flow from data synchronization to processing and evaluation. These workflows are intended for typical use and combine multiple steps into a single launch file:
For the inference process: Launches the workflow from synchronizing and processing data to performing inference.
ros2 launch automatic_targetless_camera_lidar_calibration sync_process_then_infer.launch.pyFor the export process: Initiates the workflow from synchronizing and processing data to exporting it in the KITTI format.
ros2 launch automatic_targetless_camera_lidar_calibration sync_process_then_export.launch.pyIn addition to the main workflows, individual nodes can be launched for specific tasks.
To synchronize and process sensor data:
ros2 launch automatic_targetless_camera_lidar_calibration sync_and_process.launch.pyTo export processed data to the KITTI format:
ros2 launch automatic_targetless_camera_lidar_calibration export_to_kitti_format.launch.pyTo perform inference on processed data:
ros2 launch automatic_targetless_camera_lidar_calibration inference.launch.pyOnce the data is preprocessed, the model can be trained following usign the properLCCNet repo following this guide.