- LiDAR Simulation Library
- LiDAR Placement Evaluation in V2X Scenario
- LiDARPlacementOptimizing
- RainyPCSim
- ReSimAD
- Technical Papers
LiDAR.simulation.and.placement.mp4
LiDAR Simulation Library Details
### Requirements- Carla (>=0.9.12)
- Surround LiDAR
- pandar64
- ruby128
- pandar128
- vlp16
- hdl64
- hdl32
- pandar_qt
- bpearl
- pandar_40m
- pandar_40p
- pandar_xt
- vlp32
- os1_64_gen2
- waymo_top
- Solid State LiDAR
- mems_m1
- Risley Prism LiDAR
- horizon
- mid40
- mid70
- avia
- tele
- Default Carla LiDAR
- default LiDARs
LiDARSimLib/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Sensor/livox.cpp
line9: modify depend on your own carla path
LiDARSimLib/PythonAPI/lidar_lib_example/lidar_display.py
line30: modify depend on your own carla path
make clean
make PythonAPI
make launch
lidar_bp = world.get_blueprint_library().find('sensor.lidar.ray_cast') # choose ray_cast or ray_cast_semantic
lidar_bp.set_attribute("lidar_type", "Surround") # set lidar_type as Surround, Solid_state, Risley_prism
lidar_bp.set_attribute("name","pandar64") # set name as any one in LiDAR List
lidar_bp.set_attribute("enable_ghost", "true") # enable ghosting object effect
- Import the LidarMotonDistortion module
import sys
sys.path.append("/your/path/of/carla/LibCustomFunction") # append the LibCustomFunction
from enable_motion_distortion import LidarMotonDistortion
- Init LidarMotonDistortion with file_path and distortion delay_time
lidar_motion_distort = LidarMotonDistortion("./horizon/", 10) # file_path is where the data you want to save. delay_time is the ratio of simulator frequency to lidar frequency.
- Enable motion distortion
ego_lidar.listen(lambda data: lidar_motion_distort.enable_motion_distortion(data, True))
Implement Details
We build our evaluation code upon [v2x-vit](https://github.com/DerrickXuNu/v2x-vit) project.Code and usage will be release soon.
Simulate rain effect for LiDAR and collect synthetic LiDAR data in CARLA. We have released the RainyPCSim Dataset.
github_rainy_for_lidar.mp4
RainyPCSim Details
- Carla (>=0.9.12)
-
Following LiDAR Simulation Library Copy and modify files from RainyPCSIM/carla/* to $CARLA_ROOT
such as RayCastLidar.cpp, modify the fixed file path base on your own carla path.
-
Rebuild carla
make clean make PythonAPI make launch
-
Launch CARLA, and open
$CARLA_ROOT/Unreal/CarlaUE4/Content/Carla/Blueprints/Vehicles/BaseVehiclePawn.uasset
in the blueprint editor. -
Add component ProxyParticleSpawn.uasset. Click
Add Component
botton, search and add ProxyParticleSpawn component. -
Create waymo_top LiDAR
lidar_bp = world.get_blueprint_library().find('sensor.lidar.ray_cast') lidar_bp.set_attribute("lidar_type", "Surround") lidar_bp.set_attribute("name","waymo_top")
We build our synthetic dataset using OpenCDA simulation tool.
Please refer to Intensity_predictor.md to learn more usage about the predictor module.
Please refer to ReSimAD/README.md to learn more usage about the project.
@inproceedings{cai2023analyzing,
title={Analyzing Infrastructure LiDAR Placement with Realistic LiDAR Simulation Library},
author={Cai, Xinyu and Jiang, Wentao and Xu, Runsheng and Zhao, Wenquan and Ma, Jiaqi and Liu, Si and Li, Yikang},
booktitle={2023 IEEE International Conference on Robotics and Automation (ICRA)},
pages={5581--5587},
year={2023},
organization={IEEE}
}
@inproceedings{jiang2023optimizing,
title={Optimizing the Placement of Roadside LiDARs for Autonomous Driving},
author={Jiang, Wentao and Xiang, Hao and Cai, Xinyu and Xu, Runsheng and Ma, Jiaqi and Li, Yikang and Lee, Gim Hee and Liu, Si},
booktitle={Proceedings of the IEEE/CVF International Conference on Computer Vision},
pages={18381--18390},
year={2023}
}
@article{yang2023rainy,
title={Realistic Rainy Weather Simulation for LiDARs in CARLA Simulator},
author={Donglin Yang, Zhenfeng Liu, Wentao Jiang, Guohang Yan, Xing Gao, Botian Shi, Si Liu, Xinyu Cai},
journal={under review},
year={2023}
}
@article{zhang2023resimad,
title={ReSimAD: Zero-Shot 3D Domain Transfer for Autonomous Driving with Source Reconstruction and Target Simulation},
author={Zhang, Bo and Cai, Xinyu and Yuan, Jiakang and Yang, Donglin and Guo, Jianfei and Xia, Renqiu and Shi, Botian and Dou, Min and Chen, Tao and Liu, Si and others},
journal={arXiv preprint arXiv:2309.05527},
year={2023}
}